This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TLV320ADC6120:I2C 校验和值的算法是什么?

Guru**** 2473260 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1539834/tlv320adc6120-what-is-the-algorithm-for-the-i2c-checksum-value

部件号:TLV320ADC6120


工具/软件:

您好、  

我正在尝试通过读取校验和值来检查 ADC 的 I2C 配置是否正确。 我可以在 ADC 文档编写后顺利读取该值、但是、本文档不介绍如何使用什么算法来创建校验和值。  
在哪里可以找到用于解码校验和值的算法?  

谢谢!  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Gergley:

    让我在本周结束时回复您有关此主题的最新信息。

    谢谢。此致、

    Lakhsmi Narasimhan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Gergely:

    I2C 校验和的工作原理如下:
    1) 考虑校验和寄存器 (B0_P0_R126) 的当前值为 I2C_CKSUM[7:0]、这是一个 8 位值。
    2) 如果我们要将值 reg_data[7:0]写入任何寄存器、校验和会更新为值 I2C_CKSUM_NEW[7:0]、如下所示:


    I2C_CKSUM_NEW[7]= I2C_CKSUM[5]^ I2C_CKSUM[6]^ I2C_CKSUM[7]^ reg_data[5]^ reg_data[6]^ reg_data[7]
    I2C_CKSUM_NEW[6]= I2C_CKSUM[4]^ I2C_CKSUM[5]^ I2C_CKSUM[6]^ reg_data[4]^ reg_data[5]^ reg_data[6]
    I2C_CKSUM_NEW[5]= I2C_CKSUM[3]^ I2C_CKSUM[4]^ I2C_CKSUM[5]^ reg_data[3]^ reg_data[4]^ reg_data[5]
    I2C_CKSUM_NEW[4]= I2C_CKSUM[2]^ I2C_CKSUM[3]^ I2C_CKSUM[4]^ reg_data[2]^ reg_data[3]^ reg_data[4]
    I2C_CKSUM_NEW[3]= I2C_CKSUM[1]^ I2C_CKSUM[2]^ I2C_CKSUM[3]^ I2C_CKSUM[7]^ reg_data[1]^ reg_data[2]^ reg_data[3]^ reg_data[7]
    I2C_CKSUM_NEW[2]= I2C_CKSUM[0]^ I2C_CKSUM[1]^ I2C_CKSUM[2]^ I2C_CKSUM[6]^ reg_data[0]^ reg_data[1]^ reg_data[2]^ reg_data[6]
    I2C_CKSUM_NEW[1]= I2C_CKSUM[0]^ I2C_CKSUM[1]^ I2C_CKSUM[6]^ reg_data[0]^ reg_data[1]^ reg_data[6]
    I2C_CKSUM_NEW[0]= I2C_CKSUM[0]^ I2C_CKSUM[6]^ I2C_CKSUM[7]^ reg_data[0]^ reg_data[6]^ reg_data[7]


    其中^表示按位异或运算。


    在此校验和计算中不考虑以下寄存器:
    所有页的寄存器 0、即页面切换寄存器


    完成软件/硬件复位后、I2C_CKSUM 寄存器恢复为默认值 0x00

    谢谢。此致、

    Lakhsmi Narasimhan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  Lakhsmi

    感谢您的回答。 我尝试了一下、结果正常。  



    此致、  

    Gergely Kiss