自作Sanguino

ArduinoDuemilanove328 (ATmega328)ではピン数やメモリーが足りなくなった場合、ArduinoMega(ATmega1280)という選択肢があります。
ArduinoMegaは以下のようにDuemilanove328に比べて大幅に拡張されています。

Duemilanove328 Mega
デジタル入出力ピン 14本 53本
アナログ入力ピン 6本 16本
flash memory 32KB 128KB
RAM 2KB 8KB

しかし、値段が、Duemilanove328が約¥3,200なのに対し、Megaは約¥7,000と値段もメガです。
また、MegaのATmega1280は今のところ入手が簡単でないのと、表面実装パッケージ(TQFP64)なので、自作のハードルは高いです。


SanguinoはATmega644Pを使用したArduino互換機(拡張機)で、以下のスペックとなります。Duemilanove328とMegaの中間といったところでしょうか。

Duemilanove328 Sanguino Mega
デジタル入出力ピン 14本 24本 53本
アナログ入力ピン 6本 8本 16本
flash memory 32KB 64KB 128KB
RAM 2KB 4KB 8KB
また、ATmega644PはDIPパッケージなので、ブレッドボードで簡単に使えます。


日本ではSanguino互換のマイクロファン製REDUINO-GHOST644Uが入手しやすいと思います。ただし、完成品ではなくキットです。約¥3,780で販売されています。


Sanguinoについて、詳しくは↓を参照してください。
http://www.microfan.jp/sanguino


ということで、Sanguinoを作ってみました。
ATmega644Pは秋月で¥500で購入しました。


■以下は導入メモ。
回路は↓を参考に。
http://sanguino.cc/hardware
自作arduinoの時は内蔵オシレータを使用して8MHzで動作させましたが、Sanguinoは8MHzのブートローダが用意されていないので(自分でコンパイルすれば可能なようですが)、クリスタルを使用して16MHzで動くようにしました。セラロックの方が回路は簡単になりますが、ATmega644Pではセラロックは安定しないというような情報がありましたので、とりあえず今回はクリスタルを使用しました。


arduino-0018がインストール済みとします。

http://code.google.com/p/sanguino/downloads/list からSanguino-0018r2_1_4.zipをダウンロードし、
Sanguino-0018r2_1_4.txtに従い、解凍後のSanguinoをarduino-0018\hardware\の下にコピーします。(arduino-0018\hardware\Sanguinoになる)


ブートローダは以下を使用します。
D:\Sanguino-0018r2_1_4\Sanguino\bootloaders\atmega644p\ATmegaBOOT_644P.hex

ブートローダーの書き込みとFuseBitの書き込みは↓を参考に。

http://www1.parkcity.ne.jp/kama/Arduino.htm
http://pc.watch.impress.co.jp/docs/column/musashino_proto/20090806_307235.html


Arduino IDEから"Tools"-"Board"で"Sanguino"を選択
後はArduinoと同じように使えます。


※8/13 文章全体を見直しました。