2002/02/27更新
AVRトレーナーの作り方ページを追加しました。
![]() |
||||||||||||||||||||||||||||||||||||||||||
作例その2:PD4435を使用した電光表示器
秋月で見つけた高輝度LED使用4文字キャラクタディスプレー(PD4435)を使った電光表示器です。PD4435は単なるドットマトリックスLEDではなく、内部にキャラクタROMを持ったインテリジェントなデバイスで、アドレスバス、データバス、デバイスセレクト、リード、ライト等の信号線を使って制御する事ができます。 実際に使用したのはアドレス用に3ビット、データ用に8ビット、ライトストローブ用に1ビットの計12ビットの信号線で、それぞれAVRのポートに以下のように結線しました。
それ以外の信号線については、RD、CLKSEL、RST、CE1を+5V接続、CE0をGNDに接続、CLK I/Oはオープンにします。 PD4435の使い方は非常に簡単で、A2〜A0で表示させたいデジットを選択して、D7〜D0に表示キャラクタコードを設定したあと、WRを70nSec以上下げれば指定したデジットに文字が表示されます。 4文字分しかないのに、アドレスが3ビットあるのを疑問に思うかも知れませんが、アドレスの最上位ビットは文字を点滅させたり、カーソルを表示させたりといったコマンドを送るときに使用します。 テスト用のプログラムはココにあります。アセンブルしてAT90S2313に焼けば、9600bpsに設定した端末でコマンドを送り、PD4435をコントロールできます。現時点で実装されているコマンドは以下の4個だけです。
Aコマンドの後にデジット位置を0〜3で指定し、Dコマンドで表示する文字を送ると、指定したデジット位置にその文字が表示されます。 | ||||||||||||||||||||||||||||||||||||||||||
2002/01/27追加 せっかくなので文字の点滅と、カーソル表示機能も使えるようにしてみました。 PD4435の文字点滅やカーソル表示には若干癖があって、文字コードの最上位ビットがアトリビュートの有効/無効を表し、コントロールワードでそのアトリビュートに対する表示モードを設定します。表示モードを変えると、アトリビュート有効に設定されているデジット全てがそれに従って表示されるため、文字点滅とカーソル表示を個別のデジットに対して別々に設定することはできません。 追加修正したプログラムはココです。追加したコマンドは以下の通り。
|
![]() |
||
作例その1:AVRライター
Atmel社のアプリケーションノート「AVR910: In-System Programming」互換のAVRライター回路です。クロックに4MHzのセラロック、AVRにはAT90S1200を使い、ここにあるソースをアセンブルしたものを書き込んであります。セラロックは専用のソケットを基板上に設けて、そこに差すように変更しました。上の写真でAVRとMAX232の間にセラロック用のソケットがあります。 結線図は以下を参照して下さい。VCCとGNDの結線を省略してますが、ちゃんと接続しないと書き込みできないのでご注意。
結線した状態でPCとシリアルケーブルで接続し、AVR-StudioからAVRprog.exeを起動してライタとして認識できればOKです。あとはAVRprog.exeで書き込みが行えます。 |
![]() |
||
秋月で売られているブレッドボードと、AVRを一枚のユニバーサル基板に載せたものです。AVRを使った小規模な回路を、簡単に試すという目的で作成しました。
ユニバーサル基板は秋月のBタイプで、これにブレッドボードを張り付け、左側の空きスペースに電源部とRS232Cコネクタを配置しました。AVRの両脇には10ピン2列のピンコネクタを付けて、AVRの端子をそのまま接続してあります。
セラロックはあえて基板上に載せませんでした。AVRとISPコネクタの間が空いているのは、そこにもう一組ICソケットとピンヘッダを載せるつもりで空けておいたのですが、途中で面倒になって止めた痕跡です(笑)。 |