关于串口通讯的数据校验问题

nktylm 2003-06-26 03:23:41
我正在使用一种手持pos机开发一个订餐系统,需要实现的主要功能是实现订餐数据的录入(订餐过程中pos为脱机工作状态)然后通过串口将数据传回上位主机。我现在的程序已经基本写完,(通讯时没有作数据校验)测试也没有发现问题,但我听别人说,这种串口通讯必须对数据进行校验,否则没法保证数据传输的正确性。
我第一次作此类程序,很多问题不是很清楚,想在这里请高手们帮我解释、澄清一下。
据我所知,串口本身好像有通讯校验,它的校验难道还不够吗?我自己在开发上层应用时还有必要再对数据进行一次校验吗?如果串口本身的校验就很严格了,我自己再采用像累加和,或者CRC校验之类的方法是否有意义呢?如果自己必须进行数据校验,采用何种方法为好呢?
还请高手们指点一二,不胜感激!
...全文
119 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xwindow33 2003-06-27
  • 打赏
  • 举报
回复
1。在串口速率不高的情况下,误码率不会很高
2。一种简单的校验方法:每笔记录计算一个累加和,出错后重传该记录
3。你这个案例用不着md5这把牛刀
nktylm 2003-06-27
  • 打赏
  • 举报
回复
还想继续请教一下:
如果串口本身的校验能够保证传输每个字节的正确性,那上层再加的校验能验证数据传输的完整性就可以了吗?(是否校验数据笔数或者传输数据量就行了呢?)
我曾经听别人说在进行类似的数据传输校验时采用了一种叫做md5的方法,好像是一种非常严格的校验算法,是否很有必要呢?如果串口本身的校验就能保证每一个字节的正确性,那这种校验是否显得多余呢?
小弟头一次接触此类东西,基础较弱,还请诸位就此方面的问题多多指教,不胜感激!
91program 2003-06-27
  • 打赏
  • 举报
回复
串口本身是具有校验,对每一个字节可以进行奇偶校验---它只保证每一字节的内容是正确的,但并不能保证整个数据的完整性。

所以上层最好再加上一次校验,校验方法在要求不高的情况下,楼主自己选。
nktylm 2003-06-27
  • 打赏
  • 举报
回复
哪位再来指教一二!不胜感激。

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