第5章 微机系统通信接口

上传人:飞*** 文档编号:6413565 上传时间:2017-08-08 格式:PPT 页数:76 大小:984.50KB
返回 下载 相关 举报
第5章 微机系统通信接口_第1页
第1页 / 共76页
第5章 微机系统通信接口_第2页
第2页 / 共76页
第5章 微机系统通信接口_第3页
第3页 / 共76页
第5章 微机系统通信接口_第4页
第4页 / 共76页
第5章 微机系统通信接口_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《第5章 微机系统通信接口》由会员分享,可在线阅读,更多相关《第5章 微机系统通信接口(76页珍藏版)》请在金锄头文库上搜索。

1、,第5章 微机系统通信接口,通信接口是CPU和外部设备间交换信息的桥梁。通信接口的作用:速度协调;数据锁存;三态缓冲;数据转换。,并行I/O接口是将组成数据的各位同时传送,MCS-51内部集成有4个并行I/O口;并行通信的优点是传送数据速度快;缺点是需要同时连接的线数多;,串行通信是指把二进制数据一位一位地按顺序分时传送。其优点是:连接线少;总线的结构比较简单;简化了系统的硬件设计,适合于远程通信。MCS-51内部集成有1个串行I/O口。,5.2 微机系统串行通信接口,5.2.1 微机系统串行口和控制寄存器资源,数据总线缓冲器:CPU通过它来传送数据、控制命令和状态信息;控制寄存器:用于接收来

2、自CPU的各种控制字;状态寄存器:用于指示串行通信中的状态信息;,发送、接收移位寄存器:完成数据的并串转换,输出给外设,接收移位寄存器完成输入数据的串并转换;发送、接收数据寄存器:存放CPU写入的数据,并行送给发送移位寄存器。接收数据寄存器存放经接收移位寄存器移位后的并行数据,以供CPU读取。,5.2.2 I2C串行通信接口,1I2C总线的特点1)二线传输2)支持多主控3)串行数据传输4)软件寻址,2. I2C总线与各模块的连接,I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。,图5-2 I2C总线上的信号,3. I2C总线上的信号,I2C总线共有5种不相同的信号,即起

3、始信号、终止信号、确认信号以及数据和控制字节。这五种信号是器件之间传送数据的依据。,1)起始和终止信号,如图5-4所示。,图5-4 I2C总线的起始信号和终止信号,起始信号(S):SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;开始传送数据。终止信号(P):SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。结束传送数据。,2)确认信号和控制字节 确认信号(ACK):接收数据的器件在接收到8bit信息后,向发送信息的I2C发出特定的低电平脉冲,表示已收到信息。控制字节:该字节的功能是对总线上器件进行选择和对该器件发送读写命令。,3)读写字节以字节为单位传送数据,

4、写字节与写控制字节相同。读字节数据位时,首先是SCL从低电平向高电平跳变,其次读SDA上的0或1,最后SCL由高电平向低高电平跳变,这样,某一数据位读入完毕,8次位读后数据字节完成。,4. I2C总线的数据传送,1)数据位的有效性规定I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化。如图5-10所示。,图5-5 I2C总线的时序逻辑,2)数据传送格式(1)字节传送与应答每一个字节必须保证是8位长度。数据传送时,先传送最高位(MSB),每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位)。

5、 其时序图如图5-6所示。,图5-6 I2C总线的应答时序逻辑,(2)数据帧格式I2C总线上传送的数据信号是广义的,既包括地址信号,又包括真正的数据信号。在起始信号后必须传送一个从机的地址(7位),第8位是数据的传送方向位,用“0”表示主机发送数据(T),“1”表示主机接收数据(R)。每次数据传送总是由主机产生的终止信号结束。,3)读、写操作步骤(1)I2C主控设备先发送起始位(S),抢占总线;(2)然后发送7位设备地址和一位0,“0”表示对设备的写入;(3)向设备写入要读取的寄存器地址;(4)再次发送起始位(S);(5)发送7位的设备地址和1位1,表示对设备的读取;(6)从设备读取数据。,5

6、.总线的寻址,I2C总线协议有明确的规定:采用7位的寻址字节(寻址字节是起始信号后的第一个字节)。寻址字节的位定义如图5-10所示。,图5-10 地址形式,6. I2C总线应用举例,图5-12 I2C总线上的接口电路,X9241是在单片集成电路上集成了4个数字电位器,每个数字电位器有一个滑动端寄存器和4个数据寄存器。 X9241与AT89C51的接口电路如图5-12所示,在SDA和SCL线上设置有上拉电阻。通过软件编程可对X9241进行设置。,(1)延时子程序为: DELAYl:NOP 延时4700ns DELAY: RET 延时4000ns(2)产生X9241开始条件的子程序为:ST_CON

7、:CLR SCL ;使SCL为低 SETB SDA . ;使SDA为高 SETB SCL ;使SCL为高 LCALL DELAY1 ;延时4700ns CLR SDA ;使SDA为低 LCALL DELAY ;延时4000ns CLR SCL ;使SCL为低 RET,(3)产生X9241结束条件子程序为: STOP: CLR SCL ;使SCL为低 CLR SDA ;使SDA为低 SETB SCL ;使SCL为高 LCALL DELAY1 ;延时4700ns SETB SDA ;使SDA为高 RET,5.2.3 SPI串行通信接口,1. SPI串行通信接口信号SPI总线接口使用4个接口信号,即

