USBaspをLinux上でアップデートする
USBaspって知ってますか?
AVRの書き込み器の一つで、avrdudeも対応しています!!
これがあれば、AVR ISP markIIがなくてもAVRにプログラムをかけます!
で、AVRライターの予備に大昔にamazon買って、放ぽってありました。。。
購入履歴をみたら、2018年に287円で購入!
つまり、6年前に買ったようです(笑)
2018年は1ドル110円ぐらいだったので・・・安く買えたなぁ〜
で、早速、袋を破ってみると・・・
んん?
錆びてます!!
袋に入ったままだったのに、錆びてるって・・・
気持ちわるいので、早速、修正しましょう!!
ハンダごてでチャッチャッと新しいピンヘッダに・・・
最近はRG(老眼)が進んで、手元がよく見えず・・・
チャッチャッととはいきませんでした★
まあ、なんとか、出来ました!!
ついでにJP3にもピンヘッダを追加しておきました。
おそらく、このJP3は SlowClockだと思います。
オリジナルはJP1の表記ですが、この互換品はJP3の様です。
で、こいつで ATtiny10をプログラムしようと思ったのですが!!
ファームウェアが古くて
avrdudeavrdude: warning: cannot set sck period. please check for usbasp firmware update.
という warningが出てしまいます。
しかも、ATtiny10のTPI方式での書き込みには古いファームウェアでは対応していないようです!!
それでは!アップデートの準備です!
こちらのDEKOさんのページで詳しく説明してくれています★
が、Windows用に書かれているので、自分なりにまとめておきます。
必要なものは、
ここで、詰んでしまう人もいるかもしれません!!
だって、USBaspに書き込むためのAVRライタが必要ですから(笑)
でも、最近はArduinoをAVRライタにできるようになったし、なんとかしましょう!
今回は、AVR ISP markIIを使いました!
私の環境はPlatformIOを使っているので avrdudeは既にインストール済みです!
で、私のUSBaspはATmege8Aが載ってました!
なので、firmwareはATmega8用 [usbasp.2011-05-28/bin/firmware/usbasp.atmega8.2011-05-28.hex] を使うことに!
接続は
- ターゲットのUSBaspのJP1をジャンパピンで接続
- AVR ISP markII ←→ USBasp 間の線を接続
MISO 1←→9 MISO Vcc 2←→2 Vcc SCLK 3←→7 SCK MOSI 4←→1 MOSI RESET 5←→5 RST GND 6←→10 GND
で、最後にavrdudeでファームウェアを書き込めば終了です。
avrdude$ avrdude -c avrisp2 -p m8 -U flash:w:usbasp.atmega8.2011-05-28.hex
ちなみに、オプションは -c でプログラマ(ライタ)を指定して、-p でチップの種別を指定します。-U でメモリの種類[flash]、書き込み[w]、ファイル名の指定をします。
これで、完璧ですな★
コメント
コメントを投稿