C#串口通信工作笔记0001---上位机开发_嵌入式_串口助手_收发数据开发

技术交流QQ群【JAVA,C++,Python,.NET,BigData,AI】:170933152

先看看这个串口通信助手的界面

可以选择波特率什么的

程序启动的适合,添加串口,这里添加19个就够用了

实际用的适合要根据自己的设备管理器,看是哪个就选择哪个用

可以看到画面启动的时候,还给

serialPort1.DataReceived这个,设置了一个接收到数据要执行的函数.

这个是串口接收数据的时候要做的工作,这里

如果是字符模式接收那么就走serialPort1.ReadExisting(),用字符串模式读取.

点击打开串口的适合要做的工作

关闭串口的功能.

再说实现这个发送功能.

不是偶数个数值的时候

textBox2.Text.Length % 2 !=0 这里进入最后一个数值的处理

textBox2.Text.Substring((i*2,2),16),这个意思是,每次截取2个字符,比如0A,然后把,这个0A转换成16进制,然后发出去.

注意上面是先循环,2的整数倍的数值

0A0BB的话,就是上面那个循环就是先把0A0B发出去,

最后那个if在处理那个B

这个意思就是,从整数位的那个位置,然后读取余数的个数,然后这里就相当于把B,取出来,然后

转换成16进制,然后单独发送就可以了.

注意,这里也不用写这么长,用上面的写法也可以

获取最后一个未发送的数值,textBox2.Text.Length-1,1这样也可以.

然后启动一下试试