0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

奇校验

分享:

奇校验(Odd Parity)解释

奇校验是一种简单的错误检测方法,主要用于数据传输或存储中,以确保数据的完整性。其核心思想是:通过添加一个额外的“校验位”(parity bit),使数据(包括校验位)中“1”的总个数为奇数。如果接收方检测到“1”的个数不是奇数,就认为数据传输过程中可能发生了错误(如位翻转)。

工作原理

  1. 发送方(添加校验位)

    • 计算原始数据位中“1”的个数。
    • 根据“1”的个数添加校验位:
      • 如果原始数据中“1”的个数是偶数,则校验位设为 1(这样总“1”的个数变为奇数)。
      • 如果原始数据中“1”的个数是奇数,则校验位设为 0(这样总“1”的个数保持为奇数)。
  2. 接收方(验证数据)

    • 接收数据(包括原始数据位和校验位)。
    • 计算所有位(数据位 + 校验位)中“1”的总个数。
    • 如果“1”的个数是奇数,则认为数据正确;如果是偶数,则检测到错误(可能要求重传或报警)。

简单示例

假设原始数据是 3 位二进制:101

  • 计算“1”的个数:101 中有 2 个“1”(偶数)。
  • 发送方添加校验位:由于“1”的个数是偶数,校验位设为 1
  • 完整传输的数据变为:1011(总“1”的个数:3,是奇数)。

接收方收到 1011

  • 计算“1”的个数:3(奇数),数据正确。

如果传输中发生错误,例如 1011 变成 1001

  • 计算“1”的个数:2(偶数),检测到错误。

应用场景

  • 常用于串行通信(如 RS-232)、内存(RAM)错误检测或简单网络协议。
  • 优点:实现简单、开销小。
  • 缺点:只能检测奇数个位错误(例如,1 个位错误可检测,但 2 个位错误可能无法检测),不能纠正错误。

与偶校验的区别

  • 奇校验:确保“1”的总个数为奇数。
  • 偶校验(Even Parity):确保“1”的总个数为偶数。
  • 两者都用于错误检测,但奇校验在某些系统中更常见,因为它能更好地处理全零数据(避免歧义)。

如果您有具体问题(如代码实现、实际应用),欢迎补充,我可以进一步解释! ?

请问一下stm32串口是如何利用校验模式采集数据的

请问一下stm32串口是如何利用校验模式采集数据的?

fanB 2021-12-09 07:06:45

若 累加器 中值为 1的 位数是奇数 ,则 P置 位 ( 校验);否 则 ,P清 除--------这句话要怎么理解,

若 累加器 中值为 1的 位数是奇数 ,则 P置 位 ( 校验);否 则 ,P清 除--------这句话要怎么理解,

QWE4562009 2020-06-23 18:03:21

什么是校验和偶校验?常见的奇偶校验方式有哪些?

什么是校验和偶校验?常见的奇偶校验方式有哪些? 1. 奇偶校验是指在数字通信中采用一种技术对传输的数据进行校验。由于数字信号传输容易受到干扰,例如噪声、电磁辐射、误码等,因此需要在传输前对数据进行

2023-10-17 16:28:18

PLC结构化的文本设计模式和算法-下

校验模式就是对一系列变量进行校验计算,当其中有一个输入值变化的时候,输出值也会变化。

2023-02-06 15:27:09

数据传输常用检验方法目的

一、数据传输1数据信号【起始位 位0-位7 检验位 停止位】常用检验方法目的:检测传输数据是否正确校验:有效数据和校验位中1的个数为奇数偶校验:有效数据和校验位中1的个数为偶数

h1654155957.9311 2021-12-06 07:04:22

西门子200smartPLC读取绝对值编码器的数据

Parity:校验类型,这里选择的是,偶校验。0为无校验,1为校验,2为偶校验

2023-07-20 10:06:08

74HC280D,652

9位奇/偶校验生成器/校验

2023-03-24 14:57:53

74HCT280D,652

9位奇/偶校验生成器/校验

2023-03-24 14:57:53

74HCT280DB,112

9位奇/偶校验生成器/校验

2023-03-24 14:57:53

74HC280D,653

9位奇/偶校验生成器/校验

2023-03-24 14:57:53

74HCT280D,653

9位奇/偶校验生成器/校验

2023-03-24 14:57:53

UART中有奇偶校验位和无奇偶校验位的数据传输是怎样的?

例如,我使用 8 位数据传输类型。奇偶校验位共有 3 种类型无奇偶校验校验校验----------------------偶校验我假设 Even parity 看起来像这样:10011100左起

悬崖勒马2 2022-12-08 07:24:31

串口通讯的基本概念、数据格式、通讯方式

在标准ASCII码中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分校验和偶校验两种。校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;

2023-02-14 10:39:08

RT-Thread里的串口通信奇偶校验错误怎么办

RT-Thread里面的串口配置成校验,上位机通信时使用的偶校验进行通信,依然能够收发,串口接收数据时需要判断校验错标志位。但是我查看RT-Thread好像没这个操作

糖栗子 2022-11-11 14:27:20

NUC442 UART无法发送9BIT是什么原因?

