MCS-51单片机多个中断源中的外中断分析方案

发布者:Quail最新更新时间:2012-07-02 来源: 61ic关键字:MCS-51单片机  中断源  外中断 手机看文章 扫描二维码
随时随地手机看文章

MCS-51单片机有多个中断源,以8051为例,有5个中断源,两个外中断、两个定时中断和一个串行中断,这一节我们讨论lcd液晶屏图外中断软件编程。

外中断是由外部原因引起的中断,有两个中断源。即外中断0(INT0)和外中断1(INT1),中断请求信号由引脚P3.2(INT0)和P3.3(INT1)输入。

外中断请求信号有两种方式,一是电平方式,二是脉冲方式。可通过有关控制位的定义进行规定。

电平方式为低电平有效,只需在单片机的(INT0)和(INT1)中断请求输入端采样到有效的低电平时,就会激活外部中断。

脉冲方式则在脉冲的后负跳沿有效,即在相邻两个机器周期对中断请求引入端进行采样中,如前一次为高,后一次为低即为有效中断请求。这就要求在这种中断方式,中断请求信号的脉冲宽度必须大于一个机器周期,以保证电平变化能被单片机采样到。

定时器控制寄存器 (TCON)

外中断请求方式的控制位在lcd液晶屏图定时控制寄存器TCON(地址为88H)中的位88(IT0)和位8A(IT1)两个位,当IT0(IT1)=0为电平方式,IT0(IT1)=1为脉冲方式。同时在此寄存器中的位89(IE0)和位8B(IE1)为外中断请求标志位,当CPU采样到INT0(INT1)端出现有效中断请求时,此位由硬件置1。在中断响应完成后转向中断服务时,再由硬件自动清0。

中断允许控制寄存器 (IE)

下面我们对有关控制位作说明:

·EA——中断允许总控制位,EA=0,中断总禁止,禁止所有中断。EA=1,中断总允许,总允许位打开后,各中断的允许或禁止由各中断允许控制位设置决定。

·EX0(EX1)——外部中断允许控制位,EX0(EX1)=0,禁止外部中断。EX0(EX1)=1,允许外部中断。

·ET0(ET1)——定时/计数中断允许控制位,ET0(ET1)=0,禁止定时/计数中断。ET0(ET1)=1,允许定时/计数中断。

·ES——串行中断允许控制位,ES=0,禁止串行中断。ES=1,允许串行中断。

中断的允许和禁止就是中断的开放和关闭,lcd液晶屏图中断允许就是开放中断,中断的禁止就是关闭中断。从以上说明我们可看出,MCS-51的中断允许是通过两级控制的,以EA位作为总中断控制位,以各中断控制位为分控制位。当总中断位为禁止状态时,不管分控制位是允许或禁止整个中断都是禁止的。只有当EA=1(允许)时,才能由各分控制位设置各自的中断允许与禁止。MCS-51单片机复位后,IE=00H,因此中断处于禁止状态。

值得一提的是:单片机中断响应后不会自动关闭中断,因此在转入中断服务程序后,应由软件指令禁止中断。

中断优先级控制寄存器 (IP)

MCS-51的中断优先级控制比较简单,只设置了高、低两个级别的有限级,各中断源的优先级别由优先寄存器(IP)进行控制。

·PX0——外中断0(INT0)优先级控制位。

·PT0——定时中断0(T0)优先级控制位。

·PX1——外中断1(INT1)优先级控制位。

·PT1——定时中断1(T1)优先级控制位。

·PS ——串行中断(ES)优先级控制位。

控制位=0,优先级为低。控制位=1,优先级为高。[page]

中断优先级是为了中断嵌套服务的,控制原则为:

(1) 低优先级中断不能打断高优先级的中断服务,而高优先级的中断服务可以打断低优先级的中断服务。

(2) 同级的中断已经响应,其他中断将被禁止。

(3) 如果同级的多个中断源同时出现,CPU将按查询次序确定哪个中断被响应,次序为:外中断0→定时中断0→外中断1→定时中断1→串行中断。

中断控制寄存器的状态设置

在应用中,我们可以通过相应的控制寄存器来使用中断系统,因此从使用的角度上看,这些控制寄存器是面向用户的。这些控制寄存器既可以进行字节寻址,也可以进行lcd液晶屏图位寻址,也就是对位状态的寻址既可以使用字节操作指令也可以使用位操作指令,例如:

MOV IE,#81H

如使用位操作指令,也可写为:

SETB EA

SETB EX0

对于一般的外中断程序,我们可以这样安排:

ORG 0000H ;主程序入口

START: AJMP MAIN

ORG 0003H ;外中断程序入口

AJMP INT00

MAIN: MOV IE,#81H ;允许lcd液晶屏图总中断和外中断

…… ;主程序

……

……

INT00: …… ;外中断服务程序

……

RETI ;中断返回

 

关键字:MCS-51单片机  中断源  外中断 引用地址:MCS-51单片机多个中断源中的外中断分析方案

上一篇:用单片机制作一个数字电压表
下一篇:单片机和MODEM接口及利用AT命令来控制MODEM方案

推荐阅读最新更新时间:2024-03-16 13:02

