米粒AVR(tiny10)でLチカTrying ATtiny10
秋月電子でATMEL社のATtiny10が新発売になりました。
http://akizukidenshi.com/catalog/g/gI-04575/
ATtiny10は6ピンの米粒大のCPUです。
早速入手して試してみました。
1. プログラム環境の準備
プログラムの書き込みにはTiny Programming Interfaceに対応したプログラマーが必要です。いつも使っているUSBTinyISPはISPにしか対応していませんので、新たに、AVRISP mkIIを購入しました。秋月で3000円で入手可能です。
開発環境は MacOSXのものを使いたいところですが、手っ取り早く試すためにAVR Studio をWindowx XP上にインストールしました。
ATMELのページから入手可能です。使ったプログラムは次の通りです。
- AVR Studio 4.19(build 730)
- AVR Toolchain 3.3.0 Installer
2. 変換基板への取り付け
SOT32パッケージはそのままではブレッドボード等で扱い難いため、変換基板を利用しました。
なお、現在秋月で販売中の変換基板はピッチが微妙にあわないとの情報もあります。私は手持ちの旧基板を利用しましたが、新規に購入する場合には注意が必 要です。また、変換基板に実装済みの「ATtiny10実装モジュール (米粒AVR)」も新版の基板を使っているので同じ問題があります。
3. 配線
TPIでの書き込みのためには、次のように配線します。
AVR PIN | AVR ISP |
1 | MISO |
2 | GND |
3 | SCK |
4 | NC |
5 | Vcc |
6 | RST |
私は、下記のようなクリップ付きのISP用ケーブルを作成していましたので、それを使いました。
AVRISP mkIIは電源を供給しません。別に外部電源をつなぐことが必要になります。
4. Lチカ プログラム
PB0 (1ピン)につないだLEDを点滅させるプログラムをCで書きました。
#include <avr/io.h> #include <util/delay.h> int main() { DDRB = 0xff; for ( ; ; ) { PORTB |= 1; _delay_ms(500); PORTB &= 0xfe; _delay_ms(500); } }
上記のコードをavr-gccでコンパイルすると90byteになります。全体の9%程度です。
5. 実行
書き込みが終了するとプログラムが実行されます。
まいどですー。ちょっと勉強させて頂きます。
始めまして、米粒ATtinyに興味を持って自分も遊ぼうと思ったのですが書き込みができません。。
こちらのプログラムを失礼ではありますがコピーさせてもらいビルドするとエラー。。
アセンブラしか対応してないみたいな感じの英語が出たんですけど対策わかりますでしょうか?
windowsでしたら、AVR Studioの最新版をお使い下さい。
コンパイラは別にダウンロードする必要がありますので、それを入れ忘れているのではないでしょうか。