1、第 2 章 思考题及习题 2 参考答案一、填空1. 在 AT89S52 单片机中,如果采用 6MHz 晶振,一个机器周期为 。答:2s2. AT89S52单片机的机器周期等于 个时钟振荡周期。答:123. 内 部 RAM 中 , 位 地 址 为 40H、 88H 的 位 , 该 位 所 在 字 节 的 字 节 地 址 分 别 为和 。答:28H,88H4. 片内字节地址为 2AH 单元最低位的位地址是 ;片内字节地址为 A8H 单元的最低位的位地址为 。答:50H,A8H5. 若 A 中的内容为 63H,那么,P 标志位的值为 。答:06. AT89S52 单片机复位后,R4 所对应的存储单元
2、的地址为 ,因上电时 PSW= 。这时当前的工作寄存器区是 组工作寄存器区。答:04H,00H,0。7. 内部 RAM 中,可作为工作寄存器区的单元地址为 H H。答:00H,1FH8. 通过堆栈操作实现子程序调用时,首先要把 的内容入栈,以进行断点保护。调用子程序返回指令时,再进行出栈保护,把保护的断点送回到 ,先弹出的是原来 中的内容。答:PC, PC,PCH9. AT89S52 单 片 机 程 序 存 储 器 的 寻 址 范 围 是 由 程 序 计 数 器 PC 的 位 数 所 决 定 的 , 因 为 AT89S52单片机的 PC 是 16 位的,因此其寻址的范围为 KB。答:6410.
3、 AT89S52 单片机复位时,P0P3 口的各引脚为 电平。答:高11. AT89S52 单片机使用片外振荡器作为时钟信号时,引脚 XTAL1 接 ,引脚 XTAL2的接法是 。答:片外振荡器的输出信号,悬空12. AT89S52 单片机复位时,堆栈指针 SP 中的内容为 ,程序指针 PC 中的内容为。答:07H,0000H二、单选1. 程序在运行中,当前 PC 的值是 。A当前正在执行指令的前一条指令的地址 B当前正在执行指令的地址。C当前正在执行指令的下一条指令的首地址 D控制器中指令寄存器的地址。答:C2. 判断下列哪一种说法是正确的?APC 是一个可寻址的寄存器 B单片机的主频越高,
4、其运算速度越快。CAT89S52 单片机中的一个机器周期为 1s D特殊功能寄存器 SP 内存放的是堆栈栈顶单元的内容。答: B三、判断对错1. 使用 AT89S52 单片机且引脚 =1 时,仍可外扩 64KB 的程序存储器。错EA2. 区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低端还是高端。错3. 在 AT89S52 单片机中,为使准双向的 I/O 口工作在输入方式,必须事先预置为 1。对4. PC 可以看成是程序存储器的地址指针。对5. AT89S52 单片机中特殊功能寄存器(SFR)使用片内 RAM 的部份字节地址。对6. 片内 RAM 的位寻址区,只能供位寻址
5、使用,而不能进行字节寻址。错7. AT89S52 单片机共有 32 个特殊功能寄存器,它们的位都是可以用软件设置的,因此,都是可以位寻址的。错8. 堆栈区是单片机内部的一个特殊区域,与 RAM 无关。错9. AT89S52 单片机进入空闲模式,CPU 停止工作。片内的外围电路(如中断系统、串行口和定时器)仍将继续工作。对10. AT89S52 单片机不论是进入空闲模式还是掉电运行模式后,片内 RAM 和 SFR 中的内容均保持原来的状态。对11. AT89S52 单片机进入掉电运行模式,CPU 和片内的外围电路(如中断系统、串行口和定时器)均停止工作。对12. AT89S52 单片机的掉电运行
6、模式可采用响应中断方式来退出。对四、简答1. AT89S52 单片机片内都集成了哪些功能部件?答:集成了如下部件:1个微处理器(CPU) ;256个数据存储器(RAM)单元 ;8K Flash程序存储器;4个8位可编程并行I/O口(P0口、P1口、P2口、P3口) ; 1个全双工串行口;3个16位定时器/计数器; 1个看门狗定时器;一个中断系统,6个中断源,2个优先级;32个特殊功能寄存器(SFR) 。2. AT89S52 的 64KB 程 序 存 储 器 空 间 有 6 个 单 元 地 址 对 应 AT89S52 单 片 机 6 个 中 断 源 的 中 断入 口 地 址 , 请写出这些单元的
7、入口地址及对应的中断源。答:见下表表 AT89S52 各中断源的中断入口地址中 断 源 入 口 地 址外部中断 0 0003H定时器/计数器 T0 000BH外部中断 1 0013H定时器/计数器 T1 001BH串行口 0023H定时器/计数器 T2 002BH3. 说明 AT89S52 单片机的 引脚接高电平或低电平的区别。EA答:当 脚为高电平时,单片机读片内程序存储器(8K 字节Flash)中的内容,但在PC值EA超过0FFFH(即超出4K字节地址范围)时,将自动转向读外部程序存储器内的程序;当 脚EA为低电平时,单片机只对外部程序存储器的地址为0000HFFFFH中的内容进行读操作,
8、单片机不理会片内的8K字节的Flash程序存储器。4. AT89S52 单片机有哪两种低功耗节电模式?说明两种低功耗节电模式的异同。答:AT89S52 单片机有两种低功耗节电工作模式:空闲模式(idle mode)和掉电模式(power down mode) 。空闲模式下,虽然振荡器仍然运行,但是 CPU 进入空闲状态。此时,片内所有外围电路(中断系统、串行口和定时器)仍继续工作,SP、PC、PSW、A、P0P3 端口等所有其他寄存器,以及内部 RAM 和 SFR 中的内容均保持进入空闲模式前的状态。因为 CPU 耗电量通常要占芯片耗电的 80%90%,因此 CPU 停止工作则会大大降低功耗。
9、掉电模式下,振荡器停止工作。由于没有了时钟信号,内部的所有部件均停止工作,但片内的 RAM 和 SFR 的原来内容都被保留,有关端口的输出状态值都保存在对应的特殊功能寄存器中。5. AT89S52 单片机运行时程序出现“跑飞”或陷入“死循环时,说明如何利用看门狗来摆脱困境的工作原理。 答:可采用看门狗定时器。工作原理如下:“看门狗”技术就是使用一个“看门狗”定时器来对系统时钟不断计数,监视程序的运行。当看门狗定时器启动运行后,为防止看门狗定时器的不必要溢出而引起单片机的非正常的复位,应定期地把看门狗定时器清 0,以保证看门狗定时器不溢出。当由于干扰,使单片机程序“跑飞”或陷入“死循环”时,单片机也就不能正常运行程序来定时地把看门狗定时器清 0,当看门狗定时器计满溢出时,将在 AT89S52 的 RST 引脚上输出一个正脉冲(宽度为 98 个时钟周期) ,使单片机复位,在系统的复位入口 0000H 处重新开始执行主程序,从而使程序摆脱 “跑飞”或“死循环”状态,让单片机归复于正常的工作状态。