2015-03-18 17:49 | カテゴリ:PIC応用回路
昔に、秋月電気商会から買って在庫になっていた、8x8ドットマトリクスLEDが4個あったので、これを使用して、16x16のマトリックス表示機を製作しました。

これは、1年前にハード製作して、基本動作テストまで完了していたものです。
予め、プログラム内に文字フォントをデータとして書き込んでおき、それを単にスクロール表示するだけのシンプルなものです。

回路的には、8x8のブロック毎に、8+8=16の端子があり、それを4個集合させました。
ドライブ的には、16+16のラインをダイナミックにドライブし、該当するLEDのドットを光らせるのですが、一度に、最大で16個のLED(1行分)をドライブし、それを数ミリ秒毎に行を切り替えて、16桁、16行分を光らせます。



このままだと、単に静止したパターンを表示するだけですので、一定の速度で、パターンをスクロールさせました。
HWの配線(PICの入出力ポート数の制限と、配線の取り回しの関係)で、16ビットの連続したポートアドレスを2組確保できず、4ビットのポートやら、8ビットのポートやら色々混在したので、SWでパターンのデータをPICからLEDに書き込むプロセスが、異常に複雑になってしまいました。
中間にバッファエリアを設けて、そこでポートアドレスの変換をするようにしました。

言語は、MPLABのアセンブラです。
PICのアセンブラは、単純な命令形態でシンプルな構造で組めましたが、プログラミングは結構な力仕事でした。

プログラムの書き込みは、昔、秋月電気でキットで購入したPICプログラマーで、いまだに動作しています。
二階建てに組み上げましたが、下は電源(15V)です。

これだけでは、面白くないので、何か役に立つものに応用したいと思っています。


管理者のみに表示する