ArchLinux,MATLAB,制御理論など(の予定)

Arduinoを使ってATTiniy13aを弄る

2016-09-26

参考URL - Arduino ISPを経由して、ATtiny13にロードする(2) - Arduino IDEでATtiny他の開発(Arduino-ISP編) ハードウェアを弄るのは得意ではないのですがやりたいことがあるので重い腰を上げました。 とりあえず安いマイコンが使いたかったのでATTiny13aに決定。 開発環境を調べたらどうやらArduinoのIDEを使うことが出来るらしいので環境を整えてみた。

Arduino IDEのインストール #

基本的にArduino on arch linuxの通りに行えば終わり。yaourtから手に入れられるし、ユーザをグループに追加すればさくっと導入できる。

ATTiny13aを使えるようにする #

以下のURLを参考にした。 Arduino IDEでATtiny他の開発(Arduino-ISP編) ただし、この記事はArduino IDEのバージョンが1.0.5で行っているのでそのままでは上手く行きません。 そこで以下のURLを参考にしながらboardを追加して書き込めるようにしました。 Arduino Hardware Cores migration guide from 1.0 to 1.6 どうやらhardwareの認識のディレクトリ階層が変わったみたいですね。 hardwareを追加するとTools->boardが増えているはず。ちなみにATTiniy13はダウンロード時にboards.txtの中でコメントアウトされているのではじめは見当たりません。コメントアウトを解除しました。 確認を行ったら、 1. Arduino IDEがサンプルとして持っているArduinoISPをArduinoUNOに書き込む 2. Tools>ProgrammerでArduino as ISPを選択 3. Tools>boardでATTiny13を選択 4. 以下のスケッチを書き込む

1
2
3
4
5
6
7
8
9
void setup() {
pinMode(3, OUTPUT);
}
void loop() {
digitalWrite(3, HIGH);
delay(1000);
digitalWrite(3, LOW);
delay(1000);
}

  1. プログラム上の3ピンがATTinyの2ピンに相当しているので、LEDを接続してLチカ

ただし、買ったばかりのATTiny13aだと内部クロックが正しくないため設定した時間よりも長い時間の点滅になってしまうと予想される。 そこでブートローダを書き込むのだが、この際このまま行うとエラーが起きるので、 Arduino ISPを経由して、ATtiny13にロードする(2) を見てブートローダを書き込んだ。 こうすると、ブートローダの書込後のメッセージが一見エラーっぽく表示されるが、LEDがちゃんと正しそうな点滅になる。

ぱっと環境が揃ったのはいいんだけど、中で何をしてるのかわかってないのがだめだなぁ。


Blog comments powered by Disqus