使用 C# 控制 RS232 的資料讀取及發送

RS232

使用C#做RS232序列埠控制。

加入IO的namespace

using System.IO.Ports;

使用System.IO.Ports.SerialPort類別

private SerialPort port;
...
port = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);

加入接收資料事件及事件處理函式

port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
...
private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
//讀入字串
string data = port.ReadExisting();
Console.WriteLine("Receive: " + data);

/*
 //讀入位元組
int bytes = port.BytesToRead;
byte[] comBuffer = new byte[bytes];
port.Read(comBuffer, 0, bytes);

Console.WriteLine(comBuffer);
*/
}

送出資料(打開->寫出)

port.Open();
//方法一
port.Write("#XXCH010001\r");
//方法二
port.Write(new byte[] { 0x02, 0x00, 0x00, 0x00, 0x00, 0x02 }, 0, 6);

關閉port

port.Close();
本文網址:http://blog.tonycube.com/2011/05/rs232-serial-port.html
Tony Blog 撰寫,轉載時請註明出處及文章連結,謝謝 😀

我要留言

留言小提醒:
1.回覆時間通常在晚上,如果太忙可能要等幾天。
2.請先瀏覽一下其他人的留言,也許有人問過同樣的問題。
3.程式碼請先將它編碼後再貼上。(線上編碼:http://bit.ly/1DL6yog)
4.文字請加上標點符號及斷行,難以閱讀者恕難回覆。
5.感謝您的留言,您的問題也可能幫助到其他有相同問題的人。