Robofun 機器人論壇
標題:
Arduino傳送問題
[打印本頁]
作者:
blackly
時間:
2012-8-14 15:34
標題:
Arduino傳送問題
if(message == 'H')
{
uint8_t Byte[8] = {0xff,0x55,0x01,0xfe,0x00,0xff};
Serial.write(Byte,6);
}
if(message == 'L')
{
uint8_t Byte[8] = {0xff,0x55,0x02,0xfd,0x00,0xff};
Serial.write(Byte,6);
}
上面是我的程式部分,單獨傳送H或L,Arduino的回傳都正常沒問題,
但如果我想傳送HL給它,讓它回傳兩個回來給我,這樣有程式可解嗎?
作者:
coopermaa
時間:
2012-8-15 09:09
可以說清楚一點嗎?「傳送HL給它,讓它回傳兩個回來」是指什麼?
是說 arduino 收到 HL 兩個字元之後,把 12 個 bytes 一次全部丟到 UART 嗎?
如果是的話,大概可以這樣寫:
String inputString = "";
void loop() {
inputString += (char) Serial.read();
if (inputString.length() == 2) {
if (inputString == "HL") {
uint8_t Byte1[8] = {0xff,0x55,0x01,0xfe,0x00,0xff};
Serial.write(Byte1,6);
uint8_t Byte2[8] = {0xff,0x55,0x02,0xfd,0x00,0xff};
Serial.write(Byte2,6);
}
else
inputString = "";
}
}
作者:
blackly
時間:
2012-8-16 00:45
不好意思,我沒把問題說清楚!
我現在在做的是 PC甲端跟Arduino用藍芽做連接,Arduino在跟PC乙端用TTL To USB做連接,
在Arduino端寫程式,甲端傳送 H 這個字元給Arduino時,Arduino自動傳給乙端{0xff,0x55,0x01,0xfe,0x00,0xff},乙端用16進制顯示,單獨傳送H或L的話,都能正確的傳送到乙端那,所以才請問能不能傳 HL 讓Arduino可以一次傳送兩個過去。
co大,你的方式我會嘗試看看,謝謝!
歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/)
Powered by Discuz! X3.2