ニキシー管時計ができあがった

あいかわらず、Maker Fafire Tokyo 2018 に向けた準備工作中。
展示ブースの場所も確定し、出展者情報も公開された。

多少レトロっぽくするために、ニキシー管を使った時計を製作。ニキシー管は10年以上前に購入したロシア製のIN-1という大ぶりのもの。これまたロシア製のニキシードライバーICで駆動する。昔のTI SN74141互換のものである。無印良品の木製トレイの上に組み上げた。
イメージ 1
40PINのPIC16F1937を分周器、時計カウンタとして動作させている。原石水晶発振器からの原振 237.910Khz をタイマー0で受けて、プログラマルカウンタで1秒ごとに割り込みパルスを発生させ、24時間表示時計をシンプルに構成した。

当初からダイナミック点灯のつもりはなく、それぞれの桁に素直に数字を出力するように設計した。すべての桁の表示に4bit必要なわけではないので、28PINのPICで間に合いそうに思えたのだが、自作したニキシードライバー基板に誤りがあり、全ての桁に4bit が必要になり、8bit×3出力が取れる、40pinで安価(220円)PIC16F1937を採用した。

配線してテストプログラムを書いて、希望通りにニキシー管が点灯するかを確認したところ、うまく表示してくれない。ハードとソフトのミスを切り分けるため、写真のようなジグを作り、1bit づつ確認したところ、思いもよらぬパターンになった。
イメージ 2
原因は、ニキシー管 IN-1のライブラリの作成ミス。ニキシードライバーと管の各数字との対応が間違っていたことと、管の取り付けが裏表逆になっていた。ちなみに写真の取り付けは逆で、ニキシー管は反対側から差し込む。このような状態でも、いくつかのBitパターンによって点灯するところがあるので、発見がむつかしかった。
入力Bitパターンと表示数字の対応は、変換テーブルを使って処理することにした。このため、前述のように、全ての桁で4Bit必要になった。

ニキシー管表示のためには、200V 5mA程度の高圧電源が必要だが、例によって、Aliexpress から安価に入手できる。また、HH、MM、SS間のコロン(:)を表示するために、専用のネオン管も AMAZON で入手したのだが、無理に使うこともなさそうだ。
イメージ 3

このあと、秒パルスの精度をもう少し追い込むため、プログラマブルカウンタの設定を調整すること、時刻合わせのためのジグとルーチンを作成する。