C#开发经验总结1

一  串口通信之/r/n问题

    最近在做上位机软件与设备通信时发现/r/n对其影响很大,在给设备发送串口指令,有以下三种情况:

1.上位机发送串口指令末尾不需添加/r/n,但是添加上/r/n也不会报错,也可以正常返回信息

2.上位机发送串口指令末尾必须添加/r/n

3.上位机使用SerialPort中WriteLine函数,也可以和设备正常通信

这里需要注意的是,Writeline函数只是起到了换行的作用,里面没有回车

在实际开发中,有的设备需要再发送完指令时,再发送校验指令对之前的发送指令校验;我遇到的问题是,如果前面指令不添加回车换行,校验总会失败。 所以,建议在今后开发中,一般情况下,都添加上/r/n。还有不建议使用Writeline函数,不了解此函数的总会认为此函数能起到/r/n效果,不利于调试。BusHound是个好东西,可以安装bushound时刻捕获交互信息。

二  foreach

异常问题如图

使用foreach遍历是容易出现如图异常,如果出现异常可以使用for。此外遍历List时,也可能会出现此异常问题。

猜你喜欢

转载自blog.csdn.net/weixin_42183571/article/details/81092497