我想從文本的SerialPort一行readline的閱讀()
文本是ASCII和終端都可以(數據是真的好),但是當我讀到的readline,它在文本的地方返回? 例子 - 這是常規的:serialprot readline()添加問號「?」
!!!;34;248;45;215;43;226;33;235;32;240;35;250;36;240;37;246;40;263;41;272;42;261;39;270;44;256;47;241;49;8888;50;8888;38;245;46;460;48;363
這將返回的ReadLine():
!!!;34;248;45;215;43;226;?33;235;32;240;35;250;36;240?;37;246;40;263;41;272;42;261?;39;270;44;256;47;241;49;888?8;50;8888;38;245;46;460;48;3?63
代碼很簡單:
this.serialPort1.PortName = "COM3";
this.serialPort1.BaudRate = 19200;
this.serialPort1.Parity = System.IO.Ports.Parity.Mark;
this.serialPort1.Open();
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
prectenyRadek=this.serialPort1.ReadLine();
this.Invoke(new EventHandler(DisplayText));
}
private void DisplayText(object sender, EventArgs e)
{
richTextBox1.AppendText(prectenyRadek);
}
有沒有人有想法,什麼,爲什麼加我「? 「
串行有很喜歡這ASCII數據:0D 0A 21 21 21 3B 33 34 3B 32 34 38 3B 34 35 3B 32 31 35 3B 34 33 3B 32 32 36 3B 33 33 3B 32 33 35 3B 33 32 3B 32 34 30 3B 33 35 3B 32 35 30 3B 33 36 3B 32 34 30 3B 33 37 3B 32 34 36 3B 34 30 3B 32 36 33 3B 34 31 3B 32 37 32 3B 34 32 3B 32 36 31 3B 33 39 3B 32 37 30 3B 34 34 3B 32 35 36 3B 34 37 3B 32 34 31 3B 34 39 3B 38 38 38 38 3B 35 30 3B 38 38 38 38 3B 33 38 3B 32 34 35 3B 34 36 3B 34 35 37 3B 34 38 3B 33 36 32 3B 0D 0A(首先0D 0A是EOL行之前和之後你看到在十六進制和完成0D 0A太) – user1562137 2012-07-30 07:51:11