我正在将该处理器调整为现有应用、其中28377S 是从器件、从主器件接收命令并向其传输数据。
接收数据正常。
从28377S 从器件到主器件的数据传输遵循以下格式:
其中 S =开始、SA =从器件知识、NA = NACK、P =停止。
这也是有效的、但是当代码进入"读回数据"段时(在接收到 R/W = 1的第二个从器件地址字节后、如上所示) 、我将数据写入 I2CA I2CDXR 寄存器。 主器件接收的是我在前一个周期发送的数据。 如果我向从器件发出另一个读取命令、那么我将接收到正确的数据。
I2CSTR XSMT 位的 TRM 描述如下:
"如果新数据未及时传输、之前的数据可能会在 SDA 引脚上重新传输。"
这似乎是我面临的问题。 我正在使用 TX FIFO 来传输数据、但我怀疑我的寄存器设置不正确。
提前感谢您的任何见解。