野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 24648|回复: 2

关于IIC有个问题想咨询

[复制链接]
发表于 2020-8-29 16:20:28 | 显示全部楼层 |阅读模式
10火花
本帖最后由 467412343@qq.co 于 2020-8-29 16:23 编辑

为什么最后要清除AF位(AF位是应答失败的标志位),但是如果应答失败了,ADDR位是不会置1的(也就是SR1寄存器的1位),这样是不会跳出这个do while循环的啊,有老哥解答一下吗


微信图片_20200829162215.png
回复

使用道具 举报

发表于 2020-9-3 07:38:51 | 显示全部楼层
我的理解是,这个程序只是一个在向I2C写入后的等待程序,如果应答失败的话在向I2C写入的程序中就会响应超时报错,不会进入这个程序。do-while循环后清除AF是为了使之后的读程序可以正常运行
回复

使用道具 举报

发表于 2021-1-8 09:17:52 | 显示全部楼层
我想知道这个是硬件IIC吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-17 11:03 , Processed in 0.037525 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表