IIC总线

引言

IIC总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。


  1. 主从双向通信。主从器件都可发送接收数据,主器件产生SCL时钟、控制总线传送方向,并产生开始停止条件。
  2. 有SCL时钟线和SDA数据线,都是双向线传输线。总线备用时候(没人用的时候)SDA=SCL=高电平,只有关闭IIC总线时候SCL才是低电平。
  3. 传输速率:
    • 普通模式:100k bit/s
    • 快速模式:400k bit/s
    • 高速模式:3.4M bit/s

总线备用:
这里写图片描述


开始和停止信号:
这里写图片描述

开始和停止信号
信号 SCL SDA注意
开始信号由高到低跳变前高电平持续时间要大于4.7us且SDA的低电平持续时间要大于4us
结束信号由低到高跳变前低电平持续时间要大于4us且SDA的高电平持续时间要大于4.7us

应答信号:
这里写图片描述

ACK应答:
Created with Raphaël 2.1.2 SDA SDA SCL SCL 等待大于4us

非ACK(非应答):
Created with Raphaël 2.1.2 SDA SDA SCL SCL 等待大于4us

控制字
控制字
IIC从器件地址4位片选和块选 读写?
1010(串行EEPROM)A2 A1 A0 1读0写
由Philip公司IIC规程决定A2 A1 A0 R/-W

AT24CTXX:包含一个地址计数器,保存被存取的最后一个字的地址,并在片内自动加一。(就是说以前存取的地址为n,下一次就是n+1)


读操作

字节写:

Created with Raphaël 2.1.2 OP OP Start control-写命令8位控制字 ACK Address ACK Data Stop



页面写:

Created with Raphaël 2.1.2 OP OP Start control-写命令 8位控制字 ACK Address ACK Data ACK ------- Data Stop

读操作:

字节读:读当前地址内容

Created with Raphaël 2.1.2 OP OP Start control-读控制 8位控制字 Data 非ACK Stop



随机读:先写地址,然后读

Created with Raphaël 2.1.2 OP OP Start control-写控制 8位控制字 ACK Address ACK 写了地址后、读数据 Start control-读控制 8位控制字 ACK Data 非ACK Stop



顺序读:

Created with Raphaël 2.1.2 OP OP Start control-写控制 8位控制字 ACK Address ACK 写了地址后、读数据 Start control-读控制 8位控制字 ACK Data ACK ----------- 非ACK Stop
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值