2012年2月7日火曜日

Leonardo っぽいの


Arduino の新シリーズにArduino Leonardo という、Atmega32u4 チップを使ったボードが予定されています。
発表されてから4ヶ月以上たちますが、本家からはまだ発売されていません。
32U4 の機能でUSB シリアル変換を実現し、部品点数を大幅に省略しているのが特徴です。


上:aitendo AVR-USBasp (Atmega8) 下:ダ・ヴィンチ32U (Atmega32U4)

Strawberry Linux が製造・販売する、Atmega32u4 ボード「ダ・ヴィンチ32U」は、
Leonardo ブートローダー書き込み済み (with Arduino Bootloader) 版があります。
ボードは完成品。改造なしにLeonardo として使え、現在売られている互換製品の中でも抜群に安い(1,260円)です。



接続ピンは自分で付けるため、どの向きにつけるかは悩みましたが、結局 Arduino スタイル(基板表面にソケット)で付けました。

Arduino 1.0 IDE で使用する場合、boards.txt の書き換えが必要です。
マックの場合は Arduino.app を右クリックして「パッケージの内容を表示」を選び、
> Contents > Resources > Java > hardware > arduino とフォルダを辿ったところにあります。

/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/boards.txt

テキストエディタで開き、147行目〜161行目あたりの leonardo で始まる行のコメントアウトを外します。(行頭の# を消す)
保存して IDE を再起動すれば、Tools > Board からArduino Leonardo を選択できるようになります。

このダ・ヴィンチ32U は Atmega32u4 のI/O ピンが全部出ているのが特徴ですが、
基板に書かれているIOピン名称はArduino 互換ではないため、読み替えが必要です。

IOピン名称と、Arduino ピン名称の対応は、boards.txt と同じフォルダ内の、
> variants > leonardo フォルダにある、pins_arduino.h を見ると書いてあります。
/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/variants/leonardo/pins_arduino.h

ダ・ヴィンチ32U と Arduino Leonardo のピン名称対応表。

いくつかサンプルを動かしてみて、Uno と全く同じというわけではない、というのが感想です。
サンプルに修正が必要なものもありました。
今後何回かにわけて、掲載します。

現時点で、Arduino Leonardo は正式にサポートされていません。
発売が遅れているのも、何かバグが見つかったからかもしれません。

このボード、あるいは別の32U4 ボードをLeonardo として使う場合、
その点を踏まえた上で、お楽しみください。

0 件のコメント:

コメントを投稿