intitle 网站建设,wordpress 置顶 函数,文创产品设计图片,服装店网站建设规划书本次先看书学习#xff0c;并完成了课后习题#xff0c;题目出自《单片机原理与接口技术》第五版—李清朝 答: 
#xff08;1#xff09;当 CPU正在处理某件事情的时候#xff0c;外部发生的某一件事件请求 CPU 迅速去处理#xff0c;于是#xff0c;CPU暂时中止当前的工…本次先看书学习并完成了课后习题题目出自《单片机原理与接口技术》第五版—李清朝 答: 
1当 CPU正在处理某件事情的时候外部发生的某一件事件请求 CPU 迅速去处理于是CPU暂时中止当前的工作转去处理所发生的事件中断服务处理完该事件以后再回到原来被终止的地方继续原来的工作这种过程称为中断实现这种功能的部件称为中断系统。 
2功能: 
1.使计算机具有实时处理能力能对外界异步发生的事件作出及时的处理 
2.完全消除了 CPU 在查询方式中的等待现象大大提高了 CPU 的工作效率 
3.实现实时控制 解 
利用位操作指令 
SETB  EX0                                ;把中断允许寄存器IE中的EX0位即外部中断0中断允许位置为1使之允许外部中断0中断 
SETB  EX1                                ;把IE中的EX1位即外部中断1中断允许位置为1使之允许外部中断1中断 
SETB  ET0                                ;把ET0位即定时/计数器中断允许位置为1使其能够允许T0发生中断 
SETB  ES                                  ;把ES位即串行口中断允许位置为1使之能够允许串行口中断 
SETB  EA                                  ;把EA位即中断允许总控制位置为1使CPU开放中断 
;上述5条指令使得INT0、INT1、T0、串行口开放中断由于T1未要求所以此时T1正在关闭中 
SETB  PT0                                ;把IP寄存器中的PT0位置为1使T0中断成为高优先级中断 答分时操作、实时处理、故障处理 答 
1五种分别为外部中断INT0、INT1、定时/计数器T0、T1、串行口中断 
2通过对4个用于中断控制的特殊功能寄存器IE、IP、TCON、SCON中的各位进行置位或者复位等操作实现控制功能 
注两个外部中断都是低电平有效 答: 
1.中断优先级是 CPU 相应中断的先后顺序。 
2.原则: 
(1)先响应优先级高的中断请求再响应优先级低的 
(2)如果一个中断请求已经被响应同级的其它中断请求将被禁止 
(3)如果同级的多个请求同时出现则CPU通过内部硬件查询电路按查询顺序确定应该响应哪个中断请求查询顺序为:外部中断0→定时器0中断→外部中断1→定时器1中断→串行接口中断 答: 
当 CPU执行主程序第K条指令外设向CPU发出中断请求CPU接到中断请求信号并在本条指令执行完后中断主程序的执行并保存断点地址然后转去响应中断。CPU 在每个 S5P2 期间顺序采样每个中断源CPU 在下一个机器周期 S6期间按优先级顺序查询中断标志如果查询到某个中断标志为1将在接下来的机器周期S1期间按优先级进行中断处理中断系统通过硬件自动将相应的中断矢量地址装入PC以便进入相应的中断服务程序。中断服务完毕后CPU返回到主程序第 K1 条指令继续执行。 答 
1有中断源发出中断请求; 2中断总允许位 EA1,即 CPU 开中断; 3申请中断的中断源的中断允许位为1,即中断没有被屏蔽; 4无同级或更高级中断正在被服务; 5当前的指令周期已经结束; 6若现行指令为RETI或者是访问E或IP指令,则该指令以及紧接着的另一条指令已执行完。 答:CPU 在每个机器周期 S5P2 期间顺序采样每个中断源CPU 在下一个机器周期S6期间按优先级顺序查询中断标志如查询到某个中断标志为1,将在接下来的机器周期S1期间按优先级进行中断处理中断系统通过硬件自动将相应的中断矢量地址装入 PC以便进入相应的中断服务程序。一旦响应中断89C51 首先置位相应的中断“优先级生效”触发器然后由硬件执行一条长调用指令把当前的 PC值压入堆栈以保护断点再将相应的中断服务的入口地址送入PC于是CPU 接着从中断服务程序的入口处开始执行。对于有些中断源CPU 在响应中断后会自动清除中断标志。 答: 
编程时应在 0000H 处写一跳转指令(一般为长跳转指令)使 CPU 在执行程序时,从 0000H跳过各中断源的入口地址。主程序一般从 0030H开始主程序后一般是子程序及中断服务程序。在这个大家还要清除各个中断的中断矢量地址。 答: 
作用:对外部异步发生的事件作出及时的处理 
过程:中断请求中断响应中断处理中断返回 答 可响应新的中断请求的情况  新的中断请求优先级更高  允许中断嵌套  不能响应新的中断请求的情况  新的中断请求优先级相同或更低  禁止了嵌套中断  中断被全局禁用  答: 
1.有两种方式:电平触发和边沿触发 
2. 
1电平触发方式:CPU 在每个机器周期的 S5P2期间采样外部中断引脚的输入电平若为低电平使 IE1(IE0)置“1”申请中断;若为高电平则 IE1(IE0)清零。 
2边沿触发方式:CPU在每个机器周期S5P2期间采样外部中断请求引脚的输入电平。如果在相继的两个机器周期采样过程中一个机器周期采样到外部中断请求为高电平接着下一个机器周期采样到外部中断请求为低电平则使 IE1(IEO)置“1”申请中断:否则IE1(IE0)置 0。  解 
1答可以只需要对IP寄存器中的特定位置1或清0即可 
在本题中定时器0、定时器1表现为高优先级所以将他们对应在IP寄存器中的第1和第3位置为1其他位置为0即可满足该置位条件的机器码为0000 1010其16进制码为0AH 
故对应指令为MOV  IP,#0AH 
2答可以在本题中将串行口置为最高优先级其余的都是IP寄存器原来设定的优先级所以只用把第4位置为1即可对应机器码0001 0000其16进制码为10H 
故指令MOV  IP,#10H 
3答不可以理由在8051单片机中优先级最高的就是外中断0其次定时器0中断外中断1、定时器1、串口。但是在本题中优先级外中断0已经是最高优先级假设把定时器1设为次级中断那么需要置为1其优先级将高于外中断0但8051只能设置两个中断优先级所以即使把前两个都置为1后面也无法按照指定顺序进行同样的设置前三个为1那么在本身的硬件系统的外中断1就高于定时器1所以依旧无法实现 
4答可以需要把IP寄存器的第0、2、4位置为1则机器码为0001 0101对应16进制为15H故指令为MOV  IP,#15H 
5答不可以  理由后面三个可以按照顺序进行但是前两个即便设置为高优先级但是由于本身T0优先级就高于串行口所以无法实现 
6答不可以  理由要想实现本题的顺序需要把前4个都设置为1但是设置为1之后同优先级按照硬件中的顺序执行执行的顺序只能是外中断0、定时器0、外中断1、串口、T1无法是题中的顺序 
7答可以后面三个可以按顺序执行需要置为前两个即IP中的第0位和第3位对应机器码为0000 1001对应16进制码为09H故指令为MOV  IP,#09H 答: 
各中断标志的产生和清“0”如下: 
(1)外部中断类 外部中断是由外部原因引起的可以通过两个固定引脚即外部中断0和外部中断1输入信号。 外部中断0请求信号由P3.2脚输入外中断1由P3.3脚输入 
通过 IT0 来决定中断请求信号是低电平有效还是下跳变有效。一旦输入信号有效则向CPU 申请中断并且使 IE01硬件复位。外部中断1请求信号功能与用法类似外部中断0 
(2)定时中断类 定时中断是为满足定时或计数溢出处理需要而设置的。 
当定时器/计数器中的计数结构发生计数溢出的即表明定时时间到或计数值已满这时就以计数溢出信号作为中断请求去置位一个溢出标志位。这种中断请求是在单片机芯片内部发生的无需在芯片上设置引入端但在计数方式时中断源可以由外部引入。 
TFO:定时器 TO 溢出中断请求。当定时器 T0 产生溢出时定时器 TO 请求标志TF01请求中断处理。使用中断时由硬件复位在查询方式下可由软件复位。TF1:定时器 T1溢出中断请求。功能与用法类似定时器 TO 
3)串行口中断类 串行口中断是为串行数据的传送需要而设置的。 
串行中断请求也是在单片机芯片内部发生的但当串行口作为接收端时必须有一完整的串行数据从RI端引入芯片才可能引发中断。 
RI或 TI:串行口中断请求。当接收或发送一串帧数据时使内部串行口中断请求标志 RI 或 TI1并请求中断。响应后必须软件复位。 
CPU 响应中断时中断入口地址如下: 中断源入口地址 
外部中断0                                        0003H 定时器 T0 中断                                000BH 外部中断1                                        0013H 定时器 T1 中断                                001BH 串行口中断                                      0023H 答: 
中断响应时间不是确定不变的。 
理由CPU不是在任何情况下都对中断请求予以响应的,而且不同情况下对中断响应的时间也是不同的。 
现以外部中断为例说明中断响应的最短时间 答:因为一般主程序和中断服务程序都可能会用到累加器PSW寄存器及其他些寄存器。CPU 在进入中断服务程序后用到上述寄存器时就会破坏它原来存在寄存器中的内容一旦中断返回将会造成主程序的混乱。因而在进入中断服务程序后一般要先保护现场然后再执行中断处理程序在返回主程序以前再恢复现场。 保护方法一般是把累加器、PSW寄存器及其他一些与主程序有关的寄存器压入堆栈。在保护现场和恢复现场时为了不使现场受到破坏或者造成混乱一般规定此时 CPU 不响应新的中断请求。这就要求在编写中断服务程序时注意在保护现场之前要关中断在恢复现场之后开中断。如果在中断处理时允许有更高级的中断打断它则在保护现场之后再开中断恢复现场之前关中断。 答: 
在中断响应中CPU要完成以下自主操作过程: 
a)置位相应的优先级状态触发器,以标明所响应中断的优先级别 
b)中断源标志清零(TI、RI除外) c)中断断点地址装入堆栈保护(不保护PSW) d)中断入口地址装入PC以便使程序转到中断入口地址处 
在计算机内部中断表现为 CPU的微查询操作。89C51单片机中CPU在每个机器周期的 S6 状态查询中断源并按优先级管理规则处理同时请求的中断源且在下一个机器周期的 S1状态中响应最高级中断请求。 但是以下情况除外: 
a)CPU正在处理相同或更高优先级中断 
b)多机器周期指令中还未执行到最后一个机器周期 
c)正在执行中断系统的 SFR 操作如 RETI 指令及访问 IE、IP 等操作时要延后一条指令 答:在中断请求有效并开中断状况下并不能保证立即响应中断。这是因为在计算机内部中断表现为 CPU的微查询操作。89C51单片机中CPU 在每个机器周期的 S6 状态下查询中断源并按优先级管理规则处理同时请求的中断源且在下一个机器周期的 S1 状态中响应最高级中请求。 在以下情况下还需要有另外的等待: a)CPU正在处理相同或更高优先级中断 
b)多机器周期指令中还未执行到最后一个机器周期 
c)正在执行中断系统的 SFR 操作如 RETI 指令及访问 IE、IP 等操作时要延后 一条指令 答堆栈是一个特殊的存储区主要功能是暂时存放数据和地址通常用来保护断点和现场堆栈指针SP复位后指向07H单元00H-1FH为工作寄存器区20H-2FH为位寻址区这些单元有其他功能因此在程序设计时需要对SP重新赋值。 答 
外部中断的两种中断触发方式包括电平触发方式和跳沿触发方式。这两种方式的主要区别在于它们对外部中断输入信号的响应方式。 
电平触发方式在电平触发方式中外部中断申请触发器的状态随着CPU在每个机器周期采样到的外部中断输入线的电平变化而变化。也就是说只要外部中断输入线保持在一个特定的电平状态通常是低电平中断就会持续被触发。这种方式适合于外部中断以低电平输入而且中断服务程序能清除外部中断请求源的情况。跳沿触发方式在跳沿触发方式中外部中断申请触发器能锁存外部中断输入线上的负跳变。即使CPU暂时不能响应中断申请标志也不会丢失。这种方式对于外部中断输入信号是边沿变化如上升沿或下降沿的情况非常有效。 
在实际应用中大多采用边沿触发方式的原因主要是因为其抗干扰能力强、可靠性高、适应性强。