「Simple Commander」の制作【第2-2回】

Lab研究員 竹島

前回は、ESP-WROOM-02というモジュールについて話をしました。
このモジュールは、IoTオタク業界では『エスパー』と呼ばれているらしいですよ。

今回は【試作】の2回目。表示部の部品を試してみたいと思います。

【試作】

部品を選定し、仮で回路を組んでみて、 考えていたことが実現できるかどうかを試してみる工程です。

使う予定の部品のデータシートを集めてきて読むのが結構大変。
ブレッドボードを使うので、半田付けはまだ必要ありません。

数字を1桁表示できればいいので、7セグメントLEDを使います。こんな部品です。

7segBlue.jpg

デジタル時計等でよく見る8の字をLEDで表示する部品です。今回使うのは、少し大きめの青色7セグ「KW1-521CBB」。ブルーの表示がいい感じです。

とりあえず光らせるため、ピン配置を確認したいと思います。データシートをダウンロードします。

KW1-521CBB-PIN.png

ピンアサインについては、詳しい記述がありませんでした。上側に5本と下側に5本の計10本のピンが出ていますが、ピン番号の並びがわかりません。
実物に通電して確認するしかないようです。

裏から見ると、上側の真ん中と下側の真ん中がつながっているようなので、これが3か8だということがわかります。他のピンは順番に通電して確認してみました。結果、下図の配置になっていました。

7segPin.jpg

下の図は、"1"を表示する回路図です。

7SegCircuit.png

6番ピンと4番ピンに直列でつながっている抵抗は電流制御用抵抗です。LEDはダイオードなので、順方向に電圧をかけたときの抵抗値はほぼ0Ωになります。そのまま電池をつなげるとショートしたのと同じ状態になり、過電流で部品が壊れたり、電源が壊れたりします。
とっても危険なので、過電流にならないように抵抗を入れて電流値を調整しています。

今回は、電源電圧を3.3Vにして330Ωの抵抗をつなげたので、

I=V/R=3.3/330=10mA(*1)

となります。これくらいなら危険はありませんね。

次はLEDに数字を表示するICの実験をします。

7セグメントLEDには、数字を表示する部分だけで7本の入力端子があります。これをCPUに直接つなぐと、CPUの出力ピンを7本使います。

しかし、ESP-WROOM-02には、入出力に使えるピンが実質6本しかありません。そのままでは足りません。
そこで、数字1桁を2進数で入力し、それを7セグメントLEDのピンに対応した出力に変換するICを使うことにします。いわゆる、デコーダーICというものです。

デコーダーICにもいろいろあるのですが、今回は電源電圧がESPと同じ3.3V、LEDが直結できる物、という特性から、東芝のTC4511を使います。

ピンアサインはこうです。

TC4511PIN.png

真理値表はこうです。

TC4511TruthTable.png

InputsのA、B、C、Dが2進数の1ビットに相当します。2進数で1、2、3...と入力すると、7セグメントLEDの入力(a~f)に相当するピンがONになります。

下記のような回路を作って、0~9が表示できればOKです。

DecoderCircuit (1).png

TC4511を使うとLEDを表示するための出力を4本まで減らせることができます。

しかし、今回は7セグメントLEDだけでなく、単体のLEDも5個あるので、まだピンが足りません。

そこで、今度はシリアルーパラレル変換IC 東芝TC4094を使います。細かい説明は、ピンアサインと真理値表を見てから。

TC4098PIN.png

TC4094は、一般的には8ビットのシフトレジスタと呼ばれます。DATAピンの入力は、CLOCKピンがON-OFFするたびに、Q1ピンに出力されます。同時に、今までQ1に出力されていた状態はQ2に移ります。Q2に出力されていた値はQ3に移ります。同じように、Q8までがCLOCKのON-OFFのたびに1つずつずれて出力されるのでシフトレジスタと呼ばれます。

このICを使うと、DATAピン、CLOCKピン、STROBEピン(*2)の3本の入力で8本(*3)の出力をコントロールすることができます。

TC4511とTC4094を使うと、3本の出力で7セグメントLEDとLED4つの点滅をコントロールできるようになります。LED用の出力が1つ足りないので、これはESPから直接コントロールすることにして、表示用の出力回路の試作は終了です。

ShiftRegCircuit.png

なんとなくCPU部と表示部の確認ができたので、試作段階は終了です。次回は設計をしてみましょう。

*1 厳密にはLEDの電圧降下分も計算に入れる必要がありますが、試作なので省略します。

*2 実際にはCLOCKピンのON-OFFでは、Q1~Q8の出力は変わらず、内部ステータスだけが変わります。STROBEのON-OFFで内部ステータスの値をQ1~Q8ピンに出力します。これは、DATAを順次出力する間の意図しない信号を出力しないための仕組みです。

*3 Q8の次はQEにシフトするので、9ビットありますが、基本的にQEは次のシフトレジスタのDATAピンにつなげます。複数のシフトレジスタをつなげることによって、出力の数は無限に増やせます。

  • LINE
  • Mail