エントリー

DE0-nano + ドットマトリックスLED で遊ぶ その2

2月初めには完成していましたが、とりあえず完成ー!ということで。

 

20120226_54-1.jpg

 

ボード右上に何やら怪しげなQFPのICが載っていますが、USBホストコントローラーのMAX3421Eです。実は最終的にAndroidと接続することを企んでいたりします。「なんだ結局Androidなのか」と思っちゃうかもしれませんが、まあそう言わずに。 ^^

急いで作ったので、若干雑な仕事になってしまいました。

 

ちなみに写真のQFP変換基板ですが、Aitem-Labにて購入しました。変換基板って無駄なスペースをとってしまうものばかりで、省スペースのものって電気街のパーツ屋を探し回っても見つかりませんでした。ネットで見つけて購入しましたが、狭いスペースでも使えて良い感じです。

 

ボード上の回路についてですが、ソース側は74ACTのシフトレジスタを、シンク側はトランジスタアレイを使用し、FPGAからそれらをコントロールしているというものになっています。 ボードの回路図

シフトレジスタは、以前の記事にも書いていますが、東芝の TC74ACT164 を使う予定でした。ただ、どの部品屋にも在庫がない状態だったため、TI の CD74ACT164 で代用しています。仕様的にも問題はありません。

 

LEDの電流制限抵抗は120Ω。決め方は下記の通りです。とりあえず 74ACT164のPch側のON抵抗は無視しています。流す電流も高々16mAですし、トランジスタアレイの Vce(sat) の特性ばらつきや温度による変動の方が大きいので、そこまで細かい値は気にする意味も無いと思います。

R = ( Vcc - Vf[LED] - Vce(sat)[TrArray] ) / 16mA

5V電源については今のところDE0-nano経由で、PCのUSBポートから供給しています。Androidを接続する場合は確実に供給能力不足になるので、外部電源が必要になります。

 

さて、FPGAの方に話を移しましょう。
ドットマトリックスLED制御部分のVerilogHDLはこちら。例によって無保証です。

matrix_led_ctrl.zip

 

構成としては、32bitx16のメモリを内部に持っていて、これにデータを書き込むことでその内容を表示します。またNiosIIのコンポーネントとして組み込むことで、ソフトウェア上で表示パターンを変更することができるようになります。

ゆくゆくはAndroidで制御しますので、ベースとしては@iseroidさんが公開されているNiosII用のMicrobrigeを使います。githubから取ってこれます。

https://github.com/iseroid/microbridge_nios2
 
今回はここまで~。(次回は未定)

 

ページ移動

コメント

  • コメントはまだありません。

ユーティリティ

Author


oaks (twitter: @oks486)

記事の内容に関しては無保証です。何事も At your own risk ってことでよろしく。
リンクはご自由にどうぞ。

SPAM対策が面倒なため現在コメント投稿機能を停止しています。あしからず...

検索

エントリー検索フォーム
キーワード

Feed

リンク