回路図を載せておきます。
ソフトはこんな感じ。AD入力から読んだデータをシリアルで書き出しています。ちょっと工夫したのは受信側と動機を取るためのスタート位置合図用にキャラクタの"?"を送っています。
//Bluetooth transmitter controller
//ATmega328 16MHz
//6つの変数を用意
int AN0, AN1, AN2, AN3, AN4, AN5;
void setup() {
//シリアル通信開始(HC-05のスピードにあわせる)
Serial.begin(115200);
}
void loop() {
//AD変換で読み込んだ値を8bitデータに変換して各変数に入れる
AN0 = analogRead(0) / 4; //L_UD
AN1 = analogRead(1) / 4; //R_UD
AN2 = analogRead(2) / 4; //L_LR
AN3 = analogRead(3) / 4; //R_LR
AN4 = analogRead(4) / 4; //LSW
AN5 = analogRead(5) / 4; //RSW
//合図用データがバッファ領域内に一つ以上になったら
if (Serial.available() > 0 ) {
Serial.read() ;//合図用データを読み込んで、バッファ領域を空にする
Serial.write(63);//スタート位置'?'送信
Serial.write(AN0);
Serial.write(AN1);
Serial.write(AN2);
Serial.write(AN3);
Serial.write(AN4);
Serial.write(AN5);
delay(10);
}
}
0 件のコメント:
コメントを投稿