单片机原理及接口技术C51编程第2版

您所在的位置:网站首页 x2000芯片做啥用 单片机原理及接口技术C51编程第2版

单片机原理及接口技术C51编程第2版

2023-04-14 02:12| 来源: 网络整理| 查看: 265

《单片机原理及接口技术C51编程第2版-习题答案汇总培训资料》由会员分享,可在线阅读,更多相关《单片机原理及接口技术C51编程第2版-习题答案汇总培训资料(29页珍藏版)》请在人人文库网上搜索。

1、单片机原理及接口技 术 ( C5 1 编 程 ) ( 第 2 版)-习题答案汇总 标题 第 1 章 思考题及习题 1 参考答案 一、填空 1. 除了单片机这一名称之外,单片机还可称为 或 。答:微控制 器,嵌入式控制器 . 2. 单片机与普通微型计算机的不同之处在于其将 、 、和 三 部分,通过内部 连接在一起,集成于一块芯片上。 答: CPU、存储 器、 I/O 口、总线 3. AT89S51 单片机工作频率上限为 MHz 。答: 24MHz。 4. 专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低 和提高 。 答:成本,可靠性。 二、单选 1. 单片机内部数据之所以用二进制

2、形式表示,主要是 A为了编程方便B受器件的物理性能限 制 C为了通用性D为了提高运算速度 答:B 2. 在家用电器中使用单片机应属于微计算机的 。 A辅助设计应用B测 量、控制应用 C数值计算应用D数 据处理应用 答: B 3. 下面的哪一项应用,不属于单片机的应用范围。 A工业控制 B 家用电器的控制 C 数据库管理 D 汽车电子设备 答:C 三、判断对错 1. STC 系列单片机是 8051 内核的单片机。 对 2. AT89S52 与 AT89S51相比,片内多出了 4KB的 Flash 程序存储器、 128B的 RAM、 1 个中断源、 1 个定时器(且具有捕捉功能)。 3. 单片机是

