51单片机在片设备与中断(3)
1、当CPU正在处理某项事务的时候,如果外界或内部发生了更紧急的事件,要求CPU暂停正在处理的工作转而去处理这个紧急事件,待处理完以后再回到原来被中断的地方,继续执行原来被中断了的程序,这样的过程称为中断。
2、基本51单片机的中断系统有5个中断源,可任意分为2个中断优先级(高优先级和低优先级),可实现2级中断服务程序嵌套。
3、如果总的中断允许开放(即EA=1)则CPU在每个机器周期的S5P2时刻采样中断标志,并在下一个机器周期对采样到的中断进行查询。如果前一个机器周期的S5P2有中断标志,则在查询周期内便会查询到,并按优先级高低进行中断处理,如果响应中断,中断系统将控制程序转入相应的中断服务子程序。CPU中断响应是有条件的,并不是查询到的所有中断请求都能被立即响应,当遇到下列三种情况之一时,中断响应被封锁:
4、TF0和TF1分别为定时/计数器0和定时/计数器1的中断请求标志位,在已经开放T0/T1中断允许且已被启动的前提下,T0/T1加1计满溢出时 TF0/TF1标志位自动置“1”;CPU 检测到TCON中TF0/TF1变“1”后,将自动保存当前PC值到堆栈,并将相应中断服务程序入口地址000BH/001BH赋值给PC,从而在下一条指令开始执行中断服务;TF0/TF1标志位由硬件自动清“0”,以便进行下次中断申请。
5、IE0和IE1分别为外部中断0和外部中断1中断申请标志位。以外部中断0为例,当IT0为0即选择电平触发方式时,每个机器周期的S5P2采样-INT0,若-INT0为低电平,则IE0置“ 1”,否则IE0清“0”;当IT0为1即选择边沿触发方式时,当前一个机器周期采样到-INT0输入为高,而本机器周期采样到该引脚为低电平时,则置“1”IE0;IE0/IE1为1表示外部中断0/1正在向CPU申请中断。当CPU响应中断,转向中断服务子程序(入口地址0003H/0013H)时,由硬件自动清“0”IE0/IE1。
51单片机在片设备中 相关文章:
- 51单片机在片设备与中断(1)(11-26)
- 51单片机在片设备与中断(2)(11-26)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)