MCS-51单片机外中断软件编程

mcs-51单片机外中断软件编程
mcs-51单片机有多个中断源,以8051为例,有5个中断源,两个外中断、两个定时中断和一个串行中断,这一节我们讨论外中断软件编程。
外中断是由外部原因引起的中断,有两个中断源。即外中断0(int0)和外中断1(int1),中断请求信号由引脚p3.2(int0)和p3.3(int1)输入。
外中断请求信号有两种方式,一是电平方式,二是脉冲方式。可通过有关控制位的定义进行规定。
电平方式为低电平有效,只需在单片机的(int0)和(int1)中断请求输入端采样到有效的低电平时,就会激活外部中断。
脉冲方式则在脉冲的后负跳沿有效,即在相邻两个机器周期对中断请求引入端进行采样中,如前一次为高,后一次为低即为有效中断请求。这就要求在这种中断方式,中断请求信号的脉冲宽度必须大于一个机器周期,以保证电平变化能被单片机采样到。
定时器控制寄存器 (tcon)
外中断请求方式的控制位在定时控制寄存器tcon(地址为88h)中的位88(it0)和位8a(it1)两个位,当it0(it1)=0为电平方式,it0(it1)=1为脉冲方式。同时在此寄存器中的位89(ie0)和位8b(ie1)为外中断请求标志位,当cpu采样到int0(int1)端出现有效中断请求时,此位由硬件置1。在中断响应完成后转向中断服务时,再由硬件自动清0。
定时器控制寄存器 (tcon)
位地址 8f 8e 8d 8c 8b 8a 89 88
位符号 tf1 tr1 tf0 tr0 ie1 it1 ie0 it0
中断允许控制寄存器 (ie)
中断允许控制寄存器 (ie)
位地址 af ae ad ac ab aa a9 a8
位符号 ea / / es et1 ex1 et0 ex0
下面我们对有关控制位作说明:
·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,允许串行中断。
中断的允许和禁止就是中断的开放和关闭,中断允许就是开放中断,中断的禁止就是关闭中断。从以上说明我们可看出,mcs-51的中断允许是通过两级控制的,以ea位作为总中断控制位,以各中断控制位为分控制位。当总中断位为禁止状态时,不管分控制位是允许或禁止整个中断都是禁止的。只有当ea=1(允许)时,才能由各分控制位设置各自的中断允许与禁止。mcs-51单片机复位后,ie=00h,因此中断处于禁止状态。
值得一提的是:单片机中断响应后不会自动关闭中断,因此在转入中断服务程序后,应由软件指令禁止中断。
中断优先级控制寄存器 (ip)
mcs-51的中断优先级控制比较简单,只设置了高、低两个级别的有限级,各中断源的优先级别由优先寄存器(ip)进行控制。
中断优先级控制寄存器 (ip)
位地址 bf be bd bc bb ba b9 b8
位符号 / / / ps pt1 px1 pt0 px0
·px0——外中断0(int0)优先级控制位。
·pt0——定时中断0(t0)优先级控制位。
·px1——外中断1(int1)优先级控制位。
·pt1——定时中断1(t1)优先级控制位。
·ps ——串行中断(es)优先级控制位。
控制位=0,优先级为低。控制位=1,优先级为高。
中断优先级是为了中断嵌套服务的,控制原则为:
(1)低优先级中断不能打断高优先级的中断服务,而高优先级的中断服务可以打断低优先级的中断服务。
(2)同级的中断已经响应,其他中断将被禁止。
(3)如果同级的多个中断源同时出现,cpu将按查询次序确定哪个中断被响应,次序为:外中断0→定时中断0→外中断1→定时中断1→串行中断。
中断控制寄存器的状态设置
在应用中,我们可以通过相应的控制寄存器来使用中断系统,因此从使用的角度上看,这些控制寄存器是面向用户的。这些控制寄存器既可以进行字节寻址,也可以进行位寻址,也就是对位状态的寻址既可以使用字节操作指令也可以使用位操作指令,例如:
movie,#81h
如使用位操作指令,也可写为:
setbea
setbex0
对于一般的外中断程序,我们可以这样安排:
org0000h;主程序入口
start:ajmpmain
org0003h;外中断程序入口
ajmpint00
main:movie,#81h;允许总中断和外中断
……;主程序
……
……
int00:……;外中断服务程序
……
reti;中断返回

广州尚能风光互补系统-锂电池篇
新奔腾首款正向开发电动车4月预售
步进电机/伺服电机出现规律性偏位现象的可能性和解决方案
嵌入式处理器软核Nios II你了解了多少
十大直线导轨品牌/十大丝杆品牌/滚珠花键十大品牌
MCS-51单片机外中断软件编程
USB高速/全速转串口系列芯片方案概述
华天科技拟定增募资不超过51亿元
H3C正式加入openEuler社区,推动行业生态繁荣发展
iPhone12能复制上一代的成功吗 传不再附带耳机和充电器
西部数据携手小米打造“焕新”技术,破解智能手机数据存储挑战
微雪电子10.1寸 电容触摸 彩色 LCD 显示模块简介
智能制造和工业互联网的关系是怎样的
您可以构建自己的隔离USB电缆
谷歌和腾讯云正探索在云计算领域进行合作
智能水肥一体化应用于蔬菜种植中可提升其质量和产量
5G在超高清视频业务场景中的应用价值有哪些
谷歌开发者大会2022如约而至:Pixel 6a三款硬件、Android 13重磅发布
怎样下载Xilinx官网的文件
努比亚X双屏手机 自从诞生之起就自带光环