选择UART的校验模式,发送数据 0x13(希望第9位输出低),结果波形显示Start+8bit_Stop,并没有看到第9位?这个是什么原因?

ws2165946 2023-06-20 08:54:45

RT-Thread里的串口通信奇偶校验错误怎么办

RT-Thread里面的串口配置成校验,上位机通信时使用的偶校验进行通信,依然能够收发,在网上查了查,串口接收数据时需要判断校验错标志位。但是我查看RT-Thread好像没这个操作

百灵千岛酱 2022-10-11 10:57:57

STM32的UART奇偶校验有哪些注意事项

STM32的UART奇偶校验注意STM32的UART在初始化时,我们通常用到最多的就是无校验位,1停止位。但是我在项目中也遇到某些芯片通信用的需要校验或者偶校验,这里需要特别注意的是STM32中

lotusp 2022-02-22 06:52:00

hdlbits Fsm serialdp带奇偶校验位串口相关资料推荐

:01001011,也就是数据为0x4b,第9位是额外添加的,用于校验,也就是发送的9bit数据中1的个数为奇数个,不难得知共有5个1,符合题意的校验,故数据有效。而下一帧数据为010001101,共4个1,故数据无效

费加罗 2022-02-25 07:25:02

UART是什么?参数有哪些

UART是单片机的一种重要的通信接口,通信参数涉及到波特率、数据长度、奇偶校验、停止位。工业上往往有要求在线修改(无需重启单片机)串口通信参数的要求,同时对奇偶校验也有要求,除无校验校验、偶校验

毛头大小子 2022-02-22 06:45:14

嵌入式里数据差错控制技术之奇偶校验

;的奇偶性(奇数个还是偶数个)在传输前后是否一致,所以其实奇偶检验法有两个子类:校验:如果以二进制数据中 1 的个数是奇数为依据,则是校验校验:如果以二进制数据中 1 的个数是偶数为依据,则是偶校验

lingjianghui 2020-04-16 09:25:37

串口通信的奇偶校验位的两种类型介绍

  奇偶校验位是一个二进制数,指示给定位置号的二进制数中的1的数目是奇数还是偶数。奇偶校验位是最简单的错误检测代码。奇偶校验位有两种类型:偶校验位和校验位。    设置为校验,首先查看发送方将在

一只耳朵怪 2020-09-04 17:54:47

单片机开发中UART、I2C等知识总结

奇偶校验位:用于接收方对接收到的数据进行校验校验“1” 的位数为偶数(偶校验) 或奇数(校验),以此来校验数据传送的正确性,使用时不需要此位也可以。

2022-07-23 11:42:23

一文带你读懂UART、TTL、RS232、RS422、RS485、CAN、USB

奇偶校验位:用于接收方对接收到的数据进行校验校验“1” 的位数为偶数(偶校验) 或奇数(校验),以此来校验数据传送的正确性,使用时不需要此位也可以。

2023-03-28 10:57:03

基于16550A串口标准的Rockchip UART使用方法

以下功能:支持5、6、7、8 bits数据位支持1、1.5、2 bits停止位支持校验和偶校验,不支持mark校验和space校验支持接收FIFO和发送FIFO,一般为32字节或者64字节支持最高

呜哇哇66 2022-04-27 18:43:45

逆向破解RS485通信协议内容有什么办法

现有有一块现成的DIO电路板,附带程序。CPU采用轮询的查询该电路板采集的信息,我通过使用串口助手监测可以看到通信数据,知道通信速率,手头有一台示波器。 1.有什么办法可以判断出来数据使用的是校验

jf_95362319 2023-10-12 13:38:28

实现汉明纠错码的编码和解码方案设计

理解汉明码首先要理解奇偶校验校验就是在一串编码里增加一位校验位使这一串编码里的1的个数位奇数。偶校验同理,使编码里1的个数为偶数。

2020-05-04 09:00:00

关于12种总线接口的总结

奇偶校验位:用于接收方对接收到的数据进行校验校验“1” 的位数为偶数(偶校验) 或奇数(校验),以此来校验数据传送的正确性,使用时不需要此位也可以。

2022-12-02 11:19:05

如何得到串口接收到字节的校验位?

从机的串口配置为: 9600, 8 , 校验,1个停止位 当主机用UART3接收到从机发来的一个字节时,我怎么读到这个字节对应的校验位的值呢? 在MDB协议中,有一个模式位的概念,相当于串口

那些年儿ing 2023-08-29 08:08:25

Wch-Link的串口调试接口,在7Bit偶校验模式下接收的数据错误怎么解决?

我测试过,再8Bit模式,或者校验模式发送接收都正常。但是在7Bit和偶校验模式下,接收数据就有问题,这个情况事什么问题,但是我用两个Wch-Link互相发数据正常。但是一个用CH340,一个用

caosurround 2022-07-19 06:58:21

GD32F303开发板介绍

发送串口数据时,必须先发送启动位。数据帧:发送的数据内容,数据的Bit位。有8位数据字长和9位字长两种。可能的奇偶校验位:在串口通信中一种简单的检错方式,没有校验位也是可以的。对于偶和校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者个逻辑高位。停

ningkui 2022-01-17 08:06:47

加载更多
奇校验相关专题
相关标签