STM32硬件I2C无响应

zichenxiaoxu 2016-08-01 09:33:48
在调试STM32硬件I2C的时候在


//Test on EV6 and cleat it
while(!I2C_CheckEvent(I2C1, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED));
总是卡住,不知道为什么,望大家能够解释。
...全文
1313 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gathon 2016-08-18
  • 打赏
  • 举报
回复
一般都是模拟IIC
fly 100% 2016-08-18
  • 打赏
  • 举报
回复
继续往下跟啊
SevenColours 2016-08-17
  • 打赏
  • 举报
回复
stm32的I2C有bug, 不过软件也可以解决这个问题的,网上有好多关于这个bug的说明,也有好多可用的源码,搜一下即可。
玉怀一捧雪 2016-08-03
  • 打赏
  • 举报
回复
硬件有BUG,还是用IO模拟把
Tommy_deaaa 2016-08-03
  • 打赏
  • 举报
回复
硬件iic存在bug,需要设置DMA加最高优先级才行,目的是保证时序不被中断。否则就会有问题。
hello_mcu 2016-08-03
  • 打赏
  • 举报
回复
STM32的I2C据说有个bug,但是未曾见过。现在都还是模拟I2C口。 这里有个高人的博客,讲述了这个问题。可以参考看看: http://blog.csdn.net/mcu_hong/article/details/8149311
foxnboy 2016-08-02
  • 打赏
  • 举报
回复
貌似stm32的i2c有bug.
zichenxiaoxu 2016-08-02
  • 打赏
  • 举报
回复
引用 4 楼 Callon_H的回复:
1. 排除硬件问题,上拉,上拉输入模式,scl和sda是否接反 2. 地址是否选择正确,有的地址和引脚连接有关 3. 时序问题,通信速率是否选择正确 4. i2c1貌似和fsmc冲突,需要重映射引脚,所以一直有问题可以试试io重映射后看看现象。 大概这么多吧,越难找的问题越是小问题。
这几个问题我查了,没问题,它就是卡在ev6的检测上,后来我把ev6改成了ev5还是卡在原来的我位置
Callon_H 2016-08-02
  • 打赏
  • 举报
回复
1. 排除硬件问题,上拉,上拉输入模式,scl和sda是否接反 2. 地址是否选择正确,有的地址和引脚连接有关 3. 时序问题,通信速率是否选择正确 4. i2c1貌似和fsmc冲突,需要重映射引脚,所以一直有问题可以试试io重映射后看看现象。 大概这么多吧,越难找的问题越是小问题。
默寞 2016-08-02
  • 打赏
  • 举报
回复
网上有很多例程,你多试几个,我刚开始也遇到,后来发现是地址设置有问题 I2C后面接的什么?
zichenxiaoxu 2016-08-02
  • 打赏
  • 举报
回复
具体是什么能够讲一下吗

27,382

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