3、一种 CPU。错 4. AT89S52 单片机是微处理器。 错 ISP),而 AT89C52则不能。 对 6. 为 AT89C51单片机设计的应用系统板,可将芯片 AT89C51直接用芯片 AT89S51替 7. 为 AT89S51 单片机设计的应用系统板,可将芯片 AT89S51直接用芯片 AT89S52替 5. AT89S51 片内的 Flash 程序存储器可在线写入( 8. 单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能 则是 DSP的长处。 对 第 2 章 思考题及习题 2 参考答案 一、填空 1. 在 AT89S51单片机中,如果采用 6MHz晶振,一个机器周

4、期为。答: 2s 2. AT89S51单片机的机器周期等于个时钟振荡周期。 答: 12 3. 内部 RAM中,位地址为 40H、88H 的位,该位所在字节的字节地址分别为 和。答: 28H, 88H 4. 片内字节地址为 2AH单元最低位的位地址是;片内字节地址为 A8H单 元的最低位的位地址为。答: 50H, A8H 5. 若 A中的内容为 63H,那么, P标志位的值为。答: 0 6. AT89S51 单片机复位后, R4 所对应的存储单元的地址为,因上电时 PSW= 。这时当前的工作寄存器区是 组工作寄存器区。 答: 04H, 00H,0。 7. 内部 RAM中,可作为工作寄存器区的单元

5、地址为H H 。 答: 00H,1FH 8. 通过堆栈操作实现子程序调用时,首先要把 的内容入栈,以进行断点 保护。调用子程序返回指令时,再进行出栈保护,把保护的断点送回 到 ,先弹出的是原来中的内容。 答: PC, PC ,PCH 9. AT89S51 单片机程序存储器的寻址范围是由程序计数器 PC的位数所决定的,因为 AT89S51单片机的 PC是 16 位的,因此其寻址的范围为KB。 答: 64 10. AT89S51 单片机复位时, P0P3 口的各引脚为电平。 答:高 11. AT89S51 单片机使用片外振荡器作为时钟信号时,引脚 XTAL1接,引脚 XTAL2的接法是。答:片外振

6、荡器的输出信号,悬空 12. AT89S51 单片机复位时,堆栈指针 SP中的内容为,程序指针 PC中 的内容为 。答: 07H, 0000H 二、单选 1. 程序在运行中,当前 PC的值是 B 当前正在执行指令的地 A 当前正在执行指令的前一条指令的地址 址。 C 当前正在执行指令的下一条指令的首地址 址。 D 控制器中指令寄存器的地 答:C 2. 判断下列哪一种说法是正确的? 单片机的主频越高,其运算速度 A PC是一个可寻址的寄存器B 越快。 C AT89S51单片机中的一个机器周期为 1s D特殊功能寄存器 SP内存放的是堆栈栈顶单元的内容。 答: B 三、判断对错 1. 使用 AT8

7、9S51单片机且引脚 EA =1 时,仍可外扩 64KB的程序存储器。 错 2. 区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低 端还是高端。 错 3. 在 AT89S51单片机中,为使准双向的 I/O 口工作在输入方式,必须事先预置为 1。对 4. PC 可以看成是程序存储器的地址指针。 对 5. AT89S51 单片机中特殊功能寄存器( SFR)使用片内 RAM的部份字节地址。 对 6. 片内 RAM的位寻址区,只能供位寻址使用,而不能进行字节寻址。错 7. AT89S51 单片机共有 26 个特殊功能寄存器,它们的位都是可以用软件设置的,因 此,都是可以位寻址的。

8、 错 8. 堆栈区是单片机内部的一个特殊区域,与 RAM无关。 错 9. AT89S51 单片机进入空闲模式, CPU停止工作。片内的外围电路(如中断系统、 串行口和定时器)仍将继续工作。 对 10. AT89S51 单片机不论是进入空闲模式还是掉电运行模式后,片内RAM和 SFR中的 内容均保持原来的状态。 对 11. AT89S51 单片机进入掉电运行模式, CPU和片内的外围电路(如中断系统、串行 口和定时器)均停止工作。 对 12. AT89S51 单片机的掉电运行模式可采用响应中断方式来退出。对 四、简答 1. AT89S51 单片机片内都集成了哪些功能部件? 答:集成了如下部件:

9、1个CPU;128个数据存储器( RAM)单元 ;8K Flash 程序存储器; 4个 8位可编程 并行I/O口( P0口、P1口、 P2口、 P3口); 1个全双工串行口; 3个16位定时器 / 计数 器; 1个看门狗定时器;一个中断系统, 6个中断源, 2个优先级; 32个特殊功能寄 存器( SFR)。 2. AT89S51 的 64KB程序存储器空间有 5 个单元地址对应 AT89S51单片机 5 个中断源 的中断入口地址,请写出这些单元的入口地址及对应的中断源。 答:见下表 表 AT89S51 各中断源的中断入口地址 中断源 入口地址 外部中断 0 0003H 定时器/计数器 T0 0

10、00BH 外部中断 1 0013H 定时器/计数器 T1 001BH 串行口 0023H 3. 说明 AT89S51单片机的 EA 引脚接高电平或低电平的区别。 答:当 EA 脚为高电平时,单片机读片内程序存储器( 4K 字节 Flash )中的内容, 但在PC值超过 0FFFH(即超出 4K字节地址范围)时,将自动转向读外部程序存储器内 的程序;当 EA 脚为低电平时,单片机只对外部程序存储器的地址为0000H FFFFH 中的内容进行读操作,单片机不理会片内的 4K字节的 Flash 程序存储器。 第 3 章 思考题及习题 3 一、填空 1与汇编语言相比, C51 语言具有 、 、 、 等

11、优点。 答:可读性好,可移植性好,模块化开发与资源共享,生成的代码效率高 2C51语言头文件包括的内容有 8051 单片机 ,以及 的说明。 答:片内的外设硬件资源,相应的特殊功能寄存器 3C51提供了两种不同的数据存储类型和 来访问片外数据存储 区。答: xdata ,pdata 4C51提供了 code 存储类型来访问。答:程序存储区 5对于 SMALL存储模式,所有变量都默认位于 8051 单片机。答:内部的 数据存储器 6 C51 用“* ”和 while( 表达式 ); do-while 语句的特点是先执行内嵌的循环体语句,再计算表达式,如果 表达式的值为非 0,则继续执行循环体语句

12、,直到表达式的值为0 时结束循环。 由 do-while 构成的循环与 while 循环十分相似,它们之间的重要区别 是: while 循环的控制出现在循环体之前,只有当 while 后面表达式的值非 0 时,才 可能执行循环体,在 do-while 构成的循环中,总是先执行一次循环体,然后再求表 达式的值,因此无论表达式的值是 0 还是非 0,循环体至少要被执行一次。 四、编程 1编写 C51程序,将单片机片外 2000H为首地址的连续 10 个单元的内容,读入到 片内 RAM的 40H49H 单元中。 答:将片外 2000H为首地址的连续 10个单元的内容,读入到片内 RAM的 40H49

13、H单 元中。程序如下: xdata unsigned char buffer110 _at_ 0 x2000; data unsigned char buffer210 _at_ 0 x40 void main(void) unsigned char i; for(i=0; i10; i+) buffer2i= buffer1i 2编写将单片机片内一组 RAM单元清 0 的函数,函数内不包括这组 RAM单元的起 始地址和单元个数,起始地址和单元个数参数应在执行函数前由主函数赋值。 答:参考程序如下: #define uchar unsigned char void clear0(uchar *

14、addr, uchar lenth) uchar i; for(i=0; ilenth;i+) *addr=0; addr+; void main(void) uchar addr32 _at_ 0 x30;起始地 址赋值 uchar lenth=32; 单元个数赋值 clear0(addr,lenth); while(1); 第 5 章 思考题及习题 5 参考答案 一、填空 1. AT89S51 单片机任何一个端口要想获得较大的驱动能力,要采用 电平输 出。 答:低 2. 检测开关处于闭合状态还是打开状态,只需把开关一端接到 I/O 端口的引脚上, 另一端接地,然后通过检测 来实现。 答:

15、I/O 端口引脚的电平 3. “8”字型的LED数码管如果不包括小数点段共计段,每一段对应一个发光 二极管,有 和 两种。 答: 7,共阳极,共阴极 4. 对于共阴极带有小数点段的数码管,显示字符“ 6”(a 段对应段码的最低位)的段 码为 ,对于共阳极带有小数点段的数码管,显示字符“ 3”的段码为。 答: 7DH,B0H 5. 已知8段共阳极 LED数码显示器要显示某字符的段码为 A1H(a段为最低位 ),此时显 示器显示的字符为 。 答:d 6. LED 数码管静态显示方式的优点是:显示 闪烁,亮度 , 比较容易,但是占用的 线较多。 答:无,较高,软件控制, I/O 口 7. 当显示的

16、LED数码管位数较多时,一般采用显示方式,这样可以降 低, 减少 的数目。 答:动态,成本, I/O 端口 8. LCD 1602 是 型液晶显示模块,在其显示字符时,只需将待显示字符的 由单片机写入 LCD 1602 的显示数据 RAM(DDRA)M,内部控制电路就可将字符在 LCD 上显示出来。 答:字符, ASCII 码 9. LCD 1602 显示模块内除有 字节的 RAM 外,还有 字节的 自定义 ,用户可自行定义个 57 点阵字符。 答: 80,显示数据, 64,字符 RAM,8 10当按键数目少于 8个时,应采用式键盘。当按键数目为 64个时,应采用 式键盘。 答:独立,矩阵 1

17、1使用并行接口方式连接键盘,对独立式键盘而言,8根 I/O 口线可以接个 按键,而对矩阵式键盘而言, 8根I/O 口线最多可以接个按键。 答: 8,64 12LCD 1602 显示一个字符的操作过程为:首先,然后 ,随 后 ,最后 。 答:读忙标志位 BF,写命令,写显示字符,自动显示字符 二、判断对错 1P0 口作为总线端口使用时,它是一个双向口。 对 2P0 口作为通用 I/O 端口使用时,外部引脚必须接上拉电阻,因此它是一个准双向 口。对 3P1P3 口作为输入端口用时,必须先向端口寄存器写入1。对 4P0P3 口的驱动能力是相同的。 错 5当显示的 LED数码管位数较多时,动态显示所占

18、用的I/O 口多,为节省 I/O 口与 驱动电路的数目,常采用静态扫描显示方式。 错 6LED数码管动态扫描显示电路只要控制好每位数码管点亮显示的时间,就可造成 多位同时亮”的假象,达到多位 LED数码管同时显示的效果。 错 7使用专用的键盘 / 显示器芯片 , 可由芯片内部硬件扫描电路自动完成显示数据的 扫描刷新,和键盘扫描。 对 8控制 LED点阵显示器的显示,实质上就是控制加到行线和列线上的电平编码来控 制点亮某些发光二极管(点),从而显示出由不同发光的点组成的各种字符。 对 91616 点阵显示屏是由 4 个 44 的 LED点阵显示器组成。 错 10LCD 1602液晶显示模块,可显

19、示 2行,每行 16个字符。 对 12 LED数码管的字型码是固定不变的。 错 13为给扫描法工作的 88 的非编码键盘提供接口电路,在接口电路中需要提供两 个 8 位并行的输入口和一个 8 位并行的输出口。 错 14LED数码管工作于动态显示方式时,同一时间只有一个数码管被点亮。 15动态显示的数码管,任一时刻只有一个LED 数码管处于点亮状态,是 LED 的余辉与人眼的“视觉暂留”造成数码管同时显示的“假象”。 对 三、简答 2LED的静态显示方式与动态显示方式有何区别?各有什么优缺点? 答:静态显示时,欲显示的数据是分开送到每一位LED上的。而动态显示则是数据 是同时送到每一个 LED上

