首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RS232:平等还是不平等?

RS232:平等还是不平等?
EN

Stack Overflow用户
提问于 2014-02-11 15:05:12
回答 2查看 4.5K关注 0票数 4

我开始为一个在全双工模式下输入和输出数据的设备编写代码,所以我将使用硬件握手,并在出问题时设置中断条件。但是,当涉及到错误检测时,我们还不太清楚最好的方法是什么。

RS232有内置的奇偶校验,我可以使用。据我所知,如果我使用8个数据位,一个奇偶位和一个停止位,那么线路上的数据包将是10位。这意味着,对于我发送的每1024字节,我也发送了128字节的验证信息与它交织。

由于奇偶校验对于每个字节来说是50/50,所以短时间的噪声持续时间少于一个字节也不太可能导致与奇偶校验比特一致的损坏。所以这似乎不是一个可靠的测试。

如果我在每1024个字节的末尾使用校验和,在115200波特时仍然只有80 my,那么我的验证开销将从12%降到不到1%,即使我使用64位校验和。更难错过腐败。

奇偶技术仅仅是一种技术,在100波特连接时代是有用的,而且已经过时了,我应该使用块校验和,还是我遗漏了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-11 15:10:16

  1. 建议计算并追加启联,而不是校验和。16位可以满足你的需要-我会用32位。带有随机噪声的16位将失败1/ 64k。4G中的32位1。
  2. 校验和,虽然容易计算,但噪声爆发被解释为0--就串行错误而言,并不少见。
  3. 开销的计算有点偏离了。1开始+8数据+1停止位= 10比10 +奇偶校验= 11。
  4. 平等是不值得的海事组织。除了帧错误(错误的停止位)之外,不会检测到更多内容。不提供消息完整性。
票数 2
EN

Stack Overflow用户

发布于 2014-02-11 15:21:25

奇偶校验是一种非常粗糙的、老式的错误检测方法.它给传输增加了很多开销:实际上,它比校验和增加了更多的延迟。对于以115200波特发送的1024字节,奇偶校验将导致额外的8.88ms延迟。因此,最好忘记您曾经听说过的平价,并认为它是一个过时的功能。

对于使用哪种校验和算法,CRC是公认的最佳选择。然而,具有64位多项式的CRC将需要相当长的时间来计算。

考虑将大量数据分成更小的包,每个包的校验和都较小,例如CRC-8或CRC-16。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21705482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档