今日はマイコンチップの ATmega328 に Arduino のブートローダを書き込んでみたので、その記録です。
手っ取り早い方法としては、"ARDUINO CW KEYER" が書き込まれている Arduino 本体からマイコンチップの ATmega328 を引き抜いてそのまま使ってしまうのが一番簡単です。
そして、空いたソケットにはブートローダ入りの ATmega328 を買って挿すだけで、再び新たな Arduino として蘇ります。(ブートローダ入りでも @350 で購入できます。)
このようにお金をかけずとも超簡単にスケッチ入りの ATmega328 は作成可能ですが、以下に私の書込み環境を紹介しておきます。
1. ATmega328 にブートローダを書き込む
ブートローダを書き込む方法としては様々な方法がありますが、私はスイッチサイエンスの AVR ISP シールドキットを使って書き込んでいます。
所有している Arduino にこのシールドキットを乗せるだけで簡単に AVRチップのプログラマ(書き込み器)にすることができます。
(ATtiny などの AVR チップにもプログラムが書き込めます。)
書き込み方法についてスイッチサイエンスのページに詳しく書かれており、この手順通りに書き込みすれば、まず失敗することはありません。
私は、ゼロプレッシャー IC ソケットを使った Arduino Uno 互換機を作って、これに AVR ISP シールドキットを装着して、ATmega328 のスケッチ書込み専用機として使っています。
この Arduino Uno 互換機は、秋月電子の "ATMEGA168/328用マイコンボード(I/O ボード)" を使って組み上げていますが、IC ソケットの代わりにゼロプレッシャー IC ソケットを取り付けたため、このままでは上に乗せるシールドが部品にあたって乗せられなくなるため、ピンソケットを2段に重ねて下駄を履かせました。
互換を作るなら @150で購入できる専用機版を使った方が、万能基板に配線するよりずっと手軽に組み上げることができます。
私はこの専用基板を購入して手持ちの部品を使って組みましたが、必要な部品が全てセットになっているキットも販売されているので、そちらを購入する方が手っ取り早いと思います。
ちなみに、FT-232RL のモジュールは基板に直接ハンダ付けせず、他でも流用できるように取り外しできる ”丸ピンソケット” を使いました。
これで、Arduino Uno のブートローダ入りの ATmega328 がいくつでも作れるようになりました。
2. スケッチを書き込む
あとはブートローダを書き込んだ ATmega328 にスケッチを書き込むだけです。
いつも通りにパソコンからスケッチを流し込むだけです。
とりあえず 5個の AVR に Arduino のブートローダを書き込みました。
これで何時でもこの AVR にスケッチを書き込めるようになりました。
万能基板を使ってプロトタイプもいいですが、ここは一気に専用基板を作って美しく仕上げたいものです。
う~。早く KiCad の使い方を覚えなければ・・・。