第8章单片机应用总线和外部扩展技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第8章单片机系统扩展与接口技术第8章单片机系统扩展与接口技术8.1外部总线的扩展8.2外部存储器的扩展8.3输入/输出接口的扩展8.4管理功能部件的扩展8.5A/D和D/A接口功能的扩展第8章单片机系统扩展与接口技术8.1外部总线的扩展一、外部总线的扩展图8.1MCS-51外部三总线示意图第8章单片机系统扩展与接口技术图8.2地址锁存器的引脚和接口第8章单片机系统扩展与接口技术二、总线驱动在单片机应用系统中,扩展的三总线上挂接很多负载,如存储器、并行接口、A/D接口、显示接口等,但总线接口的负载能力有限,因此常常需要通过连接总线驱动器进行总线驱动。总线驱动器对于单片机的I/O口只相当于增加了一个TTL负载,因此驱动器除了对后级电路驱动外,还能对负载的波动变化起隔离作用。在对TTL负载驱动时,只需考虑驱动电流的大小;在对MOS负载驱动时,MOS负载的输入电流很小,更多地要考虑对分布电容的电流驱动。第8章单片机系统扩展与接口技术1.常用的总线驱动器系统总线中地址总线和控制总线是单向的,因此驱动器可以选用单向的,如74LS244。74LS244还带有三态控制,能实现总线缓冲和隔离。.系统中的数据总线是双向的,其驱动器也要选用双向的,如74LS245。74LS245也是三态的,有一个方向控制端DIR,DIR=1时输出(An→Bn),DIR=0时输入(An←Bn)。第8章单片机系统扩展与接口技术图8.3(a)单向驱动器;(b)双向驱动器第8章单片机系统扩展与接口技术2.总线驱动器的接口图8.48051(a)P2口的驱动;(b)P0口的驱动第8章单片机系统扩展与接口技术8.2外部存储器的扩展图8.5MCS-51单片机程序存储器的扩展原理8.2.1外部程序存储器的扩展1.外部程序存储器的扩展原理及时序第8章单片机系统扩展与接口技术2.EPROM扩展电路图8.62716的引脚图第8章单片机系统扩展与接口技术2716有五种工作方式,见表8.1。表8.12716工作方式选择第8章单片机系统扩展与接口技术图8.72716与8031的连接图第8章单片机系统扩展与接口技术由图8.7可确定2716芯片的地址范围。方法是A10~A0从全0开始,然后从最低位开始依次加1,最后变为全1,相当于211=2048个单元地址依次选通,称为字选。即第8章单片机系统扩展与接口技术3.E2PROM2864A的扩展图8.82864A(a)(b)原理框图第8章单片机系统扩展与接口技术表8.22864A工作方式(1)维持和读出方式:2864A的维持和读出方式与普通EPROM完全相同。(2)写入方式:2864A提供了两种数据写入操作方式,字节写入和页面写入。(3)数据查询方式:第8章单片机系统扩展与接口技术图8.92864A与8031的接口电路第8章单片机系统扩展与接口技术8.2.2外部数据存储器的扩展1.外部数据存储器的扩展方法及时序图8.10MCS-51数据存储器的扩展示意图第8章单片机系统扩展与接口技术2.静态RAM扩展图8.116264管脚图第8章单片机系统扩展与接口技术表8.36264的工作方式第8章单片机系统扩展与接口技术图8.12扩展6264静态RAM第8章单片机系统扩展与接口技术6264的8KB地址范围不唯一(因为A14A13可为任意值),6000H~7FFFH是一种地址范围。当向该片6000H单元写一个数据DATA时,可用如下指令:MOVA,#DATAMOVDPTA,#6000HMOVX@DPTR,A从7FFFH单元读一个数据时,可用如下指令:MOVDPTR,#7FFFHMOVXA,@DPTR第8章单片机系统扩展与接口技术8.2.31.线选法寻址图8.13用线选法实现片选第8章单片机系统扩展与接口技术各芯片的地址范围如下:第8章单片机系统扩展与接口技术2.译码法寻址就是利用地址译码器对系统的片外高位地址进行译码,以其译码输出作为存储器芯片的片选信号,将地址划分为连续的地址空间块,避免了地址的间断。译码法仍用低位地址线对每片内的存储单元进行寻址,而高位地址线经过译码器译码后输出作为各芯片的片选信号。常用的地址译码器是3/8译码器74LS138。译码法又分为完全译码和部分译码两种。第8章单片机系统扩展与接口技术例要求用2764芯片扩展8031的片外程序存储器空间,分配的地址范围为0000H~3FFFH。本例采用完全译码方法。(1)确定片数。因0000H~3FFFH的存储空间为16KB,所需芯片数=实际要求的存储容量/单个芯片的存储容量=16KB/8KB=2(片)第8章单片机系统扩展与接口技术(2)分配地址范围。第8章单片机系统扩展与接口技术(3)存储器扩展连接如图8.14所示。图8.14采用地址译码器扩展存储器的连接图第8章单片机系统扩展与接口技术8.3输入/输出接口的扩展8.3.18255A可编程并行I/O8255A具有3个8位并行I/O口,称为PA口、PB口和PC口。其中PC口又分为高4位和低4位,通过控制字设定可以选择三种工作方式:①基本输入/输出;②选通输入/输出;③PA口为双向总线。1.8255A8255A内部结构包括三个并行数据输入/输出端口,两个工作方式控制电路,一个读/写控制电路和8位总线缓冲器。第8章单片机系统扩展与接口技术图8.158255A(a)内部结构;(b)引脚第8章单片机系统扩展与接口技术(1)端口A、B、C。A口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器。B口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器。C口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器。通常,A口#,B口作为数据输入/输出端口,C口作为控制/状态信息端口。C口内部又分为两个4位端口,每个端口有一个4位锁存器,分别与A口和B口配合使用,作为控制信号输出或状态信息输入端口。第8章单片机系统扩展与接口技术(2)工作方式控制。工作方式控制电路有两个,一个是A组控制电路,另一个是B组控制电路。这两组控制电路共有一个控制命令寄存器,用来接收中央处理器发来的控制字。A组控制电路用来控制A口和C口的上半部分(PC7~PC4)。B组控制电路用来控制B口和C口的下半部分(PC3~PC0)。第8章单片机系统扩展与接口技术(3)总线数据缓冲器。总线数据缓冲器是一个三态双向8位缓冲器,作为8255与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。(4)读/写控制逻辑电路。读/写控制逻辑电路接收CPU发来的控制信号RD、WR、RESET、地址信号A1、A0等,然后根据控制信号的要求,将端口数据读出,送往CPU或将CPU送来的数据写入端口。第8章单片机系统扩展与接口技术表8.48255A接口工作状态选择表第8章单片机系统扩展与接口技术图8.168255A(a)方式0;(b)方式1;(c)方式第8章单片机系统扩展与接口技术2.工作方式选择(1)方式0:基本输入/输出方式。这种方式不需选通信号。PA,PB和PC中任一端口都可以通过方式控制字设定为输入或输出。(2)方式1:选通输入/输出方式。共有3个口,被分为两组。A组包括A口和PC7~PC4,A口可由编程设定为输入或输出,PC7~PC4作为输入/输出操作的选通信号和应答信号。B组包括B口和PC3~PC0,这时C口作为8255A和外设或CPU之间传送某些状态信息及中断请求信号。第8章单片机系统扩展与接口技术(3)方式2:双向传送方式。只有A口有方式2,此时,A口为8位双向传送数据口,C口的高5位PC7~PC3用来作为指定A口输入/输出的控制联络线。表8.58255A的C口联络控制信号线第8章单片机系统扩展与接口技术3.8255A的控制字(1)图8.178255A的方式控制字第8章单片机系统扩展与接口技术(2)端口C置位/复位控制字图8.188255A端口C置位/复位控制字第8章单片机系统扩展与接口技术例1要求A口工作在方式0输入,B口为方式1输出,C口高4位PC7~PC4为输入,C口低4位PC3~PC0为输出。实现上述要求的初始化程序为:MOVR1,#03H;03H为8255A控制寄存器地址MOVA,#9CH;8255A工作方式字为9CHMOVX@R1,A;方式字送入8255A控制口第8章单片机系统扩展与接口技术4.8255A和8031单片机的硬件接口图8.198255A与8031单片机接口第8章单片机系统扩展与接口技术设8255A的A、B、C口和控制寄存器地址依次为00H、01H、02H和03H。如果用户需要将C口的PC3置1,PC5置0,可编程如下:MOVR0,#03H;8255AMOVA,#07H;将PC3置1MOVX@R0,A;置PC3=1MOVA,#0AH;将PC5置0MOVX@R0,A;置PC5=0第8章单片机系统扩展与接口技术例2图8.20是8031扩展8255A与打印机接口的电路。8255A的片选线为P0.7,打印机与8031采用查询方式交换数据。打印机的状态信号输入给PC7,打印机忙时BUSY=1,打印机的数据输入采用选通控制,当STB上出现负跳变时数据被打入,要求编写向打印机输出80个数据的程序。设8255A的A、B、C和控制寄存器的口地址分别为:7CH、7DH、7EH和7FH。第8章单片机系统扩展与接口技术图8.208031扩展打印机接口8255A第8章单片机系统扩展与接口技术8255A的方式1中OBF为低电平有效,而打印机STB要求下降沿选通。所以8255A采用方式0,由PC0模拟产生STB信号。因PC7输入,PC0输出,则方式选择命令字为:10001110B=8EH。自内部RAM20H单元开始向打印机输出80个数据的程序如下:MOVR0,#7FH;R0MOVA,#8EH;方式控制字为8EHMOV@R0,A;MOVR1,#20H;送内部RAM数据块首地址至指针R1MOVR2,#50H;第8章单片机系统扩展与接口技术LP:MOVR0,#7EH;R0指向CLP1:MOVXA,@R0;读PC7连接BUSYJBACC.7,LP1;MOVR0,#7CH;指向AMOVA,@R1;取RAMMOVX@R0,A;数据输出到8255AINCR1;RAM地址加1MOVR0,#7FH;R0指向控制口MOVA,#00H;PC0MOVX@R0,A;PC0=0,产生STBMOVA,#01H;PC0MOVX@R0,A;PC0=1,产生STBDJNZR2,LP;未完,则反复第8章单片机系统扩展与接口技术7.3.28155可编程并行I/O接口1.8155图8.218155引脚及结构框图第8章单片机系统扩展与接口技术2.8155的RAM和I/O口的编址表8.68155端口地址表第8章单片机系统扩展与接口技术3.8155I/O8155I/O的工作方式有两种:基本I/O和选通I/O。1)基本I/O基本I/O为无条件传送,不需任何联络信号,8155的A口、B口、C口都可以工作于该方式。第8章单片机系统扩展与接口技术2)选通I/O选通I/O为条件传送,传送的方式可用查询方式,也可用中断方式。8155的A口、B口均可工作于此方式,这时需由C口提供联络控制信号线。这些联络控制信号线有:(1)BF:I/O缓冲器满标志,输出,高电平有效。(2)STB:选通信号,输入,低电平有效。(3)INTR:中断请求信号,输入,低电平有效。以上信号线对A口和B口均适用,分别称为ABF,ASTB,AINTR和BBF、BSTB、BINTR。它们都由C口提供,如表8.7所示。第8章单片机系统扩展与接口技术表8.78155的PC口线联络信号第8章单片机系统扩展与接口技术4.8155的命令/状态字8155有一个命令/状态字寄存器,实际上这是两个不同的寄存器,分别存放命令字和状态字。由于对命令寄存器只能进行写操作,对状态寄存器只能进行读操作,因此把它们统一编址,合称命令/状态寄存器。1)命令字共8位,用于定义I/O口及定时器的工作方式。第8章单片机系统扩展与接口技术图8.228155的命令字格式第8章单片机系统扩展与接口技术对C口

1 / 106
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功