请问I2C的ISR Busy bit什么时候会被设为1?

2019-07-18 17:28发布

请问一下I2C的ISR Busy bit什么时候会被设为1, 什么时候会被设为0
会被设为1之后, 就一直没有被设为0的情况是什么??


Thanks
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
TOPCB
1楼-- · 2019-07-19 17:43
 精彩回答 2  元偷偷看……
seasideboy
2楼-- · 2019-07-19 22:44
STM32的IIC就是这样,只能在屏蔽良好的理想环境下使用,在强干扰环境下随时都会硬件出错停止响应IIC操作,官方有个针对其IIC极易出各种硬件错误的文档说明,也只是推荐了几种重新初始化IIC模块的操作建议,亲自充分测试过,没有绝对可行的解决办法,原因就在其主从自适应的灵活性和错误检测不能自动退出的低级容错性,导致其普通的主模式操作极易因信号干扰宕机,有人说新生产的批次解决了这个问题,可在淘宝上买的最常用的STM32F103新品实测并没有改善这个问题,最佳方法就是硬件上做好信号干扰屏蔽,同时避免多芯片之间IIC信号输入输出冲突,最后建议尽量不要在关键控制区域使用STM32 的IIC接口模块。
Amrzs
3楼-- · 2019-07-20 04:14
iic不建议用库函数,官方给的都很负责。在网上找个写好的基本不用改就能用,还不会出现问题

一周热门 更多>