20、,再根据位选线来确定是哪一位 LED被显示。静态显示亮 度很高,但口线占用较多。动态显示口线占用较少,但是需要编程进行动态扫描, 适合用在显示位数较多的场合。 第 6 章 思考题及习题 6 参考答案 一、填空 1外部中断 1 的中断入口地址为。定时器 T1 的中断入口地址为 答: 0013H;001BH 2若( IP)=00010100B,则优先级最高者为,最低者为 。 答:外部中断 1,定时器 T1 3 AT89S51单片机响应中断后,产生长调用指令 LCALL,执行该指令的过程包括: 首先把 的内容压入堆栈,以进行断点保护,然后把长调用指令的 16 位 地址送入 ,使程序执行转向 中的中断

21、地址区。 答: PC、PC、程序存储器 4 AT89S51单片机复位后,中断优先级最高的中断源是。 答:外部中断 0 5当 AT89S51单片机响应中断后,必须用软件清除的中断请求标志是。 答:串行中断、定时器 /计数器 T2中断 二、单选 1下列说法错误的是()。 A. 同一级别的中断请求按时间的先后顺序响应 B. 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应 C. 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能 中断低优先级中断请求 D. 同级中断不能嵌套 答:B 2在 AT89S51的中断请求源中,需要外加电路实现中断撤销的是()。 A. 电平方式的外部中断请

22、求 B跳沿方式的外部中断请求 C外部串行中断 D定时中断 答:A 3中断查询确认后,在下列各种 AT89S51单片机运行情况下,能立即进行响应的是 ( )。 A当前正在进行高优先级中断处理 B当前正在执行 RETI 指令 C当前指令是 MOV A, R3 D当前指令是 DIV 指令,且正处于取指令的机器周期 答:C 4下列说法正确的是() A. 各中断源发出的中断请求信号,都会标记在 B. 各中断源发出的中断请求信号,都会标记在 AT89S51的 IE 寄存器中 AT89S51的 TMOD寄存器中 AT89S51的 IP 寄存器中 D. 各中断源发出的中断请求信号,都会标记在 AT89S51的

23、 TCO、N SCON寄存器 C. 各中断源发出的中断请求信号,都会标记在 答:D 三、判断对错 1定时器 T0中断可以被外部中断 0 中断。 错 2. 必须有中断源发出中断请求,并且 CPU开中断, CPU才可能响应中断。 错 3 AT89S51单片机中的同级中断不能嵌套。 对 4同为高中断优先级,外部中断 0能打断正在执行的外部中断 1 的中断服务程序。 错 5中断服务子程序可以直接调用。 错 6在开中断的前提下,只要中断源发出中断请求,CPU就会立刻响应中断。 错 四、简答 3中断响应需要满足哪些条件? 答:一个中断源的中断请求被响应,必须满足以下条件: ( 1)总中断允许开关接通,即

24、IE 寄存器中的中断总允许位 EA=1。 ( 2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1 ( 3)该中断源的中断允许位 =1,即该中断被允许。 4)无同级或更高级中断正在被服务。 第 7 章 思考题及习题 7 参考答案 一、填空 1如果采用晶振的频率为 3MHz,定时器 / 计数器 Tx (x=0,1 )工作在方式 0、1、2 下,其方式 0 的最大定时时间为,方式 1 的最大定时时间为 , 方式 2 的最大定时时间为 。 答:32.768ms,262.144ms,1024s 2定时器 / 计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟 频率的 。 答: 1/

25、24 3定时器 / 计数器用作定时器模式时,其计数脉冲由提供,定时时间与 有关。 答:系统时钟信号 12 分频后,定时器初值 4定时器 / 计数器 T1测量某正单脉冲的宽度,采用方式可得到最大量 程?若时钟频率为 6MHz,求允许测量的最大脉冲宽度为。 答:方式 1定时,131.072ms 。 5. 定时器 T2 有 3 种工作方式:、 和 ,可通过对寄存器 中的相关位进行软件设置来选择。 答:捕捉,重新装载(增计数或减计数),波特率发生器, T2CON 6. AT89S52单片机的晶振为 6MHz,若利用定时器 T1的方式 1定时 2ms,则( TH1) =,( TL1) =。 答: FCH

