2009年7月29日水曜日

ブレッドボードラジオさんのTimer1実験追試

ブレッドボードラジオさんのTimer1実験追試をしてみました。
Timer1 = 0
Config Timer1 = Counter , Prescale = 8
Cls ' " "=9079
Lcd "1234567890abcdef" ' "1234567890abcdef"=45528
Lowerline
Lcd "1234567890abcdef"
'Delay '1003
'Waitms 1 '1003
Stop Timer1

T = Timer1
Cls
Lcd "T=" ; T

文の最初に’が記入しているのは消すのがめんどくさいのと、後から再利用するためコメント行にしています

Timer1、内部カウンタ1/8 AVR8MHz 1クロック 1μs
LCD表示テストCLS ” ”のみ 9079μs
LCD表示テストCLS ”1234567890abcdef”フル表示 45528μs
Delay 'Waitms 1は同じ 1003μs

LCDにフル表示すると45mSかかる、表示途中に割り込みが入ったら表示は?それとも割り込みを禁止するのか?LCD表示のためにAVRをもう1個追加するのか?実験はまだ続く

BASCOM-AVRの説明はO-Familyさんとブレッドボードラジオさんのホームページが解りやすく大変参考になります、。

2009年7月23日木曜日

AVRの割り込み時間15μS位?

タイマー0、タイマー1のCTCから同時に割り込みをかけた波形

上の波形 タイマー0 下の波形 タイマー1
同時に割り込みの場合、優先順位の高いタイマー1が約15μS早く変化している1クロック0.125μSとして簡単な割り込みで120命令実行?レジスタの退避と復帰に60命令位残りは出力ポートの命令やフラグの退避かな? BASCOM-AVRのプログラムシミュレーションの使い方がよく分からない!

2009年7月20日月曜日

CTC割り込み

CTC割り込み タイマー0,1 内部クロック 1Khzで割り込み

赤丸しるし箇所の記述ミス(修正済み)、最初にOCR0A、OCR1A と書きエラー、タイマー0は直接レジスタに書ける、タイマー1は16ビットのためCompare1aか OCR1AH,OCRAL、2個記述が必要、約1Khzで割り込みPortd.4Portd.5に出力', Compare A = Toggle はコメントをはずすとOC0A.OC1Aにも出力する。
時間が経つとまた同じミスを繰り返すと思う。つい思い込みで記述してしまうことが多い私。

2009年7月15日水曜日

CTCの実験



今度はCTCを使いLED点滅、赤線部を記述、内部クロック8Mhz OCR0A=0 4.00Mhz OCR0A=39 100Khz OCR0A=255 15.62Khz Dutyは多分50%と思う、クロックを分周により色々な周波数に設定できそう。タイマーを使いこなすのは難しい未だPWM、16ビットタイマー1もある簡単な命令からやろう、本を見ても難しい!
目標タイマー割り込み習得! 

2009年7月13日月曜日

LED点滅スピード




BASCOM-AVRでDO LOOP内にSET RESET、Toggle、PORTD=1、0の命令を実行SET RESET、PORTD=1、0は同等Duty32.9%、Toggleについては1/2でDuty50%、同じON、OFFでも命令の使い分けが難しい。
この実験のために8Mhz水晶発振器購入秋月150円、ATtiny2313100円と水晶発振器の方が高く用途に合わせ、内部クロックか外部クロックを選択すべき消費電流も増える。
水晶、セラミック振動子 安いがどこまで安定か不安(実験が必要)、水晶発振器は電源を繋げば確実にクロックが出る(5v、3.3v等電圧が安定していること)
19.6608Mhz水晶発振器どこか安く手に入らないかな。

2009年7月9日木曜日

ヒューズビット書き換え

            変更前VASCOM-AVRライタ画面、赤丸書き換え前
ATtiny2313ヒューズビット書き換え内部クロック1Mhzから8Mhzに変更

AVR Studio 4 の方がヒューズビット書き換えが分かりやすい(最初にデバイスを設定する、デバイスによって設定画面が違う?、出来れば画面をコピーしておく16進や2進での書き込みはミスを誘発しやすく私は勧められない)赤丸のチェックをはずしProgram、Readでヒューズビットが読み出されチェックボックスに反映される。



すぐ下にCkout(PD2)ピンの設定が有り外部にクロックを出力できる、秋月P-10テスターで周波数 を測定 1Mhz-1.054Mhz 8Mhz-8.66Mhz なぜか1/8分周にならない?後でマニュアルを見るか!寝い!

2009年7月7日火曜日

LCD表示OK


ブレッドボード用LCD表示テスト
/**
$regfile = "ATtiny2313.DAT"
$crystal = 1000000
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5
Config Lcdpin = Pin , Db6 = Portb.6 , Db7 = Portb.7
Config Lcdpin = Pin , E = Porta.0 , Rs = Porta.1
Config Lcd = 16 * 2
Config Portd.5 = Output

Cls
Lcd "LCD ABCD 1234 \*"
コピペしたら¥が\にVT100ターミナルを思い出した。
Lowerline
Lcd "0123456789ABCDEF"

Do
Portd.5 = 1
Portd.5 = 0
Loop
End
**/
青い字の文を追加でLCD表示テストOK、BASICコンパイラはめんどくさい初期設定をせずにすぐ命令を記述でき初心者に大変便利、AVRの機能を全て使いこなすのは何年先かな?多分一生無理!

ジャンパーワイヤーにテプラでLCD信号線名貼り付け DB7、RS等、これで空いているピンへすぐ変更が出来る。

