主题中讨论的其他部件:CC2640、 CC2544
大家好、
我们的客户使用 CC2640R2连接 I2C 从器件。 有时、CC2640R2 I2C 将挂起、无法恢复。
下面显示了 i2c 事务失败时的波形。
(1)故障事务如下所示。
(2) 在 i2c 事务失败后、cc2640执行 i2c 传输、波形如下所示。
我们找到了 mstat 寄存器(表下方)和 DATAACK_N 位 Keep 以报告1。
我是否可以知道如何通过设置 i2c regisgters 来清除此位? 谢谢
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.
大家好、
我们的客户使用 CC2640R2连接 I2C 从器件。 有时、CC2640R2 I2C 将挂起、无法恢复。
下面显示了 i2c 事务失败时的波形。
(1)故障事务如下所示。
(2) 在 i2c 事务失败后、cc2640执行 i2c 传输、波形如下所示。
我们找到了 mstat 寄存器(表下方)和 DATAACK_N 位 Keep 以报告1。
我是否可以知道如何通过设置 i2c regisgters 来清除此位? 谢谢
我的观点是、为什么 DATAACK 总是报告"1"。 我们尝试通过 JTAG 将所有命令(如下所示)发送到0x804主控制寄存器
但 DAYACK 位始终置位。
#define I2C_MASTER_CMD_BURST_RECEIVE_CONT0x00000009 |
#define I2C_MASTER_CMD_BURST_RECEIVE_ERROR_STOP 0x00000004 |
#define I2C_MASTER_CMD_BURST_RECEIVE_FINISH 0x00000005 |
#define I2C_MASTER_CMD_BURST_RECEIVE_START 0x0000000b |
#define I2C_MASTER_CMD_BURST_SEND_CONT0x00000001 |
#define I2C_MASTER_CMD_BURST_SEND_ERROR_STOP 0x00000004 |