OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2106|回复: 2

IIC问题请教

[复制链接]

15

主题

96

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2017-4-21
在线时间
151 小时
发表于 2018-3-14 12:41:18 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 chengnnan 于 2018-3-14 15:17 编辑

下图为一模块读取数据的时序图,由于刚学不是很懂大致理解意思流程是
1.主机发送START信号;
2.主机发送读地址,等待ACK应答;
3.从机发送ACK信号,及数据1,等待主机ACK应答;
4.主机发送ACK;
5.从机接着发数据;
6.循环几次后,直至数据发完等待主机发送NACK应答;
7.主机发送NACK应答,及STOP信号;
12.png 不知是否是这样,望高手指点指点,谢谢。




最佳答案

查看完整内容[请看2#楼]

过程是对的,理解有点偏差 并不是从机发完所有数据后等待主机NACK,而是主机接收完所需要的数据后发送NACK 也就是说,主机每收到一个字节数据,如果还要下一个字节数据,就发ACK,则从机发下一个字节数据 如果主机不需要下一个字节数据了,就发NACK给从机,接着STOP。主机当然可以提前NACK。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
125
金钱
125
注册时间
2018-3-14
在线时间
19 小时
发表于 2018-3-14 12:41:19 | 显示全部楼层
本帖最后由 qinlicn 于 2018-3-14 15:19 编辑

过程是对的,理解有点偏差
并不是从机发完所有数据后等待主机NACK,而是主机接收完所需要的数据后发送NACK
也就是说,主机每收到一个字节数据,如果还要下一个字节数据,就发ACK,则从机发下一个字节数据
如果主机不需要下一个字节数据了,就发NACK给从机,接着STOP。主机当然可以提前NACK。
回复

使用道具 举报

1

主题

882

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3071
金钱
3071
注册时间
2018-2-7
在线时间
285 小时
发表于 2018-3-14 15:00:47 | 显示全部楼层
下载一个例程,把例程调通在慢慢去理解时序。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 10:15

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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