2 エンコーダ・デコーダ回路


エンコーダ・デコーダ回路とは、主にキー入力部や表示出力部において、2進数と2進数以外(通常は10進数)とを変換する回路である。
2進数以外を2進数に変換するものをエンコーダ回路、逆に2進数を2進数以外に変換するものをデコーダ回路という。
ここに、2進数と10進数の変換では、BCD(Binary Coded Desimal/ 2進数コード化10進数)という方法が使われる。
これは、例えば、10進数の13を2進数にする場合、全体を2進数にする(1101)のではなく、10進数の各桁毎を2進数にする(0001 0011)ものである。

2.1エンコーダ回路
2.2デコーダ回路

2.1 エンコーダ回路

エンコーダ回路の例を下図に示す。
エンコーダ回路(ダイオードによる)

これは、キースイッチから入力された0〜9の10進数を0000〜1001の4ビットの2進数に変換するものである。(図において破線のように回路を増やせば、0〜15の16進数を変換することも可能)
この例は、入力線と出力線をダイオードを用いてマトリックス状に接続したもので、ダイオードマトリックスといわれる。
図において、2進数の各ビットに対応する信号線は、抵抗を介して接地(プルダウン)され、初期状態はLである。
いずれかのキースイッチが押されると、その2進数のビットで1が立つ信号線がHになる。
また、図のダイオードを論理回路で置きかえると下図のようになる。
エンコーダ回路(論理回路による)

原理的にはこれと同じ回路を持つ専用ICとして、74147がある。(ただし、入出力とも負論理)
エンコーダIC

さらに、これを機械的におこなうものに、デジタルスイッチがある。 通常、キースイッチの代わりに選択式ダイヤルを持つ。
デジタルスイッチ

これを用いたエンコーダ回路の例を下図に示す。
エンコーダ回路(デジタルスイッチによる)

2.2 デコーダ回路

デコーダ回路の例を下図に示す。
デコーダ回路

これは論理回路を用いて、4ビットの2進数を0〜9の10進数に変換するものである。(図において破線のように回路を増やせば、0〜15の16進数に変換することも可能)
図において、2進数の各ビットに対応する信号線のLまたはHにより、その10進数に対応する信号線がHになる。
また、図の回路は下図のようにした方が効率的である。
デコーダ回路

これと同じ回路を持つ専用ICとして、7442がある。(ただし、出力は負論理)
デコーダIC

なお、このICは、0〜9の10進数への変換しかできないが、これを2つ接続することにより、0〜15の16進数への変換もできるようになる。
デコーダ回路(16進数への変換)

デコーダ回路に関連して、0〜9の信号を実際に表示させる回路の例を下図に示す。
表示回路

これは、0〜9の信号線がHになると、それぞれに対応した表示用LEDが点灯するものである。
図において、0〜9の信号線はLEDをON/OFFするトランジスタのベースに入力され、これがHになるとトランジスタのコレクタ〜エミッタが導通して、LEDが点灯する。
さらに、LEDを用いて文字を表示するようにしたものが、7セグメントLEDである。
7セグメントLED

a〜fのセグメントを組み合わせることにより、0〜9(さらにA〜F)を表示できる。
ただし、これを駆動するには、下図のような回路が必要になる。
7セグメントLED駆動回路

しかし実際には、0〜9の10進数の信号からではなく、直接2進数の信号から変換する方が効率的である。
このような回路を持つ専用ICとして、7447がある。
7セグメントLED駆動IC


目次