Arduino IDEのリリースノート
0017 - 2009/7/25
ドキュメントおよびスケッチ例
- Tom Igoe氏提供の、新しいスケッチ例およびスケッチ例の更新
コアおよびライブラリ
- Limor Fried氏による、LiquidCrystalライブラリの更新。詳しくはリファレンスを参照のこと。
- Firmataライブラリをバージョン2.1(リビジョン25)に更新。
- Servoライブラリを、Michael Margolis氏によるMegaServoに変更。 普通のArduinoで最大12個、Arduino Megaで最大48個のサーボモーターを制御可能。
- シリアル通信速度の計算精度を向上させました。 クロック8MHzのArduinoボードで通信速度が倍になってしまう問題を修正しました。gabebearさんのおかげです。
統合環境
- 元としているProcessing統合環境のソースコードを、バージョン1.0.3(リビジョン5503)に上げました。 これにより、以下のような数々の機能向上がなされました。
- アイコンおよびアバウト画面の画像を、Thomas Glaser氏による新しいデザインに変えました。
- 複数のウィンドウを開くことができるようになりました。
- シリアルモニターは、独立したウィンドウに変わりました。
- 選択行のコメント化および、コメント化した行の復元機能、キーボードショートカット付き。
- インデントを増やす、減らす機能、キーボードショートカット付き。
- 第三者が作ったライブラリは、スケッチブックのフォルダの中の「libraries」フォルダに入れると使えます。
- ライブラリのコンパイルは、スケッチのコンパイルと同時に行います。 これにより、ボードの選択を変更した時の待ち時間が無くなりました。 しかし、ライブラリのソースコードを変更した場合は、ライブラリを起源とする.oファイルを削除する必要があります。
- マック用のパッケージは、appファイルを含むdmgファイルに変わりました。
- 「ツール>ボード」メニューに、Arduino Nano 3.0(ATmega328P搭載)を追加しました。
0013 - 2009.02.06
[文書/使用例]
- Parallaxの、PING超音波距離センサおよびMemsic 2125二軸加速度センサの使用例を追加。
[コア/ライブラリ]
- Printクラスに浮動小数点を表示する機能を追加(Serial、Ethernet、LiquidCrystalクラスに影響します)。 小数点以下の桁数は2桁です。
- word型、word()、bitRead()、bitWrite()、bitSet()、bitClear()、bit()、lowByte()、highByte()の各関数を追加(詳細はリファレンスを参照してください)。
- 5番ピン、6番ピンのPWM出力がゼロにならない問題(たとえばLEDが消灯にならずにぼんやりつく)に対処。
- キャスト(型変換)マクロを削除。関数風の表記のキャストはC++の機能であるのが理由。 寄贈されたライブラリがArduino 0012で動作しなかったのが修復されるはず。
- pulseIn()関数を変更して、入力値が指定の値に「変化すること」を待つようにしました (つまり、関数を読んだ瞬間に入力されていた値は無視します)。
- random()関数が出力する値の範囲が限定されていたバグを修正(Mikal Hartさんありがとうございます)。
- delay()関数が、指定されたミリ秒以上必ず待つように変更しました(境界条件)。
- Ethernetライブラリが、8番ピン、9番ピンの使用に影響していたバグを修正。
- (EthernetライブラリのClientクラス)外向きのネットワーク接続が毎回異なる番号のポートから行われるように変更(Paulさん、joquerさんありがとうございます)。
- ATmega168用のブートローダを修正し、改造していないavrdudeでも動作するようにしました (汎用のISPコマンドによるシグネチャバイトの要求に応答します)。 また、EEPROMデータを正しく書き込むようにしました。ladyadaさんありがとうございます。
- ATmega328Pに対応しました。書き込みの通信速度は57,600bpsです。 このため、adafruitなどの販売店で購入したブートローダ入りのATmega328Pを使用する場合は、 boards.txtを書き換えるか、同梱のブートローダを書き込み直す必要があります。
[環境]
- 使用されなかった関数がコンパイルされないようにしました。スケッチのバイナリサイズが減ります。
- EEMEMキーワードを使用することができるようにしました(しかし、プログラミング時にEEPROMデータを書き込むことはまだできません)。
0012 - 2008.09.18
- 対応ボードのメニューに「Arduino Nano」を追加。
- 対応ボードのメニューに「Arduino Pro」と「Arduino Pro Mini」(いずれも8MHz版)を追加。
- Hans Steiner氏他による「Firmataライブラリ」を追加。 このライブラリは、コンピュータ上のソフトウェアと通信するための標準的なプロトコルの実装です。
- Arduinoイーサネットシールドで使う、イーサネット(
Ethernet
)ライブラリを追加。 - Jim Studt氏の功績に基づく、サーボ(
Servo
)ライブラリを追加。 - Arduino Playgroundで開発されたコードに基づく液晶(
LiquidCrystal
)ライブラリを追加。 4ビットモード、8ビットモードの双方に対応しています。 - 「
millis()
」関数を強化しました。これまでは約9時間でオーバーフローしていましたが、新しい実装では49日間でオーバーフローします。 その代わり、ちょっとだけ余計にCPUを使います。 - ステッパーライブラリの逆方向になっているバグを修正しました(Wayne Holder氏のおかげです)。
- スケッチをC++プログラムに変換する際の「
#include <WProgram.h>
」の挿入位置を、ファイル先頭のコメントおよび「#include
」群の後に変更しました。これにより、スケッチ中での「#include <stdlib.h>
」がちゃんと機能します。 avr-gcc
およびavr-libc
のバージョンを上げました。avr-gcc
が4.3.0
で、avr-libc
が1.6です。 これにより、Atmelの最新のマイコンチップに対応できます。その代わり、わずかながらコンパイル後のスケッチのサイズが大きくなります。- ボードの種類ごとに、「
upload.using
」パラメータを設定できるようにしました。 つまり、あるボードではブートローダを使ってロードし、別のボードではISPプログラマを使ってロードするということが可能になりました。 - Wireライブラリのいくつかの関数において、値を返すように変更しました。 これによりエラーハンドリングがうまくできるようになります。
- 「
random()
」関数で、long
の値を取り扱えるようにしました。 - 「
Serial
」、「SoftwareSerial
」、「LiquidCrystal
」の各クラスに共通の抽象基底クラス「Print
」を作成しました。 このことにより、print()
およびprintln()
が同一の処理を共有するようになりました。 - ウォッチドッグタイマに対するladyadaによる改造を、ブートローダのソースに取り込みました。 ただし、これは、「Arduino Pro」および「Arduino Pro Mini」のブートローダをコンパイルするときだけ有効です。 なぜならば、この改造は、SparkFunによる上記ボードだけに有効だからです。
Last modified
14 years ago
Last modified on Aug 16, 2009 12:25:06 AM
Note:
See TracWiki
for help on using the wiki.