8、可实现MCU之间以及MCU与各种外围设备之间进行通信。其中主设备必须为MCU,从设备可以是MCU也可以是其它带有SPI接口的芯片。如图5-13所示。,图5-13 SPI总线的四个信号,这4个接口信号为:(1)MOSI 主器件数据输出,从器件数据输入信号,该信号在主设备中作为输出,从设备中作为输入,发送时先发送最高位(MSB),后发送最低位(LSB)。(2)MISO 主器件数据输入,从器件数据输出信号。该信号在主设备中作为输入,从设备中作为输出,发送时先发送最高位(MSB),后发送最低位(LSB)。,(3)SCLK 串行时钟信号,由主器件产生。(4)从器件使能信号,由主器件控制。SPI与存储器2

9、5XX320 的接口方式如图5-14所示。,图5-14 25XX320的结构,2. SPI信号的特点,SPI的优点可以总结为:可同时发出和接收串行数据;兼具主机和从机角色;具有频率可编程时钟;能够发送结束中断标志;具有写冲突保护和总线竞争保护;可直接与各个厂家生产的多种标准外围器件直接接口;SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立,所以允许同时完成数据的输入和输出。SPI接口也具有缺点:如没有指定的流控制,没有应答机制确认是否接收到数据。,3.SPI接口的工作原理及应用,SPI的基本结构相当于两个8位移位寄存器的首尾相接,构成16位的环形移位寄存器。如图5-15所示。,图5

10、-15 SPI接口的基本结构图,2) SPI总线的应用以X5045 “看门狗”电路为例。图5-16所示为X5045看门狗芯片,其硬件主要由一个定时器组成,但是其不仅具有看门狗定时器的功能,还具有上电复位以及电源电压监控的功能,以保证CPU的有效复位和正常工作。该芯片具体有三种操作:打开看门狗、关闭看门狗和看门狗定时器请零。,图5-20 LM74配196单片机的电路图,图5-16 X5045看门狗芯片,图5-17 X5045看门狗芯片与单片机的连接,(1)复位WD_RST:SETB CS NOP CLR CS NOP SETB CS RET(2)定时设置WD_SET:MOV R0,# 00011

11、000B ;设看门狗定时时间为600ms,块保护地址为 100H1FFH LCALL WRITE_SR ;调“写状态寄存器”子程序 RET,(3)读状态寄存器子程序,将读出的X5045的状态存在A累加器中,程序如下:READ_SR:LCALL STAX ;调“启动X5045”指令 MOV A,#00000101B ;将读状态寄存器指令送A累加器 LCALL WRITE ;调“写指令子程序” LCALL READ ;调“读数据子程序” LCALL ENDX ;调“结束X5045”指令 RET,5.3 微机系统并行通信接口8255A,5.3.1 8255并行接口5.3.2 8255并行接口的扩展设

12、计,8255A是Intel公司生产的一种典型的可编程并行接口芯片,其功能与通用性强,使用方便灵活。,5.3.1 8255并行接口,18255A的内部结构,图5-18 8255A结构图,8255A的内部结构如图5-18所示。它有以下几部分构成:1)1.3个数据端口A、B、C,分为A、B两组。A口:包含一个8位数据输出锁存缓冲器和一个8位数据输入锁存器,在输入或输出状态下均能锁存数据;B口:包含一个8位数据输出锁存缓冲器和一个8位数据输入缓冲器。C口:包含一个8位数据输出锁存缓冲器和一个8位数据输入缓冲器(无输入锁存)。,2)A组和B组控制电路及内部逻辑8255A有A、B、C三个端口,但是,它只有

13、两个控制部件:A组包括端口A和端口C的高4位(PC7PC4),B组包括端口B和端口C的低4位(PC3PCO)。,3)片选与读写控制电路该部件的功能是管理所有的内部和外部数据及控制字的传送过程。它接收来自CPU的控制命令,然后向A和B两组的控制部件发送命令。,4)数据总线缓冲器是一个8位双向三态缓冲器,三态控制由读写控制逻辑控制。该缓冲器是8255A用以与CPU数据总线连接的部件。用来传送所有数据的输入输出,以及CPU用输出指令向8255A发出的控制字和用输入指令从8255A读入的外设状态信息。,28255A的引脚,8255A的引脚如图5-19所示。8255A的40个引脚由两部分组成:与外设的连

14、接部分和与CPU的连接部分。,图5-19 8255A的引脚图,1)与CPU相连的引脚数据线引脚:D7Do:双向三态数据线,和CPU数据总线相连。控制线引脚:RESET:复位信号,高电平有效。CS(Chip Select):芯片选择信号,低电平有效,与CPU地址线相连。RD:读信号,低电平有效。WR:写信号,低电平有效。A0和A1:端口地址选择信号,用来选择A、B、C三个数据端口和一个控制字寄存器。,2)与外设相连的引脚 PA0PA7、PB0PB7 PC0PC7,共24位引脚与外设相连,全部为双向三态,它们也常被称为I/O总线。其中,PA0PA7与A口相连,PB0PB7与B口相连, PC0PC7

15、与C口相连。如图5-20。,图5-20 8255A与外设连接图,3. 8255A的控制字,8255A有两个控制字:方式选择控制字:用于定义各端口的工作方式;端口C置位复位控制字:用于对端口C的任一位进行置位或复位操作。,两个控制字共用一个地址:A1=A0=1。 两个控制字是以D7位的状态作为标志的:D7=1,表示方式选择控制字;D7=0,表示C口置位复位控制字。,1)工作方式控制字 工作方式控制字用于决定8255A的3个端口工作于什么方式以及决定是输入还是输出。 最高位D7=l是方式控制字的特征位。具体格式如表5-5所示。 D6、D5:A组方式选择,若D6D5=00则A组设定为方式0;若D6D5=01则A组设定为方式1;若D6D5=10或11则A组设定为方式2;D4:为A口输入输出控制位:若D4=0,则A口用于输出数据;若D4=1,则A口用于输入数据;,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号