[APM32F1] 极海 APM32F103 的 I2C 从机多字节接收与 DMA 中断的 C 实现要点

[复制链接]
169|28
plsbackup 发表于 2026-11-9 13:55 | 显示全部楼层
从机必须开启 ACK;如果关闭 ACK,主机发一个字节就停,无法多字节传输。
yeates333 发表于 2026-11-9 15:30 | 显示全部楼层
I2C从机与DMA协同时序优化策略
olivem55arlowe 发表于 2026-11-10 11:08 | 显示全部楼层
由 DMA 自动搬运,ISR 中一般不需要逐字节读。
deliahouse887 发表于 2026-11-10 12:40 | 显示全部楼层
TRA 位要等 ADDR 清除后读 STAR2 才有效,且只在 ADDR 匹配期间有意义;不要通过中断嵌套顺序判断。
sanfuzi 发表于 2026-11-10 15:11 | 显示全部楼层
ADDR 标志未清除导致总线死锁
sheflynn 发表于 2026-11-10 15:59 | 显示全部楼层
APM32F103 I2C从机中断优先级配置技巧
ulystronglll 发表于 2026-11-10 20:14 | 显示全部楼层
I2C从机DMA传输如何防数据丢失?
dspmana 发表于 2026-11-11 08:14 | 显示全部楼层
从机模式下 SCL 时钟由主机给出,从机只需关注自身地址与 ACK 行为,不需要配置 SCL 速率计算。
maudlu 发表于 2026-11-11 09:06 | 显示全部楼层
中断可以作为冗余保护,但不要把它当作从机接收完成的唯一依据。更可靠的是以 STOP 事件作为帧结束。
pixhw 发表于 2026-11-12 17:47 | 显示全部楼层
如果主程序处理较慢,可以加双缓冲。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部