今までUSBaspLoaderについて色々やってきましたが、この辺でまとめたいと思います。
原典は下記URLです。
https://github.com/baerwolf/USBaspLoader
ここにあるUSBaspLoaderは対応deviceが複数あり再現性に優れています。私はATmega168,1248、644,32の4種類のAVR用にコンパイル、書き込みを行い何れも正常に機能しています。
USBapLoaderの特長:
1.selfprogrammingが可能
2.書き込み速度が速い
3.boot領域にbootloaderを書き込む関係でユーザ用のFlash領域がその分とられてしまう。
これが欠点かも知れませんがFlash容量の大きいAVRを使うことでこの欠点は補えるのではないかと思います。
USBaspLoaderを使う上で大事なものはPC上でUSBaspLoaderを操作するアプリケーションプログラムです。これはsenshuさんが作られたavrdude-GUI(YCIT版)の改良、改善が行われてUSBaspLoaderにも対応、非常に使い勝手が向上しました。
http://www-ice.yamagata-cit.ac.jp/forum/viewtopic.php?t=1013&start=0
特長:
1.複数のUSBaspLoaderの使い訳が可能
USB:Device番号、serial番号の指定をすることで任意のUSBaspLoaderを使う事が出来ます。これは大変便利です。つまり、自作のserial番号のないUSBaspLoaderはDevice番号を指定すれば良く、両方を持つ場合はどちらか指定することで使い分けが可能です。
2.avrdude-GUIの画面から全ての操作が出来、DOS窓からのCUI操作をしなくても済みます。
3.F6を押すことでUSB listが表示されますので、接続されているUSBaspが一目で把握できます。
(USB listはUSBaspLoaderを使う上で表示させる必要があります。)
下記がそのlistです。
> usbtool.exe list
# 1 : bus-0:\\.\libusb0-0001--0x16c0-0x05dc "www.fischl.de", "USBasp" , Ldr0001
# 2 : bus-0:\\.\libusb0-0002--0x058f-0x6362 "Generic", "Mass Storage Device" , 058F312D81B
# 3 : bus-0:\\.\libusb0-0003--0x16c0-0x05dc "www.fischl.de", "USBasp" , 1234
# 4 : bus-0:\\.\libusb0-0004--0x16c0-0x05dc "www.fischl.de", "USBasp"
# 5 : bus-0:\\.\libusb0-0005--0x16c0-0x05dc "www.fischl.de", "USBasp" , Ldr0220
書き込まれたUSBaspLoaderはprogrammerそのものです。
では一連の操作について書きます。(画像参照)
1.GUI画面を開きF6を押してusbtool listをLog窓に表示させます。
2.使いたいUSBaspLoaderのserial番号又はDevice番号をコピーしてcommand line options欄に貼り付けます。
3.この時、 -P usb:Ldr0220 の様に貼り付けることが必要です。:の後スペースが入っていけません。
4.これで準備OK、画像の赤丸のDevice readをクリックしますと、この例ではATmega32(m32)が表示されます。
画像の例はserial番号無しを選んだ時の表示です。私の場合はATmega1284ーUSBaspLoaderです。
この後はユーザプログラム(xxx.hex)をドラッグ&ダウンでFlashに書き込みます。Boot enable jumperを外してresetを押すことでxxx.hexが起動します。違うプログラムを書き込む場合はjumperを付けでresetをす事でboot modeに入りますので上記手順で書き込むことが出来ます。
実際は何台もUSBaspLoaderをつなぐことはほとんどないと思いますが。
これでUSBaspLoaderは1件落着です。
2013/1/17(木)
ついでにATmega8にUSBaspLoaderを書き込んでみました。全く問題なく使えます。
text data bss dec hex filename
1968 8 52 2028 7ec main.bin
2K以内に収まっています。(avr-gcc-4.7.2使用)
次は何をやろうかな、気圧計が実用的で面白そう、気圧の変化をグラフでGLCD上に表示させれば台風や低気圧の接近の様子が分かりそう、、、、、、、、