昨日、ハードウェアは出来上がったもののソフトの設定がうまくいかず困っていましたが、下記のようにしたところ動作できるようになりました。同様のことをされる方のためにまとめておきます。
1. ハードウェアの仕様
Arduino Severino (こちら)
片面基板でできる。注意点は、シールドを乗せるところに背の高い部品を実装しないことと、RS232C通信用の2個のトランジスタが日本でよく使われているピン配置と異なること。
CNCで基板を切削し、手持ちの部品を実装させました。AVR はATmega328P を乗せて、16MHz で動かします。
2. ブートローダーの書き込み
売っているArduinoと同様の使い心地にするために、ブートローダーを書き込む。
書き込みにはAtmel のISP AVRISP mkII を使用し、Atmel studio 6 で書き込みを行った。
AVRISP mkII のドライバがWindows8.1 ではちゃんとしたインストレーションが行われないという問題があったため、ドライバーを入れ直した。(Jungo Connection のWINDriverという設定とした)。
書き込んだブートローダーはArduino Unoと同様に、optiboot_atmega328.hex を使用した。
また、フューズ、ロックビットのセッティングも、Arduino Unoの設定と同様に、
EXTENDED = 0xFD
HIGH = 0xD6
LOW = 0xFF
LOCKBIT = 0xCF
と設定して問題なく動作した。
3. スケッチのコンパイルとロード
スケッチはArduino IDEでコンパイルして、シリアルポート経由で、いつものようにボードに転送する。
ボードは、Arduino Unoを選択。(Duemilanove ではうまくいかなかった)