VB和aeduino中波特率都設置為9600,VB能夠正常接收數據,看起來一樣,但數據判斷卻不一樣。。。。
VB中代碼:
Dim buf$
Dim DR$
DR = Trim("DATA:CREADY")
buf = Trim(MSComm1.Input)
Label15.Caption = buf
Label16.Caption = DR
If LCase(buf) = LCase(DR) Then
MsgBox ("校准完成!")
Else
MsgBox ("校准失敗!")
End If
buf = ""
End If
arduino中的代碼:
char data = char(Serial.read());
if (data=='A')
{
//Serial.println(data);
delay(5000);
Serial.print("DATA:CREADY \r \n");
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
按鈕上方為串口接收的值,下方是VB中定義的值
你試一下把 Serial.print("DATA:CREADY \r \n"); 更改成 Serial.print("DATA:CREADY"); 看看能不能成功