当前位置:首页>科技>正文

如何监测串口数据 如何检测串口是否有数据

2023-06-21 08:03:55 互联网 未知 科技

 如何监测串口数据 如何检测串口是否有数据

如何监测串口数据?

如不雅是一个法度榜样用来监督体系中所有的流过串口的数据(进,出),似乎只有效硬件来实现。我本来参加 moxa 的一个会时,他们有一个装配,简单说就是串口线的两边各多并了一个口出来。用这个装配应当可以。别的,我认为用高等的 windows ddk 应当也可以实现,并且不须要用硬件。

如何检测串口是否有数据

如何检测串口是否有数据
数据分包的方法其实和基于网口的处理tcp粘包是基本类似的
1.通信双方约定好报文格式,
比如,报头标识 CRC校验 报文长度 数据
2.接收数据时,需要把单次数据放入缓存。
启动单独的分包线程,
解析线程从缓存的头开始查找报头标识
找到头标识后,根据长度读取完整的数据报文,
头标识之前的数据显然是不完整的数据,只能抛弃;
如果缓存中的数据不够报头中携带的长度,则继续接收

如何侦测串口有数据进入?

const WM_COMMREAD = WM_USER $0081在线程中等while True do begin if WaitCommEvent(handle,EV_DSR,nil) = Wait_Object_0 then begin SendMessage(Hwnd,WM_COMMREAD,0,0) ResetEvent(EV_DSR) endend接收度消息就可以了procedure wndproc(var msg: TMsg)begin if msg.Message = WM_COMMREAD then begin //读COM end Inheritedend