好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

单片机80C51单片微机的系统扩展原理与接口技术.ppt

121页
  • 卖家[上传人]:206****923
  • 文档编号:57533602
  • 上传时间:2018-10-22
  • 文档格式:PPT
  • 文档大小:2.18MB
  • / 121 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第8章:系统扩展原理与接口技术,8.1 系统扩展原理,系统扩展是指单片微机内部各功能部件不能满足应用系统要求时,在片外连接相应的外围芯片以满足应用系统要求80C51系列单片微机有很强的外部扩展能力,扩展电路及扩展方法较典型、规范80C51 系列单片微机的系统扩展主要有程序存储器(ROM)的扩展、数据存储器(RAM)的扩展、I/O口的扩展、中断系统扩展以及其它特殊功能接口的扩展等对于单片微机系统扩展的方法有并行扩展法和串行扩展法两种并行扩展法是指利用单片微机本身具备的三组总线(AB、DB、CB)进行的系统扩展,早几年构成单片微机应用系统的扩展方法基本上都是并行的三总线扩展近几年,由于集成电路设计、工艺和结构的发展,串行扩展法得到了很快发 展,它利用SPI三线总线和I2C双线总线进行串行系统扩展有的单片微机应用系统可能同时采用并行扩展法和串行扩展法单片微机是通过芯片的引脚进行系统扩展的80C51系列带总线的单片微机芯片引脚可以构成图8-1所示的三总线结构.即地址总线(AB)数据总线(DB)和控制总线(CB)具有总线的外部芯片都通过这三组总线进行扩展1)地址总线(AB)地址总线由单片微机P0口提供 低8位地址A0~A7,P2口提供高8位地址A8~A15。

      P0口是地址总线低8位和8位数据总线复用口,只能分时用作地址线故P0口输出的低8位地址A0~A7必须用锁存器锁存锁存器的锁存控制信号为单片微机ALE引脚输出的控制信号在ALE的下降沿将P0口输出的地址A0~A7锁存P0、P2口在系统扩展中用做地址线后便不能作为一般I/O口使用 由于地址总线宽度为16位,故可寻址范围为64 KB2)数据总线(DB)数据总线由P0口提供,用D0~D7表示P0口为三态双向,8.1.1外部并行扩展原理,口为三态双向口,是应用系统中使用最为频繁的通道所有单片微机与外部交换的数据、指令、信息,除少数可直接通过P1口 外,全部通过P0口传送数据总线是并连到多个连接的外围芯片的数据线上,而在同一时间里只能够有一个是有效的数据传送通道哪个芯片的数据通道有效,则由地址线控制各个芯片的片选线来选择3)控制总线(CB)控制总线包括片外系统扩展用控制线和片外信号对单片微机的控制线 系统扩展用控制线有ALE、 、 ·ALE:输出P0 口上地址与数据隔离信号,用于锁存P0口输出的低8位地址的控制线通常,ALE在P0口输出地址期间出现低电平,用这个低电平信号的上升沿控制锁存器来锁存地址数据。

      · :输出,用于读片外程序存储器(EPROM)中的数据读”取EPROM中数据(指令)时,不能用“ ”信号,而只用 信号输入,用于选择片内或片外程序存储器 当 =0时,只访问外部程序存储器当 =1时,先访问内部程序存储器,内部程序存储器全部访问完之后,再访问外部程序存储器 :输出,用于片外数据存储器(RAM)的读、写控制当执行片外数据存储器操作指令MOVX时,自动生成 、 控制信号常用地址锁存器管脚见图8–2八D透明锁存器74LS373的锁存允许信号LE是电平锁存当LE从高电平转为低电平时,将其输入端的数据锁存在输出端当ALE为高电平时,八D锁存器74LS373的输入和输出是透明的当ALE出现下降沿后,八D锁存器74LS373的输出即为A0~A7,这时P0口上出现的是数据,实现了地址低8位和数据线的分离在单片微机应用系统中,为了唯一地选择片外某一存储单元或I/O端口,需要进行二次选择一是必须先找到该存储单元或I/O端口所在的芯片,一般称为“片选” ,二是通过对芯片本身所具有的地址线进行译码,然后确定唯一的存储单元或I/O端口,称为“字 选”。

      Ø“片选” 保证每次读或写时,只选中某一片存储器芯片或I/O接口芯片常用的方法有四种:“线选法” 、“地址译码法” 、,应用 “可编程器件PAL/GAL” 或“I/O口线” Ø线选法:I/O接口芯片的“片选” 控制线线选法常一般是利用单片微机的最高几位空余的地址线中一根(如P2.7) 作为某一片存储器芯片或用于应用系统中扩展芯片较少的场合Ø译码法:用译码器对空余的高位地址线进行译码,而译码器的输出作为“片选” 控制线常用的译码器有3/8译码器74LS138、双2/4译码器74LS139、4/16译码器74LS154等3/8译码器74LS138的管脚见图8–3·G1、 、 :使能端当G1=1, = =0时, 芯片使能·C、B、A:译码器输入,高电平有效· :译码器输出,低电平有效正常情况下,只有一根输出是低电平,其余输出都是高电平这样,当译码器输出作为单片微机应用系统中外扩芯片的片选控制线时,保证每次读或写时只选中一个芯片部分地址线参加译码时,称为部分地址译码,这时芯片的地址会有重叠16根地址线全部参加译码的,称为全地址译码图8–4示意的是通过3/8译码器74LS138获得64K地址。

      图8–4中3/8译码器74LS138已经使能,其输出由C、B、A的状态决定,作为各个扩展芯片的片选控制信号,加上芯片本身所具有的地址线共同决定每一个存储单元或I/O端口的地址,全地址译码的地址是唯一的由图分析,可以得到各芯片的最大可能地址范围如下: #0 RAM地址分配为0000H~1FFFH,共8K (A15=A14=A13=0) #1 芯片地址分配为2000H~3FFFH,共8KA15=0,A14=0,A13=1) #2 芯片地址分配为4000H~5FFFH,共8KA15=0,A14=1,A13=0 #3 芯片地址分配为6000H~7FFFH,共8KA15=0,A14=1,A13=1) #4 芯片地址分配为8000H~9FFFH,共8KA15=1,A14=0,A13=0) #5 芯片地址分配为A000H~BFFFH,共8KA15=1,A14=0,A13=1,#6 芯片地址分配为C000H~DFFFH,共8KA15=1,A14=1,A13=0) #7 I/O地址分配为E000H~FFFFH,共8KA15=1,A14=1,A13=1) 2.80C51系列单片微机的系统并行扩展能力 由于地址总线宽度为 16位,在片外可扩展的存储器最大容量为64 KB,地址为0000H~FFFFH。

      片外数据存储器与程序存储器的操作使用不同的指令和控制信号,允许两者的地址重复,故片外可扩展的数据存储器与程序存储器分别为64 KB片外数据存储器与片内数据存储器的操作指令不同(片外RAM只能用MOVX指令)允许两者地址重复,亦即外部扩展数据存储器地址可从0000H开始I/O口扩展与片外数据存储器统一编址,不再另外提供地址线80C51系列单片微机的外部串行总线主要包括:SPI (Serial PeriPheral Interface)三线总线和I2C两线制总线两种 ⒈ SPI三线总线结构SPI三线总线结构是一个同步外围接口,允许MCU与各种外围设备以串行方式进行通信一个完整的SPI系统有如下的特 性:——全双工、三线同步传送;——主、从机工作方式;——可程控的主机位传送频率、时钟极性和相位;——发送完成中断标志;——写冲突保护标志 在大多数场合,使用一个MCU作为主机,控制数据向一个或多个从机(外围器件)的传送一般SPI系统使用四个I/O引脚:,8.1.2 外部串行扩展原理,①串行数据线(MISO、MOSI)主机输入/从机输出数据线(MISO)和主机输出/从机输入数据线(MOSI),用于串行数据的发送和接收。

      数据发送时.先传送MSB(高位),后传送LSB(低位)在SPI设置为主机方式时,MISO线是从机数据输入线,MOSI是主机数据输出线;在SPI设置为从机方式时,MISO线是从机数据输出线,MOSI是从机数据输入线②串行时钟线(SCLK)串行时钟线(SCLK)用于同步从MISO和MOSI引脚输入和输出数据的传送在SPI设置为主机方式时SCLK为输出;在SPI设置为从机方式时,SCLK为输入 在SPI设置为主机方式时,主机启动一次传送时,自动在SCLK脚产生8个时钟周期主机和从机SPI器件中.在SCLK信号的一个跳变时进行数据移位,数据稳定后的另一个跳变时进行采样对于一个完整的SPI系统,串行数据和串行时钟之间有四种极性和相位关系,如图8-5所示,以适应不同的外围器件特 性主机和从机器件之间的传送定时关系必须相同③从机选择( )在从机方式时,脚是输入端,用于使能SPI从机进行数据传送;在主机方式时, 一般由外部置为高电平通过SPI可以扩展各种I/O功能,包括:A/D、D/A、实时时钟、RAM、EEPROM及并行输入/输出接口等在把SPI与一片或几片串行扩展芯片相连时,只需把SPI的SCLK、MOSI及MISO三根线同名端相连即可。

      对于有些I/O扩展芯片,它们有 端这时,这些片选输入端一般有同步串行通信的功能无效时,为复位芯片的串行接口;有效时,初始化串行传送有些芯片的 端,将其上从低到高的跳变当做把移位数据打入并行寄存器或操作启动的脉冲信号因此,对于这些芯片,应该用一根I/O口线来控制它们的 片选端若80C51的串行通信口已经被占用,则可以用通用I/O口来模拟SPI串行接口,用软件来模拟仿真SPI操作 ⒉ I2C(Intel IC BUS)公用双总线结构 使用两根信号线(SDA和SCL)串行的方法进行信息传送,并允许若干兼容器件共享的双线总线,称为12C总线12C总线系统的示意图见图8-6·SDA:称为串行数据线,用于传输双向的数据·SCL:称为串行时钟线,用于传输时钟信号,在传输时用来同步串行数据线上的数据I2C总线上的器件SDA和SCL引脚都是开漏结构,都需通过电阻与电源连接在I2C 总线系统中的所有器件的SDA引脚、SCL引脚也都同名端连接在一起挂接在I2C 总线上的器件(或IC),根据其功能可分为两种:主控器件和从控器件主控器件:控制总线存取,产生串行时钟(SCL)信号,并产生启动传送及结束传送的器件,总线必须由一个主控器件控制。

      主控器件一般称主器件从控器件:在总线上被主控器件寻址的器件,它们根据主控器件的命令来接收和发送数据从控器件一般称从器件在由若干器件所组成的I2C 总线系统中,可能存在多个主器件因此,I2C 总线系统是一允许多主的系统对于系统中的某一器件来说,有四种可能的工作方式:主发送方式、主接收 式、从发送方式和从接收方式据此定义以下总线条件:①总线不忙 串行时钟线(SCL)和串行数据线(SDA)保持高电平②开始数据传送 在串行时钟线(SCL)保持高电平的情况下,串行数据线(SDA)上发生一个由高电平到低电平的变化作为起始信号(START),启动I2C 总线I2C总线所有命令必须在起始信号以后进行③停止数据传送在串行时钟线(SCL)保持高电平的情况下,串行数据线(SDA)上发生一个由低电平到高电平的变化,称为停止信号(STOP)这时将停止I2C 总线上的数据传送④数据有效性在开始信号以后,串行时钟线(SCL)保持高电平的周期期间,当串行数据线(SDA)稳定时.串行数据线的状态表示数据线是有效的需要一个时钟脉冲每次数据传送在起始信号(START)下启动,在停止信号(STOP)下结束在I2C总线上数据传送方式有两种,主发送到从接收和从发送到主接收。

      它们由起始信号(START)后的第一个字节的最低位(即方向位R/W)决定I2C总线主要功能有:·在主控器件和从控器件之间双向传送数据;·无中央主控器件的多主总线;·多主传送时,不发生错误;·可以使用不同的位速率;·串行时钟作为交接信号;在有I2C总线的单片微机 (如飞利浦80C552)中,可以直接用I2C总线来进行系统的串行扩展;对于80C51系列单片微机,大多数没有I2C总线接口功能,而是采用软件模拟双向数据传送协议的方法,来实现系统的串行扩展在单片微机应用系统中,单主结构占绝大多数在单主系统中,I2C总线的数据传送状态要简单得多,不存在总线竟争与同步问题,只有作为主器件的单片微机对I2C总线器件的读/写操作,这就简化了模拟软件的设计工作实际上,已有I2C总线的软件包可调用。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.