用软件方式灵活设置AT89系列单片机的多中断优先级并实现多级中断嵌套的一种方法
作者:佚名; 更新时间:2014-12-05
摘要:介绍了一种用软方式法灵活设置AT89系列单片机多中断优先级并实现多级中断嵌套的方法,分析了系统的时实性。
关键词:单片机;中断优先级;中断嵌套;设置;时实性
1 引言
ATMEL公司的AT89系列单片机是目前最常用的性优价廉的单片机系列之一,但其中断系统资源却很有限,特别是系统提供的中断优先级更是如此。例如AT89系列标准型单片机一般只有两个中断优先级,从而使其应用受到了限制。因此扩展中断优先级、实现多级中断嵌套便成了人们设计和开发单片机影院系统时常需考虑的问题之一。目前,人们大都是通过增加专门硬件并配合相应编程来解决这一问题的,显然这种方式不利于降低系统成本,使用起来也不够灵活。笔者以AT89系列标准型单片机AT89C51为对象,利用纯软件方式,通过在各中断服务程序的起始部分加入设置指令,在中断返回之前加入对应的恢复指令,成功地实现了中断优先级的多级软件设置。最多可将五个中断源分别设置在五个中断优先级上。五个中断源的优先级由高到低依次为:外部中断INT0、定时器/计数器T0中断、外部中断INT1、定时器/计数器T1中断和串行口中断。这样也就自然实现了多级中断嵌套。
2 中断优先级扩展的原理及方法
2.1 中断控制字的初始化
首先,在主程序中将AT89C51单片机的中断优先级控制寄存器IP的各个位设置为“1”,信捷职称论文写作发表网,即将单片机的五个中断源都置成系统中原有的高中断优先级,这是为某个中断请求被响应后重新设置该中断的优先级所做的准备;然后,将中断允许控制寄存器IE的各个位也都设置为“1”,即将各中断请求设置为允许状态,并使CPU处于开中断状态,以确保符合条件的中断请求能够得到响应。
2.2中断控制字的重置和恢复
在某中断请求被响应后,当前中断的优先级重置和低级中断屏蔽,以及中断返回前的当前中断优先级恢复和低级中断开放是实现多中断优先级灵活设置的关键。中断控制字的重置和恢复方法如下:
(1)按照AT89C51单片机同中断优先级上的中断源内部查询顺序,外部中断INT0具有同中断优先级上最高的中断优先权,所以该中断被响应后不需要进行当前中断优先级重置,中断返回前也不需要进行当前中断优先级恢复。
上一篇:计算机病毒的技术分析及防范
热门论文