aitendoから最小構成のAeduino KIT「あちゃんでいいの」とそれに使うAVRマイコンATmega328P-PUを購入しました。
まず、最初の作業は、ATmega328P-PUにブートローダを書き込むことです。
Arduino UNOを使ってにATmega328Pにブートローダを書き込む方法は、Arduinoのホームページに書いてあります。
が、英文で私にはよくわかりません。そこで、日本語でこれを紹介しているWebページを探すと「しなぷすのハード製作記」に記事がありました。
これを参考にして、ブートローダを書き込むことができました。しなぷすさん ありががとうございます。
これから挑戦する方のために、方法を記録しておきます。
ArduinoとATmega328Pの接続は次の回路図ようにします。
実際にAeduinoとブレッドボードの配線の様子です。
Arduinoのホームページに紹介されている実体配線図は下の図のようにになっています。
Arduino.ccより
この実体配線図と同じように配線しましたが、違いはArduinoのRESETとGNDの間に10μFの電解コンデンサが入っていることです。Arduinoのホームページでは、文章でArduino UNOの場合は、10μFを入れると書いててあるようです。
ブレッドボード上に10μFを取り付けたのには、理由があります。最初、Ardiono本体に10μFを取り付けたのですが、
avrdude:stk500_getsync():not in sync:resp=0x00
というエラーが出て、Arduinoにスケッチが書き込めませんでした。
ということで、ブレッドボード上に電解コンデンサを配置することにし、ブートローダの書き込み時だけArduinoに接続するようにしました。
書き込みの手順を紹介します。(詳細は「しなぷすのハード製作記」のWebページを見てください)
(1)Arduino IDE(ここでは、バージョン1.0.6を使いました)で
ファイル→スケッチ例→ArduinoISPを選びます。
この段階では、まだブレッドボードとArduinoを接続しません。
(2)ツール→マイコンボード→Arduino UNOを選びます。
(3)ツール→シリアルポート→COMポートを選びます。(Arduinoが接続されているCOMポート)
(4)Arduino UNOにArduino ISPのスケッチを書き込みます。上記のようにArduino本体のRESETとGNDに10μFを接続しているとエラーが出て、スケッチを書き込めません。
(5)Arduino UNOとブレッドボードを接続する。
(6)ツール→書き込み装置→Arduino as ISPを選ぶ。
(7)ツール→ブートローダを書き込む を選ぶ
約30秒で書き込みが終了します。
ブートローダが正しく書き込まれたかどうかの確認ですが、Aeduino本体のATmega328Pと今回書き込んだATmega328Pを入れ替えて行いました。
Lチカのスケッチが正常に動きましたので、ブートローダが正しく書き込まれたと判断しました。
今回は、未使用のATmega328Pを使いました。未使用の場合は、16MHzの水晶発振器は不要とのことでしたが、うまく書き込めず、水晶発振器をつけてうまく書き込めました。
これで、ブートローダの書き込みができましたので、次は「あちゃんでいいの」を組み立てます。