26、,18H。 二、单选 1定时器 T0工作在方式 3时,定时器 T1 有种工作方式。 A.1 种 B.2 种 C 3种D4 种 答:C 2. 定时器 T0、T1 工作于方式 1 时,其计数器为位 A.8 位 B.16 位 C.14 位 D.13 位 答:B 3. 定时器 T0、T1 的 GATEx=1 时,其计数器是否计数的条件 A. 仅取决于 TRx 状态B. 态 仅取决于 GATE位状 C. 是由 TRx和INT x两个条件来共同控制 D. 仅取决于 INT x 的状态 答:C 4. 定时器 T2 工作在自动重装载方式时,其计数器为位 A.8 位 B. 13 位 C.14 位 D. 16 位

27、 答:D 5. 要想测量 INT0 引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容 应为 。 A.87H B. 09H C.80H D. 00H 答:B 三、判断对错 1下列关于 T0、T1 的哪些说法是正确的。 A.特殊功能寄存器 SCON,与定时器 / 计数器的控制无关。 对 B.特殊功能寄存器 TCON,与定时器 / 计数器的控制无关。 错 C.特殊功能寄存器 IE 与定时器 / 计数器的控制无关。 D.特殊功能寄存器 TMO,D与定时器 / 计数器的控制无关。 2定时器 T0、T1 对外部脉冲进行计数时,要求输入的计数脉冲的高电平或低 电平的持续时间不小于 1个机器周期。特殊功能

28、寄存器 SCON与定时器 /计数器 的控制无关。 错 3定时器 T0、T1 对外部引脚上的脉冲进行计数时,要求输入的计数脉冲的高电平 和低电平的持续时间均不小于 2 个机器周期。 对 四、简答 1定时器/计数器 T1、T0的工作方式 2 有什么特点?适用于哪些应用场合? 答:方式 2为初值自动装入的 8位定时器 /计数器,克服了在循环定时或循环 计数应用时就存在用指令反复装入计数初值影响定时精度的问题。 3如果系统的晶振的频率为 24MHz,定时器 / 计数器工作在方式 0、1、2 下,其最大 定时时间各为多少? 答:晶振的频率为 24MHz, 机器周期为 0.5 s。 方式 0 最大定时时间

29、 =0.5 s2 =0.5 s8192=4096s 16 方式 1 最大定时时间 =0.5s216 =0.5 s65536=327686s 方式 2 最大定时时间 =0.5 s2 =0.5 s256=128s 五、编程 2编写程序,要求使用 T0,采用方式 2定时,在 P1.0 输出周期为 400s,占空比 为 10: 1 的矩形脉冲。 答:据题意,从 P1.0 输出的矩形脉冲的高低电平的时间为 10:1,则高低电平 的时间分别为 363.63 s 和 36.37 s。如果系统采用 6MHz晶振的话, Tcy=2s,因此 高低电平输出取整,则约为 364s 和 36s。参考程序如下: ORG

30、0000H LJMP MAIN ORG 000BH LJMP IT0P MAIN: MOV TMOD,#02H ;定时器 / 计数器 T0 为定时方式 2 MOV TL0,#4AH ;定时 364 s 初值赋值 SETB TR0 ;启动 T0, 开始计数 SETB ET0 ;允许 T0 中断 SETB EA ;CPU开 中断 SETB P1.0 WAIT: AJMP WAIT IT0P: CLR EA CLR MOV P1.0 R0,#9 ;关中断 DLY: DJNZ R0,DLY ;延时 36 s MOV SETB SETB TL0,#4AH ;定时 364 s 初值赋值 P1.0 EA R

31、ETI 第 8 章 思考题及习题 8 参考答案 一、填空 1、AT89S51的串行异步通信口为(单工 / 半双工 / 全双工)。 答:全双工。 2. 串行通信波特率的单位是 。 答: bit/s 3. AT89S51 的串行通信口若传送速率为每秒 120帧,每帧 10 位,则波特率为 答: 1200 4串行口的方式 0 的波特率为。 答: fosc/12 5 AT89S51单片机的通讯接口有和 两种型式。在串行通讯 中,发送时要把 数据转换成 数据。接收时又需把 数据转换 成 数据。 答:并行,串行,并行,串行,串行,并行 6当用串行口进行串行通信时,为减小波特率误差,使用的时钟频率为 MHz。 答: 11.0592 7 AT89S51单片机串行口的 4种工作方式中,和 的波特率是可调 的,与定时器 / 计数器 T1的溢出率有关,另外两种方式的波特率是固定的。 答:方式 1,方式 3 8帧格式为 1个起始位, 8 个数据位和 1 个停止位的异步串行通信方式是方 答:方式 1。 9在串行通信中,收发双方对波特率的设定应该是的。 答:相同的。 10串行口工作方式 1 的波特率是 。 答: 方式 1波特率 =(2SMOD/32 )定时器 T1



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3