2021年4月30日金曜日

TM1640は使える

 気候も良くなってきましたが、このご時世とて外出もままならず、ネットサーフインの最中に秋月でおもしろそうなICを見つけました、TM1640というのがそれです。(左写真)

 このICは、4~5年前からあったようですが残念ながら私の目には留まりませんでした。



 用途は右に示すような、7セグメントのLED表示素子を最大16桁まで表示・点灯するものです。
 この表示素子は随分と昔からあり、視認性もよく捨てがたいのですが、自作の立場からすると駆動が結構面倒くさくて、最近ではLCD(液晶ディスプレイ)を多用しています。

 ところがこのICを使えば、最大16桁までの7セグメントLED表示素子と駆動用のCPU(私の場合ほとんどがAVR、まれにPIC)をデータ、クロック、+5V、GNDの4線で結べばOKなのです。

 つまり、この小さなICの中にCPUからのデータ受信機能、BCD TO 7-SEGMENT DECODER/DRIVERS機能、電流制限抵抗などがすべて盛り込んであるのです。

 回路図を示しますが、結線は7セグメントLED表示素子のセグメント駆動ピンとTM1640の橙色で囲ったピンを、 次いで7セグメントLED表示素子の桁駆動ピンとTM1640の緑色で囲ったピン、そしてCPUと前述の4線をそれぞれ接続します。ここでの注意点は、Digit 1は一番左の数字を意味していますので間違えないようにすることです。

 ありがたいことに、TM1640にはArduinoで使うためのライブラリが用意されていますので、簡単に7セグメントLEDを駆動・表示させることができます。

 この例では Arduino Mega 2560 を使いましたので、データ・ピンは20、クロック・ピンは21を振り分けました。
 あとは文字列 "123456789012" を転送するだけです。

 とりあえず点灯実験をしてみました。

 部品は左写真に示すように、4桁表示7セグエレメント(ブルー)を3個(12桁)と右下のTM1640(このICはSOP28でピン間隔がDIPの半分なので、写真中の右上のようにアダプターに乗せてあります。)です。

 そして駆動用のCPUとして、前述したように Arduino Mega 2560 を用いました。
 これらの部品をブレッドボードに並べ、結線し、作動させた結果の写真を右に示します。

 転送した文字列が左詰めで表示されています。特段ちらつきもなくきれいに見えています。ちなみに消費電流は+5Vで60mA以下でした。

 今回の実験には次の予定があります。
 以前このブログで紹介した「周波数カウンター HP-53181A ジャンク蘇生す!、の蛍光表示が暗く読みにくいので、外付けの表示器を作ろうという試みです、でもそれでなくともこのTM1640は使えると思います、、、なにせ一個たったの¥70です!!!

回路図を修正・入れ替えました。210529

0 件のコメント: