ソフトの砂場(ICトレーナ)

最終更新日:2000年05月13日

 ひょんなことから、サンハヤトのICトレーナ(CT-311)というものを入手しました。これは、デジタル回路の勉強用のセットで、下図のような感じのものです。右上に7セグメントLEDが2個、右下には555を使った発振器、手前にはトグルスイッチ10個とLED10個とプッシュスイッチ2個あります。中央にブレッドボードがあるのが豪華です。

 で、さっそく説明書を見てみると、これがどうしようもなくお粗末です。ちゃんと調べていませんが、これの下位機種であるCT-312の方が、立派な説明書が付いているようです。説明書通りに回路を作ろうとしても、どこをつなげばよいのか巻末の回路図を見ながら試行錯誤するありさまで、この説明書で理解できるならICトレーナなんかいらないな〜と思ってしまいます。それにもめげず遊んでいましたが、100進カウンタを作ろうとしたところ、ジャンパ線の数がこのセットに入っているものだけでは足りないことが判明!なんと、実現できない回路が説明書に載っていたのです。

 せっかくのハードなのに、これではもったいないな〜と思いながら片づけてしまうのでした ^^;

雑感

 ブレッドボードが手に入ったので、ちょっと遊んでみたいのですが、何をしましょう? ^^;


D-FF (74LS74)

 説明書を見ていると、D-FFのところが応用っぽいので、もっと基本的なものにするとどうなるかな〜と考えてみました。当たり前すぎて、つまらないのですが。

接続

  1. ブレッドボードに74LS74を置いて、VCC, GNDをそれぞれ接続する。
  2. 1CLRをD9につなぐ。
  3. 1PRをD8につなぐ。
  4. 1DをD0につなぐ。
  5. 1CKをDAにつなぐ。
  6. 1QをI0(アイゼロ)につなぐ。
  7. 1Q/をI1につなぐ。

操作

  1. SW8, SW9をONにして電源を入れると、LED0, LED1の状態は不定。
  2. SW8をON、SW9をOFFにすると、LED0はOFF, LED1はON。(CLEAR)
  3. SW8をOFF、SW9をONにすると、LED0はON, LED1はOFF。(PRESET)
  4. SW8, SW9を両方ともOFFにすると、LED0, LED1は共に点灯。
  5. SW8, SW9をONにする。PSW1を押すと、SW0のON・OFFに応じてLED0のON・OFFが決まる。

解説

 CLR, PR共に負論理なので、それぞれ対応するスイッチをOFFにすると、その機能が働きます。ただし、これらは出力の片側だけを制御して、もう一方の出力はそれに伴って変化するようになっているので、両方のスイッチをOFFにすると上記4のようになります。これらが働いていないときは、ポジティブエッジトリガなので、CKがHになる時点のDの値がQに出力され、保持されます。


JK-FF (74LS76)

 同様に、JK-FFも、もっと基本的な動作確認を行ってみました。

接続

  1. ブレッドボードに74LS76を置いて、VCC, GNDをそれぞれ接続する。
  2. 1CLRをD9につなぐ。
  3. 1PRをD8につなぐ。
  4. 1JをD0につなぐ。
  5. 1KをD1につなぐ。
  6. 1CKをDAにつなぐ。
  7. 1QをI0(アイゼロ)につなぐ。
  8. 1Q/をI1につなぐ。

操作

  1. SW8, SW9をONにして電源を入れると、LED0の状態は不定。
  2. SW8をON、SW9をOFFにすると、LED0はOFF。(CLEAR)
  3. SW8をOFF、SW9をONにすると、LED0はON。(PRESET)
  4. SW8, SW9を両方ともOFFにすると、LED0, LED1は共に点灯。
  5. SW8, SW9をONにする。PSW1を押すと、SW0, SW1の組み合わせに応じてLEDのON・OFFが決まる。詳細は以下の通り。
  6. D0, D1を共にOFFにしてPSW1を押すと、LEDの状態は変わらない。
  7. D0をON、D1をOFFにしてPSW1を押すと、LED0はON、LED1はOFF。
  8. D0をOFF、D1をONにしてPSW1を押すと、LEDはOFF、LED1はON。
  9. D0, D1を共にOFFにしてPSW1を押すと、LEDの状態は反転する。

解説

 CLR, PR共に負論理なので、それぞれ対応するスイッチをOFFにすると、その機能が働きます。ただし、これらは出力の片側だけを制御して、もう一方の出力はそれに伴って変化するようになっているので、両方のスイッチをOFFにすると上記4のようになります。これらが働いていないときは、ネガティブエッジトリガなので、CKがLになる時点のJ, Kの値の組によりQ、Q/の値が決まります。

J K Q Q/
0 0 変化なし 変化なし
1 0 1 0
0 1 0 1
1 1 反転 反転

7セグメントLEDドライバ (74LS47)

このICトレーナに初めから組み込まれたICで、単に入力に応じてデコードしてLEDを光らせるだけかと思っていました。しかし調べてみると、LampTestやRippleBlankingがあるとか、RBOがワイアードORになっていてBlankingInputとしても使えるなど、知らないことも結構ありました。このICでは、16進数のAからFを表示できないのと、小数点が光らないのが残念です。

接続

  1. 両方の7セグメントLEDの+5Vを電源に接続する。
  2. D0からD3を、下の74LS47のAからDにつなぐ。
  3. 同様に、D4からD7を、上の74LS47のAからDにつなぐ。
  4. 下の74LS47のLTをD8とつなぐ。
  5. 同様に上の74LS47のLTをD8とつなぐ。
  6. 下の74LS47のRBIを上の74LS47のRBOとつなぐ。
  7. 上の74LS47のRBIをGNDにつなぐ。

操作

  1. D8, D9をON、それ以外をOFFにして電源をONにすると、7セグメントLED(以下LED)は両方とも消灯。
  2. D0からD3を操作すると、右側のLEDがその組み合わせに対応する表示になる。左側のLEDは消灯。
  3. D0からD3をOFFにしてD4からD7を操作すると、右側のLEDは0を表示し、左側のLEDがD4からD7の組み合わせに対応する表示になる。
  4. D0からD7をOFFにしてD8をONにすると、右側のLEDが全点灯(8を表示)。左側のLEDは消灯。
  5. D8をOFFにしてD9をONにすると、左側のLEDが全点灯し、右側のLEDは0を表示。
  6. 下の上の74LS47のLTとD8をつなぐ線を、RBOとD8につなぎ変える。
  7. D8をONにした状態でD0からD3をONにして、右のLEDが8を表示する事を確認し、D8をOFFにすると右のLEDが消灯する。

解説

LEDを、入力のAからDの組み合わせに対応するように点灯します。ただし、LTをLにすると全点灯し、BIをLにすると全消灯します。RBIをLにすると、0を表示しようとすると消灯しRBOにLを出力します。ここでは上位の桁のRBOを下位の桁のRBIにつないでいるので、上位の桁が0のときは上位のLEDが消灯し、かつもし下位の桁も0なら下位のLEDも消灯します。


10進(2進+5進)カウンタ(74LS90)

2進カウンタと5進カウンタからなるICです。等価回路を見てみると、2進カウンタは単なるフリップフロップですが、5進カウンタのように2のべき乗でないカウンタはこういう風になっているんですね。

接続

  1. ブレッドボードに74LS90を置いて、VCC, GNDをそれぞれ接続する。
  2. R0(1)をD9につなぐ。
  3. R9(1)をD8につなぐ。
  4. INPUT AをDAにつなぐ。
  5. QAをINPUT BとI0(アイゼロ)につなぐ。
  6. QBをI1につなぐ。
  7. QCをI2につなぐ。
  8. QDをI3につなぐ。

