《《片机教学》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《片机教学》PPT课件.ppt(79页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2022/10/271第5章51单片机的中断与定时中断与定时中断与定时/计数器计数器 五个中断源:五个中断源:INT0外部中断、外部中断、INT1外部中断、外部中断、T0溢出中断、溢出中断、T1溢出中断、串口读写中断溢出中断、串口读写中断 定时定时/计数器:计数器:T0、T1 四种工作模式:工作模式四种工作模式:工作模式0 31)中断请求标志)中断请求标志-定时器控制寄存器定时器控制寄存器TCON中的中断标志位中的中断标志位中断相关寄存器TF1TF0IE1IT1IE0IT0 TCON(88H)8FH 8EH 8DH 8CH 8BH 8AH 89H 88HTCON各控制位的含义:TF1:定时器/
2、计数器T1溢出中断请求标志位。TF0:定时器/计数器T0溢出中断请求标志位。IE1:外部中断1的中断请求标志。IE0:外部中断0的中断请求标志。IT1:外部中断1的中断触发方式控制位。IT0:外部中断0的中断触发方式控制位。2)中断请求标志)中断请求标志-串行口控制寄存器串行口控制寄存器SCON中的中断标志位中的中断标志位中断相关寄存器SCON各控制位的含义:TI:串行口发送中断请求标志。CPU将一个数据写入发送缓冲器SBUF时,就启动发送。每发送完一帧串行数据后,硬件置位TI。但CPU响应中断时,并不清除TI,必须在中断服务程序中由软件对TI清0。RI:串行口接收中断请求标志。在串行口允许接
3、收时,每接收完一个串行帧,硬件置位RI。同样,CPU响应中断时不会清除RI,必须在中断服务程序中由软件对RI清0。TIRI SCON(98H)9FH 9EH 9DH 9CH 9BH 9AH 99H 98H3)中断允许控制)中断允许控制-中断允许寄存器中断允许寄存器IE中断相关寄存器IE 各控制位的含义:EA:中断允许总控制位。ES:串行口中断允许位。ET1:定时器/计数器T1的溢出中断允许位。EX1:外部中断1的溢出中断允许位。ET0:定时器/计数器T0的溢出中断允许位。EX0:外部中断0的溢出中断允许位。EAESET1EX1ET0EX0 IE(A8H)AFH AEH ADH ACH ABH
4、AAH A9H A8H4)中断优先级控制)中断优先级控制-中断优先级寄存器中断优先级寄存器IP中断相关寄存器IP 各控制位的含义:PS:串行口中断优先级控制位PT1:定时器/计数器T1中断优先级控制位PX1:外部中断1中断优先级控制位PT0:定时器/计数器T0中断优先级控制位PX0:外部中断0中断优先级控制位若某控制位为1,则相应的中断源规定为高级中断;反之,为0,则相应的中断源规定为低级中断。PSPT1 PX1 PT0 PX0 IP(B8H)BCH BBH BAH B9H B8H1)定时器控制寄存器)定时器控制寄存器TCON定时器/计数器控制相关寄存器TF1TR1TF0TR0IE1IT1IE
5、0IT0 TCON(88H)8FH 8EH 8DH 8CH 8BH 8AH 89H 88HTCON各控制位的含义:TF1:定时器/计数器T1溢出中断请求标志位。TF0:定时器/计数器T0溢出中断请求标志位。当T1溢出时,硬件置1;需在中断程序中软件清0。TR1:T1运行控制位。可通过软件置1(TR1=1)或清0(TR1=0)来启动或关闭 T1工作。TR0:T0运行控制位。可通过软件置1(TR0=1)或清0(TR0=0)来启动或关闭 T0工作。2)定时器方式选择寄存器)定时器方式选择寄存器TMOD定时器/计数器控制类寄存器GATE C/TM1M0GATE C/TM1M0 TMOD(89H)D7
6、D6 D5 D4 D3 D2 D1 D0TMOD寄存器用于设定定时器/计数器的工作方式。寄存器地址为89H,它没有位地址,不能进行位寻址,只能用字节传送指令设置其内容。它的低半字节对应控制T0,高半字节对应控制T1.2)定时器方式选择寄存器)定时器方式选择寄存器TMOD定时器/计数器控制类寄存器TMOD各控制位的含义:GATE:门控位。GATE=0,以运行控制位TR启动定时器,而不管INT0(或INT1)的电平是高还是低;GATE=1,以外中断请求信号(INT1/INT0)启动定时器。只有INT0(或INT1)引脚为高电平且由软件使TR0(或TR1)置1时,才能启动定时器工作。C/T:定时方式
7、或计数方式选择位。C/T=0,定时工作方式;C/T=1,计数工作方式。M1M0:工作方式选择位。M1M0=00,工作方式0;M1M0=01,工作方式1;M1M0=10,工作方式2;M1M0=00,工作方式3;定时器定时器/计数器的四种模式计数器的四种模式 M1M0控制的定时器控制的定时器/计数器的四种工作模式计数器的四种工作模式【例例1】设时钟频率为设时钟频率为6MHz。编写利用。编写利用T0产生产生1s定时的程序。定时的程序。解:解:1)定时器)定时器T0工作模式的确定工作模式的确定 模式模式0最长可定时最长可定时16.384ms;模式模式1最长可定时最长可定时131.072ms;模式模式2
8、最长可定时最长可定时512s;定时定时1s,可选用模式,可选用模式1,每隔,每隔100ms中断一中断一 次,中断次,中断10次从而达到次从而达到 1s的定时。的定时。2)求计数器初值)求计数器初值X (216X)12/(6 106)=10010-3 s X=15536=3CB0H 因此:因此:(TL0)=0B0H (TH0)=3CH 3)实现方法:)实现方法:对于中断对于中断10次计数,可使次计数,可使T0工作在计数方式,也可用循环程工作在计数方式,也可用循环程序的方法实现。本例采用循环程序法。序的方法实现。本例采用循环程序法。综合应用举例综合应用举例(1)综合应用举例综合应用举例(1)4)源
9、程序清单)源程序清单ORG0000H AJMP MAIN;上电,转向主程序上电,转向主程序 ORG 000BH ;T0的中断服务程序入口地址的中断服务程序入口地址 AJMP SERVE ;转向中断服务程序;转向中断服务程序 ORG 0080H ;主程序;主程序MAIN:MOV SP,#60H ;设堆栈指针;设堆栈指针 MOV B,#0AH ;设循环次数;设循环次数 MOV TMOD,#01H;设置;设置T0工作于模式工作于模式1 MOV TL0,#0B0H;装计数值低;装计数值低8位位 MOV TH0,#3CH;装计数值高;装计数值高8位位 SETB TR0;启动定时;启动定时 SETB ET
10、0;T0开中断开中断 SETB EA;CPU开中断开中断 SJMP$;等待中断;等待中断SERVE:MOV TL0,#0B0H ;重新赋初值;重新赋初值 MOV TH0,#3CH DJNZ B,LOOP ;B-1不为不为0,继续定时,继续定时 CLR TR0 ;1s定时到,停止定时到,停止T0工作工作LOOP:RETI ;中断返回;中断返回 END【例例2】设计实时时钟程序。时钟设计实时时钟程序。时钟 就是以秒、分、时为单位进行计时。用定就是以秒、分、时为单位进行计时。用定时器与中断的联合应用。时器与中断的联合应用。解:解:1)实现时钟计时的基本方法)实现时钟计时的基本方法 计算计数初值。计算
11、计数初值。时钟计时的最小单位是秒,可把定时器的定时时间定为时钟计时的最小单位是秒,可把定时器的定时时间定为100ms,计数溢,计数溢出出10次即得到次即得到1秒;秒;10次计数可用软件方法实现。次计数可用软件方法实现。假定使用定时器假定使用定时器T0,以工作模式,以工作模式1进行进行100ms的定时。如的定时。如fosc=6MHz,则计数初值则计数初值X为:为:X=15536=3CB0H因此因此:(TL0)=0B0H (TH0)=3CH 采用定时方式进行溢出次数的累计,计满采用定时方式进行溢出次数的累计,计满10次即得到秒计时。次即得到秒计时。设置软件计数器初值为设置软件计数器初值为10,每,
12、每100ms定时时间到溢出中断,使软件计数定时时间到溢出中断,使软件计数器减器减1,直到减到,直到减到0,则,则1s到。到。综合应用举例综合应用举例(2)从秒到分和从分到时的计时是通过累从秒到分和从分到时的计时是通过累计和数值比较实现的。计和数值比较实现的。设置几个累加单元分别进行对设置几个累加单元分别进行对1s,1min,1h进行计数。满进行计数。满1s,秒位累加;,秒位累加;满满60s,分位累加;满,分位累加;满60min,时位累,时位累加;满加;满24h全部累加单元清全部累加单元清0。2)程序流程及程序清单)程序流程及程序清单 主程序流程如右图所示。主程序流程如右图所示。综合应用举例综合
13、应用举例(2)设T1为模式1设中断次数清计时单元开中断启动T1调用显示子程序2)程序流程及程序清单)程序流程及程序清单 中断服务流程如右图所示。中断服务流程如右图所示。保护现场赋计数初值到1s?(32H)加1(32H)=60?(32H)清0(31H)加1(31H)=60?(31H)清0(30H)加1(30H)=24?(30H)清0恢复现场返回入口NNNNYYYY综合应用举例综合应用举例(1)源程序如下:源程序如下:ORG 0000H AJMP MAIN ;上电,转向主程序上电,转向主程序 ORG 001BH ;T1的中断服务程序入口地址的中断服务程序入口地址 AJMP SERVE ;转向中断服
14、务程序;转向中断服务程序 ORG 2000H ;主程序;主程序MAIN:MOV SP,#60H ;设堆栈指针;设堆栈指针 MOV TMOD,#10H ;设置;设置T1工作于模式工作于模式1 MOV 20H,#0AH ;设循环次数;设循环次数 CLR A MOV 30H,A ;时单元清;时单元清0 MOV 31H,A ;分单元清;分单元清0 MOV 32H,A ;秒单元清;秒单元清0SETB ET1 ;T1开中断开中断 SETB EA ;CPU开中断开中断 MOV TL1,#0B0H ;装计数值低;装计数值低8位位 MOV TH1,#3CH ;装计数值高;装计数值高8位位 SETB TR1 ;启
15、动定时;启动定时 SJMP$;等待中断(可反复调用显示子程序);等待中断(可反复调用显示子程序)综合应用举例综合应用举例(1)中断服务程序:中断服务程序:SERVE:PUSH PSW ;保护现场保护现场 PUSH ACC MOV TL1,#0B0H ;重新赋初值;重新赋初值 MOV TH1,#3CH DJNZ 20H,RETERN ;1s未到,返回未到,返回 MOV 20H,#0AH ;重置中断次数;重置中断次数MOV A,#01H ADD A,32H ;“秒位秒位”加加1 DA A ;转换为;转换为BCD码码 MOV 32H,A CJNE A,#60H,RETERN ;未满;未满60s,返回
16、,返回 MOV 32H,#00H ;计满;计满60s,“秒位秒位”清清0 MOV A,#01H ADD A,31H ;“分位分位”加加1 DA A ;转换为;转换为BCD码码 综合应用举例综合应用举例(2)MOV 31H,A CJNE A,#60H,RETERN ;未满;未满60min,返回,返回 MOV 31H,#00H ;计满;计满60min,“分位分位”清清0 MOV A,#01HADD A,30H ;“时位时位”加加1DA A ;转换为;转换为BCD码码 MOV 30H,A CJNE A,#24H,RETERN ;未满;未满24h,返回,返回 MOV 30H,#00H ;计满;计满24
17、h,“时位时位”清清0RETURN:POP ACC ;恢复现场;恢复现场 POP PSWRETI ;中断返回;中断返回END 2022/10/27191 5章总结15章总结章总结介绍单片机的发展、类型、应用环境介绍单片机的发展、类型、应用环境单片机的硬件结构:组成、引脚分布、内部数据存储器、单片机的硬件结构:组成、引脚分布、内部数据存储器、I/O口、口、时钟电路与时序、工作方式时钟电路与时序、工作方式(复位、待机、停机复位、待机、停机)单片机的指令系统:寻址方式单片机的指令系统:寻址方式(7种种)、5类操作指令类操作指令(数据传送指数据传送指令、算术运算指令、逻辑运算及移位指令、控制转移指令、
18、位令、算术运算指令、逻辑运算及移位指令、控制转移指令、位操作指令操作指令)汇编语言程序设计:典型的例程汇编语言程序设计:典型的例程单片机的中断与定时单片机的中断与定时/计数器计数器单片机系统扩展单片机系统扩展单片机中虽然已经集成了单片机中虽然已经集成了CPU、I/O口、定时器、中断系统、存口、定时器、中断系统、存储器等计算机的基本部件储器等计算机的基本部件(即系统资源即系统资源),但是对于一些较复杂的,但是对于一些较复杂的应用系统而言,以上一种或几种资源还远远达不到实际应用的应用系统而言,以上一种或几种资源还远远达不到实际应用的要求,此时就需要在单片机芯片外加相应的芯片、电路等,使要求,此时就
19、需要在单片机芯片外加相应的芯片、电路等,使得有关功能得以扩充,称为得有关功能得以扩充,称为系统扩展系统扩展。MCS-51单片机的系统扩展包括并行存储器扩展、单片机的系统扩展包括并行存储器扩展、I/O接口扩展、接口扩展、人机交互扩展人机交互扩展(键盘、显示器键盘、显示器)、串行口扩展、外部信号变换扩展、串行口扩展、外部信号变换扩展(A/D、D/A)。两类外扩展:存储器扩展和两类外扩展:存储器扩展和I/O扩展;扩展;两种外扩展方法:并行扩展和串行扩展。两种外扩展方法:并行扩展和串行扩展。2022/10/2722第第6 6章章单片机并行存储器扩展单片机并行存储器扩展本章主要内容本章主要内容 单片机并
20、行外扩展系统单片机并行外扩展系统 存储器分类存储器分类 存储器并行扩展存储器并行扩展 80C51单片机存储器系统的特点和使用方法单片机存储器系统的特点和使用方法 用单片机组成应用系统时,首先要考虑单片机用单片机组成应用系统时,首先要考虑单片机所具有的各种功能能否满足应用系统的要求。所具有的各种功能能否满足应用系统的要求。如能满足,则称这样的系统为最小应用系统。如能满足,则称这样的系统为最小应用系统。下图为下图为MCS51系列中系列中80C51单片机的最小系单片机的最小系统。统。单片机最小系统单片机最小系统80C5187C51XTAL1XTAL2P0P1P2P3RESET12MHZ22uF1K2
21、00888820PF20PF+5V单片机并行扩展总线单片机并行扩展总线系统扩展系统扩展 外部存储器的扩展外部存储器的扩展 I/O接口部件的扩展接口部件的扩展通过系统总线扩展并行扩展总线的组成并行扩展总线的组成 并行扩展总线包括三个组成部分:并行扩展总线包括三个组成部分:AB、DB、CB 地址总线:地址总线:Address Bus(AB)传送地址信号,用于外扩展传送地址信号,用于外扩展存储单元和存储单元和I/O端口的寻址。端口的寻址。地址总线是单向的,只能从单片机向外传送。地址总线是单向的,只能从单片机向外传送。一条地址线提供一位地址,故地址线的数目决定了可寻址一条地址线提供一位地址,故地址线的
22、数目决定了可寻址存储单元的数目。存储单元的数目。80C51单片机的地址总线共有单片机的地址总线共有16位,故外扩展空间为位,故外扩展空间为64KB,即,即216个地址单元。个地址单元。并行扩展总线的组成并行扩展总线的组成数据总线:数据总线:Data Bus(DB)传送数据、状态、指令和命令。传送数据、状态、指令和命令。DB是双向的,可以进行两个方向的数据传送。是双向的,可以进行两个方向的数据传送。DB的位数应于单片机字长一致。如的位数应于单片机字长一致。如80C51单片机是单片机是8位字长,位字长,故数据总线为故数据总线为8位。位。控制总线:控制总线:Control Bus(CB)传送控制信号
23、。传送控制信号。单片机可以向外扩发出控制信号,外扩也可以向单片机发送单片机可以向外扩发出控制信号,外扩也可以向单片机发送控制信号,因此虽然一个控制信号传送的本身是单向的,但控制信号,因此虽然一个控制信号传送的本身是单向的,但是由不同方向信号线组合的控制总线则可表示为双向。是由不同方向信号线组合的控制总线则可表示为双向。80C51P0口口以以P0口的口的8位口线充当低位地址线位口线充当低位地址线(A7A0)和数据线和数据线(D7D0)分时复用:先送出地址,再传送数据。分时复用:先送出地址,再传送数据。锁存器:保存分离出的地址,需另外增加一个锁存器:保存分离出的地址,需另外增加一个8位的锁存器,位
24、的锁存器,并以并以ALE作为锁存控制信号。作为锁存控制信号。(CPU送出地址时,送出地址时,ALE有效,有效,应选择高电平或下降沿选通的锁存器应选择高电平或下降沿选通的锁存器)低低8位的地址进入锁存器后,位的地址进入锁存器后,P0口即可作为数据线使用,进口即可作为数据线使用,进行数据传送了。行数据传送了。P2口口P2口只作为高口只作为高8位地址线使用。位地址线使用。P2口的高口的高8位地址线与位地址线与P0口的低口的低8为地址线共同构成完整的为地址线共同构成完整的16位地址总线,可选址位地址总线,可选址64KB空间。空间。在实际应用中,高位地址线根据需要从在实际应用中,高位地址线根据需要从P2
25、口引出,需要几位口引出,需要几位引出几位口线。若外扩展容量小于引出几位口线。若外扩展容量小于256个单元时,则不需要个单元时,则不需要高位地址线。高位地址线。控制线控制线控制总线包括:控制总线包括:l 控制低控制低8位地址锁存的位地址锁存的ALE信号信号l 控制扩展程序存储器控制扩展程序存储器ROM的读选通信号的读选通信号PSENl 控制选择内外程序存储器的选择信号控制选择内外程序存储器的选择信号EAl 控制扩展数据存储器控制扩展数据存储器RAM及及I/O端口的读端口的读/写选通信号写选通信号 RD和和WR 仅剩仅剩P1口和口和P3口的部分口线可供数据口的部分口线可供数据I/O使用。使用。访问
26、外部程序存储器的操作过程:访问外部程序存储器的操作过程:在在S1P2时刻产生时刻产生ALE信号。信号。由由P0、P2口送出口送出16位地址,由于位地址,由于P0口送出的低口送出的低8位地址只位地址只保持到保持到S2P2,所以要利用,所以要利用ALE的下降沿信号将的下降沿信号将P0口送出的口送出的低低8位地址信号锁存到地址锁存器中。而位地址信号锁存到地址锁存器中。而P2口送出的高口送出的高8位位地址在整个读指令的过程中都有效,因此不需要对其进行地址在整个读指令的过程中都有效,因此不需要对其进行锁存。从锁存。从S2P2起,起,ALE信号失效。信号失效。从从S3P1开始,开始,PSEN开始有效,对外
27、部程序存储器进行读开始有效,对外部程序存储器进行读操作,将选中的单元中的指令代码从操作,将选中的单元中的指令代码从P0口读入,口读入,S4P2时刻,时刻,PSEN失效。失效。从从S4P2后开始第二次读入,过程与第一次相似。后开始第二次读入,过程与第一次相似。访问外部程序存储器的时序访问外部程序存储器的时序MCS-51MCS-51系列单片机访问外部程序存储器的时序图系列单片机访问外部程序存储器的时序图 访问外部数据存储器的操作过程:访问外部数据存储器的操作过程:从第从第1次次ALE有效到第有效到第2次次ALE开始有效期间,开始有效期间,P0口送出外口送出外部部ROM单元的低单元的低8位地址,位地
28、址,P2口送出外部口送出外部ROM单元的高单元的高8位地址,并在位地址,并在PSEN有效期间,读入外部有效期间,读入外部ROM单元中的指单元中的指令代码;令代码;在第在第2次次ALE有效后,有效后,P0口送出外部口送出外部RAM单元的低单元的低8位地位地址,址,P2口送出外部口送出外部RAM单元高单元高8位地址;位地址;在第在第2个机器周期,第个机器周期,第1次次ALE信号不再出现,此时信号不再出现,此时PSEN也失效,并在第也失效,并在第2个机器周期的个机器周期的S1P1时,时,RD信号开始有效,信号开始有效,从从P0口读入选中口读入选中RAM单元中的内容。单元中的内容。访问外部数据存储器的
29、时序访问外部数据存储器的时序MCS-51MCS-51系列单片机访问外部数据存储器的时序图系列单片机访问外部数据存储器的时序图 并行扩展系统的并行扩展系统的I/O编址编址80C51单片机存储器系统与外扩展地址空间结构图单片机存储器系统与外扩展地址空间结构图-RAM用户用户RAM区区(堆栈、缓冲堆栈、缓冲)位寻址区位寻址区四组通用四组通用寄存器寄存器特殊功能特殊功能寄存器区寄存器区(SFR)片内片内RAM(低低128字节字节)片内片内RAM(高高128字节字节)00H7FH80HFFH 片内数据存储器片内数据存储器RAM或或I/O(64KB)0000HFFFFH 片外数据存储器片外数据存储器 数据
30、存储器数据存储器(RAM)并行扩展系统的并行扩展系统的I/O编址编址80C51单片机存储器系统与外扩展地址空间结构图单片机存储器系统与外扩展地址空间结构图ROM 片内程序存储器片内程序存储器(4K)(ROM)片外程序存储器片外程序存储器(64K)程序存储器程序存储器(ROM)1000HFFFFH(EA=1)0000H0FFFH(EA=0)0000H0FFFH片外片外ROM的起始地址取决于的起始地址取决于单片机是否有片内存储器:单片机是否有片内存储器:如果没有片内存储器,如果没有片内存储器,外扩外扩ROM从从0000H开始编址;开始编址;如果有片内如果有片内ROM,则外扩展则外扩展ROM从从10
31、00H开始编址开始编址芯片的选取芯片的选取寻址寻址:访问要扩展的芯片和芯片内的目标单元。:访问要扩展的芯片和芯片内的目标单元。寻址可分为芯片选择和芯片内目标单元选择寻址可分为芯片选择和芯片内目标单元选择两个层次两个层次。l内寻址层次:由外接芯片的内部译码电路完成。内寻址层次:由外接芯片的内部译码电路完成。(只需将只需将外扩芯片的地址引脚与单片机低位地址线相连即可外扩芯片的地址引脚与单片机低位地址线相连即可)l芯片选择:外扩系统的寻址问题主要集中于此。芯片选择:外扩系统的寻址问题主要集中于此。(外接芯外接芯片常有多个片选信号引脚,片常有多个片选信号引脚,如何产生有效的片选信号?如何产生有效的片选
32、信号?)常用的芯片选择方法:线选法和译码法。常用的芯片选择方法:线选法和译码法。线选法寻址线选法寻址线选法寻址线选法寻址:直接以位地址信号作为芯片的片选信号。:直接以位地址信号作为芯片的片选信号。使用时只需把地址线与扩展芯片的片选信号引脚直接连接即使用时只需把地址线与扩展芯片的片选信号引脚直接连接即可。可。例:例:某一系统,需要外扩某一系统,需要外扩8KB的的EPROM(2片片2732),4KB的的RAM(2片片6116),这些芯片与,这些芯片与MCS-51单片机地址分配有关的地址单片机地址分配有关的地址线连线,电路图如下。线连线,电路图如下。线选法寻址线选法寻址解:高位地址线直接和各芯片片选
33、信号解:高位地址线直接和各芯片片选信号CECE相连相连分析地址:分析地址:A15A14A13A12A11A0 27322732(1):0 1 1 1(1):0 1 1 170007000H H7FFFH7FFFH 2732 2732(2):1 0 1 1(2):1 0 1 1B000HB000HBFFFH BFFFH 6116 6116(1):1 1 1 0 1(1):1 1 1 0 1E800HE800HEFFFH EFFFH 6116 6116(2):1 1 0 1 1 (2):1 1 0 1 1 D800HD800HDFFFHDFFFH 地地址址不不连连续续优点:优点:电路简单,不需要地
34、址译码器硬件,体积小,成本低。电路简单,不需要地址译码器硬件,体积小,成本低。缺点:缺点:可寻址的器件数目有限,地址不连续。可寻址的器件数目有限,地址不连续。线选法寻址线选法寻址全译码:全译码:部分译码:部分译码:译码译码全部高位地址线都参加译码;全部高位地址线都参加译码;部分高位地址线参加译码,部分高位地址线参加译码,存在部分地址空间相重叠的情况。存在部分地址空间相重叠的情况。译码法寻址译码法寻址译码法寻址译码法寻址:高位地址通过译码器的译码输出作为扩展芯片:高位地址通过译码器的译码输出作为扩展芯片的片选信号。的片选信号。最常用的译码器芯片:最常用的译码器芯片:3-8译码器:译码器:74LS
35、138 双双2-4译码器:译码器:74LS139 4-16译码器:译码器:74LS154(1)74LS138(3-8译码器)译码器)时译码器工作时译码器工作输入:输入:C B A输出:输出:工作时,只有一个输出为工作时,只有一个输出为0,其它皆其它皆1译码器译码器 输输 入入 输输 出出 C B AC B A74LS138真值表真值表(2)74LS139(双双2-4译码器译码器)译码器译码器解:解:6264:8K=213 3根地址线用于控制根地址线用于控制 选通选通8片片RAM 译码法寻址举例译码法寻址举例【例例】要扩展要扩展8片片8KB的的RAM6264(8K8),如何通过译码器,如何通过译
36、码器把把64KB空间分配给各个芯片?空间分配给各个芯片?全译码方式,地址无重叠全译码方式,地址无重叠64KB64KB空间:空间:0000H0000HFFFFHFFFFH,地址连续,地址连续分析地址:分析地址:译码法寻址举例译码法寻址举例引出问题引出问题1:如何用:如何用74LS138把把64K空间划分为每块空间划分为每块4KB?译码法寻址举例译码法寻址举例解:解:64KB=4KB8块块2部分部分4K=212 12根根译码译码3根,未参根,未参加译码加译码P2.7=0/1决定选决定选择择64KB的前的前32KB或后或后32KB 74LS138G1前前32KB8块块4KB后后32KB8块块4KB分
37、析地址:分析地址:译码法寻址举例译码法寻址举例改变和改变和G1的连接逻辑,即可改变前后的连接逻辑,即可改变前后32KB空间。空间。引出问题引出问题2:如何用:如何用74LS138把把64K空间划分为每块空间划分为每块2KB?译码法寻址举例译码法寻址举例解:解:64KB=2KB8块块4部分部分 4K=211 11根译码根译码3根,未参加译码根,未参加译码 P2.7G1,P2.6G2A,改变和改变和G1,G2A的连接的连接 逻辑,即可改变选中的逻辑,即可改变选中的4个个16KB空间的哪一个了。空间的哪一个了。小结:小结:若若64KB全是用全是用32块块2K芯片组成,则同问题芯片组成,则同问题2,需
38、,需4个个74LS138若若64KB全是用全是用16块块4K芯片组成,则同问题芯片组成,则同问题1,需,需2个个74LS138注意:注意:译码方案不唯一译码方案不唯一本章主要内容本章主要内容 单片机并行外扩展系统单片机并行外扩展系统 存储器分类存储器分类 存储器并行扩展存储器并行扩展 80C51单片机存储器系统的特点和使用方法单片机存储器系统的特点和使用方法只读存储器只读存储器(ROM)(ROM):(1 1)掩模工艺)掩模工艺ROMROM(2 2)可一次性编程)可一次性编程ROMROM(PROMPROM)(3 3)紫外线擦除可改写)紫外线擦除可改写ROMROM(EPROMEPROM)(4 4)
39、电擦除可改写)电擦除可改写ROMROM(EEPROMEEPROM或或E E2 2PROMPROM)(5 5)快擦写)快擦写ROMROM(flash ROMflash ROM)存储器分类存储器分类-只读存储器只读存储器随机存储器随机存储器(RAM)(RAM):(1 1)双极型)双极型RAMRAM(2 2)金属氧化物()金属氧化物(MOSMOS)RAMRAM静态静态RAMRAM(SRAMSRAM)动态动态RAMRAM(DRAMDRAM)集成集成RAMRAM(IRAMIRAM)非易失性非易失性RAMRAM(NVRAMNVRAM)存储器分类存储器分类-随机存储器随机存储器 容量容量 存取时间存取时间
40、可靠性可靠性 功耗功耗存储器的主要性能指标存储器的主要性能指标扩展程序存储器常用扩展程序存储器常用EPROM芯片:芯片:2716(2K8位位)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。扩展数据存储器常用扩展数据存储器常用静态静态RAM芯片芯片:6264(8K8位)、位)、62256(32K8位)、位)、628128(128K8位)等。位)等。常用存储器芯片常用存储器芯片本章主要内容本章主要内容 单片机并行外扩展系统单片机并行外扩展系统 存储器分类存储器分类 存储器并行扩展存储器并行扩展 80C51单片机存储器系统的特点和使
41、用方法单片机存储器系统的特点和使用方法程序存储器的作用程序存储器的作用存放程序代码或常数表格存放程序代码或常数表格程序存储器的扩展过程:程序存储器的扩展过程:扩展时所用芯片扩展时所用芯片一般用只读型存储器芯片(可以是一般用只读型存储器芯片(可以是EPROM、E2PROM、FLASH芯片等)。芯片等)。扩展电路连接扩展电路连接 用用EPROM 2764扩展程序存储器为例扩展程序存储器为例存储器地址分析存储器地址分析究竟单片机输出什么地址值时,可以指向存储器中的某一究竟单片机输出什么地址值时,可以指向存储器中的某一单元。单元。程序存储器扩展程序存储器扩展2764是一是一块块8K8bit的的EPRO
42、M芯片,管脚如下芯片,管脚如下图图所示:所示:A12A0:13位地址信号位地址信号输输入入线线,芯片的容量,芯片的容量为为:8K213个个单单元;元;D7D0:8位数据位数据线线,芯片的每个存,芯片的每个存储单储单元存放一个字元存放一个字节节(8位二位二进进制数);制数);CE:选选片信号,片信号,输输入,当它入,当它为为有效低有效低电电平平时时,该该芯片被芯片被选选中;中;OE:输输出允出允许许信号。当信号。当 它它为为低低电电平平时时,芯片中的数据可,芯片中的数据可由由D7D0输输出。出。PGM:编编程脉冲程脉冲输输入端。当入端。当对对EPROM编编程程时时,由此加入,由此加入编编程脉冲;
43、程脉冲;读时该读时该引脚引脚为为高高电电平。平。1.EPROM芯片芯片276427642764引脚功能引脚功能2764-8K EPROM2764-8K EPROMVPPA12A7A6A5A4A3A2A1A0D0D1D2GNDVccPGMN.CA8A9A11OEA10CED7D6D5D4D32764A0A0A12A12地址线地址线CECE片选片选OEOE读读PGMPGM编程脉冲编程脉冲输入输入D0D0D7D7数据线数据线VppVpp编程电源编程电源 EPROM2764EPROM2764管脚图管脚图系系统扩统扩展一片展一片EPROM的最小系的最小系统统:2.2764的连接使用的连接使用D7D6D5
44、D4D3D2D1D0G74LS373GND+5VEQ7Q6Q5Q4Q3Q2Q1Q0 74L37374L373引脚功能引脚功能D0D0D6D6数据输入数据输入 E E输出允许输出允许 G G数据输出数据输出 Q0Q0Q7Q7使能端使能端当当E=0,G=1时,时,输出输出Q=输入输入D(透明透明);当当E=0,G=0时,时,输出输出Q端不变(锁存)端不变(锁存)当当E=1,输出高阻态,输出高阻态2.2764的连接使用的连接使用 注意:注意:PSEN接接OE(输出允许)(输出允许)80C5180C51中间连接中间连接27642764数据总线的连接:数据总线的连接:P0.0-P0.7P0.0-P0.7
45、(数据总线)(数据总线)D0-D7D0-D7地址总线的连接:地址总线的连接:P0.0-P0.7P0.0-P0.7(地址总线低(地址总线低8 8位)位)经过锁存器经过锁存器373373A0-A7A0-A7P2.0-P2.7P2.0-P2.7(地址总线高(地址总线高8 8位)位)A8-A12A8-A12、片选、片选CECE控制总线的连接:控制总线的连接:PSENPSEN(程序存储器允许,即读指令)(程序存储器允许,即读指令)OEOEALEALE(地址锁存允许)(地址锁存允许)接接373373的使能端的使能端G G2.2764的连接使用的连接使用分分析析存存储储器器在在存存储储空空间间中中占占据据的
46、的地地址址范范围围,就就是是根根据据连连接接情情况况确确定定其其最最低地址和最高地址。低地址和最高地址。P、P、P的的状状态态与与2764芯芯片片的的寻寻址址无无关关,所所以以P、P、P可可为为任任意意,从从000到到111共有共有8种组合,其种组合,其2764芯片的地址范围是:芯片的地址范围是:最低地址:最低地址:0000H A15A14A13A12 A11A10A9A8 A7A6A5A4 A3A2A1A0 =0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0最高地址:最高地址:FFFFH A15A14A13A12 A11A10A9A8 A7A6A5A4A3A2A1A0 =1 1
47、 1 1 1 1 1 1 1 1 1 1 1共占用了共占用了64KB的存储空间,造成地址空间的重叠和浪费的存储空间,造成地址空间的重叠和浪费3.存储器映像分析存储器映像分析数据存储器的作用:数据存储器的作用:存放数据,可改写存放数据,可改写数据存储器的扩展过程:数据存储器的扩展过程:扩展时所用芯片扩展时所用芯片一般用静态读写型存储器芯片一般用静态读写型存储器芯片SRAM,也可以用,也可以用E2PROM、FLASH芯片等芯片等扩展电路连接扩展电路连接用用SRAM 6264扩展程序存储器。扩展程序存储器。存储器地址分析存储器地址分析究竟单片机输出什么地址值时,可以指向存储器中的某究竟单片机输出什么
48、地址值时,可以指向存储器中的某一单元。一单元。数据存储器的扩展数据存储器的扩展单片机的数据存储器扩展主要要解决三总线的连接:单片机的数据存储器扩展主要要解决三总线的连接:地址线的连接,与程序存储器连法相同。地址线的连接,与程序存储器连法相同。数据线的连接,与程序存储器连法相同。数据线的连接,与程序存储器连法相同。控制线的连接,主要有下列控制信号:控制线的连接,主要有下列控制信号:存储器输出信号存储器输出信号(OE)与单片机读引脚与单片机读引脚(即即P3.7)相连相连存储器写信号存储器写信号(WE)与单片机写引脚与单片机写引脚(即即P3.6)相连相连ALE:其连接方法与程序存储器相同:其连接方法
49、与程序存储器相同使用时应注意,访问内部或外部数据存储器时,应分别使使用时应注意,访问内部或外部数据存储器时,应分别使用用MOV及及MOVX指令。指令。外部数据存储器通常设置二个数据区外部数据存储器通常设置二个数据区数据存储器的扩展数据存储器的扩展低低8 8位位地址线寻址的外部数据区。此区域寻址空间为地址线寻址的外部数据区。此区域寻址空间为256256个字个字节。可以使用下列读写指令来访问此存储区节。可以使用下列读写指令来访问此存储区读存储器数据指令:读存储器数据指令:MOVXMOVXA A ,R R写存储器数据指令:写存储器数据指令:MOVXMOVXR R,A A因因8 8位寻址指令占字节少,
50、程序运行速度快,故常采用。位寻址指令占字节少,程序运行速度快,故常采用。1616位位地址线寻址的外部数据区。当外部地址线寻址的外部数据区。当外部RAM容量较大,要容量较大,要访问访问RAM地址空间大于地址空间大于256256个字节时,则要采用如下个字节时,则要采用如下1616位寻位寻址指令。址指令。读存储器数据指令:读存储器数据指令:MOVXMOVXA A ,DPTRDPTR写存储器数据指令:写存储器数据指令:MOVXMOVXDPTRDPTR ,A A由于由于DPTR为为1616位的地址指针,故可寻址位的地址指针,故可寻址64KRAM64KRAM字节单元。字节单元。数据存储器的扩展数据存储器的