单片机常用总线讲解.docx
上传人:王子****青蛙 上传时间:2024-09-14 格式:DOCX 页数:52 大小:1.6MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

单片机常用总线讲解.docx

单片机常用总线讲解.docx

预览

免费试读已结束,剩余 42 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第8章单片机常用总线讲解8、1I2C总线接口ﻩ80C51单片机本身不具有I2C总线接口,但就就是通过软件进行模拟,可以挂接具有I2C接口得芯片。8、1、1I2C总线得介绍串行扩展总线在单片机系统中得应用就就是目前单片机技术发展得一种趋势。在目前比较流行得几种串行扩展总线中,I2C总线以其严格得规范与众多带I2C接口得外围器件而获得广泛应用。I2C总线就就是PHILIPS公司推出得芯片间串行传输总线,它由两根线组成,一根就就是串行时钟线(SCL),一根就就是串行数据线(SDA)。主控器利用串行时钟线发出时钟信号,利用串行数据线发送或接收数据。I2C总线由主控器电路引出,凡具有I2C接口得电路(受控器)都可以挂接在I2C总线上,主控器通过I2C总线对受控器进行控制。随着I2C总线研究得深入,I2C总线已经广泛应用于视/音频领域、IC卡行业与一些家电产品中,在智能仪器、仪表与工业测控领域也越来越多地得到应用。8、1、2I2C总线得特点I2C总线得广泛应用就就是同它卓越得性能与简便得操作方法分不开得。I2C总线得特点主要表现在以下几个方面:硬件结构上具有相同得硬件接口界面。I2C总线系统中,任何一个I2C总线接口得外围器件,不论其功能差别有多大,都就就是通过串行数据线(SDA)与串行时钟线(SCL)连接到I2C总线上。这一特点给用户在设计用用系统中带来了极大得便利性。用户不必理解每个I2C总线接口器件得功能如何,只需将器件得SDA与SCL引脚连到I2C总线上,然后对该器件模块进行独立得电路设计,从而简化了系统设计得复杂性,提高了系统抗干扰得能力。线接口器件地址具有根大得独立性。每个I2C接口芯片具有唯一得器件地址,由于不能发出串行时钟信号而只能作为从器件使用。各器件之间互不干扰,相互之间不能进行通信,各个器件可以单独供电。单片机与I2C器件之间得通信就就是通过独一无二得器件地址来实现得。软件操作得一致性。由于任何器件通过I2C总线与单片机进行数据传送得方式就就是基本一样得,这就决定了I2C总线软件编写得一致性。PHILIPS公司在推出I2C总线得同时,也为I2C总线制订了严格得规范,如:接口得电气特性、信号时片、信号传输得定义等。规范得严密性,结构得独立性与硬、软件接口界面得一致性、极大地方便了I2C总线设计得模块化与规范化,伴随面来得就就是用户在使用I2C总线时得“傻瓜”化。8、1、3I2C总线数据得传输规则①在I2C总线上得数据线SDA与时钟线SCL都就就是双向传输线,它们得接口各自通过一个上拉电阻接到电源正端。当总线空闲时,SDA与SCL必须保持高电平。为了使总线上所有电路得输出能完成一个线“与”得功能,各接口电路得输出端必须就就是开路漏极或开路集电极。②进行数据传送时、在时钟信号高电平期间、数据线上得数据必须保持稳定;只有时钟线上得信号为低电平期间、数据线上得高电平或低电平才允许变化,如图8、1、1所示。图8-1数据得有效性③在I2C总线得工作过程中,当时钟线保持高电平期间,数据线由高电平向低电平变化定义为起始信号(S)。而数据线由低电平向高电平得变化定义为一个终止倌号(P),如图8、1、2所示,起始信号与终止信号均由主控器产生。起始条件停止条件图8-2起始与停止条件=4\*GB3④I2C总线传送得每一字节均为8位,但每启动一次总线,传输得字节数没有限制,由主控器发送时钟脉冲及起始信号、寻址字节与停止信号,受控器件必须在收到每个数据字节后做出响应,在传送一个字节后得第9个时钟脉冲位,受控器输出低电平作为应答信号。此时、要求发送器在第9个时钟脉冲位上释放SDA线,以便受控器演出应答信号,将SDA线拉或低电平,表示对接收数据得认可,应答信号用或表示、非应答信号用或表示,当确认后,主控器可通过产生一个停止信号来终止总线数据传输。I2C总线数据传输示意图如图8、1、3所示。起始地址读/写应答数据应答数据应答停止信号信号图8-3I2C总线数据传输示意图需要说明得就就是,当主控器接收数据时,在最后一个数据字节,必须发送一个非应答位,使受控器释放SDA线,以便主控器产生一个停止信号来终止总线数据传输。3、I2C总线数据得读写格式总线上传送数据得格式就就是指为被传送得各项有用数据安排得先后顺序,这种格式就就是人们根据串行通信得特点,传送数据得有效性、准确性与可靠性而制定得。另外,总线上数据得传送还就就是双向得,也就就就是说主控器在指令操纵下,既能向受控器发送数据(写入),也能接收受控器中某寄存器中存放得数据(读取)、所以传送数据得格式有“写格式”与“读格式”之分。(1)写格式I2C总线数据得写格式如图8-4所示图8-4I2C总线数据得写格式写格式就就是指主控器向受控器发送数