单片机原理与应用系统设计第06章节

单片机原理与应用系统设计第06章节

ID:45038508

大小:840.00 KB

页数:88页

时间:2019-11-08

单片机原理与应用系统设计第06章节_第1页
单片机原理与应用系统设计第06章节_第2页
单片机原理与应用系统设计第06章节_第3页
单片机原理与应用系统设计第06章节_第4页
单片机原理与应用系统设计第06章节_第5页
资源描述:

《单片机原理与应用系统设计第06章节》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章单片机系统串行扩展技术6.1单片机串行扩展概述6.2I2C总线6.3SPI串行外设接口6.4单总线(1-WIREBUS)6.5串行A/D和D/A转换接口6.1单片机串行扩展概述单片机应用系统中使用的串行扩展总线主要有I2CBus(InterICBus),SPI(SerialPeripheralInterface)以及单总线(1-WireBus)等,这类串行通信总线接口是一种二/三线的串行通信标准,在使用时,硬件要符合接口标准时序的要求,软件要遵守标准要求的通信协议,并且在信号定义、接口方法以及操作上各有不同。对于没有这种接口的单片机只要在硬件和软件上能模拟它的通信要求,同

2、样可以与带有这类串行通信标准的芯片相连使用。优点:仅占用很少的资源和I/O线,器件接线简单,结构紧凑,同时还具有工作电压宽、抗干扰能力强、功率低、数据不易丢失和支持在线编程等优点。6.2I2C总线6.2.1I2C总线的基本原理6.2.2I2C总线数据传输格式6.2.3AT24系列串行E2PROM6.2I2C总线I2C总线的数据传送只需两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。I2C总线通过这两根线传送信息,可发送和接收数据,并允许若干兼容器件共享总线。I2C总线传输速率为100kbps(改进后的规范为400kbps);I2C总线上的外围器件都是CMOS器件,属

3、于电压型负载,总线上的器件数量不是由电流负载能力决定,而是由电容负载确定。6.2I2C总线①两线式传输。总线上的所有节点,如主器件(单片机,微处理器)、外围器件、接口模块等都连到同名端的SDA、SCL线上。②系统中有多个主器件时,这些器件都可作为总线的主控制器,总线工作时任何一个主器件都可以成为主控制器,多机竞争时的时钟同步与总线仲裁都由硬件与标准软件模块自动完成,无须用户介入。③按照I2C总线规范,总线传输中将所有状态都生成相应的状态码,主器件能够依据这些状态码自动进行总线管理。④系统中所有外围器件及模块采用器件地址及引脚地址的编址方法。⑤所有带I2C接口的外围器件都具有应答

4、功能。I2C总线主要特性如下:6.2.1I2C总线的基本原理由于I2C总线为双向同步串行总线,因此,I2C总线接口内部为双向传输电路,即各器件连接到总线的输出端是漏极开路输出或集电极开路输出的电路结构,故两条总线上必须有上拉电阻R,R通常可以选510k。典型的I2C总线接口电路如图1所示:6.2.1I2C总线的基本原理图6-1I2C总线接口电路结构图6.2.1I2C总线的基本原理I2C总线的寻址方式:在I2C总线开始信号后,主器件发出的第一个字节数据是用来选择从器件地址的,其中前7位地址码,第8位为方向位(R/W)。方向位为“0”表示发送,即主器件把信息写到所选择的从器件,

5、方向位为“1”表示主器件将向从器件读信息。开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第8位(R/W)确定。6.2.2I2C总线数据传输格式1.I2C总线信号主器件和从器件之间一次数据传送称为一帧。一帧由启动信号、若干个数据字节和应答位以及停止信号组成。I2C总线是按位传送的,在时钟线SCL的一个时钟周期只能传送一位数据。而且,数据线SDA上的信号电平在SCL为高电平期间必须稳定(除启动和停止信号),数据线上的信号变化只允许在SCL的低电平期间发生。如图6

6、-2所示。6.2.2I2C总线数据传输格式图6-2I2C总线接口电路时序在I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义如图6-3所示。当时钟线SCL为高电平时,主器件向SDA线上送出一个由高到低的电平,表示“开始”信号,总线上出现开始信号后,就认为总线处在工作状态;当SCL线为高电平时,主器件向SDA线上送出的由低到高的电平,表示“结束”信号,总线上出现结束信号后,就认为总线处于不忙或空闲状态。6.2.2I2C总线数据传输格式图6-3开始和结束信号6.2.2I2C总线数据传输格式6.2.2I2C总线数据传输格式2.I2C总线上的数据传输在I2C总线上每次传送

7、的数据字节数不限,但每一个字节必须为8位,而且每个传送的字节后面必须跟一个认可位(第9位),也叫应答位(ACK),数据的传送过程如图6-4所示。数据传送每次都是先传最高位,通常从器件在接收到每个字节后都会做出响应,准备接收下一个数据字节,主器件可继续传送。如果从器件正在处理一个实时事件而不能接收数据时,例如正在处理一个内部中断,在这个中断处理完之前就不能接收I2C总线上的数据字节,这时可以在应答信号后,使时钟SCL线保持低电平,控制总线暂停。当接收器准备好接收下一个字节时再释放时钟线SCL,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。