hsp37ではarduino.asが同梱されておりstandardfirmata.inoでうごく
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
xcratchはstandardfirmata.inoでうごく
!が出ている場合はcomを選択してopen! でないとgpioが制御できない
-----------------------ドリトル通信は--firmataでない--------------------------------------------------
WebAPI 完動:getでjsonを返すサーバを書けばいいだけ
- WebAPIサーバにアクセスして情報を取得するためのオブジェクトです。
- GETでのリクエストに対応しています。
- オンライン版では利用できません。
- 作る: WebAPIオブジェクトを作成します。
- (例)waという名前でWebAPIオブジェクトを生成します。
wa=WebAPI!作る。
- 読む: Webクライアントオブジェクトを作成します。
- オブジェクトのプロパティでURLとパラメータを設定します。urlの設定は必須です。
- 取得データはJSON形式に対応しています。取得したデータをプロパティと配列の構造に変換したオブジェクトを返します。
- (例)wという名前でWebクライアントオブジェクトを生成します。
wa=webapi!作る。 wa:url="https://zip-cloud.appspot.com/api/search"。 wa:zipcode="0790177"。 ret=wa!読む。 フィールド!(ret:results_1:address3)作る。
https://dolittle.eplang.jp/doku.php?id=ch_arduino
で勉強 linux/raspberry piはうまくいかん なんでやろ? (xcratchも同様。。。)
以下で通信する(firmata的)
void setup(){
Serial.begin(9600);
Serial.write(' ');
}
void loop(){
int wait=5;
if (Serial.available() > 0) {
byte in = Serial.read();
byte cmd = in & 0xe0;
byte port = in & 0x1f;
switch (cmd) {
case 0x40: // pinMode(Dout)
pinMode(port ,OUTPUT);
delay(wait);
break;
case 0x60: // pinMode(Din)
pinMode(port ,INPUT);
delay(wait);
break;
case 0x80: // Dout
delay(wait);
if (Serial.read() == 1) { digitalWrite(port, HIGH); } else { digitalWrite(port, LOW); }
break;
case 0xA0: // Din
Serial.write(digitalRead(port));
break;
case 0xC0: // Aout
delay(wait);
analogWrite(port, Serial.read());
break;
case 0xE0: // Ain
Serial.write(analogRead(port)/4);
break;
default :
break;
}
}
}
0 件のコメント:
コメントを投稿