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.

[参考译文] TLV320AIC12KEVMB-K:只能从寄存器读取,但无法写入。

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/584560/tlv320aic12kevmb-k-can-just-read-from-the-register-but-can-not-write

部件号:TLV320AIC12KEVMB-K

您好,

  我是中国的研究生,首先,我对我的英语感到抱歉。 最近,我尝试使用TLV320AIC12K来设计系统。 在我的设计中,我将MSP430用作主机,将TLV320AIC用作从属设备。 现在,我可以从Resigter中读取数据。  但是如果我尝试将数据写入到resigter中,我确信我可以获得用于写入的ACK,但是之后,当我读取数据时,我只能读取默认数据。 我可以获得一些帮助吗?  

  谢谢。

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

    欢迎使用E2E,感谢您对我们产品的关注!

    您能描述一下通过I2C读取和写入的过程吗? 您能否提供更多有关I2C地址,寄存器地址,寄存器值等的详细信息?

    此致,
    Luis Fernando Rodríguez ñ o S.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,
    请您回答,我使用msp430f5529LP作为主设备来配置I2C。 我将WFP 4.1 和WFP 4.2 配置为I2C。 用于我的MSP430的晶振是24MHz,然后我将PIN 2.2 设置为SMCLK输出和24MHz,以使AIC12K成为MCLK。
    分配器2的默认vaule为0x20,分配器3的默认vaule为0x01。
    在我的代码中,我将从属地址设置为0x40。 对于MSP430,它可以自动发送地址包。
    第一个实验:
    首先,我将MSP430设置为写入器,发送起始位,发送0x03作为重新分配器3的索引,发送0x21以重置aic12k和发送停止位。
    然后,我再次将MSP430设置为写入器,发送0x02以选择resigter2, send stop bit。 。
    最后,我将MSP430设置为读取器,但我得到的第一个数据是0x01,而不是0x20。
    发送实验:
    首先,我将MSP430设置为写入器,发送起始位,发送0x02作为重新分配器2的索引,发送0xA0以更改重新分配器2中的数据和发送停止位。
    然后,我再次将MSP430设置为写入器,并发送0x02以选择resigter2。
    最后,我将MSP430设置为读取器,但我得到的第一个数据是0x20,但从数据表中,它应该是0xA0。
    在上述所有步骤中,我没有获得UNACKFLG,这意味着所有数据都应正常发送。
    我希望得到您的帮助。
    谢谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,

    请问您是否可以尝试对控制寄存器4进行另一项测试? 您是否有类似的结果?

    此致,
    Luis Fernando Rodríguez ñ o S.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,
    我想,我只测试寄存器4,这样,我发送0x04作为寄存器地址,发送0x1A作为数据。 读取时,我只能读取值0x30,这是默认数据。
    我在社区中进行了一些搜索,我发现有人和我有同样的问题。 这是 e2e.ti.com/.../32.0268万
    在我的测试中,我还在TLV320AIC12K中使用长线连接SMCLK输出和MCLK,我是否应该使用晶体直接为TLV320AIC12K提供MCLK? 这是不是原因?
    此致。
    曹聪
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,曹聪,

    您是否可以尝试使用您提到的晶体? 如果问题仍然存在,请告诉我。

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

    您好,Luis Fernando Rodríguez ñ o S.

      谢谢你,谢谢你,马赫。 现在我们找到了原因。 使用SCLK和FS,只能将写入寄存器的数据保存在temp中,直到获得SCLK和FS。 因此,我们在独立主模式下使用AIC12K。现在,我想我可以在它上进行未来的重新搜索。

    此致。

    曹聪