尊敬的香榭丽舍
我向我们的客户提出这一问题。
1) 1)在获取8个 I2C 时钟周期的 I2C 数据/命令后、I2C 模块是否首先发送 ACK、然后进入 ISR?
2) 2) I2C 模块能否先获取8 I2C 时钟周期 I2C 数据/命令、然后进入 ISR 并决定稍后发送 ACK 或 NACK? 也就是说、使用基于软件的 ACK/NACK?
黄维恩
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.
尊敬的香榭丽舍
我向我们的客户提出这一问题。
1) 1)在获取8个 I2C 时钟周期的 I2C 数据/命令后、I2C 模块是否首先发送 ACK、然后进入 ISR?
2) 2) I2C 模块能否先获取8 I2C 时钟周期 I2C 数据/命令、然后进入 ISR 并决定稍后发送 ACK 或 NACK? 也就是说、使用基于软件的 ACK/NACK?
黄维恩
韦恩、
1~)获取8-I2C-Clock-cycle I2C 数据/命令后、I2C 模块是否先发送 ACK、然后进入 ISR?/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/991971/tms320f280025-how-f28002x-4x-i2c-module-handles-ackI2CMDR.NACKMOD 位控制是否生成 ACK 位(或) NACK 位。
在从机 RX 模式下:
当 I2CMDR.NACKMOD = 0时、I2C 模块将在应答周期内自动发送 ACK 位、然后进入 ISR。
当 I2CMDR.NACKMOD = 1时、I2C 模块将在确认周期内自动发送 NACK 位、然后进入 ISR
在主 RX 模式下:
当 I2CMDR.NACKMOD = 0时、I2C 模块将在确认周期内自动发送 ACK 位、直到 I2CCNT > 0、并在 I2CCNT = 0时发送 NACK 位。
当 I2CMDR.NACKMOD = 1时、I2C 模块将在应答周期内自动发送 NACK 位、而不管 I2CCNT 值是什么。
2~) I2C 模块能否先获取8个 I2C 时钟周期的 I2C 数据/命令、然后输入 ISR 并决定稍后发送 ACK 或 NACK /support/microcontrollers/c2000/f/c2000-microcontrollers-forum/991971/tms320f280025-how-f28002x-4x-i2c-module-handles-ack? 也就是说、使用基于软件的 ACK/NACK?否、进入 ISR 例程后、您无法通过 SW 方法发送 ACK / NACK 位。
此致、
曼诺伊