111,126
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
///发送一个数据
/// </summary>
/// <param name="COM">"COM1"</param>
/// <param name="BaudRate">9600</param>
/// <param name="Data">"123"tobyte[]</param>
/// <param name="Encoding">ASCII</param>
public static byte[] SerialPort(string p_COM, int p_BaudRate, byte[] p_Data, Encoding p_Encoding)
{
SerialPort _SendPort = new SerialPort();
_SendPort.PortName = p_COM;
_SendPort.BaudRate = p_BaudRate;
_SendPort.DataBits = 8;
_SendPort.Parity = Parity.None;
_SendPort.StopBits = StopBits.One;
_SendPort.DtrEnable = true;
_SendPort.DtrEnable = true;
_SendPort.Encoding = p_Encoding;
if (_SendPort.IsOpen)
{
_SendPort.Close();
_SendPort.Open();
}
else
{
_SendPort.Open();
_SendPort.Write(p_Data, 0, p_Data.Length);
byte[] refData = new byte[_SendPort.BytesToRead];
for (int i = 0; i != p_Data.Length; i++)
{
refData[i] = Convert.ToByte(_SendPort.ReadByte());
}
return refData;
}
return null;
}