单片机原理与应用-赵德安-习题答案.docx

上传人:scccc 文档编号:12765060 上传时间:2021-12-06 格式:DOCX 页数:10 大小:28.82KB
返回 下载 相关 举报
单片机原理与应用-赵德安-习题答案.docx_第1页
第1页 / 共10页
单片机原理与应用-赵德安-习题答案.docx_第2页
第2页 / 共10页
单片机原理与应用-赵德安-习题答案.docx_第3页
第3页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《单片机原理与应用-赵德安-习题答案.docx》由会员分享,可在线阅读,更多相关《单片机原理与应用-赵德安-习题答案.docx(10页珍藏版)》请在三一文库上搜索。

1、第一章习题2. 根据程序存储器的差异,单片机可以分为哪几种类型?答:MCS-51系列单片机按片内不同程序存储器的配置来分,可以分为以下3 种类型: 片内带 Mask ROM掩膜 ROM型:8051、80C51、8052、80C52。此类芯 片是由半导体厂家在芯片生产过程中, 将用户的应用程序代码通过掩膜工艺制作 到 ROM 中。其应用程序只能委托半导体厂家“写入 ,一旦写入后不能修改。 此类单片机适合大批量使用。 片内带 EPROM 型: 8751、 87C51、 8752。此类芯片带有透明窗口,可通 过紫外线擦除存储器中的程序代码, 应用程序可通过专门的编程器写入到单片机 中,需要更改时可擦

2、除重新写入。此类单片机价格较贵,不宜于大批量使用。 片内无 ROMROMLess 型: 8031、 80C31、 8032。此类芯片的片内没有程 序存储器, 使用时必须在外部并行扩展程序存储器存储芯片。 此类单片机由于必 须在外部并行扩展程序存储器存储芯片,造成系统电路复杂,目前较少使用。3. 单片机的主要特点是什么?它适宜构成通用微机系统还是专用微机系统? 为什么?答:单片机是一种集成电路芯片, 是采用超大规模集成电路技术把具有数据 处理能力的中央处理器 CPU、随机存储器RAM、只读存储器ROM、多种I/O 口 和中断系统、 定时器 /计时器等功能 可能还包括显示驱动电路、 脉宽调制电路、

3、 模拟多路转换器、 A/D 转换器等电路 集成到一块硅片上构成的一个小而完善的 计算机系统。其主要特点如下:1、价格廉价。 10 元以内计算机。2、功能不大。只能专用在适用的领域。但在适用的领域中,性价比却是最佳。3、可靠性高,抗干扰能力强。4、功耗比拟低。对电源要求低。适用面广。5、外围扩展能力强。可以应用到不同的控制系统中。 根据其特点可知,单片机功能不大,适宜构成专用微机系统。4. 研制微机应用系统时,应如何选择单片机的型号?答:在单片机应用研究系统开发中, 单片机是整个设计的核心。 设计者需要 为单片机安排适宜的外部器件, 同时还需要设计整个控制软件, 因此选择适宜的 单片机型号很重要

4、。 目前,市场上的单片机种类繁多, 在进行正式的单片机应用 研究系统开发之前,需要根据不同单片机的特性,从中作出合理的选择。 所以 在单片机选型时,主要需要注意以下几点:1. 仔细调查市场,尽量选用主流的、货源充足的单片机型号,这些器件使用 比拟广泛,有许多设计资料供学习或参考。2. 尽量选择所需硬件集成在单片机内部的型号, 例如 ADC 、DAC 、I2C、SPI 和 USB 等。这样便于整个控制系统的软件管理,减少外部硬件的投入,缩小整 体电路板的面积,从而减少总体投资等。3. 对于手持设备,移动设备或者其他需要低功耗的设备,尽量选择低电压、 低功耗的单片机型号,这样可以减少能量的消耗,延

5、长设备的使用寿命。4. 在资金等条件允许的情况下,尽量选择功能丰富,扩展能力强的单片机, 这样便于以后的功能升级和扩展。5. 对于体积有限制的产品,尽量选择贴片封装的单片机型号,这样可以减少 电路板面积,从而降低硬件本钱,同时也有助于电磁兼容设计。第二章1、分别写出一个MCS-51中ROM、EPROM、无ROM型单片机的型号和 内部资源。其中哪个产品内部具有固化的软件?该软件能否被所有用户所使用? 怎样使用该种产品?答:片内带 Mask ROM掩膜 ROM型:8051、80C51、8052、80C52。此 类芯片是由半导体厂家在芯片生产过程中, 将用户的应用程序代码通过掩膜工艺 制作到 ROM

