ZHCAAO5A June   2020  – August 2021 ADS112C04 , ADS112U04 , ADS114S06 , ADS114S08 , ADS122C04 , ADS122U04 , ADS1235 , ADS1235-Q1 , ADS124S06 , ADS124S08 , ADS1259 , ADS1259-Q1 , ADS125H01 , ADS125H02 , ADS1260 , ADS1260-Q1 , ADS1261 , ADS1262 , ADS1263 , ADS127L01 , ADS131A02 , ADS131A04 , ADS131M04 , ADS131M06 , ADS131M08

 

  1.   商标
  2. 1引言
  3. 2简单校验和
    1. 2.1 校验和代码示例
  4. 3CRC
    1. 3.1 CRC 通用计算
      1. 3.1.1 使用按位异或计算
      2. 3.1.2 使用查找表
        1. 3.1.2.1 表初始化
        2. 3.1.2.2 CRC 计算
      3. 3.1.3 ADS122U04 和 ADS122C04 之间的 CRC 计算差异
        1. 3.1.3.1 字节反射示例
        2. 3.1.3.2 使用字节反射重新组合数据以进行 CRC 计算
  5. 4汉明码
    1. 4.1 汉明码计算
      1. 4.1.1 汉明码计算示例
        1. 4.1.1.1 计算位数以进行奇偶校验和校验和计算
          1. 4.1.1.1.1 计算数据中置 1 的位的数量示例
          2. 4.1.1.1.2 使用查找表计算置 1 的位的数量示例
      2. 4.1.2 验证传输的数据
        1. 4.1.2.1 汉明验证
        2. 4.1.2.2 校验和验证
        3. 4.1.2.3 误差校正
  6. 5总结
  7. 6参考文献
  8. 7修订历史记录

简单校验和

在 ADS1259 和 ADS1262 等器件上可将校验和附加至转换结果。校验和支持对单个位错误和多位错误的某些组合进行检错。计算校验和字节的方法是将每个转换数据字节的值相加,并加上一个常数。对于上述器件,该常数为 9Bh。校验和的长度是一个字节,因此运用加法而产生的任何进位都将被忽略。对于 24 位器件 ADS1259,将 MSB、中间字节和 LSB 与该常数相加。校验和结果被附加至到转换数据并与其一起进行传输。

校验和易于计算,所需的处理工作量很少。不过,如果存在多位错误,则可能无法检测到错误,因为将不同数据的多种组合相加会产生相同的校验和值。例如,将转换数据 12h、34h、56h 和常数 9Bh 相加会产生校验和 37h。但数据在传输过程中可能会损坏。如果接收到的数据是 12h、35h、55h 和常数 9Bh,则将这些字节相加会产生相同的校验和 37h。

校验和在检查小数据包中的 1 至 2 位错误时会很有用。对于小数据包,可能会错过数据中的错误,但随着数据包大小的增加,错过多位错误的可能性也会增加。单独使用校验和并不是确定数据完整性的最佳方法。