操作

  1. D8をON, D9をOFFにすると、I0とI3のLEDだけが点灯(9を意味する)。
  2. D8をOFF, D9をONにすると、全LEDが消灯。
  3. D8, D9をOFFにしてPSW1を押すとLEDがカウントアップしていき、9(I0とI3が点灯)の次は0(全LED消灯)に戻る。

解説

2進カウンタと5進カウンタを直列に接続して、非同期10進カウンタとして使っています。規格表を見ると、INPUT Aは32MHzまで入力可能であるのに対し、INPUT Bは16MHzまでしか入力できません。


オープンコレクタNOT(74LS05)

このICは実験用に用意されているものではなく、このICトレーナに初めから組み込まれているものですが、動作確認用にソケットから外して使ってみます。実験が終われば、元に戻しておきましょう。

接続

  1. ICトレーナ下部のソケットに74LS05が二つ載っている。左側のICをソケットから外してブレッドボードに置く。
  2. VCC, GNDをそれぞれ接続する。
  3. 1AをD0、2AをD1、3AをD2につなぐ。
  4. 1Y, 2Y, 3Yをつなぎ、それらとVCCの間を330Ωの抵抗(LEDと共に袋に入っているもの)でつなぐ。
  5. 1Y, 2Y, 3YとI0(アイゼロ)をつなぐ。

操作

  1. SW0からSW2までをすべてOFFにして電源を入れると、LED0が点灯する。
  2. SW0からSW2までを一つでもONにすると、LED0は消灯する。

解説

通常(トーテムポール出力)のTTLは出力同士を接続することができませんが、オープンコレクタ出力のものはそれが可能です。ここでは出力1Yから3Yを接続して抵抗でプルアップし、そことI0を接続しています。1Yから3YがすべてHの場合(74LS05はNOTなので、全入力がLの場合)、I0もHになるのでLED0は点灯します。1Yから3YのいずれかがLになると(いずれかの入力をHにすると)、I0もLになってLED0は消灯します。


半加算器

説明書に反一致回路(Exclusive-OR)が載っているので、それに手を加えて半加算器を作ります。

接続

  1. 説明書の反一致回路を作り、動作を確認します。
  2. 74LS08をブレッドボードに置き、VCC, GNDをつなぐ。
  3. 74LS08の1A, 1Bを、それぞれD0, D1につなぐ。
  4. 74LS08の1YをI1につなぐ。

操作

  1. LED0, LED1には、SW0, SW1を加算した結果が出る。(0+0=00, 0+1=01, 1+0=01, 1+1=10)

解説

半加算器は、入力を加算した結果を同じ位の値と上位の位への繰り上がりの値として出力します。下位の桁からの繰り上がりも加算する回路は、全加算器と呼ばれます。


多数決回路

3つの入力のうち、2つ以上がHのときはHを出力し、そうでないときはLを出力する多数決回路を作ります。

接続

  1. 74LS00と74LS10をブレッドボードに置き、VCC, GNDをつなぐ。
  2. D0と74LS00の1Aと2Aをつなぐ。
  3. D1と74LS00の1Bと3Bをつなぐ。
  4. D2と74LS00の2Bと3Aをつなぐ。
  5. 74LS00の1Yを74LS10の1Aにつなぐ。
  6. 74LS00の2Yを74LS10の1Bにつなぐ。
  7. 74LS00の3Yを74LS10の1Cにつなぐ。
  8. 74LS10の1YをI0(アイゼロ)につなぐ。

操作

  1. SW1, 2, 3のうち任意の2個以上をONにするとLED0が点灯し、そうでないときは消灯する。

解説

回路としては単なるANDとORの組み合わせですが、don't careを使って簡略化する例としてわかりやすいのではないかと思います。


参考文献

[1] '99最新74シリーズIC規格表, CQ出版社


ホーム