記事一覧

Arduinoでドットマトリックスで問題

2013.03.11

先日組んだドットマトリックスですが、忘れないうちに回路図をアップしておきます。
ファイル 33-1.png
動作はごく簡単なもので、
・シフトレジスタ(74HC164)で1列分のパターンを作成し
・デコーダ(74HC138)で対応する列の出力をLOWにする
という動作を列数分繰り返すというものです
が、ここで問題発生・・・
1)まず、動画を見れば一目瞭然ですが、消えているはずのLEDが微妙に光って見えてしまいます。これは、シフトレジスタでパターンを送り出す時に、一瞬ですが通過するLEDに電源が入り光ってしまうものだと思われます
図で表すと
■■■■■■■
と右端のLEDを点灯したい場合、シフトレジスタの動きでは
■■■■■■■
■■■■■■
■■■■■■■
 ・
 ・
と順次送り出す動作をするのですが、その際に通過するLEDが灯ってしまうようです。ミリ秒単位の動きなので無視できる範囲かと想定していましたが、残像効果のせいで全体的にぼやっと光ってしまいました。この点は、シフトレジスタの準備が完了するまで、デコーダ側で入力を抑制する、という動作をしなければなりません。
G2AかG3AをArduinoのピンにつないで制御する必要がありそうです。

2)もう一つはドットマトリックスの表示向きの問題です。
動画では一見正しく表示できているようですが、実際には取り付け方向からみて90度回転して表示されています。
「た」ならこんな感じ
ファイル 33-2.png
LEDが1個なら取り付け方向を調整すればいいのですが、2個以上つないで取り付ける場合、ちょっと無理があります。
こちらはプログラム的にXとYの行列入れ替えをする必要がありそうです。

にほんブログ村 その他趣味ブログ 電子工作へ
にほんブログ村