這陣子看了很多範例由手機送訊號給藍芽,接收後由arduino做動作,多數的例子皆以單一字元為主。如果要允許送出任意資料長度(假設10字元內),例如除單一字元控制自走車方向外,如何送出一串數字整個自走車車速。
------------------------------------------------------------------------------
int i = 0;     //loop
int insize=0; //bt接收到的長度
char cmd[10];  //存放個別接收的char
void setup()
{ 
  Serial.begin(9600);   // 與電腦序列埠連線
  BT.begin(9600);
}
void loop() {
  int cnt = 0;
  insize=BT.available(); //知道「本次」接收到多少字元
  while ( BT.available())//可接受 1~3個字
  {
     for (i = 0; i < insize; i++)
       cmd[i] = (char)BT.read();  //個別存入
     cmd[i]='\0';                          //最後i+1處做字串結束
     Serial.println(cmd);   
  }
   // other command to do
}//loop
 
沒有留言:
張貼留言