- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.I2C 协议
2 条双向串行线,一条数据线 SDA ,一条时钟线 SCL。
SDA 传输数据是大端传输,每次传输 8bit ,即一字节。
支持多主控 (multimastering) ,任何时间点只能有一个主控。
总线上每个设备都有自己的一个 addr ,共 7 个 bit ,广播地址全 0.
系统中可能有多个同种芯片,为此 addr 分为固定部分和可编程部份,细节视芯片而定,看 datasheet 。
1.1 I2C 位传输
数据传输: SCL 为高电平时, SDA 线若保持稳定,那么 SDA 上是在传输数据 bit ;
若 SDA 发生跳变,则用来表示一个会话的开始或结束(后面讲)
数据改变: SCL 为低电平时, SDA 线才能改变传输的 bit
1.2 I2C 开始和结束信号
开始信号: SCL 为高电平时, SDA 由高电平向低电平跳变,开始传送数据。
结束信号: SCL 为高电平时, SDA 由低电平向高电平跳变,结束传送数据。
1.3 I2C 应答信号
Master 每发送完 8bit 数据后等待 Slave 的 ACK 。
即在第 9 个 clock ,若从 IC 发 ACK ,SDA 会被拉低。
若没有 ACK ,SDA 会被置高,这会引起 Master 发生 RESTART 或 STOP 流程,如下所示:
1.4 I2C 写流程
写寄存器的标准流程为:
1. Master 发起 START
2. Master 发送 I2C addr (7bit )和 w 操作 0 (1bit ),等待 ACK
3. Slave 发送 ACK
4. Master 发送 reg addr (8bit ),等待 ACK
5. Slave 发送 ACK
6. Master 发送 data (8bit ),即要写入寄存器中的数据,等待 ACK
7. Slave 发送 ACK
8. 第 6 步和第 7 步可以重复多次,即顺序写多个寄存器
9. Master 发起 STOP
写一个寄存器
写多个寄存器
1.5 I2C 读流程
读寄存器的标准流程为:
1. Master 发送 I2C addr (7bit )和 w 操作 1 (1bit ),等待 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 步可以重复多次,即顺序读多个寄存器
读一个寄存器
读多个寄存器
2. PowerPC 的 I2C 实现
Mpc8560 的 CCSR 中控制 I2C 的寄存器共有 6 个。
2.1 I2CADR 地址寄存器
CPU 也可以是 I2C 的 Slave ,CPU 的 I2C 地址有 I2CADR 指定
2.2 I2CFDR 频率设置寄存器
The serial bit clock frequency of SCL is equal to the CCB clock divided by the divider.
用来设置 I2C 总线频率
2.3 I2CCR 控制寄存器
MEN : Module Enable. 置 1 时, I2C 模块使能
MIEN :Module Interrupt Enable. 置 1 时, I2C 中断使能。
MSTA :Master/slave mode. 1 Master
您可能关注的文档
最近下载
- 小学语文新部编版一年级上册全册教案(2025秋新版).doc
- 管理会计第5版冯巧根课后习题答案.docx
- TB10419-2018 铁路信号工程施工质量验收标准.docx VIP
- 2025年中小学教师正高级职称评聘答辩试题(附答案).docx VIP
- 海尔集团全面预算管理.pdf VIP
- GD&T (几何尺寸和公差).pdf VIP
- 2024年下半年下午软件测评师试题及答案与解析全国软考真题.docx VIP
- 产科危急重症早期识别中国专家共识解读PPT课件.pptx VIP
- 2024-2025学年北京市朝阳区九年级上学期期中考道德与法治试卷含详解.docx VIP
- 资产评估报告范例-资产评估报告房地产.pdf VIP
原创力文档


文档评论(0)