打印
[PIC®/AVR®/dsPIC®产品]

I2C的应答与非应答

[复制链接]
1681|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xixi2017|  楼主 | 2023-11-6 20:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
I2C(Inter-Integrated Circuit)总线是一种常用于连接微控制器、传感器、存储设备和其他集成电路之间的通信总线协议。在I2C通信中,有两个基本概念,即应答(Acknowledge)和非应答(Nacknowledge),用于确认数据传输的成功或失败。

应答(Acknowledge):

当一个I2C从设备接收到一个字节的数据后,它需要向主设备(通常是微控制器)发送一个应答信号以确认接收到数据。这个应答通常是一个低电平脉冲。
应答信号告诉主设备从设备已成功接收到数据,并准备好接收更多的数据或执行下一个操作。
如果主设备收到应答信号,则它会继续发送更多数据或命令给从设备。这个过程可能包括多个字节的数据传输。
在I2C总线上,应答通常是在SDA(数据线)上由被动设备控制,而SCL(时钟线)用于同步数据传输。
非应答(Nacknowledge):

非应答信号是一个高电平脉冲,用于表示从设备不愿接收更多数据或无法成功接收到当前的数据。
主设备在发送完最后一个字节后,如果从设备不打算接收更多数据,或者从设备无法成功接收到当前的数据,它会发送一个非应答信号。
非应答信号告诉主设备停止发送数据或执行其他操作,因为从设备无法继续通信。
非应答通常用于错误处理或表示从设备无法执行所请求的操作。
在I2C通信中,应答和非应答是重要的通信机制,用于确保数据的可靠传输和协调主从设备之间的操作。通过应答和非应答信号,主设备和从设备可以有效地进行双向通信,进行数据读取和写入,并处理通信中可能出现的错误。这些信号帮助确保I2C总线上的稳定和可靠的通信。

使用特权

评论回复
沙发
xixi2017|  楼主 | 2023-11-6 21:35 | 只看该作者
写I2C的时候还要注意,什么时候是从机响应,什么时候是主机发起响应,这两个是有区别的。

使用特权

评论回复
板凳
Undshing| | 2023-11-12 18:47 | 只看该作者
这两个差别不大吧

使用特权

评论回复
地板
Henryko| | 2023-11-14 11:07 | 只看该作者
最后结束前发应答和非应答有什么区别啊?

使用特权

评论回复
5
Stahan| | 2023-11-16 14:47 | 只看该作者
发送应答后再发停止好像也可以使用啊

使用特权

评论回复
6
Stahan| | 2023-11-16 14:47 | 只看该作者
发送应答后再发停止好像也可以使用啊

使用特权

评论回复
7
forgot| | 2023-11-17 10:43 | 只看该作者
非应答信号是一个高电平脉冲,用于表示从设备不愿接收更多数据或无法成功接收到当前的数据。

使用特权

评论回复
8
AloneKaven| | 2023-11-21 10:12 | 只看该作者
Stahan 发表于 2023-11-16 14:47
发送应答后再发停止好像也可以使用啊

还是按照协议标准来比较好

使用特权

评论回复
9
Bowclad| | 2023-11-23 14:56 | 只看该作者
按标准来的好处是别人都能看得懂

使用特权

评论回复
10
tpgf| | 2023-12-1 09:12 | 只看该作者
无论是什么设备 iic的时序都是相同的

使用特权

评论回复
11
aoyi| | 2023-12-1 09:44 | 只看该作者
iic总线上连接的上拉电阻的范围是多少呢

使用特权

评论回复
12
gwsan| | 2023-12-1 12:41 | 只看该作者
应答信号一般在多长时间内进行应答呢

使用特权

评论回复
13
nawu| | 2023-12-2 08:00 | 只看该作者
我觉得这种握手的通讯是比较可靠的

使用特权

评论回复
14
zljiu| | 2023-12-2 08:33 | 只看该作者
在什么情况下返回值是错误码呢

使用特权

评论回复
15
tfqi| | 2023-12-2 09:11 | 只看该作者
应答信号有相应的前导波形吗

使用特权

评论回复
16
Henryko| | 2023-12-4 10:18 | 只看该作者
最后发送应答也能终止啊

使用特权

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

本版积分规则

119

主题

1741

帖子

1

粉丝