6、 中。其应用程序只能委托半导体厂家“写入 ,一旦写入后不能修 改。片内带 EPROM 型: 8751、 87C51、 8752。此类芯片带有透明窗口,可通 过紫外线擦除存储器中的程序代码, 应用程序可通过专门的编程器写入到单片机 中,需要更改时可擦除重新写入。片内无ROM(ROMLess)型:8031、80C31、8032。此类芯片的片内没有程序存储器,使用时必须在外部并行扩展程序存储器存储芯片。MCS-51系列单片机分类表RUM ft*kAM 弾最kuMfrtrU审杼U邱imi4 Klig ll<kb2 513MJCJI4 KB皿liRM153;IiS2K KBkhyxu4X111hr

7、angR M15. IBZX64髯冃J X 161杓其中8051、80C51、8052、80C52等产品具有固化软件,该软件不能被所有用户所使用,应用程序只能委托半导体厂家“写入,3.什么是堆栈? 8032的堆栈区可以设在什么地方? 一般应设在什么区域 ?如 何实现?试举例说明。答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以 "后 进先出"的结构方式处理的。实质上,堆栈就是一个按照 "后进先出"原那么组织的 一段内存区域。8032的堆栈区原那么上可以设在内部 RAM中的00H-FFH的任意区域内,一 般应设在30H-7FH的范围内。通过赋

8、值的方式实现,如:MOV SP, #60H。4.8031的内部RAM中,哪些可以作为数据缓冲区?在8031内部RAM 中 工作存放器区 00H1FH和位寻址区 20H2FH 可 以作为数据缓冲区。6. MCS-51单片机构成系统时,程序存储器的容量最大是多少?答:MCS-51单片机构成系统时,程序存储器的容量最大是64KB。7. 当单片机系统的程序存储器的容量为 8KB时,程序存储器的开始地址为 多少?答:单片机内部无 ROM时,EA/=0时,只访问外部 ROMROM为外部 ROM,开始地址为 0000H-仆FFH, 8KB=213=8192D=2000H,故,地址为 2000H-仁1FFFH

9、。单片机内部有ROM,一般为4KB,地址范围为0000H-0FFFH,外部ROM的开 始地址为 1000H-1FFFH。 EA/=1 时9. 当单片机系统外部数据存储器的容量为8KB时,数据存储器的开始地址一定要是0000H吗?答:不一定,只有是间隔 仆FFH个字节,都可以.第三章1. 指出以下指令中划线操作数的寻址方式和指令的操作功能MOV A, #78H ;立即寻址,将立即数送入累加器 AMOV A, 78H;直接寻址,将内部 RAM 78H单元内容送累加器 AMOV A, R6 ;存放器寻址,将R6内容送累加器AINC R0;存放器间接寻址,将指针 R0指向的内部RAM单元内容加1PUS

10、H ACC;存放器寻址,将累加器 A的内容入栈RL A ;存放器寻址,将累加器A的内容左移1位CPL 30H;位寻址,将位变量30H的内容取反SJMP相对寻址,死循环指令MOVC A, A+PC ;基存放器加变址存放器间接寻址,程序存储器 PC和累加器 A中内容相加, 送到累加器A2. 指出以下指令中哪些是非法的?DEC DPTR DEC DPLMOV A, R2 MOV A, R1MOV R1, R0 MOV A, R0MOV P1.1,30H MOV P1.1, C 或者 MOV C, 30HMOV #30H, A MOV A, #30HMOV OV, 30H MOV PSW.7, CMO

11、V A, A+DPTR MOVC A, A+DPTRRRC 30H RRC A所有的移位指令均是对累积器 A进行的。RL B RL AXRL C, 30H错,因为位操作指令中,没有位的异或运算3. 如何将1个立即数30H送入内部RAM 90H单元?如何将立即数送特殊功能存放器P1? MOV R0, #90HMOV R0, #30H能不能直接 MOV 90H, #30H?不能,因为内部 RAM的高128字节只能用存放器间接寻址。 MOV P1, #30H4.执行以下一段程序后,试分析有关单元内容。MOV PSW, #0;PSW=00HMOV R0,#30H;(R0)=30HMOV 30H, #4

12、0H(30H)=40HMOV 40H, #50(40H)=50HMOV A, R0(A)=40HADDC A, #0CEH(A)=40H+0CEH+0=0EHPSW=10000101B=85HINC R0(R0)=31H执行结果:(R0)=31H, (30H)=40H, (40H)=50, (A)=0EH, (PSW)=85HPSW.7 PSW.6 PSW.5 PSW4 PSW.3 PSW.2 PSW.1 PSW,0CyACF0RSIRSOOVP这里特别注意OV的值。在带符号数的加减运算中,OV=1表示加减运算超出了累积器A所能表示的有符号数范围(-128-+127),即产生了溢出,因此运算结

