Sanguino v1.4が2009/2/17にリリースされました。Arduino-0013に対応した差分パッケージになっています。
Arduinoは手軽に利用できる統合開発環境や、シンプルにまとめられた関数ライブラリによって、MCUのプログラミングを非常に身近なものにしました。いろいろなことが手軽にできるということになると、当然の結果として活用分野がいろいろと広がってきますが、そのときにArduinoのターゲットチップであるATMEGA168のI/Oピン数やメモリ容量が壁になってくることも多いようです。
このような壁を乗り越える方法として、ArduinoをATMEGA644に移植するプロジェクトがいくつかあるようです。ATMEGAシリーズのチップの中には、ATMEGA168の上位チップと捉えられるチップはたくさんありますが、特にATMEGA644はATMEGA168から移行しやすいハードウェア構成になっていることと、ピン数が多いながらも、DIPパッケージが利用できるなど、ホビーで取り扱いが容易なチップとなっています。
ここでは、RepRap Research FoundationのZach Hoeken氏によって実施されており、ATMEGA644にArduinoの移植を進めているSanguinoプロジェクトを紹介します。(Sanguinoのオリジナル基板も赤いですね:3倍速いわけではありませんが、メモリは4倍です :-))
そりゃあもう、うれしいこといっぱいです。 :-)
プログラム領域が足りないというつわものは当然として、入出力ピンの不足やRAM(データ領域)の不足に困っていた方にははずせない選択肢でしょう。
Sanguinoソフトウェアパッケージのインストール手順はここに書かれている通りです。
ソフトウェアパッケージのダウンロードはこちらから行います。この記事の作成時点では、1.3というのが最新のバージョンです。
パッケージに含まれる、core, bootloaders, libraries下のフォルダを、すでにインストールされているArduinoの該当フォルダにコピーします。coreとbootloaders下のフォルダは、ATMEGA644用の新規のファイル群なので単純なコピーとなりますが、libraries下のフォルダは、ATMEGA168用のライブラリにATMEGA644用の修正を加えたものなので、上書きになります。
パッケージ内のboards.txtにSanguinoのボード定義が記載されていますので、それをそのまま、既存のArduinoのboards.txtに追加します。
ArduinoのIDEを起動し、[Tool->Board]メニューから追加されたSanguinoを選択すると、新しく追加されたATMEGA644用のcoreファイルがコンパイルされるため、少し時間がIDEのレスポンスが戻ってくるまでに少し時間がかかります。この処理のメッセージとして警告が1つ出力されました。(割り込みハンドラの記述スタイルが古いのでしょうか。。。)