ICL7137 (1)

 V3340 の温度補償ずみ CV 出力 (アンチログ部の差動ペアのベースを駆動する電圧) は、最大で約 -180 mV から約 180 mV まで変化します。
 マイコンでデータをロギングする場合、マイコン内蔵の ADC を使うためには、入力電圧の変化範囲を GND から電源電圧までにおさめる必要があります。
 また、温度補償ずみ CV 出力は「DC」であり、AD 変換のスピードは要求されず、むしろ外来ノイズの影響を小さくできるほうが重要です。
 そこで、変換スピードは遅いけれど、電源ハムなどのノイズに強い「二重積分型」ADC を使って測定することを考えました。
 昔に秋月で買った ICL7137 使用の LED 表示の電圧計キットを改造して、マイコンと接続し、データをロギングするマイコン (あるいは PC) へ電圧の数値を送ります。
 ただし、現在、秋月ではキットも ICL7137 チップ単体も扱っていないようです。
 ICL7137 はシングルチップ構成の LED 用 3 1/2 桁 AD コンバータで、スタティック点灯となっており、7 セグメント LED と (電流制限抵抗なしで) 直結可能です。
 スタティック点灯ということで、LED との配線量は多く、マイコンで数値を読み取る目的にはあまり向いてません。
 MC14433 などのように、ダイナミック点灯で 7 セグメント・デコーダを外付けする必要があるタイプのほうが、配線の手間は減らせます。
 手持ちを利用するということで、最適ではない ICL7137 を使用しています。
 ハードウェアによる実現と、ソフトウェアによる実現とを区別せずにブロック・ダイアグラムで表示したものを下に示します。

 1 の位、10 の位、100 の位の 3 桁はそれぞれ 7 セグメント・ドライバ出力がパラレルにピンに割り付けられています。
 使用する LED はアノード・コモンタイプで、セグメント・ドライバの出力が「L」の場合に該当セグメントが点灯する、つまりロジック値としては「負論理」の出力となっています。
 後で示すように、7 セグメントの内、5 セグメントを参照すれば元の数値が判別できるので、各桁 5 セグメントずつ配線しています。
 1000 の位のセグメント出力、極性 (マイナス符号) のセグメント出力は、それぞれ 1 ビットずつなので、特に複雑な変換も必要もなく、1、10、100 の位の数値と合わせ、全体の数値を構成します。
 数値が求まったら、シリアル出力あるいは I2C スレーブとして、データ・ロガー側のマイコンにデータを送ります。
ICL7137 のセグメント点灯パターンを下に示します。

「6」、「7」、「9」のパターンについては、単体の 7 セグメント・デコーダ IC の型番で言えば、

  • CD4055B、 CD4056B
  • CD4513B、 CD4543B、 CD4544B
  • SN74LS246、 SN74LS247、SN74LS248、 SN74LS249、 SN74LS447

と同様の点灯パターンとなっています。
 ICL7137 はスタティック点灯用で、全ての桁の全てのセグメントがパラレルに出力されており、そのままでは配線の量が多くなります。
 配線の手間を減らすためには 0 ~ 9 までの BCD 値がそれぞれ判別可能な限り、使用するセグメントの数を削減する必要があります。

 プログラムを書いて、削減可能なセグメントについて探ったところ、セグメント c とセグメント d を省略して、残りの 5 セグメント (a, b, e, f, g) を見るだけで 0 ~ 9 までのパターンは判別可能であることが分かりました。
 ここで、セグメントの名称は左の図のように、最上部のセグメントを「a」とし、外周に沿って時計回りに b, c, d, e, f と順に命名して行き、最後に中央部のセグメントを「g」とするのがお約束になっています。
 セグメント c は右下、セグメント d は最下部のセグメントになります。
 使用しない 2 セグメントは「消灯」として表現すると、下のような点灯パターンになります。

 確かに 0 ~ 9 までのパターンは互いにユニークで、判別可能なことが分かります。
 「6」、「7」、「8」については、一般には下のように別の 7 セグメント・パターンも使われています。

 最後の「0」は「TK-80」で使われているパターンです。
 「6」と「9」のパターンは、単体の 7 セグメント・デコーダ IC の型番で言うと、

  • CD4511B
  • SN74LS46、SN74LS47、 SN74LS48

と同様です。
 これらのパターンについても、5 セグメントで識別可能です。

 「9」のパターンについては、ICL7137 のものと、別パターンは同じ形になって、数値が「9」であることは分かりますが、2 つのパターンのどちらであるかは判別できません。
 「6」、「7」、「0」については別パターンであることも判別できます。