




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理与应用第五章中断系统●教学目标:介绍MCS-51中断系统及中断控制介绍中断处理的过程
介绍中断应用程序的编程●学习要求:
熟悉中断、中断源、中断服务程序、保护现场、恢复现场、中断优先级、中断处理等概念;掌握51中断入口地址和各中断控制寄存器含义及应用:包括TCON、SCON、IE和IP;掌握中断初始化和中断服务程序的编制。
单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例单片机原理与应用5-1
微机的输入/输出方式
MCS51有很强的接口能力,可扩展存储器、外设。扩展后,CPU要与各种形式的外设相连,这些外设的结构形式、信号种类与大小、工作速度的快慢相差很大,这就需研究单片机与外设交换的方法I/O设备必须通过I/O接口与计算机连接。I/O接口的功能:1.速度匹配: 锁存数据、传送联络信号。2.数据格式转换: 并-串转换、A/D、D/A转换。3.电平转换: 电平幅值或正/负逻辑转换。4.隔离: 多个设备信号通过接口三态门隔离干扰信号。微型机I/O接口I/O接口I/O设备I/O设备5.缓冲驱动:驱动多个逻辑部件或大功率执行部件。单片机原理与应用每个I/O接口分配有对应的I/O地址。CPU与I/O之间接口信号:1.数据信息:微型机与外设交换的数据,经接口数据缓冲器传送。2.状态信息:反映外设工作状态的信号。3.控制信息:设定I/O电路工作方式的信号。数据总线传递三种信号,用不同I/O地址区别:输入/输出数据缓冲器共用一个I/O地址:数据端口。状态/控制寄存器共用一个I/O地址:控制/状态端口。
DBABRDWRINT微型机DIODAIOSRDIOCWRINTI/O接口DReadySTBI/O设备单片机原理与应用
I/O寻址方式一.存储器地址方式I/O接口共用存储器的地址空间,每个I/O端口视为一个存储单元。二.专用I/O地址方式有专用I/O控制信号和I/O指令。I/O接口独立编址,不占用存储器的地址空间。MCS-51、96为存储器地址方式。MCS-51单片机有片内I/O接口和扩展I/O接口。片内I/O接口寄存器在SFR中,使用片内数据存储器空间,扩展I/O接口使用片外数据存储器地址空间: 输出指令: 输入指令:片内寻址:MOV P1,A MOV A,P1片外寻址:MOVX@DPTR,A MOVXA,@DPTR
MOVX@R0,A MOVXA,@R0单片机原理与应用单片机原理与应用I/O控制方式MCS-51有很强的I/O接口扩展能力,I/O外设扩展后,单片机要与各种形式的外设相连,这些外设的结构形式、信号种类与大小、工作速度的快慢相差很大,这就需要研究单片机与外设交换数据的方法---I/O控制方式。目前微机CPU与外设交换信息通常有以下几种形式:一.无条件传送方式已知I/O设备准备就绪,可直接进行数据传送。单片机原理与应用二.查询式传送也称程序控制法,先查询I/O设备当前状态,若准备就绪,则交换数据,否则循环查询状态。这种方法对硬件要求较少,软件设计简单,缺点是数据交换速度慢,单片机要花费大量时间查询、等待。常用于CPU不太繁忙、响应速度要求不高的场合。1.硬件查询电路设置状态锁存和数据锁存电路。查询状态输入/输出数据准备就绪?YNINPUT:MOVDPTR,#SATUS;状态口地址WAIT:MOVXA,@DPTR JBACC.6,WAIT MOVDPTR,#DATA;数据口地址
MOVXA,@DPTRDBAB微型机AB数据端口状态端口外部设备I/O接口D62.软件查询程序先输入状态,决定是否进行数据传送。单片机原理与应用三.中断传送
大多数时间计算机与外设并行工作,计算机不必因等待而浪费资源。当外设准备就绪,向CPU发出中断请求信号。CPU暂停当前程序,执行I/O操作。当I/O操作结束,CPU仍继续被中断的工作。
引入中断技术作用:
(1)实时处理,提高处理故障的能力;
(2)解决CPU和外设之间的速度匹配问题,提高CPU的效率。
单片机原理与应用单片机原理与应用四.直接存储器存取方式传送(DMA—DirectMemoryAccess)用于计算机与高速外设进行大批量数据交换,由DMA控制器接管总线控制权,RAM与外设之间直接数据传输,不需CPU的介入。单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例中断系统是计算机的重要指标之一。可以解决快速CPU与慢速外设之间的矛盾,使之能并行工作。可以及时处理随机参数及故障,提高可靠性。某人看书 执行主程序 日常事务电话铃响 中断信号INT=0 中断请求暂停看书
暂停执行主程序中断响应书中作记号当前PC入栈 保护断点电话谈话 执行I/O程序 中断服务继续看书 返回主程序 中断返回日常事务程序中断服务程序5-2 中断概念单片机原理与应用单片机原理与应用中断的概念中断——指CPU正在执行程序,处理某件事情的时候,外部发生了某一事件,请求CPU马上处理,CPU停当前工作,转入处理所发生事件,处理完以后,再返回到原来被中断的地方,继续原来的工作。实现中断功能的部件称为中断系统。中断服务程序——中断之后所执行的处理程序,原来运行的程序称为主程序。断点——主程序被断开的位置(地址)。中断源——引起中断的原因,或能发出中断申请的来源。中断请求——中断源要求服务的请求。单片机原理与应用中断源1.输入、输出设备中断源一般计算机的I/O设备,如键盘、磁盘驱动器、打印机等,可通过接口电路向CPU申请中断。2.故障源故障源是产生故障信息的来源。例如:CPU内部故障源,如除法中除数为零时的情况;外部故障源,如电源掉电情况。
单片机原理与应用3.实时中断源在实时控制中,常常将被控参数、信息作为实时中断源。例如,电压、电流、温度等超越上限或下限时,以及继电器、开关闭合断开。
4.定时/计数脉冲中断源内部定时/计数中断;外部定时/计数中断是由外部定时脉冲通过输入线引起单片机原理与应用中断系统的一般功能中断系统一般应具有如下功能:
1.实现中断及返回当某中断源发出中断申请时,若允许响应,CPU必须在现行的指令执行完后,把断点处的PC值压入堆栈保存,称为保护断点。(硬件自动完成)保护现场——响应中断后,将有关的寄存器内容和状态标志位压入堆栈保存。
恢复现场——执行中断服务程序后,恢复原保留的寄存器的内容和标志位的状态,并执行返回指令“RETI”(用户编程实现)
单片机原理与应用
主程序低级中断高级中断中断中断返回返回图5-2中断嵌套流程图执行中断服务程序主程序继续执行主程序RETI图5-1中断流程图中断及返回过程如图5—1所示:单片机原理与应用2.实现优先权排队优先权——给各中断源规定一个优先级别。当同时有多个中断请求信号,先响应优先级别高的中断请求。高优先级中断请求信号可中断低优先级中断服务。计算机按中断源级别高低逐次响应的过程称优先权排队。这个过程可以通过硬件电路来实现,也可以通过程序查询来实现。
寻找中断源与确定优先级寻找中断源:每个中断源对应一个中断服务程序。多个中断源按优先级别排队。硬件上排队顺序:DMA、NMI、INT。软件查询方式中断源寄存器≥1INT单片机P1中断请求1中断请求2中断请求7INTS:MOVA,P1;读中断源寄存器
JB ACC.0,SV1 ;查询高级中断请求
JB ACC.1,SV2 ;查询低级中断请求 …SV1: … ;中断服务程序1 …SV2: … ;中断服务程序2单片机原理与应用硬件查询方式
硬件优先级排队和中断向量锁存电路。INTDB微型机≥1中断源1中断源2中断源3中断向量1中断向量2中断向量3
中断向量:提供中断服务程序入口地址信息的地址。单片机原理与应用单片机原理与应用3.实现中断嵌套中断嵌套示意图如图5—2所示。中断申请的中断源的优先权级别与正在处理的中断源同级或更低时,CPU暂时不响应这个中断申请,直至正在处理的中断服务程序执行完以后才去处理新的中断申请。
单片机原理与应用4.实现中断的撤除在响应中断后,返回主程序之前,中断请求应该撤除,否则,将影响对其它中断申请的响应。MCS-51中断系统只能对一部分中断申请,在响应后自动撤除,使用中应注意。调用中断服务程序与调用子程序的区别:1、事先安排和随机发生2、软件调用和硬件自动完成
INTNMI微型机单片机原理与应用两种中断1.可屏蔽中断
可程控“开中断/关中断”。软件设置允许/禁止CPU响应中断。
2.非屏蔽中断
不可程控“关中断”。有中断请求信号,CPU必须响应。
中断处理过程一.中断响应条件1.有中断请求信号2.系统处于开中断状态二.中断响应过程1.关中断:屏蔽其它中断请求信号。2.保护断点:将断点地址压入堆栈保存,即当前PC值入栈。3.寻找中断源:中断服务程序入口®PC,转入中断服务。4.保护现场:将中断服务程序使用的所有寄存器内容入栈。5.中断处理:执行中断源所要求的程序段。6.恢复现场:恢复被使用寄存器的原有内容。7.开中断:允许接受其它中断请求信号。8.中断返回:执行RETI指令,栈顶内容®PC,程序跳转回断点处。单片机原理与应用单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例单片机原理与应用
MCS—51提供5个中断请求源,2个中断优先级,可实现两级中断服务程序嵌套。当CPU执行关中断指令后(或复位),将屏蔽所有中断请求,只有CPU执行开中断指令后才有可能接受中断请求,每个中断源可由软件编程为允许中断和禁止中断,每个中断源可程控为高优先级中断或低优先级中断。可见MCS-51具有较强的中断处理能力。MCS51中断系统简介单片机原理与应用一、中断系统内部结构MCS-51的中断系统结构框图如下图所示,与中断有关的特殊功能寄存器有4个,分别为中断源寄存器(即专用寄存器TCON和SCON的相关位)、IE和IP。MCS-51单片机有5个中断源,可提供两个中断优先级,即可实现二级中断嵌套。单片机原理与应用单片机原理与应用二、MCS-51中断源及中断入口MCS-51的中断源可分为三类:外部中断、定时中断和串行口中断。
1.外部中断类由外部原因引起的:
INT0——外部中断0请求信号,由P3.2输入,IT0(TCON.0)决定中断请求信号是低电平有效还是下降沿有效。一旦输入有效,即向CPU申请中断,并使IE0=1。
INT1——外部中断1请求信号,由P3.3输入,由IT1(TCON.2)决定中断请求信号是低电平有效还是下降沿有效。一旦输入有效,即向CPU申请中断,并使IE1=1。单片机原理与应用2.定时中断类
定时中断是为满足定时或计数溢出处理的需要而设置的,在单片机芯片内部发生,无需在芯片上设置引入端,但在计数方式时,中断源可以由单片机芯片外部引入。TF0——定时器T0溢出中断请求。当定时器T0产生溢出时,其中断请求标志TF0=1,请求中断处理。TF1——定时器T1溢出中断请求。当定时器T1产生溢出时,其中断请求标志TF1=1,请求中断处理。单片机原理与应用3.串行口中断类串行口中断为串行数据的传送需要而设置的。
RI或TI——串行中断请求。各中断源对应的中断服务程序入口地址:
中断源 入口地址外部中断0 0003H
定时器T0中断 000BH
外部中断1 0013H
定时器T1中断 001BH
串行口中断 0023H三、MCS-51中断请求中断标志位:
TF1、TF0、IE1、IE0、RI、TI登记各中断源请求信号:=1,有中断请求;=0,无中断请求。CPU响应中断后,该中断标志自动清零。TI,RI标志必须软件清零。2.外部中断触发方式选择位:IT0、IT1=1:负边沿触发中断请求;=0:低电平触发中断请求。单片机原理与应用单片机原理与应用这些中断源分别由MCS-51的SFR中TCON和SCON组成。TCON(定时计数器控制寄存器)字节地址为88H,可位寻址。D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT08FH8EH8DH8CH8BH8AH89H88HTCON位地址其中TR0、TR1分别为定时计数器0、1的运行控制位,由软件置位或清0来控制定时计数器的开启和关闭。其余各位为定时计数器和外中断请求标志:单片机原理与应用IE0:外中断0中断申请标志若IT0=0,每个机器周期的S5P2采样INT0,若INT0=0则IE0=1;当IT0=1时,第一个机器周期采样到INT0为高电平,第二个机器周期为低电平,则IE0=1。IE0=1表示外中断0正在向CPU申请中断,当CPU响应中断,转向中断服务程序时,由硬件清“0”IE0IT0:外中断0触发方式控制位,可由软件置1或清0IT0=0电平触发,INT0低电平有效
IT0=1边缘触发,INT0输入脚高到低负跳变有效单片机原理与应用IE1:外中断1中断申请标志若IT1=0,每个机器周期的S5P2采样INT1,若INT1=0则IE1=1;当IT1=1时,第一个机器周期
采样到INT1为高电平,第二个机器周期为低电平, 则IE1=1。IE1=1表示外中断1正在向CPU申请中 断,当CPU响应中断,转向中断服务程序时,由硬 件清“0”IE1IT1:外中断1触发方式控制位,可由软件置1或清0IT1=0电平触发,INT1低电平有效
IT1=1边缘触发,INT1输入脚高到低负跳变有效单片机原理与应用TF0:T0溢出中断标志T0被启动计数后,加1计数,溢出后,由硬件使TF0=l,请求中断,此标志保持到CPU响应中断后,由硬件自动清“0”。也可用软件查询该标志,并由软件清“0”。TF1——T1溢出中断标志。
T1被启动计数后,加1计数,溢出后,由硬件使TF1=l,请求中断,此标志保持到CPU响应中断后,由硬件自动清“0”。也可用软件查询该标志,并由软件清“0”。单片机原理与应用(98H)SMODTIRISCON中的中断标志SCON是串行口控制寄存器,其格式和各位含义如下:
SCON99H98H
TI——串行发送中断标志。CPU将一个字节数据写入发送缓冲器SBUF后启动发送,每发送完一个串行帧,硬件置位TI。TI标志由软件清除。
RI——串行接收中断标志。在串行口允许接收时,每接收完一个串行帧,硬件置位RI。RI标志由软件清除。
MCS-51系统复位后,TCON和SCON中各位均被清“0”。单片机原理与应用四、中断允许控制中断允许控制位:EA、ES、ET1、EX1、ET0、EX0
=1开中断;=0关中断。例:允许CPU响应INT0的中断请求
SETBEX0 SETBEA
EA
ESET1EX1ET0EX0IEAFHACHABHAAHA9HA8H(A8H)单片机原理与应用中断允许寄存器IE格式和各位含义如下:EA——CPU中断总允许位。EA=1,CPU开放中断;ES——串行口中断允许位。ES=1,允许串行口中断ET1——
T1中断允许位。ET1=1,允许T1中断。EX1——外部中断l允许位。EX1=1,允许外部中断1中断ET0——T0中断允许位。ET0=l,允许T0中断;EX0——外部中断0允许位。EX0=1,允许外部中断0中断MCS-5l系统复位后,IE中各中断允许位均被清“0”。
单片机原理与应用五、中断优先级中断优先级——设计人员给每个中断源事先安排中断响应的优先顺序。然后按轻重缓急的次序响应。
专用寄存器IP统一管理中断优先级。可实现两级中断嵌套。
PSPT1PX1PX1PX0(B8H)IPBCHBBHBAHB9HB8H单片机原理与应用PS——串行口中断优先级控制位。PT1——T1中断优先级控制位。PX1——外部中断1中断优先级控制位。PT0——T0中断优先级控制位。PX0——外部中断0中断优先级控制位。以上对应位为1,高优先级;为0,低优先级。当系统复位后,IP低5位全部清“0”,将所有中断源设置为低优先级中断。
单片机原理与应用中断优先级控制位:PS、PT1、PX1、PT0、PX0
2级优先级:=1为高优先级,=0为低优先级。同一优先级别按内部查询顺序排列优先级:高INT0、T0、INT1、T1、SIO低。自然优先级由硬件形成,排列次序如下:中断源自然优先级
外部中断0最高级定时器T0中断外部中断1定时器T1中断串行口中断最低级单片机原理与应用单片机原理与应用MCS51对中断的处理原则:不同级中断同时申请时:先高后低处理低级中断又收到高级中断申请时:停低转高处理高级中断又收到低级中断申请时:高不睬低同一级的中断源同时申请时:事先规定MCS-51的中断系统结构单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例单片机原理与应用中止现行程序,保护断点转入中断服务程序入口保护现场中断服务恢复现场中断返回(RETI)中断处理流程图中断响应
中断返回中断处理中断请求
CPU响应中断中断请求一个完整的中断处理的基本过程应该包括:中断请求、中断响应、中断处理以及中断返回。单片机原理与应用一、中断请求
中断请求是中断源(或者通过接口电路)向CPU发出请求中断的信号。一般单片机提供有多条中断请求线,当中断源有服务要求时,可通过中断请求线,向CPU发出信号,请求CPU中断。中断请求信号可以是电平信号,也可以是脉冲信号。应该一直保持到CPU做出反应。
单片机原理与应用二、中断响应中断响应是在满足CPU的中断响应条件之后,CPU对中断源中断请求的回答。1.CPU的中断响应条件
(1)有中断源发出中断申请;(2)中断总允许位EA=1,即CPU允许所有中断源申请中断;(3)申请中断的中断源的中断允许位为1,即此中断源可以向CPU申请中断。
单片机原理与应用有下列任何一种情况存在,中断响应都会受到阻断:(1)
CPU正在执行一个同级或高一级的中断服务程序;(2)当前的机器周期不是正在执行的指令的最后一个周期,即正在执行的指令完成前,任何中断请求都得不到响应;(3)正在执行的指令是返回(RETI)指令或者对专用寄存器IE、IP进行读/写的指令,此时,在执行RETI或者读写IE或IP之后,不会马上响应中断请求。
由于存在中断阻断的情况而未被及时响应,待上述封锁中断的条件被撤消之后,由于中断标志还存在,仍会响应。单片机原理与应用2.中断响应过程单片机响应中断时,先置位相应的优先级状态触发器(该触发器指示CPU开始处理的中断的优先级别,它为1屏蔽所有同级中断),然后执行一条硬件子程序调用,使程序转移到相应的入口:清零中断请求标志(RI、TI除外),由硬件将PC当前值压栈(不保护PSW),将中断服务程序入口地址送PC。单片机原理与应用MCS-51中断入口地址和中断输入引脚是一一对应的,从哪个中断输入引脚进入的中断请求,它的中断服务程序入口地址一定是某个固定值。如从INT0(P3.2)引脚进入的中断请求,转向的中断入口地址是0003H单元。单片机原理与应用三、中断处理中断处理(又称中断服务)程序从入口地址开始执行,直到返回指令“RETI”为止,这个过程称为中断处理。一般包括保护现场和处理中断源的请求及恢复现场三部分内容。一般累加器、PSW寄存器和一些其它寄存器需要保护。单片机原理与应用四、中断返回中断返回是指执行完中断服务程序后,程序返回到断点,继续执行原来的程序。中断返回由专门的中断返回指令“RETI”实现。注意:不能用子程序返回指令“RET”代替中断返回指令“RETI”。单片机原理与应用CPU执行RETI指令后,先清零响应中断时置位的优先级状态触发器,然后从堆栈中弹出两个字节到PC,CPU从原来中断处重新执行被中断的程序。各中断源入口地址间只有几个字节,无法放下中断服务程序,一般在这几个字节中放一条转移指令。单片机原理与应用
五、中断响应时间不同的情况对中断响应的时间不同:(1)最短的响应时间,需要3个机器周期。(2)如果遇到中断受阻的情况,响应时间会更长一些。(3)如果有两个以上中断源同时申请中断,则响应时间将更长。—般情况下,可不考虑响应时间,但在精确定时控制的场合需要考虑此问题。单片机原理与应用六、中断请求的撤除CPU响应某中断请求后,在中断返回前,应撤消该中断请求。(1)定时器0或1溢出中断,CPU在响应中断后,中断请求自动撤除。(2)边沿激活的外部中断,CPU在响应中断后,硬件自动清除有关的中断请求。(3)串行口中断,CPU响应中断后,靠软件来清除相应的标志。电平激活的外部中断撤除方法较复杂。单片机原理与应用下图是撤除电平激活的中断的可行的方案之一用P1.0接在触发器的S端作为应答线,当CPU响应中断后可使用如下两条指令:
ANLP1,#0FEHORLP1,#01H单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例单片机原理与应用一、外部中断的触发方式外部中断源由TCON中的IT0、
IT1位的状态决定其触发方式:ITx=0电平触发,ITx=1边缘触发。1。电平触发此时外中断申请触发器的状态随CPU在每个机器周期采样到的外部中断输入线的电平变化而变化,这样可提高CPU对外部中断的响应速度。这种触发方式,在中断服务程序返回前,外部中断请求必须无效(高电平)。否则CPU返回后会再次响应。单片机原理与应用2。边沿触发这种方式外中断请求触发器能锁存外部中断输入线上的负跳变,即使CPU暂时不响应,中断申请标志也不会丢失。这种方式在两个机器周期里两次采样到由高到低变化则置位中断申请触发器IEx,直到CPU响应才清0。这样不会丢失中断,但输入的负脉冲必须保持12个时钟周期,以保证能被采样到。单片机原理与应用这两种触发方式的中断过程基本一致,唯一不同的是中断请求信号的保持与撤销。边沿触发方式单片机TCON有专门的IEx作为请求标志,当负跳变发生时,IEx自动置1,由IEx申请中断,在响应中断时,又由单片机自动清0IEx;但对电平触发方式,没有专门的请求标志,响应中断后也不能自动清除请求信号,实际使用应注意:请求中断的低电平应保持足够时间低电平时间也不能太长,返回前必须撤销当外部中断源多于中断输入引脚时,可采取以下措施:1.用定时器计数输入信号端T0、T1作外部中断入口引脚2.用串行口接收端RXD作外部中断入口引脚3.用一个中断入口接受多个外部中断源,并加入中断查询电路。单片机原理与应用二、扩展方法单片机原理与应用三、外部中断的响应时间对边沿触发方式检测到负跳变后置IEx,这个新置入的IEx的状态要等下一个机器周期才被查询电路查到,如果中断被激活且满足响应条件,CPU接着执行一条硬件子程序调用指令以转到相应的中断服务程序入口,该调用指令本身需两个机器周期,这样产生外部中断请求到开始执行中断服务程序的第一条指令之间最少需3个完整的机器周期。单片机原理与应用如果中断请求被前面讲的响应条件之一所阻止,则需要更长的时间。如果已经在处理同级或更高级中断,额外的等待时间取决于正在处理的中断服务程序的处理过程;如果正在处理的指令没有执行到最后一个机器周期(最长4个)额外等待时间不会超过3个机器周期;如果正在执行的指令为RETI或访问IE、IP的指令,额外的等待时间不会多于5个机器周期(最多需1个完成正在处理指令加上下一条的最长机器周期)。单一中断的响应时间是3-8个。单片机原理与应用四、处理外部中断举例要求每次按动按键,使外接发光二极管LED改变一次亮灭状态。解:INT0输入按键信号,P1.0输出改变LED状态。1.边沿触发:每次跳变引起一次中断请求。单片机INT0P1.01+5V
ORG 0000H;复位入口 AJMPMAIN ORG 0003H ;中断入口 AJMP PINT0 ORG 0100H ;主程序MAIN:MOVSP,#40H;设栈底
SETB EA ;开总允许开关
SETB EX0 ;开INT0中断
SETB IT0 ;负跳变触发中断H: SJMP H ;执行其它任务
ORG 0200H ;中断服务程序PINT0:CPLP1.0 ;改变LED
RETI ;返回主程序单片机原理与应用2.电平触发:避免一次按键引起多次中断响应。
1.软件等待按键释放。
2.硬件清除中断信号。单片机INT0P1.01+5V
ORG 0000H;复位入口 AJMPMAIN ORG 0003H ;中断入口 AJMP PINT0 ORG 0100H;主程序MAIN:MOVSP,#40H;设栈底
SETB EA ;开总允许开关
SETB EX0 ;开INT0中断
CLR IT0 ;低电平触发中断H: SJMP H ;执行其它任务
ORG 0200H;中断服务程序PINT0:CPLP1.0 ;改变LEDWAIT:JNB P3.2,WAIT;等按键释放
RETI ;返回主程序单片机原理与应用单片机原理与应用第五章中断系统5-1
微机的输入/输出方式5-2
中断的概念5-3
MCS-51中断系统结构及中断控制5-4
MCS-51中断处理过程5-5
MCS-51外部中断的扩展方法5-6
MCS-51中断程序举例单片机原理与应用包含中断控制程序和中断服务程序两部分。一、中断初始化程序中断初始化程序实质上就是对TCON、SCON、IE和IP寄存器的管理和控制。中断初始化程序一般不独立编写,而是包含在主程序中,中断初始化程序需完成以下操作:
1.开中断;
2.某一中断源中断请求的允许与禁止(屏蔽);
3.确定各中断源的优先级别;
4.若是外部中断请求,则要设定触发方式是电平触发还是边沿触发。
单片机原理与应用例5-1假设规定外部中断0为电平触发方式,高优先级,试写出有关的初始化程序。
解:可用两种方法完成。①方法1,用位操作指令完成:SETBEA ;开中断允许总控制位SETBEX0 ;外中断0开中断SETBPX0 ;外中断0高优先级CLRIT0 ;电平触发②方法2,用其它指令也可完成同样功能:MOVIE,#81H ;同时置位EA和EX0ORLIP,#01H ;置位PX0ANLTCON,#0FEH ;使IT0为0单片机原理与应用二、中断服务程序中断服务程序是一种为中断源的特定情况要求服务的独立程序段,以中断返回指令RETI结束。中断服务程序的固定入口:0003H、000BH、0013H、001BH、0023H中断服务程序和子程序一样,在调用和返回时,也有一个保护断点和现场的问题。
在中断响应过程中,断点的保护主要由硬件电路自动实现。单片机原理与应用中断时,现场保护由中断服务程序来完成。因此在编写中断服务程序时必须考虑保护现场的问题。现场一般包括累加器A、工作寄存器R0~R7以及程序状态字PSW等。
在编写中断服务程序时还应注意以下三点:
(1)各中断源入口地址之间只相隔8个字节。
(2)在执行当前中断程序时,如何禁止更高优先级中断源的中断请求。
(3)在多级中断情况下,保护现场与中断嵌套的安排。
单片机原理与应用三、应用举例
在设计中断服务程序时,是按中断源的要求,根据中断处理所要完成的任务来进行的。
保护现场和恢复现场一般采用PUSH和POP指令来实现。PUSH和POP指令一般成对出现,以保证寄存器的内容不会改变。要注意堆栈操作的“先进后出,后进先出”的原则。
单片机原理与应用例5-2设在主程序中用到了寄存器PSW、ACC、B、DPTR,而在执行中断服务程序时需要用到这些寄存器。
SERVICE: PUSH PSW;保护程序状态字
PUSH ACC;保护累加器APUSH B; 保护寄存器BPUSH DPL;保护数据指针低字节PUSH DPH;保护数据指针高字节
┇ ;中断处理POP
DPH;恢复现场POP DPLPOP BPOP ACCPOP PSWRETI单片机原理与应用多个故障源进行显示例5-3图为多个故障
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Continuation Writing 教学设计-2024-2025学年高中英语外研版(2019)必修第一册
- 第三单元第二节《上网查找资料》教学设计 2023-2024学年闽教版初中信息技术七年级上册
- 第二节 从种到界 教学设计-2024-2025学年人教版生物七年级上册
- Unit2 Lesson 3-4 教学设计 2024-2025学年冀教版英语七年级上册
- 2024年合肥包河区人力资源开发有限公司招聘10人笔试参考题库附带答案详解
- 第六章第二节 自然环境 教学设计2023-2024学年人教版地理七年级下册
- 工作分析与评价模拟试题(含答案)
- 人教版一年级数学2单元
- Unit 2 Make a difference 单元教学设计-2023-2024学年高中英语外研版(2019)必修第三册
- 《燕歌行 并序》教学设计 2023-2024学年统编版高中语文选择性必修中册
- 医院培训课件:《黄帝内针临床运用》
- 语文新课标“整本书阅读”深度解读及案例
- 地质队安全培训
- 2024至2030年中国毛绒玩具数据监测研究报告
- 建筑复工复产安全培训
- GB 21258-2024燃煤发电机组单位产品能源消耗限额
- 八年级上学期语文12月月考试卷
- 醛固酮增多症与原发性醛固酮增多症概述
- 广东省2024年普通高中学业水平合格性考试语文仿真模拟卷01(解析版)
- 2025届新高考生物精准复习+提高农作物产量
- 第6课欧洲的思想解放运动教学设计2023-2024学年中职高一下学期高教版(2023)世界历史
评论
0/150
提交评论