ch7_单片机系统扩展_第1页
ch7_单片机系统扩展_第2页
ch7_单片机系统扩展_第3页
ch7_单片机系统扩展_第4页
ch7_单片机系统扩展_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章 单片机系统扩展及接口技术,通过地址总线、数据总线和控制总线实现ROM、RAM或其它接口电路的扩展( MOVX指令的运用)。,7.1 扩展三总线的产生,片外三总线结构,1 地址总线 -用于传送单片机送出的地址信号 P0口为低8位地址总线,使用一个8位的数据锁存器来锁定低8位地址信号; P2口为高8位地址总线。 2 数据总线 -用于单片机与存储器之间或单片机和I/O之间数据传送 P0口做为低8位地址和数据复用总线。,3 控制总线 -单片机发出的用于控制片外RAM,ROM和I/O口读/写操作的一组控制线。 (1)使用ALE作地址锁存的选通信号,以实现低8位地址锁存。 (2)以PSEN信号作为扩展程序存储器的读选通信号。 (3)以EA信号作为内外存储器的选择信号。 (4)以RD和WR作为扩展RAM和I/O的读写选通信号。,具有三态功能的8D锁存器,/L:三态控制。 低电平:允许数据输出,三态门通; 高电平:三态门关闭,输出高阻。 G:数据锁存控制。 高电平时,输出随输入变化; 低电平时,Q端将被锁存(低电平锁存)。,7.2 扩展程序存储器,7.2.1 访问片外程序存储器的操作时序 1、 访问片外程序存储器的控制信号 (1)使用ALE作地址锁存的选通信号,以实现低8位地址锁存 (2)以PSEN信号作为扩展程序存储器的读选通信号,接OE端 (3)以EA信号作为内外存储器的选择信号 2 、操作时序,访问外部程序存储器ROM的时序:,片外ROM访问时序说明,P0、P2口作地址和数据总线。其中P0口作为地址和数据复用总线,前半部(A段)作地址总线,后半部(B段)作为数据总线。 外部程序存储器ROM的操作步骤如下: 1、必须为ROM提供完整的(16位)地址信息; 2、ROM芯片的/CE 端=0,选中该芯片; 3、在满足上述条件的基础上,当ROM的/OE=0时(B时间段),存储器输出数据的三态门打开,并将与输入地址相对应的存储单元中的指令(数据)向外输出,单片机通过P0口将指令送至CPU 内部。 74LS373锁存器:将A时间段P0口输出的低位地址进行保存,使ROM在B时间段仍然可以得到完整的地址信号。,转时序图,7.2.2 扩展EPROM,2764A,常用芯片介绍,扩展 16KB EPROM,MCS-51与1片16K ROM的连接,MCS-51与2片32K ROM的连接,使用两片32K的ROM芯片扩展为64K的存储阵列。,由两片32K的ROM构成64K存储阵列与A15的 关系表,74LS138 3-8线译码器,A、B、C:选择输入。作为与输出对应的二进制编码输入; G1、/G2A、G2B:使能输入,作为片选控制输入; y7y0:译码器输出,低电平有效。,MCS-51与多个 ROM的连接(地址线全译码),若需要对2片以上的芯片扩展,可以通过译码电路实现。,采用LS138译码器实现ROM扩展示意表,7.3 扩展数据存储器,与程序存储器扩展相同,使用P0、P2口作为地址、数据总线。 1、当使用 MOVX Ri ,A指令时,系统仅使用P0口输出地址信号(P2口不用)。 2、当使用 MOVX DPTR,A 指令时,P0口输出DPTR提供的低八位地址信号,P2口输出DPTR提供的高八位地址信号。 3、不论哪种情况,P0口都是地址/数据复用总线,因此仍要使用74LS373来锁存P0口的地位地址信号。,与ROM扩展不同: 使用访问外部RAM指令MOVX时,在时序中将产生/RD或/WR信号,因此须将这些控制信号与外RAM的读(/RD) 、写(/WR)控制端相连接,实现系统对外RAM的读写控制。,7.3.1 常用的数据存储器芯片 1.静态RAM(SRAM):6116,6264,62128等 2.EEPROM:2816,2864等,执行外部指令: movx a, dptr ;将外RAM的x送A,7.3.2 访问片外RAM的操作时序,7.3.3 扩展 2KB RAM,MCS-51与8K RAM的连接,7.3.4 8031外扩32K EPROM和32K RAM,7.3.5 扩展8K EEPROM,7.4 简单并行I/O扩展 7.4.1 I/O口的直接输入/输出,LOOP: MOV A,#0FH MOV P1,A MOV A,P1 SWAP A MOV P1,A AJMP LOOP,7.4.2 简单I/O接口的扩展方法,编程:按下任意键,对应的LED发光。 LOOP:MOV DPTR,#0FEFFH MOVX A,DPTR MOVX DPTR,A SJMP LOOP,7.5 可编程I/O接口扩展,8255A 可编程通用并行接口 8155 带RAM和定时器/计数器的可编程并行接口 8279 可编程键盘/显示接口 8253 可编程通用定时器,7.5.1 扩展8155可编程外围并行接口芯片,8155、8255等芯片都是美国Intel公司开发出的系列通用可编程I/O接口芯片。40脚DIP封装。 8155不仅可以提供三个并行的I/O端口,在其内部还集成有256个字节的RAM存储空间、一个14位的定时/计数器,因此非常适合与MCS-51单片机连接实现系统功能的扩展。,8155的结构及引脚,8155的内部结构简图,8155引脚说明,AD7-AD0:数据/地址总线。与MCS-51的P0口连接,分 时传送地址和数据信息,是连接两者的通道。 I/O口线:PA7-0、PB7-0和PC5-0为8155的A、B和C口。 REST、/CE和IO/M :复位、片选和I/O端口/RAM选择线。 /RD、/WR: 读写控制线。 ALE:8155的地址锁存信号。ALE=1时,信号进入地址锁 存器,ALE=0时,锁存器锁存地址。 T/IN、T/OUT: 计数器的脉冲输入线和输出线,输出波形 与工作方式有关。,7.5.2 8155寄存器,8155的A、B和C口的数据传送是由CPU发出的命令字控制的。 (1)8155内部的7个寄存器地址,(2)8155的命令字,PB 、PA:A、B口工作方式:0 输入;1 输出。 PC2、 PC1: C口工作方式:00 ALT1(输入) 01 ALT2(输出) 10 ALT3(选通方式) 11 ALT4(选通方式) IEB、IEA: A、B口中断允许位:0 禁止中断;1 允许中断。 TM2 、TM1:计数器工作方式:00 无操作;01 停止计数; 10 计满后停止;11 开始计数。,(3)8155的状态字表征8155的状态,INTRA: A中断请求标志。 0 无中断;1 有中断。 ABF: A口缓冲器状态。 0 空; 1 满。 INTEA: A口中断允许位。 0 禁止; 1 允许。 INTRA: B中断请求标志。 0 无中断;1 有中断。 BBF: B口缓冲器状态。 0 空; 1 满。 INTEB: B口中断允许位。 0 禁止; 1 允许。 TIMER: 定时器中断。0 读状态字后或硬件复位后。 1 有定时器中断时。,状态字存在于8155的状态寄存器中,其地址与命令口地址一样可以用 MOVX A, DPTR 指令来读取8155的状态。状态字寄存器与命令寄存器是靠输入、输出来自动区分的。,8155的工作方式,(1)存储方式:若IO/M=0、CE=0时,8155处于存储器 模式,此时单片机通过AD7-AD0与8155 的RAM单元进行读写数据。 (2)I/O方式:若IO/M=1,CE=0时,8155处于I/O状态。 a: 通用I/O方式:A,B,C都是通用的数据端口; b: 选通I/O方式:A,B为选通I/O方式,C口作 为A,B口的联络控制线。 选通方式是一种较为特殊的数据传输方式,它不同于一般并行口的I/O操作。它主要用于高速CPU与低速外设之间的数据交换。,C口在四种工作方式下的各位定义,选通I/O数据输入操作,当外设准备好数据并送PA口时,发出低电平的选通信号ASTB; 8155接收到ASTB后: 1,将PA上的数据装入A口寄存器 2,使A口数据满ABF置位以通知外设数据已收到。 8155在ASTB的上升沿使PC0的A INTR标志置位,以通知单片机数据已收到。 CPU响应中断执行服务程序,当执行到从A口读取输入的数据(MOVX)时,/RD的上升沿将PC0的INTEA清零并使PC1的ABF变低,通知外设输入下一个数据。,C口为ALT3模式 PC0:A口中断A INTR标志输出,送单片机; PC1:A口缓冲器满ABF标志输出,送外设。 PC2:A口选通输入ASTB,,选通I/O数据输出操作,CPU执行MOVX指令将数据送PA口,8155收到数据后ABF变高通知外设数据已到达PA口。 外设接收到ABF的高电平后: 1,从D7-0上接收数据; 2,使ASTB变低,通知8155外 设已接收到数据。 当8155监测到ASTB回到高电平时,使PC0D的A INTR变为高电平,向单片机申请中断。 单片机在中断服务程序中巴下一个数据送到A口,进行下一个数据的输出。,C口为ALT3模式,控制字:00011001B PC0:A口中断A INTR标志输出,送单片机; PC1:A口缓冲器满ABF标志输出,送外设。 PC2:A口选通输入ASTB.,8155内部定时器的使用,严格的讲,8155的定时器应当称为计数器,因为定时器的计数脉冲来自外部的T/IN引脚的输入脉冲,所以8155的定时器非常适合做1/n的分频器(如图)。 定时器共有4种工作方式,由计数器高8位中的最高两位M2、M1来确定。不同的工作方式对应着不同的T/OUT波形。,8155定时器4种工作方式与T/OUT波形,8155内部定时器的4种工作方式,1,M2M1=00时:当计数器“减1”到 “全0”时,在T/OUT线上输出单个方波,如果计数初值为奇数,则高电平持续时间比低电平多一个计数脉冲; 2, M2M1=01时:同上一方式,差别为当计数器“减1”到 “全0”时,自动装入计数初值,所以在T/OUT上为连续方波; 3, M2M1=10时:当计数器“减1”到 “全0”时,在T/OUT线上输出一个单脉冲; 4, M2M1=11时:当计数器“减1”到 “全0”时,在T/OUT线上输出一个单脉冲,且自动重装计数初值,所以在T/OUT线上输出连续的脉冲。,7.5.3 8155应用与编程举例,充分利用8155的内部资源可以简化单片机系统的设计。 1 、 作片外256B RAM 2 、作扩展I/O口使用 3 、 定时器扩展用 8155与MCS-51连接时按外部RAM地址统一编址。 8155的I/O工作方式我们常选择“通用I/O方式” 。,8155与MCS-51的连接,8155内部各寄存器的地址分配,基本操作软件,例7-1 向8155RAM中的5FH单元送入立即数32H。 MOV A,#32H MOV DPTR,#7E5FH MOVX DPTR,A,例7-2 将8155设置为IO口,定时器工作方式,A口定义为基本输入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论