1、引入using集
using System.IO.Ports;
2、定义全局变量
SerialPort serialPort = new SerialPort();
3、可以设置下拉列表(ComboBox)在窗体的Load事件中读取电脑上的com口
foreach (string Serial_Name in SerialPort.GetPortNames())
{
comboBox1.Items.Add(Serial_Name);
}
4、在button按下时
if (!serialPort.IsOpen)
{
serialPort.PortName = comboBox1.SelectedItem.ToString();//串口名
serialPort.BaudRate = 19200; //波特率
serialPort.DataBits = 8; //标准数据位长度默认为8
button1.Text = "关闭串口";
serialPort.Open(); //打开串口
}
else
{
button1.Text = "打开串口";
serialPort.Close();
}
5、转换为byte并发送命令
//命令转换为byte数组
private static byte[] GetPostData(string cmdStr)
{
byte[] array = new byte[cmdStr.Length / 2];
for(int i = 0; i < cmdStr.Length; i += 2)
{
array[i / 2] = Convert.ToByte(cmdStr.Substring(i, 2), 16);
}
return array;
}
private void button2_Click(object sender, EventArgs e)
{
if(serialPort.IsOpen)
{
serialPort.DiscardInBuffer();
byte[] array = GetPostData(发送的16进制命令);
serialPort.Write(array, 0, array.Length);//写入命令
}
}
6、查看电脑com口:我的电脑右击》管理》设备管理器》右边有个端口(com),如果太多不知道哪个,拔下来重插哪个有变化就是那个