2007年12月16日

BASICでI2C スレーブ実験U

DSC00383.jpg

久しぶりにBASICでの、I2Cスレーブ実験の続きをやりました。
前回、LCDはだいたい駆動できたので、次は7SEGLEDのダイナミック駆動に挑戦しましたが、やはり、割り込み無しのソフト処理だけでは取りこぼしがあります。
50回に一回くらいのミスまでは詰められたのですが、エラーはなくなりません。
ダイナミック駆動は別の方法をそのうち考えようと、スタティック駆動に挑戦しました。
こちらは、LCDも動いていますし、I2Cのデータ読み込みに専念できますので、当然のことながら簡単に仕上がりました。
ATTiny2313は、I2Cの制御用PINに2本使いますので、残りの使用できるポートは15本です。
Dotを除けば、7SEGLEDが2個制御できることになります。
残りのポート1個は、2桁に1個だけDot表示できるようにすれば良いでしょう。
とりあえず、ブレッドボードで動いている様子を、写真と動画で紹介します。
数字の0から9までのデータを10ms置きに送るところからスタートし、200ms置きに送るところまでを撮影しました。

これで、I2C制御できる 7SEGLEDスタティックドライバー(2個駆動)が¥120でできたことになります。

MOV00382.MPG
posted by jn3xby at 22:50| Comment(0) | TrackBack(0) | AVR&BASIC

2007年12月09日

またまた、AVR USB ライター

DSC00376.jpg

BASCOM-AVRで使用するUSBライターとして、AVRaspを製作し、愛用してきましたが、kumanさんのサイトでATMELの提供する開発ツールであるAVRStudio4で使用できるUSB ライターの製作記事を見つけました。
名前がAVRISPMKUとなっており、もしかしてBASCOM−AVRでも使えるのではないかと期待して作ってみました。
kumanさんによれば、原典はATMega168でXTALが16MHzということで、kumanさんご自身でATMega8で12MHzXTALにプログラムを変更されており、お願いしてMega8用のプログラムを送っていただき、製作しました。
同時に、16MHzのXTALも大変お世話になっているOMさんに送っていただき、ATMega168 16MHzXTALも実験してみました。

DSC00372.jpg

いずれも快調に動いております。
しかし、肝心のBASCOM-AVRでは動きませんでした。
このライターは書き込みスピードではAVRaspを更に少しだけ上回っている感じです。
また、FUSE bitの設定がデバイス毎にチェックボックスでできるようになっており、視覚的で使いやすくなっています。
ライター部分のS/Wだけ独立させてBASCM-AVRのEXTERNAL Writerとして使用できないか検討してみましたが、残念ながらできないようでした。
AVRStudio4を使ってアセンブラでプログラムを作る方には、シンプルで安価な高速ライターとしてお奨めです。
今回も、FRISKケースで作りました。
今回は、基板パターンは書いたのですが、1台だけ蛇の目基板で作りました。
マイコンは、ソケットにしたため高さ方向で高くなり、FRISKの蓋は穴を開けてあります。

DSC00375.jpg

USBAVRminiProg.BMP
回路図

kumanさんのサイトの記事
http://www.geocities.jp/kuman2600/n6programmer.html#12

原典のサイトの記事
http://www.simonqian.com/en/AVRminiProg/index.html
posted by jn3xby at 15:30| Comment(0) | TrackBack(0) | AVR&BASIC