下面是从示波器捕获的在 MSP i2c 从模式下进行的数据传输。
在捕获中、黄色是 i2c SDA、粉色是 i2c SCL。
最初、i2c SDA 和 SCL 线路在 i2c 通信开始之前变为高电平。
我将时间刻度保持在1毫秒、以捕获完整的 i2c 波形。
如波形中所示:
- 首先、主器件将起始信号、具有写入位的从器件地址和寄存器地址发送到从器件 MSP430。 (由观察到的波形的第一个低尖峰表示)
- 下一个重复起始位、发送带有读取位的从器件地址。 (由波形中的下一个低电平事件指示)。
- 最后从捕获结果中可以看出、在大约2.5毫秒的延迟后、从器件(MSP)将 ACK 与请求的数据一起发送给主器件。
为什么在带有读取位的重复起始+从器件地址之后、MSP 提供 ACK 的延迟太长(2.5毫秒)?
此外、如何在 MSP 从器件中触发 TX 中断? 您能否指定当 MSP 通过 i2c 总线传输数据时设置的标志和寄存器。
