C#串口通信 关闭串口后再开启串口 数据显示会变慢 10
用的是serialport。串口第一次工作正常,关闭串口后再次打开串口,数据接收速度明显变慢,而且关闭程序再启动程序还是一样,此时用其他串口助手也会同样变慢,必须重新拔插...
用的是serialport 。串口第一次工作正常,关闭串口后再次打开串口,数据接收速度明显变慢,而且关闭程序再启动程序还是一样,此时用其他串口助手也会同样变慢,必须重新拔插串口线才能恢复正常。
接收数据我用的是 m_serialport.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
数据显示用了委托。下位机是一直在发送数据的。
求大神解答 展开
接收数据我用的是 m_serialport.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
数据显示用了委托。下位机是一直在发送数据的。
求大神解答 展开
展开全部
很奇怪的问题。
对于串口来说,数据接收的速度完全取决于对方的发送速度。
如果接收部分有阻塞,那么数据有可能会丢失、不完整,但不会慢。
因为发送方不会“配合”你降低发送速度的。
除非是问答式的通讯协议,那么速度取决于询问的频率,你应该查那部分的代码。
对于串口来说,数据接收的速度完全取决于对方的发送速度。
如果接收部分有阻塞,那么数据有可能会丢失、不完整,但不会慢。
因为发送方不会“配合”你降低发送速度的。
除非是问答式的通讯协议,那么速度取决于询问的频率,你应该查那部分的代码。
更多追问追答
追问
经过测试,只要我 调用了一次 串口打开 然后串口关闭(之间不做任何操作) 再次打开的时候 数据就变慢,如果是阻塞的话,那应该不会影响别的程序,这个感觉像是打开一次串口之后对系统进行了什么改变,导致串口整个有问题。
追答
首先,“串口变慢”这种说法应该是不严谨的。
看你的描述,似乎是串口的“反应”变慢。
但对于串口来说,只有个波特率高低的问题,没有响应速度一说。
请你再仔细回想一下,是什么使你产生了“反应”变慢的感觉。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询