rs232 write
這是別人寫的軟體
我想像他一樣傳送資料
F1,85,85,F2 16進位
這段資料可以啟動機器
但我自己寫傳送
F18585F2
或是中間加空挌
F1 85 85 F2
中間加 ,
都沒有辦法啟動
int a, b, c, d;
a = 241; b = 133; c = 133; d = 242;
String A = Convert.ToString(a, 16);
String B = Convert.ToString(b, 16);
String C = Convert.ToString(c, 16);
String D = Convert.ToString(d, 16);
String E = ",";
serialPort1.Write(A);
serialPort1.Write(E);
serialPort1.Write(B);
serialPort1.Write(E);
serialPort1.Write(C);
serialPort1.Write(E);
serialPort1.Write(D);
textBox4.Text = A +E+B+E+C+E+ D;
serialPort1.Write(textBox4.Text);
我自己寫的程式
是abcd四個變數
轉換成16進位在轉成string ABCD
STRING E 是我想試試看中間的值
textBox4是我自己看我傳甚麼資料過去
總而言之就是它軟體寫的
F1,85,85,F2為甚麼可以傳送
我自己寫的F1,85,85,F2
F18585F2
F1 85 85 F2
為甚麼就沒效
------解决方案--------------------自发自收?
如果按16进制发送,可以这样
byte []sendbuff={241,133,133,242};
serialPort1.Write(sendbuff,0,4);