《表4 定长数据帧示例:基于STM32的多串口并行传输系统设计》

《表4 定长数据帧示例:基于STM32的多串口并行传输系统设计》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《基于STM32的多串口并行传输系统设计》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

当数据帧是定长时,例如如表4所示的一种读卡器的协议,可以直接一次接收18个字节,然后判断结束标记字符。不加超时功能时,一旦有非18个字节数据,例如只收到16字节,数据不足,会用接收的下一帧数据的前2字节补入,这样导致后续读到的数据都有误。增加接收18个字节的超时功能后,如只收到部分数据,超时时间到会放弃该次接收的数据,后一帧数据正常则能恢复正常接收。这种方法启动超时的时刻需要保证是在接收到第一个字节后,如果不是,例如启动接收就开始超时计时,数据可能在超时结束的时候才收到部分数据,另外一部分数据就丢失了,如图3所示。如果某种情况下收到的数据多于18字节,如果前18字节不是完整数据,也会导致数据丢失。这些异常一般情况下出现的机率不大,但在收发方调试的情况下经常出现。