ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
为控制器模块提供了突发模式,该模式允许使用 DMA 或软件处理 FIFO 中数据的数据传输序列。要启用突发模式,将控制器控制寄存器 I2Cx.MCTR 中的 MBLEN 位设置为大于 1 的值,这会设置突发传输的字节数。该值会自动写入 I2C 控制器状态寄存器 I2Cx.MSR 中的 MBCNT 位,以便在突发传输期间用作向下计数器。
写入 I2C FIFO 的字节将被传输到 RX FIFO 或 TX FIFO,具体取决于是执行发送还是接收。如果在突发期间数据被否定确认 (NACK) 且 I2Cx.MCTR 寄存器中的停止位被设置,则传输终止。如果停止位没有被置位,软件必须在 NACK 中断有效时发出停止或重复的启动条件。对于 NACK,I2Cx.MSR 寄存器中的 MBCNT 位可用于确定在突发终止之前传输的数据量。如果在传输过程中该地址被否定确认 (NACK),则发出停止条件。