Emuduino

Emu(lator) + (Ar)duino

Processing と Arduino の違いについて


Emuduino(Processing)で作成したプログラムを実機であるArduinoで動作させるには,注意が必要です。一見,両者のプログラムは,よく似ています。しかし,そもそもEmuduino(Processing)は,Javaがベース,ArduinoはC言語がベースなので,その仕様の違いがバグの原因となります。
Emuduinoの開発中に気になった点や注意すべき内容をここにまとめました。

型の違いについて

Arduino Processing
名前 値の範囲 名前 値の範囲
boolean 真trueか偽 false 同等 boolean 真trueか偽 false
char –128 .. 127 相違あり char char is two bytes (16 bits)
unsigned char 0 .. 255 該当なし
byte 0 .. 255 該当なし
int –32768 .. 32767 相違あり int –2,147,483,648 .. 2,147,483,647
unsigned int 0 .. 65535 該当なし
word 0 .. 65535 該当なし
long –2,147,483,648 .. 2,147,483,647 同等 long –2,147,483,648 .. 2,147,483,647
unsigned long 0 .. 4294967295 該当なし
float –3.4028235E+38 .. 3.4028235E+38 同等 float –3.40282347E+38 .. 3.40282347E+38
double –3.4028235E+38 .. 3.4028235E+38 同等 double –3.40282347E+38 .. 3.40282347E+38
該当なし String 日本語を含むあらゆる文字

構文上の注意点

Arduino Processing
int array1[[]] = { 1, 2, 3 }; OK OK
int[[]] array2 = { 1, 2, 3 }; NG OK

戻る


参考文献 & その他

Arduinoをはじめよう 第2版
Arduinoをはじめよう 第2版
posted with amazlet at 09.10.27





Processingをはじめよう (Make: PROJECTS)
Processingをはじめよう (Make: PROJECTS)
posted with amazlet at 09.10.27





ArduinoMegaではじめようキット
ArduinoMegaではじめようキット
posted with amazlet at 09.10.27





Arduino Leonardo(+Headers)
Arduino Leonardo(+Headers)
posted with amazlet at 09.10.27