收藏 分销(赏)

单片机习题课.doc

上传人:pc****0 文档编号:8728172 上传时间:2025-02-27 格式:DOC 页数:7 大小:51.50KB 下载积分:10 金币
下载 相关 举报
单片机习题课.doc_第1页
第1页 / 共7页
单片机习题课.doc_第2页
第2页 / 共7页


点击查看更多>>
资源描述
单片机习题课 一、 填空 1.MCS—51单片机的P0—P4口均是 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的 和 ,在P0—P4口中, 为真正的双向口, 为准双向口。 2.MCS—5l单片机的堆栈区只可设置在 ,堆栈寄存器SP是 位寄存器。 3.MCS—51单片机外部中断请求信号有电平方式和 ,在电平方式下,当采集到INT0、INT1的有效信号为 时,激活外部中断。 4.MCS—96单片机的最大寻址空间是 ,该空间的地址范围为 ,系统上电及复位的程序入口地址为 。 5.在中断服务程序中现场保护和现场恢复期间,中断系统应处在____状态。 6.下列程序段执行后,(R0)=_______,(7EH)=____,(7FH)=_______。 MOV R0,#7EH MOV 7EH,#0FFH MOV 7FH,#40H 1NC @R0 1NC R0 1NC @R0 二、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共10分) 1. 8031单片机的( )口的引脚,还具有外中断、串行通信等第二功能。 a)P0  b)P1 c)P2  d)P3 2.单片机应用程序一般存放在(     )      a) RAM           b)ROM          c)寄存器           d)CPU   3. MOVX A , @R0指令中,源操作数采用( )寻址方式,指令作用在( )区间。 (A)寄存器,外部数据存储器 (B)直接,程序存储器 (C)寄存器间接 ,内部数据存储器 (D)寄存器间接,外部数据存储器 4.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持( )。 A.1个机器周期 B.2个机器周期 C.4个机器周期 D.10个晶振周期 5.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应( )。 A.外部中断0 B.外部中断1 C.定时器0中断 D.定时器1中断 6. MCS-51单片机的外部中断1的中断请求标志是( )。 A.ET1 B.TF1 C.IT1 D.IE1 三、简答题 1. 简述89C51片内RAM的空间分配。 2. 89C51单片机的EA信号有何功能?在使用8031时,EA信号引脚应如何处理? 3、如何访问片内RAM,可使用那些寻址方式?如何访问片外RAM,可使用那些寻址方式? 4、试述中断的作用及中断的全过程。 5、当正在执行某一个中断源的中断服务程序时,如果有新的中断请求出现,试问在什么情况下可响应新的中断请求? 6、89C51单片机外部中断源有几种触发中断请求的方法?如何实现中断请求? 1. 简述89C51片内RAM的空间分配。 答:片内RAM有256B 低128B是真正的RAM区 高128B是SFR(特殊功能寄存器)区 2. 89C51单片机的EA信号有何功能?在使用8031时,EA信号引脚应如何处理? 答:(1)80C51单片机的EA信号的功能 EA为片外程序存储器访问允许信号,低电平有效;在编程时,其上施加21V的编程电压 EA引脚接高电平时,程序从片内程序存储器开始执行,即访问片内存储器;EA引脚接低电平时,迫使系统全部执行片外程序存储器程序。 (2)在使用80C31时,EA信号引脚的处理方法 因为80C31没有片内的程序存储器,所以在使用它时必定要有外部的程序存储器,EA 信号引脚应接低电平。 3、如何访问片内RAM,可使用那些寻址方式?如何访问片外RAM,可使用那些寻址方式? 答:片内RAM低128字节:使用直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7); 高128字节:直接寻址,位寻址,寄存器寻址 访问片外RAM:只能采用寄存器间接寻址(用MOVX指令) 4、试述中断的作用及中断的全过程。 答:作用:对外部异步发生的事件作出及时的处理 过程:中断请求,中断响应,中断处理,中断返回 5、当正在执行某一个中断源的中断服务程序时,如果有新的中断请求出现,试问在什么情况下可响应新的中断请求? 答: 符合以下6个条件可响应新的中断请求: a)有中断源发出中断请求 b)中断允许位EA=1,即CPU开中断 c)申请中断的中断源的中断允许位为1,即中断没有被屏蔽 d)无同级或更高级中断正在被服务 e)当前的指令周期已结束 f)若现行指令为RETI或访问IE或IP指令时,该指令以及紧接着的另一条指令已被执行完 6、89C51单片机外部中断源有几种触发中断请求的方法?如何实现中断请求? 答:有两种方式:电平触发和边沿触发 电平触发方式:CPU在每个机器周期的S5P2期间采样外部中断引脚的输入电平。若为低电平,使IE1(IE0)置“1”,申请中断;若为高电平,则IE1(IE0)清零。 边沿触发方式:CPU在每个机器周期S5P2期间采样外部中断请求引脚的输入电平。如果在相继的两个机器周期采样过程中,一个机器周期采样到外部中断请求为高电平,接着下一个机器周期采样到外部中断请求为低电平,则使IE1(IE0)置“1”申请中断;否则,IE1(IE0)置0。 7、89C51单片机有五个中断源,但只能设置两个中断优先级,因此,在中断优先级安排上受到一定的限制。试问以下几种中断优先顺序的安排(级别由高到低)是否可能:若可能,则应如何设置中断源的中断级别:否则,请简述不可能的理由。 ⑴ 定时器0,定时器1,外中断0,外中断1,串行口中断。 可以,MOV IP,#0AH ⑵ 串行口中断,外中断0,定时器0,外中断1,定时器1。 可以,MOV IP,#10H ⑶ 外中断0,定时器1,外中断1,定时器0,串行口中断。 不可以,只能设置一级高级优先级,如果将INT0,T1设置为高级,而T0级别 高于INT1. ⑷ 外中断0,外中断1,串行口中断, 定时器0,定时器1 。 可以,MOV IP,#15H ⑸ 串行口中断,定时器0,外中断0,外中断1,定时器1。 不可以 ⑹ 外中断0,外中断1,定时器0,串行口中断,定时器1 。 不可以 ⑺ 外中断0,定时器1,定时器0,外中断1,串行口中断。 可以,MOV IP,#09H 8、 89C51各中断源的中断标志是如何产生的?又是如何清0的?CPU响应中断时,中断入口地址各是多少? 答:各中断标志的产生和清“0”如下: (1)   外部中断类 外部中断是由外部原因引起的,可以通过两个固定引脚,即外部中断0和外部中断1输入信号。 外部中断0请求信号,由P3.2脚输入。通过IT0来决定中断请求信号是低电平有效还是下跳变有效。一旦输入信号有效,则向CPU申请中断,并且使IE0=1。硬件复位。 外部中断1请求信号,功能与用法类似外部中断0 (2)   定时中断类 定时中断是为满足定时或计数溢出处理需要而设置的。当定时器/计数器中的计数结构发生计数溢出的,即表明定时时间到或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志位。这种中断请求是在单片机芯片内部发生的,无需在芯片上设置引入端,但在计数方式时,中断源可以由外部引入。 TF0:定时器T0溢出中断请求。当定时器T0产生溢出时,定时器T0请求标志TF0=1,请求中断处理。使用中断时由硬件复位,在查询方式下可由软件复位。 TF1:定时器T1溢出中断请求。功能与用法类似定时器T0 (3)   串行口中断类 串行口中断是为串行数据的传送需要而设置的。串行中断请求也是在单片机芯片内部发生的,但当串行口作为接收端时,必须有一完整的串行帧数据从RI端引入芯片,才可能引发中断。 RI或TI:串行口中断请求。当接收或发送一串帧数据时,使内部串行口中断请求标志RI或TI=1,并请求中断。响应后必须软件复位。 CPU响应中断时,中断入口地址如下: 中断源 入口地址 外部中断0 0003H 定时器T0中断 000BH 外部中断1 0013H 定时器T1中断 001BH 串行口中断 0023H 9、中断响应时间是否为确定不变的?为什么? 答:中断响应时间不是确定不变的。由于CPU不是在任何情况下对中断请求都予以响应的;此外,不同的情况对中断响应的时间也是不同的。下面以外部中断为例,说明中断响应的时间。 在每个机器周期的S5P2期间, 端的电平被所存到TCON的IE0位,CPU在下一个机器周期才会查询这些值。这时满足中断响应条件,下一条要执行的指令将是一条硬件长调用指令“LCALL”,使程序转入中断矢量入口。调用本身要用2个机器周期,这样,从外部中断请求有效到开始执行中断服务程序的第一条指令,至少需要3个机器周期,这是最短的响应时间。 如果遇到中断受阻的情况,这中断响应时间会更长一些。例如,当一个同级或更高级的中断服务程序正在进行,则附加的等待时间取决于正在进行的中断服务程序:如果正在执行的一条指令还没有进行到最后一个机器周期,附加的等待时间为1~3个机器周期;如果正在执行的是RETI指令或者访问IE或IP的指令,则附加的等待时间在5个机器周期内。 若系统中只有一个中断源,则响应时间为3~8个机器周期。 10、中断响应过程中,为什么通常要保护现场?如何保护? 答:因为一般主程序和中断服务程序都可能会用到累加器,PSW寄存器及其他一些寄存器。CPU在进入中断服务程序后,用到上述寄存器时,就会破坏它原来存在寄存器中的内容;一旦中断返回,将会造成主程序的混乱。因而在进入中断服务程序后,一般要先保护现场,然后再执行中断处理程序,在返回主程序以前再恢复现场。 保护方法一般是把累加器、PSW寄存器及其他一些与主程序有关的寄存器压入堆栈。在保护现场和恢复现场时,为了不使现场受到破坏或者造成混乱,一般规定此时CPU不响应新的中断请求。这就要求在编写中断服务程序时,注意在保护现场之前要关中断,在恢复现场之后开中断。如果在中断处理时允许有更高级的中断打断它,则在保护现场之后再开中断,恢复现场之前关中断。 11、请叙述中断响应的CPU操作过程,为什么说中断操作是一个CPU的微查询过程? 答:在中断响应中,CPU要完成以下自主操作过程: a) 置位相应的优先级状态触发器,以标明所响应中断的优先级别 b) 中断源标志清零(TI、RI除外) c) 中断断点地址装入堆栈保护(不保护PSW) d) 中断入口地址装入PC,以便使程序转到中断入口地址处 在计算机内部,中断表现为CPU的微查询操作。89C51单片机中,CPU在每个机器周期的S6状态,查询中断源,并按优先级管理规则处理同时请求的中断源,且在下一个机器周期的S1状态中,响应最高级中断请求。 但是以下情况除外: a) CPU正在处理相同或更高优先级中断 b)多机器周期指令中,还未执行到最后一个机器周期 c) 正在执行中断系统的SFR操作,如RETI指令及访问IE、IP等操作时,要延后一条指令 12、在中断请求有效并开中断状况下,能否保证立即响应中断?有什么条件? 答:在中断请求有效并开中断状况下,并不能保证立即响应中断。这是因为,在计算机内部,中断表现为CPU的微查询操作。89C51单片机中,CPU在每个机器周期的S6状态下,查询中断源,并按优先级管理规则处理同时请求的中断源,且在下一个机器周期的S1状态中,响应最高级中断请求。 在以下情况下,还需要有另外的等待: a)  CPU正在处理相同或更高优先级中断 b) 多机器周期指令中,还未执行到最后一个机器周期 c)正在执行中断系统的SFR操作,如RETI指令及访问IE、IP等操作时,要延后一条指令
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服