2009年7月6日月曜日

ブレッドボード用LCD表示作成


ブレッドボードにピンヘッダーが太く刺さらないためにブレッドボード用LCD表示作成した。
材料 LCD 500円 秋月
   熱収縮チューブ 1Φ(住友電工FZタイプUL、少し高いUL認定品)250円 鈴喜デンキ
   線材 たぶんAWG26 長さ250mm 手持在庫
   0.6Φ スズめっき線 手持在庫
   20KΩ VR 手持在庫
   基板  手持在庫
   結束バンド 手持在庫(100円ショップ100本入り)
交通費 往復320円
   
半田コテの付け根付近を熱収縮チューブに擦り収縮させた。(ヘアードライヤーは温度が低すぎ)
12時過ぎたので、寝ます。

2009年7月5日日曜日

LED点滅成功



BASCOM-AVRでLED点滅成功写真のテスターに171.6khz表示、LEDは薄く点灯(LED+1KΩ)
リセット用抵抗入れてなく、ブッレドボードの上に置いている。
AVR Studio+BASCOM-AVRで書き込めるまで丸2日かかった、リストはたった8行。
/**
$regfile = "ATtiny2313.DAT"
$crystal = 1000000
Config Portd.5 = Output
Do
Portd.5 = 1
Portd.5 = 0
Loop
End
**/
だだし使用してない入力ピンのプルアップは設定していない。
BASCOM-AVRは入力、出力ともピン単位で簡単に替えられ便利、次はLCD表示に挑戦。
AVR Studio+BASCOM-AVRで書き込みまで経過は私自身、試行錯誤の繰り返しで記録を取ってないためパソコンの更新時が怖い、XPの延命を望む。

2009年7月4日土曜日

ISP書き込みクリップ製作

写真はDIP用ICクリップとAVR

写真の通りとてもシンプルなAVR、LEDチカチカテストのため必要な部材AVR、5V、GRD、リセット用抵抗、LED抵抗(LEDに抵抗を半田付け)=5点+ISP書き込みクリップ。
6ピンISPコネクターをブレドボ-ドに挿すより、ICテストクリップを使用した方が簡単に回路変更、実験 等が出来る。基板に実装時にもISP用ピンへダーが無くても書き込る、6本の配線が要らない、28ピンATMEGA88 にも対応(40ピンクラスは回路規模が大、基板もその分大きい為スペース的余裕)。

早くブレッドボードラジオさんの「BASCOM-AVRを使った初歩的な実験 」始めたい。

2009年7月3日金曜日

3端子レギュレター

S-81350HG発煙のため他のレギュレターXC6202シリーズ、78L05を出力ショートテスト。
XC6202シリーズ  16mA フの字保護回路
78L05      230mA 垂直定電流、加熱保護回路(安価で使い易い)
レギュレター出力をショートした場合、両方とも保護回路が働きショート解除後も5V出力OKです。
78L05の方は火傷しそうな発熱、XC6202シリーズは感じられず、負荷の安定している回路に適していると考えられる。
3端子レギュレターは一番壊れて欲しくない部品で壊れると、制御系、ドライブ系とも不安定になり最悪、人的被害、経済に多大な損失を出してしまう。
3端子レギュレターは入手しやすく安価で適材適所に使用することが安全で、安く、早く、定電圧源が出来る。

5V 30mAくらいの負荷容量はネットで調べると47uFと出ている、私は適当に100uFにしていたがこんなものかな?オーバーシュート、アンダーシュート、近くにセラミックを付けろ、等実際は波形を見なさいと言う事か!!

2009年7月2日木曜日

煙がもくもく上がるS-81350HG

アーやってしまった、出来上がった5V電源をショート、煙がもくもく上がるS-81350HG。
逆付けで壊れなっかたS-81350HGしかしショートに弱いようで、データーを検索すると
「S-813 シリーズには短絡保護回路が内蔵されていないため、実装時などに誤って短絡すると、その時に流れる過電流により素子を破壊することがあります。」22/33ページに記入あり。
XC6202シリーズ、「定電流制限回路とフォールドバック(フの字)回路により出力電流の制限と出力端子の短絡保護として動作します。」S-81350HGは設計年代が古くXC6202シリーズの方が使いやすいと思える、値段も秋月で、2個100円、4個200円と違わない。
カタログ、データー等に注意では無く警告として最初のページに記載すべき、電源は工作中にショートは当たり前で簡単に壊れる様では使用できない。
XC6202シリーズもショート試験が必要。

AVRのLEDチカチカまで道のりは長い、回り道も工作レベルを上げるノウハウとして必要だが破壊テストは危険が伴う、お金がかかる、他からあまり評価されないと考える人も多い。
メーカー製品は開発コストの相当部分が最悪値(量産の為)、操作ミス(後からのクレーム)、例外処理(ユーザーの我侭、開発営業の自己満足)、火災、人身事故等に対応してる事が製品のマニュアルから読み取れる。

2009年7月1日水曜日

5V電源製作

AVRマイコン用電源製作、AC/DCアダプター9Vから5V3端子レギュレータS-81350HG使用


実はミスをしています、3端子レギュレターを逆付け、電源を入れて発見、AVRに接続せずほっとした。逆付けを直し、5V出力OK、結構3端子レギュレター丈夫。
3端子レギュレターの入力、出力コンデンサに100U、100U取り付けたが、0~30mAの適正容量は?工作をやっている人はどうやって決めているのか?。