avr atTINY13a 1:自作


[書き込み器]
 2013年夏、毎日暑い日が続く。少し前の事だが次のような広告文が気になった。  秋月電子のカタログを見ているとavrのATTiny13Aが一個50円と出ている。「あれー、安い!」と思い試して見ようと思いました。PIC 12F629が70円なのであまり変わりませんが、Web上では時折見かけるICである。目先を変えてマンネリを脱出しなければ!と思っていた所で、一からスタートするのも面白い!。

[ AT2313と同じような型番ではないか! ]

 以前使っていたAT2313と2300違うだけです、少し親近感がもてるICですね。以前はアセンブラーでやっていましたが今は「C-言語」がメインですっかりやらない「アセンブラー」は忘れてしまいました。

 幸いやっているMikro C Proのavr版が動く様だし、無料で使えるのも魅力です。プログラムもほとんどAT2313と同じでプログラム流用出来ます(厳密にはかなり違う)。

[ 書き込み器 ]

 以前から使っているデジットの「AVRWRT」がそのまま使える様です。Softもこのまま「Tiny13A」を設定すれば動きそうです。まあ問題はないだろうと思いました。
 以前作ったIC書き込みアダプターは8ピンに対応していません。そこで急遽4ピンをGNDにつなぐピン式SWを追加してみました、これ書き込みが出来そうです(写真黄色いピンを差し込むとTiny13Aが書き込める)。
 何とか行けそうなので秋月電子に「ATTiny13A」を10個注文して送ってもらう事にしました。ICが来たのは7月初めでした、Webで注文すると2日程で届きました。


 雑用があるのですが「何か動かしてみたい!」という衝動から、とりあえずLEDをチカチカさせるだけの簡単入門プログラムを入れて見ました。別に考えるほどのことも無いのですが一応こんな感じです。  Configの書き込みはせず、初期設定のまま(内部発振で9.6/8MHzで1.2MHz動作)で動かすことにします。その結果!

☆プログラム通り動いた。
☆書き込み器が正常に書き込んでいる。
☆タイミングなどそれなりに動いているようだ。

 で、だいたい動くことが分かりました。

[回路図]
[ プログラム ]

1.ピンの初期設定のDDRBなど。
2.ポートを逆にして、LEDを点滅させる。
3.時間待ち(0.2mSec)
4.ループで[2]へ戻る。

☆DDRBの設定が違っています。PICと同じにするためで、ミスを減らす為で、ひっくり返して使っています。
☆今回はピン端子を読みだしていません、一方的に書き込んでいます。

------------------------------------------------------
/*  Attiny-13A                2013/7/21
    BY M.Kikuchi
    Config Low 0x6A High 0xFF       1.2Mhz    BOD=off
    Last Mod 2013/7/21       Used Rom  66 bytes
*/

void main() {
     DDRB =~0b00111000;       // 0=input ~(0=output)
     PORTB= 0b00111000;       // Pull UP
     //
     while(1){
         PORTB0_bit = ~PORTB0_bit;     //LED ON-OFF
         delay_ms(200);
     }
}
------------------------------------------------------
:1000000009C0FECFFDCFFCCFFBCFFACFF9CFF8CFA1
:04001000F7CFF6CF61
:10001400BFE9BDBFB0E0BEBFB7ECB7BBB8E3B8BB88
:1000240008B2B1E00B2608BA22E018E30EEA0A95FA
:0E003400F1F71A95E1F72A95D1F7F2CFFFCF39
:00000001FF

製作 2013/8/3 


 [MAIN MENU へ戻る]

inserted by FC2 system