打印

I2C无法任意读

[复制链接]
1919|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
程序在87**掉了!可以连续写入。(用的205的芯片)

捕获.PNG (59.8 KB )

捕获.PNG
沙发
duljsky|  楼主 | 2013-3-8 15:43 | 只看该作者
大虾们呢!先自己顶一个!!!!

使用特权

评论回复
板凳
IJK| | 2013-3-8 15:53 | 只看该作者
STM32F2、F4的I2C不大好用,常常在某些地方会卡住,得加点防出错措施才行。

使用特权

评论回复
地板
duljsky|  楼主 | 2013-3-8 16:22 | 只看该作者
IJK 发表于 2013-3-8 15:53
STM32F2、F4的I2C不大好用,常常在某些地方会卡住,得加点防出错措施才行。

我刚才又实验了一下,for循环只执行了一次,在第二次while判断是卡掉了,也就是说RxNE没有置位???!!!数据没读出?可是查看temp指向的数组已经读出正确的数据了,不过就执行了这么一次~

使用特权

评论回复
5
duljsky|  楼主 | 2013-3-8 16:36 | 只看该作者
IJK 发表于 2013-3-8 15:53
STM32F2、F4的I2C不大好用,常常在某些地方会卡住,得加点防出错措施才行。

我找到问题了,原来是主机没有产生应答(ACK),是我在配置寄存器时先设置的ACK使能,后使能的模块,结果ACK使能被硬件清零了。唉,没好好阅读文档啊,硬件玩的就是时序~

jietu.PNG (12.16 KB )

jietu.PNG

使用特权

评论回复
6
hawksabre| | 2013-3-8 16:40 | 只看该作者
呵呵  不是很了解  这一块用的还不是很多  顶起来  不错哦

使用特权

评论回复
7
duljsky|  楼主 | 2013-3-8 16:47 | 只看该作者
hawksabre 发表于 2013-3-8 16:40
呵呵  不是很了解  这一块用的还不是很多  顶起来  不错哦

呵呵,晚些时候把代码贴出来,大家一起交流学习~

使用特权

评论回复
8
明月小厨| | 2013-3-9 03:37 | 只看该作者
我第一次搞I2C的时候也是从机没有应答;模拟输出时序是可以(没检查应答);

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:日行一善

18

主题

127

帖子

1

粉丝