你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F072的硬件I2C为什么总是返回NACK

[复制链接]
原同学 提问时间:2017-9-18 20:29 /
问题已解决,把连续读取改为一个byte读取一次即可
上一帖的问题经隔壁坛友提示,发现地址错了,遂改程序,仍然不行。
又根据坛友意见,换为STM32F072C8测试。
今天拿到逻辑分析仪,挂上去一看,瞬间明白,这回地址没发错,器件也正常应答,然而STM32就是读数据返回时候回了个NACK!!!
注明一下:我是让他连续读四个寄存器
捕获.PNG
程序很简单,就是读寄存器,然而为啥STM32就是回复NACK呢?


收藏 评论4 发布时间:2017-9-18 20:29

举报

4个回答
MrJiu 回答时间:2017-9-19 09:26:47
因为STM的硬件I2C很坑呀!!!
废鱼 回答时间:2017-9-19 10:10:28
楼主最好发一下你的读取过程,和配置。我测试L151、407系列硬件中断读取正常。
原同学 回答时间:2017-9-20 18:44:21
安 发表于 2017-9-19 10:10
楼主最好发一下你的读取过程,和配置。我测试L151、407系列硬件中断读取正常。 ...

详细代码及工程是开源的,见 http://github.com/XAS-712/MZY7-ZeroWatchProject
聚东风 回答时间:2020-8-11 09:29:10
我也被坑了...我一直以为是从机的问题....结果一看,示波器显示是对的....
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版