Mac OS X で Arduino IDE 付属のavrdude を使ってみた

Arduino IDEに付属しているavrdudeを使うと、Arduinoへ直接へプログラムを書き込んだり、ブートローダを書き込んだりすることができます。Mac OS X だと、「file:///Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/doc/avrdude/」にドキュメントがあり、Webブラウザで閲覧できます。

/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin/ にツールはあります。そこをカレントディレクトリにしてコマンドを実行するのが簡単でしょう。下記の例では、USB接続したマイコンへmain-12.hexというプログラム(hidspxのプログラム)を書き込んでいます。書き込みにはArduino ISPを使っています。

$ sudo ./avrdude -C ../etc/avrdude.conf -b 19200 -c avrisp -P /dev/tty.usbmodem1411 -p t2313 -e -U flash:w:main-12.hex:i -F
Password:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.06s

avrdude: Device signature = 0x1e910a
avrdude: erasing chip
avrdude: reading input file "main-12.hex"
avrdude: writing flash (2022 bytes):

Writing | ################################################## | 100% 5.23s


avrdude: 2022 bytes of flash written
avrdude: verifying flash memory against main-12.hex:
avrdude: load data flash data from input file main-12.hex:
avrdude: input file main-12.hex contains 2022 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 3.12s

avrdude: verifying ...
avrdude: 2022 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

下記ではATtiny2313のヒューズビットを更新しています。

$ sudo ./avrdude -C ../etc/avrdude.conf -b 19200 -c avrisp -P /dev/tty.usbmodem1411 -p t2313 -U hfuse:w:0xdb:m

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.06s

avrdude: Device signature = 0x1e910a
avrdude: reading input file "0xdb"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.06s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xdb:
avrdude: load data hfuse data from input file 0xdb:
avrdude: input file 0xdb contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.02s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.
$ sudo ./avrdude -C ../etc/avrdude.conf -b 19200 -c avrisp -P /dev/tty.usbmodem1411 -p t2313 -U lfuse:w:0xff:m

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.06s

avrdude: Device signature = 0x1e910a
avrdude: reading input file "0xff"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.06s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xff:
avrdude: load data lfuse data from input file 0xff:
avrdude: input file 0xff contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.02s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.
同じタグの記事: Arduino
同じタグの記事: ATtiny2313
同じタグの記事: avrdude
同じタグの記事: Mac OS X
同じカテゴリの記事: General
関連書籍: Arduino