文档介绍:习题参考答案()
、中断源和中断优先级?
(见P173,174,175)
dae_meng
答:(见p176)
2个
dae_meng
习题参考答案()
习题3. 8051中断的中断响应条件是什么?
答:
1、中断寄存器IE中的EA和相应的中断使能位激活;
2、CPU没有在处理同级或者更高级的中断;
3、现行执行周期是所执行指令的最后一个周期;
4、当前指令不是RETI或者是访问IE或IP的指令。
dae_meng
4. 8051的中断响应过程是怎样的?
答:CPU响应中断后,由硬件自动执行如下的功能操作:
(1) 根据中断请求源的优先级高低,对相应的优先级状态触发器置1。
(2) 保护断点,即把程序计数器PC的内容压入堆栈保存。
(3) 清内部硬件可清除的中断请求标志位(IE0、IE1、TF0、TF1)。
(4) 把被响应的中断服务程序入口地址送入PC,从而转入相应的中断服务程序执行。各中断服务程序的入口地址见表。
BTW:5个中断源及入口地址表
dae_meng
BTW:5个中断源及入口地址表
编号
中断源
入口地址
0
外部中断0
0003H
1
定时器/计数器0
000BH
2
外部中断1
0013H
3
定时器/计数器1
001BH
4
串行口中断
0023H
dae_meng
习题5. 若8051的外部中断0为边沿触发方式,简述IE0标志的检测和置位过程。
答:
8051的CPU在每个机器周期采样引脚INT0上的电平,当前一个周期采样为高,而这个周期采样为低,即置位中断标志IE0。同时8051的CPU在每个机器周期还采样中断标志IE0,如果中断标志IE0被置位,中断被激活,且没有中断阻止条件,则CPU自动转向中断0的入口地址0x0003进入中断服务程序。
dae_meng
习题6. 8051的中断系统如何实现两级中断嵌套?
答:
可以利用寄存器IP通过设置不同中断的优先级,或者利用中断的自然优先级实现两级中断嵌套。当单片机处理一个中断的时候,可以再去响应高优先级的中断,或者自然优先级较高的中断。但不能去响应同级或者更低的中断。
(P176)
dae_meng
习题9. 8051中断程序如何进行现场保护?何为上下文切换?
答:
中断通过把保存有现场数据的寄存器压入堆栈进行现场保护。
当一个特定任务正在执行时,可能有更紧急的事需要引起CPU的注意。在一个具有优先级的系统中,CPU不是等待第一个任务完成,而是假定前一个任务已经完成,立即处理新的任务。若程序流程立刻转向新任务,则新任务使用的各个寄存器将会破坏第一个任务使用的中间信息。但第一个任务恢复运行时,寄存器的值将不再可靠而导致错误的发生。解决问题的方法是每次发生任务的切换时执行一些指令进行现场保护和现场恢复,这就是上下文切换。p179
dae_meng
10. 8051定时器方式和计数器方式的区别是什么?
基本的8051有2个可编程的16位定时器/计数器(各工作方式只是用到哪些位?)。
计数器内部晶振驱动-------定时器;
计数8051的输入引脚的脉冲信号----计数器。
定时器实际上也是工作在计数方式下的。
dae_meng
解. ,要求定时间隔为10ms,每次时间到时,。
定时器计数频率为fosc/12=500kHz
其周期即单片机的机器周期为12/fosc=2us
计数周期10ms需要计数10ms/2us=5000次
计数器向上计数需要的初值为65536-5000
习题14. 设fosc=6MHz,。定时器溢出时采用中断方式处理。(;;)
dae_meng