当从机接收到数据后,必须在3.5个字符后至主机超时这段时间内给主机回应对应格式的数据。
你是从机的话,4001地址是数据是什么由你自己决定的。
VB控制3.5个字符间隔不用在意吧?
因为作为从机,在每次串口接收到一个字节时,用一个全局数组(255个成员)的数组缓冲接收每次收到的数据,再用个全局变量记录当前系统Timer时间,在每次退出串口事件前把当前检测时间差,如果时间差大于3.5个字符(1/比特率*40毫秒)的话,就认为前面一帧数据已经完成,则启动Timer控件去执行相关的操作,然后把当前的Timer值给回全局变量为下次检测准备。
当从机接收到数据后,必须在3.5个字符后至主机超时这段时间内给主机回应对应格式的数据。
你是从机的话,4001地址是数据是什么由你自己决定的。
VB控制3.5个字符间隔不用在意吧?
因为作为从机,在每次串口接收到一个字节时,用一个全局数组(255个成员)的数组缓冲接收每次收到的数据,再用个全局变量记录当前系统Timer时间,在每次退出串口事件前把当前检测时间差,如果时间差大于3.5个字符(1/比特率*40毫秒)的话,就认为前面一帧数据已经完成,则启动Timer控件去执行相关的操作,然后把当前的Timer值给回全局变量为下次检测准备。
举报