You are here

Sanguinoとは

News

Sanguino v1.4が2009/2/17にリリースされました。Arduino-0013に対応した差分パッケージになっています。


Arduinoの制約

Arduinoは手軽に利用できる統合開発環境や、シンプルにまとめられた関数ライブラリによって、MCUのプログラミングを非常に身近なものにしました。いろいろなことが手軽にできるということになると、当然の結果として活用分野がいろいろと広がってきますが、そのときにArduinoのターゲットチップであるATMEGA168のI/Oピン数やメモリ容量が壁になってくることも多いようです。

このような壁を乗り越える方法として、ArduinoをATMEGA644に移植するプロジェクトがいくつかあるようです。ATMEGAシリーズのチップの中には、ATMEGA168の上位チップと捉えられるチップはたくさんありますが、特にATMEGA644はATMEGA168から移行しやすいハードウェア構成になっていることと、ピン数が多いながらも、DIPパッケージが利用できるなど、ホビーで取り扱いが容易なチップとなっています。

ここでは、RepRap Research FoundationのZach Hoeken氏によって実施されており、ATMEGA644にArduinoの移植を進めているSanguinoプロジェクトを紹介します。(Sanguinoのオリジナル基板も赤いですね:3倍速いわけではありませんが、メモリは4倍です :-))

何がうれしい?

そりゃあもう、うれしいこといっぱいです。 :-)

  • デジタル入出力ピンが24本に増える
  • アナログ入力ピンが8本に増える
  • 60KBを超えるプログラム領域を利用できる
  • 4KBのRAMを利用できる
  • シリアルポートが2つに増える

プログラム領域が足りないというつわものは当然として、入出力ピンの不足や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つ出力されました。(割り込みハンドラの記述スタイルが古いのでしょうか。。。)

開発ソフト: 
チップファミリー: 
MCUチップ: