C#串口接收、发送总结

您所在的位置:网站首页 发送的方法 C#串口接收、发送总结

C#串口接收、发送总结

#C#串口接收、发送总结| 来源: 网络整理| 查看: 265

最近笔者使用C#编程时,经常用到串口通信功能。所以总结记录一下串口通信功能的使用方法。

串口组件

在工具箱中找到SerialPort组件,将其添加到设计中。 在这里插入图片描述

串口端口和波特率设置

在这里插入图片描述

属性名称含义(Name)指示代码中用来标识该对象的名称BaudRate此串行端口上要使用的波特率DataBits没发送/接收一个字节的数据位数目DiscardNull在添加到序列缓冲区前是否丢弃端口上接收的空字节DtrEnable在通信过程中是否启用数据终端就绪(DTR)行GenerateMember指示是否将为此组件生成成员变量Handshake用于数据交换中流控制的握手协议Modifiers指示对象的可见性级别Parity用于对每个接收字节进行奇偶校验检查并且标记每个发送的字节的方案ParityPeplace用来替换接收的有奇偶校验错误的字节的字节PortName要打开的通信端口的名称ReadBufferSize读取缓冲区的大小(以字节为单位)ReadTimeout读取超时(以毫秒为单位)ReceivedBytesThreshold触发Read事件前要求可用的字节数RtsEnable在通信过程中是否启用请求发送(RTS)行StopBits每发送/接收一个字节的停止位数目WriteBufferSize写入缓冲区的大小(以字节为单位)WriteTimerout写入超时(以毫秒为单位)

上表是SerialPort组件的属性及其对应的含义,在实际编程中,鼠标选中某个属性时也会显示出对应的含义。平时使用时,我们大多只需修改PortName、BaudRate、DataBits 、StopBits、Parity、ReadBufferSize、WriteBufferSize这个几个属性。其中DataBits 、StopBits、Parity这三个属性在大多数串口通信中,都默认为8、One、None。在STM32F1单片机中关于串口的配置有如下语句。 在这里插入图片描述 在.cs文件中调用如下语句进行SerialPort组件的初始化。

serialPort1.PortName = comboBox1.Text;//设置端口名 serialPort1.BaudRate = Convert.ToInt32(comboBox2.Text);//设置波特率 serialPort1.Open();//打开串口

其中comboBox1、comboBox2为设计中的两个控件。 在这里插入图片描述 调用以下函数关闭串口。

serialPort1.Close();//关闭串口

在定时器中调用以下函数用以更新可用端口。

private void Updata_Serialport_Name(ComboBox MycomboBox) { string[] ArryPort = SerialPort.GetPortNames(); MycomboBox.Items.Clear(); for (int i = 0; i //string str = serialPort1.ReadExisting();//直接以字符串方式读并显示 //textBox1.AppendText(str); int length = serialPort1.BytesToRead; byte[] data = new byte[length]; serialPort1.Read(data, 0, length); //对串口接收数据的处理,可对data进行解析 for (int i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3