N.Yamazaki's blog

主に音声合成について思ったことを書いてみようと思います。
<< Windows10でスリープから復帰できなくなった【真っ黒画面】 | main | UDG-1-WSNEを調査 >>
Atmel純正コマンドライン型の書き込みツール atprogram.exe の紹介
AVRマイコンの書き込みツールとしては、Atmel Studioといった統合プログラムを使えばよいのすが、大量に書き込む場合は、GUIよりコマンドラインのほうが便利です。バッチプログラムでも使えますしね。

今まで、STK500.exe(これもAtmel純正)を使っていたのですが、昨今のAtmel Studioには含まれていないし、自分の環境で最近なぜか使えなくなった("could not connect to AVRISP mkII on USB"というエラーでAVRISP mkIIが認識されない)ため、他の方法を探すことになりました。
他にも有名どころでavrdudeもありますが、今回はAtmel Studioに付属している純正のツールatprogram.exeを紹介します。

■atprogram.exeとは
AVRマイコンなどのAtmel製マイコンに書き込むためのコマンドラインプログラムです。もちろん、実際に書き込むにはAVRISP mkIIなどの書き込み器(ハードウェア)も必要です。

以下の機能があります。必要十分な機能は揃ってます。
  • .bin .hex .elfファイルの書き込み
  • 内蔵flashの読みこみ, 書き込み, 消去
  • フューズ、ロックビット、セキュリティビット、ユーザーページ、ユーザーシグネチャの書き込み
  • 接続している書き込み器の一覧出力
  • 書き込み器とのインターフェースの選択やクロックの設定

■インストール
Atmel Studioをインストールすれば、含まれています。
AtmelStudio7.0の標準的なインストールでは、次のところにありました。

C:¥Program Files (x86)¥Atmel¥Studio¥7.0¥atbackend¥atprogram.exe


■使用方法
例えば、Arduino Unoでも使われているatmega328pに書き込む場合、次のようにします。

>atprogram -t avrispmk2 -i ISP -d atmega328p program -f hoge.hex


フューズやロックビットを書き込むときは

>atprogram -t avrispmk2 -i ISP -d atmega328p write -fs --values FFD7FF write -lb --values FC

ちなみに、フューズはLow,High,Exの順です(atmega328pの場合)。
次のように複数のコマンドを並べて一括処理することもできます。

>atprogram -t avrispmk2 -i ISP -d atmega328p program -f hoge.hex program -ee -f hoge_eeprom.hex write -fs --values FFD7FF write -lb --values FC


より詳しい使い方は、コマンドのヘルプを参照します。コマンドの一覧は次で表示されます。ちなみに、atprogramのマニュアルを探したのですが、見つかりませんでした。

>atprogram -?


これはすべてのコマンドではなく、より詳しく知るにはhelpコマンドを使います。
例えば、書き込みのコマンド詳細は次で表示されます。

>atprogram help write


以上、atprogram.exeを簡単に紹介しました。avrdudeなどに比べてまだ知名度の低いツールですが、純正のツールは安心感がありますね。
 
| 電子工作 | 09:03 | - | - |
PROFILE
Follow
CATEGORIES
LATEST ENTRIES
SEARCH THIS SITE
RECOMMEND
RECOMMEND
RECOMMEND
Arduino Uno
Arduino Uno (JUGEMレビュー »)

AquesTalk pico LSIの評価ボードとして最適
RECOMMEND
Raspberry Pi Model B+ (Plus)
Raspberry Pi Model B+ (Plus) (JUGEMレビュー »)

これと AquesTalk pi で簡単にテキスト音声合成!
RECOMMEND
RECOMMEND
RECOMMEND
SONY MDR-CD900ST
SONY MDR-CD900ST (JUGEMレビュー »)

普段これで開発しています。
RECOMMEND
RECOMMEND
RECOMMEND