单片机IIC总线学习笔记

  • SingleYork
  • LV5工程师
  • |      2014-12-31 17:06:47
  • 浏览量 538
  • 回复:2
 申明:本资料来源与网络,经整理后在此与大家分享!

 

前段时间在学习单片机通信的时候,接触到了IIC,一番接触之下,感觉原来不用记那么

多,只要了解关键的协议部分就够了。

单片机IIC总线学习笔记

如图1 所示,就是IIC 总线连接图了。

简单来说,就一根数据SDA,一根时钟SCL。两根线按照一定的协议来传输数据。这样既

可以节省IO 口和电路板空间,又可以让每个能够发送接受数据的设备成为主控机,当然,

前提是,同一时间上只能有一台设备是主控设备。

接下来了解一下IIC的信号类型,

它共有四种信号:起始信号、停止信号、应答信号、非应答型号。

然后我们了解IIC 传输数据的规则:

单片机IIC总线学习笔记

2 数据传送的规则

首先,我们了解

SCL=1 时,SDA 上的电平变化决定信号是起始信号还是停止信号

SCL=0 是,SDA 上的电平允许变化,变化好了,等SCL=1 时,保持SCL=0,变化下

一位数据,这一位的数据就算是传送成功了。当然,判断数据是否为高低电平,需要一个时

间,下面会说到。

接着,我们了解IIC的四种数据类型:

详细说太繁琐,又不好记忆,我简化了一下,大家理解住就很好记了。注意,这四种信号都

是在SCL=1 时定义的。

上面有说到,SCL=1 时,SDA 的变化是变换数据类型和判断数据高低电平的,

SCL=0 时,仅是用于SDA 安全变化。

单片机IIC总线学习笔记

起始信号:SDA "1" "0",定义为起始。

单片机IIC总线学习笔记

停止信号:SDA "0" "1",定义为停止。

当数据发送一个字节即8 位数据后,到第9 数据,接收的设备必须输出"0"做为应答信号。

于此同时,发送设备就要释放SDA,用于接受判断接受设备是否应答。

单片机IIC总线学习笔记

应答信号:SDA=0,定义为应答。

单片机IIC总线学习笔记

非应答信号:SDA=1,定义为非应答。这个信号用于,主控设备接收数据时,用在最后一

个数据后面,使受控设备释放数据线,以便主控设备产生一个停止信号来终止总线的数据传

送。

再次总结一下,四种信号中,只有(非)应答信号接收设备控制的哦,其他的都是发送设

备控制的,所以又叫主控设备。这应该很好理解吧。

了解了数据传输的规则,接下来就要说协议了。

单片机IIC总线学习笔记

                                        图3 总线的完整时序

先看了解一下图3,大致理解上面说到的四种信号的使用。

单片机IIC总线学习笔记

                                        图4 总线写格式

写操作就是主控器件向受控器件发送数据,如图4所示。

1.主控器会对总线发送起始信号,

2.紧跟应该是第一个字节的8 位数据,但是从地址只有7 位,所谓从地址就是受控器的

地址,而第8 位是受控器约定的数据方向位,“0”为写。

3.从图3中我们可以清楚地看到发送完一个8 位数之后应该是一个受控器的应答信号。

4.应答信号过后就是第二个字节的8 位数据,这个数多半是受控器件的寄存器地址。

5.寄存器地址过后就是要发送的数据,当数据发送完后就是一个应答信号,每启动一次总

线,传输的字节数没有限制,一个字节地址或数据过后的第9 个脉冲是受控器件应答信号。

6.当数据传送完之后由主控器发出停止信号来停止总线。

单片机IIC总线学习笔记

                                        图5 总线读格式

读操作指受控器件向主控器件发送数据,其总线的操作格式如图5。

1.由主控器发出起始信号,前两个传送的字节与写操作相同。

2.到了第二个字节之后,就要从新启动总线,改变传送数据的方向,前面两个字节数据方向

为写,即“0”;第二次启动总线后数据方向为读,即“1”;之后就是要接收的数据。

3.从图5的写格式中我们可以看到有两种的应答信号。一种是受控器的,另一种是主控器的。

前面三个字节的数据方向均指向受控器件,所以应答信号就由受控器发后出。但是后面要接

收的N 个数据则是指向主控器件,所以应答信号应由主控器件发出,当N 个数据接收完成

之后,主控器件应发出一个非应答信号,告知受控器件数据接收完成,不用再发送。

4.最后的停止信号同样也是由主控器发出。

 

下面推荐几个单片机IIC的程序及相关资料,大家可以参考下:

 

 

 

 

 

 

  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:1
执念 2015-01-14
总结的不错,谢谢分享啦!
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子