Part Number:TLV320AIC3106
关于CODECAIC3106芯片的读写错位问题(C6746 DSP平台)
使用C67平台在对芯片进行硬件复位之后再次进行软件复位,此时所有的寄存器的值为DataSheet上的默认值,之后会将所有的寄存器读取回来,发现返回来的寄存器默认值存在错位的情况,如DataSheet上寄存器的默认
值:Register 2/3/4的默认值为0x00,0x10,0x04,但是返回来的值,Register 2/3/4返回值为0x10,0x04,0x00.
在写进行设置的时候(写寄存器的时候)会进行一次回读,在写的操作后进行一次读取,发现寄存器也是出现错位的情况的。
比如在对Register 3写入0x55的时候,再将Register 3回读,发现值没有改变,但是Register 2的值读取来是0x55。
PS:
1.确定硬件复位是有效的
2.进行软件复位的时候也是有效的,也就是可以对Register 1正确写入。
请问这种情况会是什么原因造成的。
Amy Luo:
您好,
您是采用SPI还是I2C通信?
user1137090 said:2.进行软件复位的时候也是有效的,也就是可以对Register 1正确写入。
您是怎样判断的对Register 1可以正确写入?
user1137090 said:比如在对Register 3写入0x55的时候,再将Register 3回读,发现值没有改变,
您可以抓取上述写入和读取的通信时序波形吗?看下是否时序上的问题造成的?