首页 资讯 应用 高压 设计 行业 低压 电路图 关于

单片机

旗下栏目: PLC 嵌入式 单片机 DCS

8051单片机工作原理

单片机 | 发布时间:2018-07-07 | 人气: | #评论# | 本文关键字:8051,单片机,工作原理,51单片机
摘要:8031、8751AH和89C51,提供了5个中断源:即2个外部中断、两个计时器中断和串列口中断。 8052AH则除了以上5个中断外另增加了第六个中断:那就是第三个计时器/计数器。底下仅将中断结构作一概略

8031、8751AH和89C51,提供了5个中断源:即2个外部中断、两个计时器中断和串列口中断。 8052AH则除了以上5个中断外另增加了第六个中断:那就是第三个计时器/计数器。底下仅将中断结构作一概略性的介绍。

 中断允许暂存器(INTERRUPT ENABLES)

EA

-

ET2

ES

ET1

EX1

ET0

EX0

EA

IE.7

如果EA=0,禁止所有的中断,EA=1时,各中断是否作用,由各允许位决定

-

IE.6

不能使用

ET2

IE.5

允许Timer2溢位或补入中断(8052)

ES

IE.4

允许串行I/O

ET1

IE.3

允许Timer1

EX1

IE.2

允许INT1

ET0

IE.1

允许Timer0

EX0

IE.0

允许INT0

透过设定或清除在SFR里名为IE(Interrupt Enable)暂存器里的位元,每个中断源都可以被各别的(Enable)或禁止(DISABLE)。这个暂存器(IE)也包含有一个整体禁止位元,它可以被清除,以禁止所有的中断。

中断优先权(Interrupt Priority)


-

PT2

PS

PT1

PX1

PT0

PX0 


IE.7

不能使用

-

IE.6

不能使用

PT2

IE.5

定义Timer2优先权(8052)

PS

IE.4

定义串行I/O优先权

PT1

IE.3

定义Timer1优先权

PX1

IE.2

定义INT1优先权

PT0

IE.1

定义Timer0优先权

PX0

IE.0

定义INT0优先权

每个中断源可透过设定或清除SFR内名为IP(Interrupt Priority)的暂存器内的某些位元,可个别的将它们规划到两层优先权的一层里,较低优先权的中断可以被较高优先权的中断所中断,但并不能被另一个低优先权中断。而高优先权中断就不能被其它中断源中断。如果有两个不同优先权层次的中断同时到达时,则较高优先权的中断要求先被服务。如果相同优先层次的中断同时到达时,则可以用内部的轮询(polling)顺序决定那一个要求先被服务,因此在每个优先层次里有一个次优先权结构由轮询顺序来决定。

IE和IP暂存器及轮询顺序如何动作?

以决定任何中断发生时那一个会被优先服务。中断工作会在每个机械周期的状态5(S5)时,所有的中断旗号都被锁入中断控制系统中,这个取样信号会在下一个机械周期时被加以检查,如果有允许的中断,它的旗号被发现设定"1",此时中断系统就产生一个LCALL至程序记忆体的对应位址。但有某些情况会禁止中断的产生,即相同或较高优先权的中断正在执行时。

硬体所产生的LCALL动作会使得目前的程序计数器值被推入(push)堆叠区,然后将服务程序的起始位址载入PC。如前面所述每个中断服务程序都有一固定的起始位址。中断发生时仅有程序计数器(PC)被推入堆叠区,而PSW或任何一个暂存器都没有放入堆叠区。仅PC被推入堆叠区保存起来,这使得写程序的人可以自己决定要花多少时间去保存其它的暂存器,虽然这会增加程序的负担,但这样,可增快中断响应时间。在许多的中断功能里,例如控制应用时,只要将口里的接脚反相、或重新载入计时器、或读入或写资料至列口缓冲区时,这种作法通常可以比其它的CPU还短的时间完成中断服务的工作。

责任编辑:51单片机

热门文章

首页 | 电气资讯 | 应用技术 | 高压电器 | 电气设计 | 行业应用 | 低压电器 | 电路图 | 关于我们 | 版权声明

Copyright 2017-2018 电气自动化网 版权所有 辽ICP备17010593号-1

电脑版 | 移动版 原创声明:本站大部分内容为原创,转载请注明电气自动化网转载;部分内容来源网络,如侵犯您的权益请发送邮件到[email protected]联系我们删除。