汇编入门学习笔记 (十三)—— 中断
疯狂的暑假学习之 汇编入门学习笔记 (十三) 外中断 参考: 《汇编语言》 王爽 第15章 1.外中断信息 外中断分为可屏蔽中断和不可屏蔽中断 可屏蔽中断 先看看内中断所引发的中断过程: (1)取中断类型吗n。 (2)标志寄存器入栈,设置IF=0,TF=0. (3)CS、IP入栈 (4)(IP)=(n*4),(CS)=(n*4+2) 可屏蔽中断的中断过程于内中断所引发的中断过程不同的地方只是,第一步不同。可屏蔽中断的中断过程,CPU要先看IF的值,如果IF=0就不执行中断,如果IF=1执行中断。 不可屏蔽中断 不可屏蔽中断是CPU必须相应的中断。不可屏蔽
[单片机]
MCS-51单片机的算术运算指令解析
MCS-51具有强大的加、减、乘、除四则算术运算指令。 1.程序状态字PSW MCS-51有一个程序状态字寄存器PSW,用来保存指令执行结果的标志,供程序查讯和判别。PSW是特殊功能寄存器中的一个,其格式如下: PSW7--既是布尔处理机的累加器C,又是进位标志CY,如果操作结果在最高位有进位输出(加法时)或借位输入(减法时),置位CY,否则清“0”CY。 AC--辅助进位(半进位)标志。如果操作结果的低4位有进位(加法时)或向高4位借位时(减法),置AC,否则清“0”AC,AC主要用于二-十进制数加法调整。 OV--溢出标志。如果操作结果有进位进入最高位,但最高位没有产生进位,或者最高位产生进位而低位没有向最高位进位,这时置位溢
[单片机]
以最快的时间最好的方法学好单片机
作为一电子爱好者,如你不懂单片机的话,不管你是搞维修的,还是搞开发的,在现在以及将来最起码你不算一位合格的电子爱好者.我是99年6月开始学的单片机,算是还可以吧(自我感觉良好)! 要想学好单片机必须对它有兴趣,这是必然的!也是最重要的!在这基础上你从一个不知单片机是个什么东东到自己能做一些单片机的东东----三个月用你的业余时间搞定,要知道到那时你是个镀了金的 电子爱好者 (学校刚学完的本科生不过如此),那样的兴奋啊...!呵呵! 想学单片机从MCS-51开始,那是公认的,不必研究了.但单片机是一个很系统的学科,我们作为自学的,不可能象学校那样很系统的学,那样的话可能要倍上它三五年了.那么怎么才能在三个月而且是业余的时间
[单片机]
MCS-51单片机指令系统概述 1
MCS-51共有111条指令,可分为5类: . 数据传送类指令(共29条) . 算数运算类指令(共24条) . 逻辑运算及移位类指令(共24条) . 控制转移类指令(共17条) . 布尔变量操作类指令(共17条) 一些特殊符号的意义 在介绍指令系统前,我们先了解一些特殊符号的意义,这对今后程序的编写都是相当有用的。 电子元件邮购网 Rn 当前选中的寄存器区的8个工作寄存器R0 R7(n=0-7)。 Ri 当前选中的寄存器区中可作为地址寄存器的两个寄存器R0和R1(i=0,1) direct 内部数据存储单元的8位地址。包含0 127(
[单片机]
MCS-51单片机的输入/输出口的P0并行扩展方法
在 单片机 家族的众多成员中,MCS-51系列单片机以其优越的性能、成熟的技术、高可靠性和高性价比,占领了工业测控和自动化工程应用的主要市场,并成为国内单片机应用领域中的主流机型。 MCS-51单片机的并行口有P0、P1、P2和P3,由于P0口是地址/数据总线口,P2口是高8位地址线,P3口具有第二功能,这样,真正可以作为双向I/O口应用的就只有P1口了。这在大多数应用中是不够的,因此,大部分MCS-51单片机应用系统设计都不可避免的需要对P0口进行扩展。 由于MCS-51单片机的外部RAM和I/O口是统一编址的,因此,可以把单片机外部64K字节RAM空间的一部分作为扩展外围I/O口的地址空间。这样,单片机就可以像
[单片机]
<font color='red'>MCS-51</font><font color='red'>单片机</font>的输入/输出口的P0并行扩展方法
单片机中断系统的设计
在AT89S52单片机中,只有两个外部中断请求输入端INT0和INT1。而实际应用系统中往往会出现两个以上的外部中断源,因此必须对外中断源进行扩展。其方法主要有:用定时器/计数器T0、T1扩展;采用中断和查询相结合的方法扩展;用串行口的中断扩展;用优先权编码器扩展等方法。这里重点介绍前两种方法。 一、用定时器/计数器作为中断源 AT89S52单片机的两个定时器/计数器T0、T1可工作在计数方式,计数初值一般设定为满量程(即定时器的最大技术值),则它们的计数输入端P3.4或P3.5引脚上发生负跳变时,T0或T1计数器就加l,产生溢出中断。利用此特性,可以把P3.4、P3.5作为外部中断请求输入线,而计数器的溢出中断作为外部中断请求
[单片机]
<font color='red'>单片机</font><font color='red'>中断</font><font color='red'>源</font>系统的设计
PIC系列单片机MCS-51系列单片机的区别
应该说有三个主要特点: (1)总线结构:MCS-51的总线结构是冯-诺依曼型 计算机在同一个存储空间取指令和数据 两者不能同时进行;而PIC的总线结构是哈佛结构 指令和数据空间是完全分开的 一个用于指令 一个用于数据 由于可以对程序和数据同时进行访问 所以提高了数据吞吐率。正因为在PIC系列单片机中采用了哈佛双总线结构,所以与常见的微控制器不同的一点是:程序和数据总线可以采用不同的宽度。数据总线都是8位的,但指令总线位数分别位12、14、16位。 (2)流水线结构:MCS-51的取指和执行采用单指令流水线结构 即取一条指令 执行完后再取下一条指令;而PIC的取指和执行采用双指令流水线结构 当一条指令被执行时 允许下一条指令同时
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved