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