13、果是错误的;反之,OV=0表示运算结果正确,即无溢出产生。OV=CY和CY1的异或。其中CY1为第六位向第七位是否有进位或借位, 有,为CY1=1,没有,CY1=0。执行加法ADD时,当位6向位7进位,而位7不向C进位时,OV=1。或者位6不向位7进位,而位7向C进位时,同样OV=1。5. 试编写一段程序,内部 RAM 40H 、41H 单元内容传送到外部 RAM 2000H、 2001H 单元中。MOV DPTR, #2000HMOV R0, #40HMOV A, R0MOVX DPTR, AINC R0INC DPTRMOV A, R0MOVX DPTR, A6. 试编写一段程序,根据累加

14、器 A 的内容,到程序存储器 1000H 起始的表格中 取一双字节数,送内部 RAM 50H 、 51H 单元。MOV DPTR, #1000HPUSH ACCMOVC A, A+DPTRMOV 50H, APOP ACCINC DPTRMOVC A, A+DPTRMOV 51H, A7. 试编写一段程序,进行两个 16位数的相减运算: 6483H-56E2H 。结果高 8 位 存在内部RAM 40H ,低 8 位存 41H。CLR CMOV A, #83HSUBB A, #0E2HMOV 41H, AMOV A, #64HSUBB A, #56HMOV 40H, A8试编写一段程序,将30H

15、、31H单元中存放的BCD数,压缩成一个字节原30H 单元内容为高位,并放入 30H 单元。MOV A, 30HSWAP AORL A, 31H9. 试编写一段程序, 将 30H32H 单元中的压缩 BCD 拆成 6个单字节 BCD 数, 并放入33H38H 单元。MOV SP, #60HMOV A, 30HMOV R0, #33HACALL H2ASCMOV A, 31HACALL H2ASCMOV A, 32HACALL H2ASCSJMP $H2ASC: MOV B, AANL A, #0FHMOV R0, AINC R0MOV A, BSWAP AANL A, #0FHMOV R0,

16、AINC R0RET10. 设晶振频率为 6MHz ,试编写一个延时 1ms 的子程序,并利用该子程序, 编 写一段主程序,在P1.0引脚上输出高电平宽2ms、低电平宽1ms的方波信号。MOV SP, #60HLOOP:SETB P1.0ACALL DELAYACALL DELAYCLR P1.0ACALL DELAYSJMP LOOPDELAY:MOV R0,#248; 1TDJNZ R0,$;2TNOP;1TRET2T延时计算: 1T+248*2T+1T+2T=500T=1ms第四章5.晶振为12MHz ,用 T0产生 1ms 的定时,可以选择哪几种方式?分别写出定时器的方式字和计数初值。

17、如需要 1s 的定时,应如何实现?答:由于定时器工作在方式2和方式3下时的最大定时时间只有0.256ms,因此 要想获得1ms的定时时间,定时器必须工作在方式 0或方式1。机器周期为T计数=12X 1/12X 10-6s=1 s假设采用方式0,定时器的方式字TMOD为:00H,根据公式可得定时器的计 数初值为:TC= MT/ T 计数=213 1*103/1=7192=1C18H即:TH0应装# 0E0H; TL0应装#18H 高三位为0假设采用方式1,定时器的方式字TMOD为:01H,根据公式可得定时器的计 数初值为:TC= MT/ T 计数= 216 1*1O3/1=64536=FC18H

18、即:THO 应装# OFCH; TLO 应装 #18H如需要1s的定时,可以采用循环定时,增加循环次数。AtV第五章1假设晶振为6MHz,试编写一个2ms延时子程序。DELAY: MOV RO,#498; 1TDJNZ RO,$; 2TNOP;1TRET2T 延时计算: 1T+498*2T+1T+2T=1OOOT=2ms6. 试设计一个 n 字节的无符号卜进制数加法子程序, 其功能为将R0和R1指出的内部 RAM 中两个 n 字节压缩BCD 码无符号十进制数相加,结果存放于被加数单元中。子程序入口时, RO,R1 分别指向被加数和加数的低位字节,字节数 n存于R2,出口时R0指向和的最高位字节

19、,CY为进位位。LEN EQU 3OORG OOOOHAJMP MAINORG OO3OHMAIN : MOV SP. #6OHMOV R2, #LENACALL ADD_NBYTESJMP $ADD_NBYTE : CLR CLOOP: MOV A, ROADDC A, R1DA AMOV RO, AINC ROINC R1DJNZ R2, LOOPRETEND11试设计一个子程序,其功能为将R0指出的内部RAM中6个单字节正整 数按从小到大的次序重新排列。S_2_L: MOV R4, #5CLR F0PUSH 00H ;R0 入栈POP 01H ;出栈赋给 R1INC R1LOOP0 : MOV A, R4MOV R5, ALOOP1 : MOV A, R0MOV B, AMOV A, R1CJNE A, B, NEXTSJMP NOCHNEXT : JNC NOCHSETB F0MOV R0, AXCH A, BMOV R1, ANOCH : INC R0INC R1DJNZ R5, LOOP1JNB F0, HALTDJNZ R4, LOOP0HALT : RET

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1