ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:29.60KB ,
资源ID:21675341      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21675341.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机原理与应用赵德安习题答案Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、10元以内计算机。2、功能不大。只能专用在适用的领域。但在适用的领域中,性价比却是最佳。3、可靠性高,抗干扰能力强。4、功耗比较低。对电源要求低。适用面广。5、外围扩展能力强。可以应用到不同的控制系统中。根据其特点可知,单片机功能不大,适宜构成专用微机系统。4.研制微机应用系统时,应如何选择单片机的型号?在单片机应用研究系统开发中,单片机是整个设计的核心。设计者需要为单片机安排合适的外部器件,同时还需要设计整个控制软件,因此选择合适的单片机型号很重要。目前,市场上的单片机种类繁多,在进行正式的单片机应用研究系统开发之前,需要根据不同单片机的特性,从中作出合理的选择。 所以在单片机选型时,主要需

2、要注意以下几点:1.仔细调查市场,尽量选用主流的、货源充足的单片机型号,这些器件使用比较广泛,有许多设计资料供学习或参考。2.尽量选择所需硬件集成在单片机内部的型号,例如ADC、DAC、I2C、SPI和USB等。这样便于整个控制系统的软件管理,减少外部硬件的投入,缩小整体电路板的面积,从而减少总体投资等。3.对于手持设备,移动设备或者其他需要低功耗的设备,尽量选择低电压、低功耗的单片机型号,这样可以减少能量的消耗,延长设备的使用寿命。4.在资金等条件允许的情况下,尽量选择功能丰富,扩展能力强的单片机,这样便于以后的功能升级和扩展。5.对于体积有限制的产品,尽量选择贴片封装的单片机型号,这样可以

3、减少电路板面积,从而降低硬件成本,同时也有助于电磁兼容设计。第二章1、分别写出一个MCS-51中ROM、EPROM、无ROM型单片机的型号和内部资源。其中哪个产品内部具有固化的软件?该软件能否被所有用户所使用?怎样使用该种产品? 其中8051、80C51、8052、80C52等产品具有固化软件,该软件不能被所有用户所使用,应用程序只能委托半导体厂家,3.什么是堆栈?8032的堆栈区可以设在什么地方?一般应设在什么区域?如何实现?试举例说明。堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以后进先出的结构方式处理的。实质上,堆栈就是一个按照原则组织的一段内存区域。8032的堆栈区原则上可

4、以设在内部RAM中的00H-FFH的任意区域内,一般应设在30H-7FH的范围内。通过赋值的方式实现,如:MOV SP,#60H。4.8031的内部RAM中,哪些可以作为数据缓冲区?在8031内部RAM中 工作寄存器区 00H1FH和位寻址区 20H2FH 可以作为数据缓冲区。6.MCS-51单片机构成系统时,程序存储器的容量最大是多少?MCS-51单片机构成系统时,程序存储器的容量最大是64KB。7.当单片机系统的程序存储器的容量为8KB时,程序存储器的开始地址为多少?单片机内部无ROM时,EA/=0时,只访问外部ROMROM为外部ROM,开始地址为0000H-1FFFH,8KB=213=8

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

6、,将指针R0指向的内部RAM单元内容加1 PUSH ACC; 寄存器寻址,将累加器A的内容入栈 RL A; 寄存器寻址,将累加器A的内容左移1位 CPL 30H; 位寻址,将位变量30H的内容取反 SJMP $; 相对寻址,死循环指令 MOVC A, A+PC;基寄存器加变址寄存器间接寻址,程序存储器PC和累加器A中内容相加,送到累加器A 2. 指出下列指令中哪些是非法的?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, #

7、30HMOV OV, 30H MOV PSW.7,CMOV 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, #90H MOV R0, #30H 能不能直接 MOV 90H, #30H?不能,因为内部RAM的高128字节只能用寄存器间接寻址。2 MOV P1, #30H 4. 执行下列一段程序后,试分析有关单元内容。MOV PSW, #0; PSW=

8、00HMOV R0, #30H; =30HMOV 30H, #40H =40HMOV 40H, #50 =50HMOV A, R0 ADDC A, #0CEH =40H+0CEH+0=0EH PSW=10000101B=85HINC R0 =31H执行结果:=31H, =40H, =50, =0EH, =85H 这里特别注意OV的值。在带符号数的加减运算中,OV=1表示加减运算超出了累积器A所能表示的有符号数范围-128-+127,即产生了溢出,因此运算结果是错误的;反之,OV=0表示运算结果正确,即无溢出产生。OV=CY和CY1的异或。其中CY1为第六位向第七位是否有进位或借位,有,为CY1

