AVRISP mkII とAVR StudioとArduinoIDE

AVR Studio5を使って書き込みます


Arduino初心者の私ですが、AVRISP mkIIを購入しましたので、早速、新品のATMEGA328P-PUにArduinoのブートローダーを書き込んでみました。

まず、ATMEL社のWebよりAVR Studio5をダウンロード、そしてインストール。続いてAduinoボードから現在動作しているATMEGA328を、足を曲げないよう丁寧に取り外し、新規に購入したATMEGA328に装着し直します。AVRISP mkIIをISPコネクタにつなぎ、さらにUSBケーブルでPCに接続します。Arduinoボード本体も電源を入れます。

AVR Studio5を起動して「Tools – AVRprograming」の順に進み [Tool]欄が”AVRISP mkII”, [Device]欄が”ATmega328P”,[Interface]欄が”ISP”になるようにセットして「Apply」ボタンをクリックします。その後表示された「Interface settings」メニューをクリックすると、書き込みスピードの設定画面になります。ここはデフォルトのまま125KHzにしておきました。

さて次は”Arduino bootloader”の指定です。やはり左のメニューから「Memories」をクリックして、[Flash]欄に適正なHexファイルを指定します。最後に「Program」ボタンをクリックで書き込むことができます。その後メニューの 「Fuses」 をクリックしてヒューズビットを書き込みました。

今回私は 
arduino-1.0\hardware\arduino\bootloaderes\atmega\ATmegaBooT_168_atmega328.hex を書き込んでみました。

書くと簡単ですが、私が上記の手順を発見するまで結構時間がかかってます。(….半日ほど)でも、実際の書き込み作業は数秒で終わり、まったくあっけないです。

果たして生ATMEGA328はArduinoの動作をはじめました。もう、私は得意満面です。

ところが、です。今度はAduinoIDEから同様に書き込もうとしましたが、何回やってもエラーが出てうまくいきません。原因を調べたところ。ここに回答が載っていました。

AVR StudioとArduinoIDEは、同時にこの機能を使うことはできないみたいです。具体的にはAVR Studioが使うAVRISP mkII用のUSBドライバとArduinoIDEが使うAVRISP mkII用のUSBドライバが違う物で、共存できないとのことでした。

そういえば、AVR Studio5をインストールするときに”USB なんたら jungo driver をインストールするか?”との表記があったような気がします。 「当然でしょう!」と悪態ついた事を思い出しました。

ArduinoIDE用のAVRISP mkII用USBドライバは上記フォーラム中に書いてありますが、

..\arduino-XXXX\hardware\tools\avr\utils\libusb\bin 以下のディレクトリに入っていました。

ArduinoIDEの1.0版では、Fileメニューに「Upload Using Programmer」の項目があります。試してみるとブートローダだけでなく、スケッチもAVRISP mkII経由で書き込みができました。すごいですね、Arduino!

AVRISP mkII とAVR StudioとArduinoIDE” への5件のコメント

  1. ピンバック: AVRライターでArduinoのスケッチを書き込む | ina111's blog

  2.  ありがとうございます。
     この記事は大変参考になりました。
     僕がやってみて成功した結果を申しますと、Atmel-ICEのドライバは書いていただいたとおり、USBなのですが、Jungoになっていて、Arduino-IDEでは認識できないようです。
     一旦 JungoのドライバをLibUSB(Sourceforgeにあります)に置き換えるとArduino-IDEでも認識できるようになりました。
     残念な点は、Atmel-Studioから使えなくなってしまいましたが、使っているPCは、何年も前のものであることもあって、非常に起動時間がかかって重いので、使いこなせていませんから、まぁいいかってところです。

    • はいたか かずひろさん今晩は、コメントありがとうございます。
      私は知らなかったのですが、libusb のfilter driverを使うと双方で使える様になるのですね。
      情報ありがとうございました。

  3.  説明が悪くて済みません。うちではとりあえずArduino-IDEで使えるように
    なっただけで、Atmel-Studioで使うところまでいっていないのですが、
     おっしゃるとおり、Filter Driverを使うやり方は、次のURLに書かれています。
     https://ehbtj.com/electronics/arduino-sckech-avrisp-mkii/
     やってみてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です