MCS-51单片机试题与解答:中断、定时器和程序延时

需积分: 10 31 下载量 196 浏览量 更新于2024-10-28 1 收藏 2.89MB DOC 举报
"南昌大学06年单片机试卷和答案" 这篇摘要涵盖了单片机基础知识,主要涉及MCS-51系列单片机的相关知识,包括指令系统、中断系统、堆栈操作、定时器/计数器工作方式以及波特率计算等。以下是详细的知识点解析: 1. PC(程序计数器)的功能:PC始终指向下一条待执行的指令地址,因此正确答案是C。 2. MCS-51中断优先级控制:A选项描述了中断的优先级关系,即低优先级不能中断高优先级,高优先级可以中断低优先级;B选项表示同级中断不能嵌套,这是正确的;C选项描述了同级中断按照时间先后响应,也是正确的;D选项表示多同级中断请求会形成阻塞,实际上系统会按时间顺序响应,所以D选项是错误的。 3. 堆栈操作:MCS-51单片机的堆栈遵循“后进先出”原则,通常是向高地址增长,因此B选项“由低到高”是正确的。 4. 定时器工作方式比较:方式1和0都是13位定时器,而方式2是一个自动重载的8位定时器,具备在溢出后重新加载计数初值的能力,适于循环定时和计数,但不会增加计数器位数,因此B选项是错误的。 5. LED显示控制:为了位控和段控,通常需要对GPIO口进行操作,可以使用位操作指令,如MOVX,它用于间接访问外部数据存储器;MOV用于在内部数据存储器之间或寄存器之间的移动;MOVC用于读程序存储器;XCH用于交换两个寄存器或寄存器与累加器的内容。这里需要位操作,所以B选项“MOVX”是合适的。 二.填空题知识点: 1. MCS-51单片机集成了RAM、ROM、I/O接口、定时器/计数器和中断系统。 2. 能用位寻址的特殊功能寄存器地址可以被8整除,因为每个位地址占用1位,8位对应一个字节。 3. MCS-51的节电模式包括掉电方式和空闲方式。 4. 8051外部中断有电平触发和边沿触发两种方式,提供了灵活的中断触发机制。 5. 波特率计算:对于方式1,当SMOD=0时,定时器初值计算公式为(fosc/12)/(波特率×2n),其中n是定时器的预分频系数。这里fosc=11.0592MHz,波特率=2400,n=1(方式1),计算得到初值为F4H。 6. 定时器T1的中断入口地址是001BH,这是中断服务子程序的地址。 7. 使用PUSH指令保存R1的内容至堆栈时,如果PSW.4=1(表示RS1为1,选择堆栈区2),PSW.3=0(RS0为0),则PUSH 11H表示将R1压入堆栈区2。 三.程序阅读填空: 1. 此程序用于查找内部RAM中最小值,从LIST单元开始遍历直到遇到-1标志。通过比较当前元素与最小值(MIN)更新最小值。 2. 给定的程序用于产生延迟,根据题目中的信息,延时50us需要6个机器周期,因为每个MOV和DJNZ指令各占1个周期,每个NOP指令占1个周期,DJNZ后面有两个NOP,所以R3初始值应为#06H,NOP指令的作用是提供额外的延迟。 3. 这段程序可能是用于计算定时器初值或计算特定延时。根据题目中给出的信息,可以通过调整①的值来改变延时时间。 这些知识点覆盖了单片机基础操作、中断、定时器、堆栈和程序流程控制等多个方面,对于理解和掌握MCS-51单片机的操作至关重要。