Arduino Uno R3を使って、バックアップ用に生のATmega328Pにブートローダを書き込みました。次に、Arduino Uno R3とATmega328Pとの接続図、およびATmega328Pのピンアサインを示します。

ブートローダを書き込みの接続図

uno01

  • Arduino Uno
  • ブレッドボード
  • ATmega328P(ブートローダを書き込んでいないもの)
  • 水晶発振子(16MHz)
  • 積層セラミックコンデンサ(18〜22pF)× 2個(わたくしは手元になかったので10pFのものを使用しました)
  • カーボン抵抗器(10kΩ)
  • ジャンパワイヤ少々

Arduino IDE(Ver.1.6.7)から、次の手順でATmega328Pにブートローダを書き込みます。大きな流れとして、最初に「ArduinoISP」スケッチをコンパイルして、Arduino Uno R3上のATmega328Pに書き込みます。次に、書き込み装置を「Arduino as ISP」にして「ブートローダを書き込む」で生ATmega328Pに書き込みます。

  1. メニューバー → ファイル → スケッチの例 → ArduinoISP を選択
  2. “マイコンボードに書き込む” を選択し、ArduinoISPをArduino UNOに書き込む
  3. メニューバー → ツール → ボード → “Arduino Duemilanove or Diecimila” を選択
  4. メニューバー → ツール → ボード → “ATmega328” を選択
  5. メニューバー → ツール → ポート → Arduino/Genuino Uno のシリアルポートを選択
  6. メニューバー → ツール → 書込装置 → “Arduino as ISP” を選択
  7. メニューバー → ツール → “ブートローダを書き込む” を選択
手順から見ると、Unoにブートローダを書き込んで、書き込んだブートローダを生ATmega328に書き込んでいるようである。