在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 2693|回复: 4

[求助] 请教I2C主收从发的流程问题

[复制链接]
发表于 2011-9-6 10:40:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
我想确认下这个读操作流程,主要是在一篇资料上看到的文字描述和图形描述不一致。请做过的朋友确认下。
1.    Master 发送I2C addr(7bit)和 w操作1(这是不是有问题?图中这个地方又为0),等待ACK
2.    Slave 发送ACK
3.    Master 发送reg addr(8bit),等待 ACK
4.    Slave 发送ACK
5.    Master 发起START
6.    Master 发送I2C addr(7bit)和r操作 1(1bit),等待 ACK
7.    Slave 发送ACK
8.    Slave发送data(8bit),即寄存器里的值
9.    Master 发送ACK
10.    第8步和第 9步可重复。
我就是想确认下第一步中那个w操作是不是应该为0?
还有个问题,就是主发从收和主收从发的流程有很大的差别,是不是要实现这两个过程,只是在两个模块中实现,不能放在一个状态机中来判断实现执行主发从收或者主收从发的过程?
发表于 2011-9-6 14:05:21 | 显示全部楼层
1. 我了解的是“0”是写操作,“1”是读操作。
2. 可以在一个状态机里实现,因为不论是读还是写都是主机发起的。
回复 支持 反对

使用道具 举报

发表于 2011-9-14 23:59:14 | 显示全部楼层
可以看一下24C系类的datasheet
AT24C32.pdf (207.63 KB , 下载次数: 15 )
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-9-15 16:41:26 | 显示全部楼层
回复 3# hua2011sz


    好的,谢谢。。。。
回复 支持 反对

使用道具 举报

发表于 2011-9-15 16:52:09 | 显示全部楼层
我做过IIC EEPROM的读写操作,对于EEPROM来说,0是写,1是读。这两个可以分开写,也可以写在一个状态机里。

我是最后将以上的那些都分别写成了单独的模块,然后在一个模块中分别调用这些模块,也是用状态机实现的。

主要还是要仔细阅读datasheet。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐 上一条 /1 下一条


手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-9-14 20:34 , Processed in 0.021984 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表