[STM32F1] 请教一个Stm32的硬件I2C的问题

[复制链接]
 楼主| huoxingyishi 发表于 2016-5-9 11:46 | 显示全部楼层 |阅读模式
我采用的是中断的方式,当I2C2发送字节的时候,发送完起始条件后,采用这句来等待I2C2发送完成:“while (I2C2->SR2&0x0002);”  。 问题就出现在这里,I2C2并不能顺利的进入中断(我在中断函数里面加了断点),程序每次都会跳过这句,进入后面的关中断语句,导致不能进入中断完成I2C2的发送。后来我在 “while (I2C2->SR2&0x0002);  ” 这句前面加一个延时,就能正确的发送了…………而使用断点调试有时就能够正确的进入中断并完成I2C2的发送,这个到能理解,因为断点调试就会起到延时的作用,而全速运行就不能完成I2C2发送。
那么“while (I2C2->SR2&0x0002); ”这句肯定有问题,但是不知道问题是什么
capturesthe 发表于 2016-5-9 17:49 | 显示全部楼层
不是说stm32F1的i2c有debug吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

1

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