9、=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, #2000H MOV R0, #40H MOV A, R0 MOVX DPTR, A INC R0 INC DPTR 6. 试编写一段程序,根据累加器A的内容,到程序存储器1000H起始的表格中取一双字节数,送内部RAM 50H、51H单元。MOV DPTR, #1000H PUSH ACC MOVC A, A+DPTR MOV

10、50H, A POP ACC INC DPTR MOV 51H, A 7. 试编写一段程序,进行两个16位数的相减运算:6483H-56E2H。结果高8位存在内部RAM 40H,低8位存41H。CLR C MOV A, #83H SUBB A, #0E2H MOV 41H, A MOV A, #64H SUBB A, #56H MOV 40H, A 8. 试编写一段程序,将30H、31H单元中存放的BCD数,压缩成一个字节原30H单元内容为高位,并放入30H单元。MOV A, 30H SWAP A ORL A, 31H 9. 试编写一段程序,将30H32H单元中的压缩BCD拆成6个单字节BCD

11、数,并放入33H38H单元。MOV SP, #60H MOV R0, #33H ACALL H2ASC MOV A, 31H ACALL H2ASC MOV A, 32H SJMP $ H2ASC: MOV B, A ANL A, #0FH MOV R0, A INC R0 MOV A, B SWAP A ANL A, #0FH RET 10. 设晶振频率为6MHz,试编写一个延时1ms的子程序,并利用该子程序,编写一段主程序,在P1.0引脚上输出高电平宽2ms、低电平宽1ms的方波信号。 MOV SP, #60H LOOP: SETB P1.0 ACALL DELAY CLR P1.0 AC

12、ALL DELAY SJMP LOOP DELAY: MOV R0, #248; 1T DJNZ R0, $; 2T NOP;RET 2T 延时计算:1T+248*2T+1T+2T=500T=1ms 第四章5.晶振为12MHz,用T0产生1ms的定时,可以选择哪几种方式?分别写出定时器的方式字和计数初值。如需要1s的定时,应如何实现?由于定时器工作在方式2和方式3下时的最大定时时间只有0.256ms,因此要想获得1ms的定时时间,定时器必须工作在方式0或方式1。机器周期为T计数=121/1210-6s=1s若采用方式0,定时器的方式字TMOD为:00H,根据公式可得定时器的计数初值为:TC=

13、MT/ T计数=2131*103/1=7192=1C18H 即:TH0应装0E0H;TL0应装#18H高三位为0若采用方式1,定时器的方式字TMOD为:01H,根据公式可得定时器的计数初值为:TC= MT/ T计数=2161*103/1=64536=FC18H即:TH0应装0FCH;TL0应装#18H如需要1s的定时,可以采用循环定时,增加循环次数。第五章1.若晶振为6MHz,试编写一个2ms延时子程序。 MOV R0, #498;1T+498*2T+1T+2T=1000T=2ms 6. 试设计一个n字节的无符号十进制数加法子程序,其功能为将R0和R1指出的内部RAM中两个n字节压缩BCD码无

14、符号十进制数相加,结果存放于被加数单元中。子程序入口时,R0,R1分别指向被加数和加数的低位字节,字节数n存于R2,出口时R0指向和的最高位字节,CY为进位位。 LEN EQU 30 ORG 0000H AJMP MAIN ORG 0030H MAIN: MOV SP. #60H MOV R2, #LEN ACALL ADD_NBYTE SJMP $ ADD_NBYTE: CLR C MOV A, R0 ADDC A, R1 DA A INC R1 DJNZ R2, LOOP END 11. 试设计一个子程序,其功能为将R0指出的内部RAM中6个单字节正整数按从小到大的次序重新排列。S_2_L: MOV R4, #5 CLR F0 PUSH 00H ;R0入栈 POP 01H ;出栈赋给R1LOOP0: MOV A, R4 MOV R5, A LOOP1: MOV A, R0 MOV A, R1 CJNE A, B, NEXT SJMP NOCH NEXT: JNC NOCH SETB F0 MOV R0, A XCH A, B MOV R1, A NOCH: INC R0 INC R1 DJNZ R5, LOOP1 JNB F0, HALT DJNZ R4, LOOP0 HALT:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1