




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理及应用习题答案第一章 基础知识1微型计算机主要由哪几部分组成?各部分有何功能?答:一台微型计算机由中央处理单元(CPU、存储器、I/O接口及I/O设备等组成, 相互之间通过三组总线(Bus):即地址总线AB数据总线DB和控制总线CB来连接。CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器 用于控制计算机进行各种操作。存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。按其功能可分为RAM和 ROM输入/输出(I/O、接口是CPU与外部设备进行信息交换的部件。总线是将CPU存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公 共通道。2将下
2、列十进制数分别转换成为二进制数,十六进制数和BCD码数的形式:100, 64, 78, 80解: 1 、100=1100100B=64H=0001 0000 0000BC;D2 、 64=1000000B=40H=0110 0100BC;D3 ) 78=1001110B=4EH=0111 1000BCD3. 写出下列十六进制无符号数对应的十进制数和二进制:0D5H, 64H, 2CH, 4FEH解: 1) 0D5H=213=11010101;B2) 64H=100=1100100B;3) 2CH=44=101100B;4) 4FEH=1278=B。4. 写出下列十进制数对应的二进制原码、反码和
3、补码:+35, +50, -10, -20解:1) + 35=( 23H)原=(23H 反=(23H)补;2 ) + 50=( 32H)原=(32H 反=(32H)补;3) 10=( 8AH 原=(0F5H 反=(0F6H 补;4) 20=( 94H)原=(0EBH 反=(0ECH 补;5. 根据给定的原码、反码、补码求真值。1) (0CBH) 原=(-75) 真值;2 )(8BH技=(-116)真值;3 )(9BH)=(-101)真值;4 )(6BHk=(+107)真值;解:1) (0CBH)原=(-75)真值;2 )(8BH)反=(-116)真值;3 )(9BH)补=(-101)真值;4
4、)(6BH)补=(+107)真值;6. 试分别判断下列各组数据大小?1) A=0.011BB=0.011C=0.011H2) A=1001BB=1001C=1001H解:1) A=0.011B=0X 2-1+1X 2-2+1X 2-3=0.25+0.125=0.375 ;B=0.011C=0.011H=0X 16-1+1 X 162+1X 16-3=0.5所以: ABC2) A=1001B=9; B=1001; C=1001H=4097所以: ABC7. 先将下列各组数据转换为补码表示的带符号数, 然后用进行补码运算, 再将结果还 原成原码,并写出对应的十进制数检验结果是否正确。1) ( 74
5、)412) ( 74) 41解:根据补码定义有:74=( 0B6H 补,+ 41=( 29H)补,一41 =(0D7H 补1) ( 74) +41补=(74 )补 + (41)补=(0B6F+ 29H)补=(0DFH 补 =( 33 真值十进制数运算: (74 +41=33 所以:二者运算结果相同。2 (74 41补=(74 补+(41 补=( 0B6H+ 0D7H 补=( 8DH 补 =( 115 真值十进制数运算: (74 41=115 所以:二者运算结果相同。8. 何谓单片机?单片机有何特点?答:单片机(Single Chip Microcomputer)是指把CPU RAM ROM定时
6、器/计数器 以及 I/O 接口电路等主要部件集成在一块半导体芯片上的微型计算机。单片机在控制应用领域中的特点:( 1)体积小、结构简单、可靠性高;( 2)控制功能强;( 3)低电压、低功耗;( 4)优异的性价比。9. 单片机部ROM勺配置有几种形式?答:单片机片ROM勺配置状态可分四种:(1)片掩膜(Mask) ROh型单片机(如8051),适合于定型大批量应用产品的生产;(2)片EPRO型单片机(如8751),适合于研制产品样机;(3)片无ROM型单片机(如8031),需外接EPROM单片机扩展灵活,适用于研制 新产品;(4)EEPROM或 Flash ROM型单片机(如89C51),部程序
7、存储器电可擦除,使用 更方便。第2章MCS-51系列单片机的结构和时序1. 8051单片机包含哪些主要功能部件?各有什么功能?答:8051单片机是一个完整的单片微型计算机。它包括以下功能部件:(1)1 个 8 位 CPU(2)片4KB的程序存储器ROM(3)片128B的数据存储器RAM(4)可寻址外部程序存储器和数据存储器空间各 64KB的控制电路;(5)21个特殊功能寄存器SFR(6)4个8位并行I/O 口 P0P3共32根I/O线;(7)1个全双工的串行口;(8)2个16位定时器/计数器;(9)5个中断源,有2个优先级嵌套中断结构;(10)片振荡器及时钟电路。2.8051单片机的EA信号有
8、何功能? 8031的EA引脚应如何处理,为什么?答:_(1)EA是访问外部程序存储器ROM勺控制信号。当EA为低电平(接地)时,CPU只执行外部程序存储器中的程序。当EA为高电平且PC值小于0FFFH(4K)时,CPU执行部程序存储器的程序,但当PC的值超出4K时(对8051/8751/8951 )将自动转去执行片外程序存储器的程序。8031单片机无片ROM勺,必须外部扩展程序存储器,因此,8031的EA必须接地(低 电平)。3. MCS-51单片机的P0P3 口各有什么特点?答:MCS-51单片机有P0 P1、P2、P3四个双向的8位并行I/O 口,每个端口可以按 字节输入或输出,每一条I/
9、O线也可以单独用作输入或输出(即按位进行输入或输出)。 每个端口都是由一个锁存器(即特殊功能寄存器P0P3), 个输出驱动器和两个(P3口为3个)输入缓冲器组成。并行I/O 口作输出时数据可以锁存,作输入时数据可以缓 冲,但它们又各具特点。(1) P0 口和P2 口构成MCS-51单片机的16位地址总线,P0 口还是8位的数据总线。 P3 口多用于第二功能输入或输出。通常只有P1 口用于一般输入/输出。P3 口各位的第二功能P3 口引脚第二功能P3 口引脚第二功能P3.0RXD(串行输入端)P3.4T0 (定时器0的外部输入)P3.1TXD(串行输出端)P3.5T1 (定时器1的外部输入)P3
10、.2INT0 (外部中断0输入)P3.6WR (片外数据存储器写选通控制输出)P3.3INT1 (外部中断1输入)P3.7RD (片外数据存储器读选通控制输出)(2) 系统复位后,P0P3 口的32个管脚均输出高电平,因此在系统的设计过程中, 应保证这些管脚控制的外设不会因为系统复位而发生误动作。(3) P0P3 口输出级的电路结构有所不同。P0 口是三态输出,其每个管脚均可以驱动8个LSTTL输入,而P1P3 口的输出级均有上拉电阻,每个管脚可驱动4个LSTTL输入。(4) 每个并行口,可定义一部分管脚为输入脚,另一部分管脚为输出脚,没有使用 的管脚可以悬空。4.简述8051单片机存储器的组
11、织结构和片 RAM的地址空间分配。答:8051单片机的存储器包括程序存储器和数据存储器,从用户使用的角度可分为 三个逻辑地址空间:(1) 片、片外统一编址的64KB程序存储器地址空间0000H0FFFFH(2) 64KB的外部数据存储器或扩展I/O 口地址空间0000H0FFFFH(3) 256B的片数据存储器地址空间 00H- FFH包括低128B的部RAM地址00H-7FH 和高128B的特殊功能寄存器地址空间,21个SFR离散地分布在这个区域)。部RAMft有128个单元,根据用途可划分为工作寄存器区、位寻址区和通用RAM区,各区域的特性如下:(1) 工作寄存器区(00H-仆H 寄存器区
12、32个单元共分4个组,每个组有8个8 位的寄存器RCR7。在任何时刻,四个组中只能有一组可以成为当前工作寄存器组使用, 其他三组作为一般的部RAM使用。当前工作寄存器组由程序状态字寄存器PSW勺RS0和RS1两位的状态来决定。(2) 位寻址区(20H2FH)共16个单元,每个单元有8个位,每个位都有一个位地址,编号为00H7FH,位寻址区的16个单元也可以按字节寻址,作为一般的部RAM使用。(3) 通用RAME( 30H-7FH 这部分存储空间作为一般的部 RAM区或堆栈区,CPU 只能按字节方式寻址。5.8051单片机有哪些特殊功能寄存器?答:8051单片机有21个8位的特殊功能寄存器(SF
13、R,它们的地址离散地分部在部 数据存储器的80HFFH地址空间。在8051单片机结构中,21个SFR在物理上是分散在片各功能部件中:(1) CPU的中 SFR Acc、B、PSW SP和 DPTR( 16 位寄存器,由 DPH和 DPL组成);(2) 定时/计数器单元中的寄存器:TMODTCON T0 (16位寄存器,由TH0和TL0 组成)和T1 (16位寄存器,由TH1和TL1组成);(3) 并行I/O 口寄存器:P0 P1、P2和P3;(4)中断系统的寄存器:IE和IP ;(5)串行端口中的寄存器:SCON SBUFffi PCON6程序计数器PC的功能和特点?答:程序计数器PC是一个1
14、6位的专用寄存器,用来存放即将要执行的指令地址,可 对64KB的程序存储器直接寻址。它具有自动加1功能,当CPU要取指令时,PC的容送地 址总线上,从存储器中取出指令后,PC容则自动加1,指向下一条指令,从而保证程序 按顺序执行。PC虽然也是CPU部的一个寄存器,但它在物理结构上是独立的,没有地址, 是不可寻址的,用户无法对它进行直接读写,不属特殊功能寄存器。7什么叫堆栈?堆栈指针SP的作用是什么? 8051单片机堆栈的最大容量是多少字 节?答:堆栈是按照“先进后出,后进先出”的原则来存取数据的一个部 RAM区域,这 个存储器区域的一端是固定的(栈底),另一端是活动的(栈顶),每个存储单元是不
15、能 按字节任意访问的。堆栈指针SP始终指向栈顶单元,栈顶随着数据入栈和出栈上下浮动。8051单片机堆栈的最大容量是128字节。8. 8051单片机是如何确定和改变当前工作寄存器组?答:在任何时刻,8051单片机的四个工作寄存器组中只能有一组可以成为当前工作 寄存器组使用,其他三组作为一般的部 RAM使用。当前工作寄存器组由程序状态字寄存 器PSW勺RS0和 RS1两位的状态来决定,如表所示。当前工作寄存器组的选择RS1RS0被选寄存器组寄存器R旷R7的地址000组00FH 07H011组08FH 0FH102组10FH 17H113组18FH 1FH根据需要,用户可以利用传送指令或位操作指令改
16、变RS1和RS0的容来选择不同的工作寄存器组。9单片机复位后,CPU使用了哪一组工作寄存器?工作寄存器 R旷R7对应的单元地 址是什么?答:单片机复位后,RS1 和 RS0都为0,CPU选中第0组作为当前工作寄存器组,工作寄存器R旷R7对应的单元地址是 00H07Ho10. 程序状态字寄存器PSW的作用是什么?各位的作用是什么?答:PSV是一个8位的特殊功能寄存器,由一些标志位组成,用于存放程序运行中的 各种状态信息。它可以进行位寻址。各位的作用如下:Cy:进位标志位。在进行加(或减)法运算时,若操作结果的最高位( D7位)有进 位(或借位)时,Cy由硬件置1,否则Cy清0。在进行位操作时,C
17、y又是位累加器,指 令助记符用C表示。AC辅助进位标志位。在进行加(或减)运算时,若操作结果的低半字节(D3位)向高半字节产生进位(或借位)时,AC位将由硬件自动置1,否则AC位清0。F0:用户标志位。用户根据需要对 F0置位或复位,作为软件标志。RS1和 RS0工作寄存器组选择控制位。由用户用软件改变 RS1和RS0的状态,以选 择RAM中的哪组工作寄存器为当前工作寄存器组。OV溢出标志位。当进行补码运算时,运算结果超出一128+ 127围时,产生溢出, 则ov自动置1,否则ov青0oPSW.1 保留位。 8051 中未定义。P:奇偶校验标志位。每条指令执行完后,该位始终跟踪累加器A中1的数
18、目的奇偶性。如果A中有奇数个1,贝U P= 1;否则P= 0o11 .什么是时钟周期、机器周期和指令周期?答 (1)时钟周期(又称为振荡周期)是指振荡器产生一个振荡脉冲信号所用的时 间,是振荡频率的倒数,称为拍节。(2)机器周期是指CPU完成某一个规定操作所需的时间,8051单片机的一个机器周 期包含6个状态,并依次表示为S1S6,每个状态分为2个节拍。因此一个机器周期包 含12个时钟周期(振荡周期),依次表示为:S1P1、S1P2 S2P1、S6P1 S6P2(3)指令周期是指CPL执行一条指令所需要的时间称为指令周期。 MCS-51单片机指 令周期根据指令的不同,可包含有 1 或 2或4个
19、机器周期。12. 8051单片机复位后寄存器 PC A、PSW SP、P0P3的状态各是什么?复位后 部RAM中的数据有何影响?答:8051单片机复位后 PC为0000H, A和PSW均为OOH, SP为07H, P0P3均为FFH 单片机的复位不影响部RAM的状态(包括工作寄存器Rn )o13. 80C51 如何进入节电工作方式?答:只有CHMO型单片机(如80C51)才有这种工作方式,有两种节电方式,即待机 方式和掉电保护方式。下:由片SFR中的电源控制寄存器PCON勺低4位来控制待机和掉电两种方式,其格式如位D7D6D5D4D3D2D1D0位名称SMO)GF1GF0PDIDL(1) ID
20、L:待机方式位。若IDL = 1,进入待机方式;(2) PD掉电方式位。若PD= 1,进入掉电方式;当PD和IDL同时为1,贝U先进入掉电工作方式。复位后,PCO中有定义的位均为0第3章MCS-51系列单片机指令系统1 简述汇编指令格式。答:汇编语言的指令格式一般如下:标号:操作码第一操作数,第二操作数,第三操作数;注释其中:带有方括号的部分代表可选项。标号:是表示该指令的符号地位,可以根据需要进行设置。标号以英文字母开始的16个字母或数字组成的字符串表示,并以“:”结尾。操作码:是表示指令的操作功能,用助记符表示。每条指令都有操作码,是指令的核 心部分。操作数:表示参与传送、运算的数据或数据
21、地址。这里的操作数不一定就是直接参 与运算或传送的,而应根据操作数的寻址方式,寻找出真正参与运算或传送的数据。二 个或二个以上操作数之间用“,”间隔。注释:用来解释该条指令或一段程序的功能, 便于对指令或程序的阅读理解。 注释以 “;”为开始,注释部分对程序的执行没有影响。2什么叫寻址方式?在MC 51系列单片机指令系统中,主要有哪几种寻址方式? 试分别举例说明。答:寻址就是寻找操作数的地址,寻找操作数地址的方式,称为操作数地址的寻址 方式,简称寻址方式。在MC 51系列单片机指令系统中,主要的寻址方式有:(1) 立即寻址方式,指令如:MOV A,# 67H;(2) 立即寻址方式,指令如:MO
22、V A,66H;(3) 寄存器寻址方,指令如:MOV A,R3;(4) 寄存器间接寻址方式,指令如: MOV A, R1;(5) 变址寻址方式,指令如: MOVC A, A+ DPTR(6) 相对寻址方式,指令如:SJMP 30H;(7) 位寻址方式,指令如: MOV ACC.3 Cy3试说明下列指令中划线部分的寻址方式。MOV A, R0ADD A,# 36HMOVC A; A+ PCDJNZ R2, reLSETB RS1CLR AMOV 45H, ACLR C解:第1条为寄存间接寻址方式;第2条指令为立即寻址方式;第3条指令为变址 寻址方式;第4条指令为相对寻址方式,第5条指令为位寻址方
23、式,第6条指令为寄存 器寻址,第6条指令为直接寻址方式,第7条指令为位寻址方式。4.设 A= 9BH Rg 30H, RAMW( 30H)= 40H, (40H)= 6DH 分别执行下列指令, 说明被真正传送的数据是多少?1) MOV A,# 40H2) MOV 40H, R03) MOV A,30H4) MOV A, R05) MOV A,R0答:1)真正被传送的数据是立即数40耳2 )真正被传送的数据是 R0间址中(即30H单元中)的数据40耳3 )真正被 传送的数据是30H单元中的数据40耳4 )真正被传送的数据是 R0间址中(即30H单元中)的数据40耳5 )真正被传送的数据是R0中的
24、数据30Ho5.程序:设 A= 86H, Rg 30H, R仁 40H, RAMW( 30H)= 76H, (40H)= 6BH 执行下面MOV A, 40HMOV R0, AMOV A, R0MOV R1, AMOV R1, AMOV R1,# 70H后,A=, R0=, R1=, (30H)=, (40H) =解:MOVA, 40H; A=6BHMOV R0, A; (R0)=(30H)=6BHMOV A, R0; A=30HMOV R1, A; (R1)=(40H)=30HMOV R1, A; R仁30HMOV R1,# 70H ; (R1)=(30H)=70H所以:A=30H , Rg
25、 30H , R1=30H , (30H)70H , (40H)30H6. 设 A= 65H, Rg 30H, R仁 31H, R2= 32H, RAMW( 30H = 40H, (31H)= 50H, (32H)= 60H, (40H)= 70H, (50H = 80H,执行下面程序:XCHD A, R1MOV 40H, ASWAP AMOV 50H, AXCH A, R2MOV R0, A后,A=, R0=, R1=, R2=, (30H) =,(40H)=_, (50H) =解:XCHDA, R1(31H),(32H)MOV 40H, ASWAP AA=60H,(R1)=(31H)=55
26、H(40H)= 60HA=06HMOV 50H, AXCH A, R2MOV R0, A 所以:A=32H , Rg 30H(31H)=55H , (32H) =(50H)=06HA=32H R2=06H(R0)=(30H)=32HR1=31H ,(40H)60H ,R2=06H ,(30H)60H , (50H)7. 执行下面程序后,试冋:A=?ORG 1000HMOV DPTR # 1020HMOV A,# 03HMOVC A, A+ DPTRRETORG 1020HDB 56H, 78H, 65H, 29H, 10H解: ORG 1000H;DPTR=1020H;A=03H;A=(102
27、3H)=29HMOV DPTR # 1020HMOV A,# 03HMOVC A, A+ DPTRRETORG 1020HDB 56H, 78H, 65H, 29H, 10H所以: A=29H8试用数据传送指令来实现下列要求的数据传送。1) 将R2中的容送到R3中。2) 将RAM 30H单元中的容与外 RAM 2040H单元中的容交换。3) 将ROM 2040H单元中的数据存放在 RAM 50H单元中。4) 将外RAM 30H单元中的容送到 R2中。5) 将R2与R3中的容进行交换。6) 将ROM 2100H单元中容送外 RAM 3165H单元中。解:1)MOV A,R2MOV R3,A2)
28、MOV DPTR 2040HMOVX A,DPTRMOV R1,AMOV A,30HMOVX DPTR,AMOV 30H,R13) MOV A,#00HMOV DPTR,#2040HMOVC A,A+DPTRMOV 50H,A4) MOV R0,#30HMOVX A,R0MOV R2,A5) XCH A,R2XCH A,R3XCH A,R26) MOV A,#00HMOV DPTR,#2100HMOVC A,A+DPTRMOV DPTR,#3165HMOVX DPTR,A9.设 A= 7EH, Rg40H, (40H)= 9AH, B= 23H, Cy=1。分别执行下列指令后,试问:A=?各标
29、志位为什么状态?1) ADD A, R02) ADDC A,R03) SWAP A4) XCH A, RO5) INC A6)SUBBA,56H7)SUBBA,RO8)RLC A9)RR A1O)CPLA11)ANLA, RO12 )ORLA,8FH13 )XRLA,4OH14)ANL4OH, A15 )ORL4OH, OFOH16 )ANLA,OFH17)DECA18)MULAB19)DIVAB2O)RRCA解:1) ADD A, ROA= A+( RO) = A+(40H)= 7EH+ 9AH= 18H, Cy= 1,AC= 1,OV= O,P = 02) ADDC A, ROA = A+
30、 RO+ Cy= 7EF+ 40H+ 1= OBFH Cy= 0,AC= 0,OV= 1,P = 13) SWAP AA =OE7H4) XCH A, ROA =(RO)=( 4OH)=9AH,(RO)=( 4OH)=A=7EH,P=O5) INC AA =A+1=7EH+1=7FH,P=16) SUBB A, 56HA =A56HCy=7EH56H1=27H,Cy=O,AC=O,OV=O,P=O7) SUBB A,ROA =AROCy=7EH4OH1=3DH,Cy=O,AC=O,OV=O,P=18) RLC AA =111111O1B=OFDH,Cy=O,P=19) RR AA = 0011
31、1111吐 3FH P= 010) CPL AA = 81H, P= 011) ANL A, R0A = AA( RC)= AA( 40H)= 7EHA 9AH= 1AH P= 112) ORL A, 8FHA= AV 8FH= 7EHV 8FH= 0FFH P= 013) XRL A,40HA = A(40H)= 7EH 9AH= 0E4H P= 014) ANL 40H A(40H) = ( 40H)A A= 9AHA 7EH= 1AH A= 7EH15) ORL 40H 0F0H(40H) = ( 40H)V 0F0H= 9AHV 0F0H= 0FAH,心 7EH16) ANL A 0F
32、HA = AA 0FH= 7EHA 0FH= 0EH P= 117) DEC AA = A- 1 = 7EH- 1 = 7DH P= 018) MUL ABA X B= 7EHX 23H= 01111110BX 00100011吐 0001 0001 0011 1010B = 113AHB =11H A=3AH OV=1,P=019) DIV ABA - B= 7EH 23H= 0111 1110B十 0010 0011B= 0000 0011B 余 0001 0101BA =03H B=15H OV=0,P=020) RRC AA =0BFH Cy=0,P=110.试编写程序,要求将 RAM
33、 30H4FH中的容平移送到 40H5FH中。 解:(参考程序)START:MOV R0,#4FHMOV R1,#5FHMOV R2,#20HLOOP:MOV A,R0MOV R1,ADEC R0DEC R1DJNZ R2,LOOPEND11.试编写程序,将 RAM勺30H4FH中的容清零解:(参考程序)START:MOV R0,#30H CLR A MOV R2,#20HLOOP:MOV R0,A INC R0 DJNZ R2,LOOP END12.试编写程序,在 RAM勺30H-4FH中查找关键字0AH若有,则将 RAM勺50H单 元置为01H,并将找到的存放第一个关键字的单元地址存放在R
34、AM勺52H单元中。解:(参考程序)START:MOV R0,#30H MOV R2,#20H MOV 50H,#00HLOOP1:CJNE R0,#0AH,LOOP2MOV 50H,#01HMOV 52H,R0SJMP LOOP3LOOP2:INC R0DJNZ R2,LOOP1LOOP3:END13.在RAMA 30H到3FH单元中存放着符号数,要求统计正数、零、负数的个数,结 果分别存放在 RAM勺40H 41H 42H三个单元中。解:(参考程序)START:MOV R0,#30HMOV R2,#10HMOV 40H,#00HMOV 41H,#00HMOV 42H,#00HLOOP1:M
35、OV A,R0JNZ L00P2 ;判断A是否为非0,非0转移INC 41H;零的个数统计量加1SJMP LOOP4LOOP2:JB ACC.7,LOOP3判断A是否为负数,是负数则转移INC 40H;正数的个数统计量加1SJMP LOOP4LOOP3:INC 42H;负数的个数统计量加1LOOP4:INC R0DJNZ R2,L OOP1END14.分析执行下面各段程序的结果。(1) ORG 1000HMOV A,# 34HADD A,# 78HDA ARETA=, O店, P=, Cy=, AO解: ORG 1000HMOV A,# 34H ;A = 34HADD A,# 78H ;A =
36、 A+ 78H= 34H+ 78H= 0ACH,Cy=0,AC=0,OV=1,P=0 DA A ;A = A+ 66H= 0AC+ 66H= 12H,Cy=1,AC=0,OV=0,P=0 RET所以:A= 12H , OV= _0_, P= 0 , Cy= 1 , AO 0(2) MOV SP, # 5FHMOV A,# 54HMOV B,# 78HPUSH APUSH BPOP APOP BRETA=, B=, SP=解:MOVSP, # 5FH ;SP=5FHMOV A,# 54H ;A=54HMOV B,# 78H ;B=78HPUSH A;SP=60H,(SP)=(60H)=54HPU
37、SH B;SP=61H,(SP)=(61H)=78HPOP A;A=(SP)=(61H)=78H,SP=60HPOP B;B=(SP)=(60H)=54H,SP=5FHRET所以:A= 78H , B= 54H , SP= 5FH(3) MOV A,# 7DHADD A,# 6BHMOV R0,# 34HMOV 34H,# 0BCHADDC A, R0XRL A, R0ORL A, 34HMOV R0, ASWAP AXCH A, R0RETA=, R0=, (34H) =解: MOVADDMOVMOVA,# 7DH ;A=7DHA,# 6BH ;A=7DH + 6BH=0E8H,Cy=0R0
38、,# 34H ;R0=34H34H,# 0BCH ;(34H)=0BCHADDC A, R0 ;A=A + (R0) + Cy=A (34H) + Cy=0E8F+ 0BCW 0=0A4H,Cy=1XRL A, R0 ;A=A R0=0A4网 34H=90HORL A, 34H ;A=A V (34H)=90HV 0BCH=0BCHMOV R0, A ;(R0)=(34H)=A=0BCHSWAP A ;A=0CBHXCH A, R0 ;A=34H,R0=0CBHRET所以:A= 34H , Rg 0CBH , (34H)= 0BCHCLR CMOV A,# 55HMOV R0,# 23HL00
39、P1 ADDC A, ROJNC LOOP1RETA=, RO=CLR C ;Cy=OMOV A,# 55H ;A=55HMOV RO,# 23H ;R0=23HLOOP1ADDC A, RO ;(1)A=A+R0+Cy=78H,(2)A=9BH,(3)A=0BEH,(4)A=0E1H;(5)A=04H,Cy=1JNC LOOP1RETA=04H, RO=23H(5)解:ORG 2000HMOV A,# OOHMOV R2,# 09HLOOP1 ADD A,# 03HDA ADJNZ R2, LOOP1MOV 30H, ARETA=, R2=, (30H)=ORG 2000HMOV A,# O
40、OH ;A=00HMOV R2,# 09H ;R2=09HLOOP1 ADD A,# 03H ;(1)A=03H,(2)A=06H,(3)A=09H,(4)A=0CH,(5)DA A ;(1) A=03H,(2)A=06H,(3)A=09H,(4)A=12H,(5)DJNZ R2,LOOP1;(1) R2=08H,(2)R2=07H,(3)R2=06H,(4)R2=05H,(5) MOV 30H, A ;(30H)=27HRETA= 27H , R2= OOH , (30H)= 27H15对3-14 (1)、(5)题进行手工汇编 解:(1)源程序地址机器码ORG 1000HMOV A,# 34
41、H1000H74 34ADD A,# 78H1002H24 78DA A1004HD4RET1005H22源程序地址机器码ORG 2000HMOV A,# 00H2000H74 00MOV R2,# 09H2002H7A 09LOOP1 ADD A,# 03H2004H24 03DA A2006HD4DJNZ R2, LOOP12007HDA FBMOV 30H, A2009HF5 30RET200BH2216.试编制能延时40ms的程序。解: 设fosc=12MHz,则机器周期为1us。参考程序START:MOV R0,#84H;1 个机器周期数,R0=132MOV R1,#96H;1 个机
42、器周期数尺仁150LOOP1:DJNZ R1,LOOP1 ;2 个机器周期数MOV R1,#64H;1 个机器周期数DJNZ R0,LOOP1 ;2个机器周期数RET;2个机器周期数上述程序执行的机器周期数为:1+ 1+( 2X150+ 1+ 2)X 132+ 2= 40000 (个) 所以上述程序执行的时间即为 40ms17.试编制程序,实现1 + 2+ 3+ 100=?解:分析:进行十进制数加法,因此需要进行 BCD码调整,其中千位、百位数存放在 31H单元,十位、个位数存放在 30H单元中。参考程序START:MOV A,#00HMOV R0,#01HMOV 31H,#00HLOOP1:
43、ADD A,R0DA AJNC LOOP2 INC 31H LOOP2:PUSH AMOV A,R0ADD A,#01HDA AJC LOOP3MOV R0,APOP ASJMP LOOP1LOOP3:POP AINC 31HMOV 30H,A END18在RAM勺30H-3FH单元中存放着16个字节的无符号数,要求比较大小,并按从 大到小顺序存放在 RAM的30H-3FH单元中。解:参考程序START:MOV R0,#30HMOV R2,#0FHLOOP1:MOV A,R0INC AMOV R1,ALOOP2:MOV A,R0CLR CSUBB A,R1JNC LOOP2XCH A,R0XC
44、H A,R1INC R1CJNE R1,#40H,LOOP2INC R0DJNZ R2,L00P1END19. 编制程序实现下列逻辑功能:Q= xYZ + X yz解:参考程序START:X BIT P1.0Y BIT P1.1Z BIT P1.2Q BIT P1.3MOV C,YANL C,ZMOV FO,CMOV C,XANL C,/F0MOV F0,CMOV C,YANL C,/XANL C,/ZORL C,F0MOV Q,CEND20. 阅读下面程序,分析执行后的结果,并进行手工汇编ORG 0100HMOV A,# 67HSETB ACC.7MOV C, ACC.2CPL AMOV A
45、CC.6 CCLR CSETB ACC.0MOV ACC.4, C解:(1)分析执行结果ORG 0100HMOV A,# 67H ;A=67H=01100111BSETB ACC.7 ;A=11100111BMOV C, ACC.2 ;Cy=1CPL A;A=00011000BMOV ACC.6 C ;A=01011000BCLR C;Cy=0SETB ACC.0 ;A=01011001BMOV ACC.4, C ;A=01001001B 所以结果:A= 49H,Cy=0(2)人工汇编源程序地址机器码ORG 0100HMOV A,# 67H0100H74 67SETB ACC.70102HD2
46、 E7MOV C, ACC.20104HA2 E2CPL A0106HF4MOV ACC.6 C0107H92 E6CLR C0109HC3SETB ACC.0010AHD2 E0MOV ACC.4, C010CH92 E4第4章MCS-51系列单片机中断系统与定时器/计数器1 计算机与外部设备实现数据传送有哪些方式?答:在计算机系统中,CPU与 I/O接口传送数据的控制方式主要有无条件传送方式、 条件传送方式、中断方式和存储器直接存取方式(DMA方式)等四种。2. 什么叫中断?采用中断方式有些优点?答:中断是计算机的CPU暂停正在执行的程序,转而执行提出中断请求的那个外部 设备或事件的服务程
47、序(即中断服务程序),待服务程序处理完毕后,再返回原来程序的 过程。采用中断方式的优点:计算机引入中断技术,解决了CPU与外设的速度匹配问题,提高了 CPU的工作效率,同时使计算机具有分时处理功能、实时处理功能、故障处理功 能等。3. 中断响应的条件有哪些?简叙中断的响应步骤。答:中断响应的条件有:(1)有中断请求信号;(2)中断请求没有被屏蔽;(3)中 断是开放的;(4) CPU在处理完现行指令后响应中断;同时还要具备:(1) CPU没有处理 同级或更高级中断;(2)正在执行的指令不是 RETI、也不是访问IE和IP的指令。中断响应的步骤是:(1)关中断;(2)保存断点;(3)保护现场;(4
48、)转入相应的 中断服务程序;(5)恢复现场;(6)开中断;(7)中断返回。4. 在MC&51单片机系统中,有哪些中断源?响应这些中断的服务程序入口地址分 别是多少?如何合理安排中断服务程序?答:在MC&51单片机系统中,中断源有:(1) INTO :外部中断0,中断请求信号 由P3.2输入;(2) TFO:部定时器/计数器0溢出中断;(3) INT1 :外部中断1,中断请 求信号同P3.3输入;(4) TF1 :部定时器/计数器1溢出中断;(5) TI或RI :串行口中 断请求,包括串行口接收中断和串行口发送中断。响应这些中断的服务程序入口地址安排:(1) INT0 : 0003H; (2)
49、TFO: 000BH (3)INT1 : 0013H; (4) TF1: 001BH (5) TI 或 RI: 0023H在安排中断服务程序地址时,应该考虑中断服务程序的字节数,如果字节数小于等 于8个字节,则直接存放在从规定的入口地址开始的空间中,如果字节数大于8个字节,则由于,各中断服务程序只有 8个字节空间,不能占用其它中断服务程序的空间,因此 在入口地址处放一条LJMP XXXXH旨令,真正的中断服务程序存放在以 XXXXF开始的空间 中。5. 在单片机复位后,IP和IE均为何值?这些值说明了什么?如果当前单片机系统 只允许开放INTO和T0中断源,且要求INTO、T1为高级中断源,其
50、余为低级中断源,如 何设置IP和IE的值?答:在单片机复位后,IP和IE均为OOHo IP为00H,说明复位后,各中断的优先级 均为低级优先级;IE为00H,说明复位后,禁止所有的中断源中断,CPU也处于禁止响应 中断状态。如果当前单片机系统只允许开放 肝0和T0中断源,且要求 而T0、T1为高级中断源,其余为低级中断源,则设置IP和IE的值的指令如下(参考):MOV IP,#09H;IP只能字节操作MOV IE,#83H;IE还可能通过位操作指令实现END或MOV IP,#09H;IP只能字节操作SETB ET0SETB EX0 SETB EA END6. 外部中断有几种触发方式?如何选择?
51、答:外部中断有两种触发方式,一种是电平触发方式,另一种是下降沿触发方式。 如果设置为电平触发方式,则将 TCON中的IT0或IT1清0,指令为:CLR IT0 或CLR IT1;如果设置为下降沿触发方式,则将 TCON中的IT0或IT1置1,指令为: SETB IT0 或 SETB IT1 o7. 什么叫中断嵌套?答:如果CPU正在处理的是低级的中断请求,那么高级的中断请求可以使CPU暂停处理低级中断请求的中断服务程序,转而处理高级中断请求的中断服务程序,待处理完 高级中断请求的中断服务程序后,再返回原低级中断请求的中断服务程序,这种情况称 为中断嵌套。8. 定时器0和定时器1各有几种工作方式
52、?简述之。答:定时器0的工作方式有方式0、方式1、方式2、方式3;定时器1的工作方式 有方式0、方式1、方式2o工作方式0是13位定时/计数器工作方式;工作方式 1是16定时/计数器工作方 式;工作方式2是8位自动重装定时/计数器工作方式;工作方式3仅限于定时器0,是两个8位定时/计数器工作方式。9.写出TMOD勺结构、各位名称和作用。答:TMO勺结构:DdDDD3D2D1D0TMODGATEC/TM1M0GATEC/TM1M0(89H)J定时器1方式字段 TJ定时器0方式字段 T各位的名称及作用如下:GATE选通门控制位。当GATE=0寸,由TRx启动Tx工作;当GATE二时,由TRx和IN
53、Tx 共同启动Tx工作。C/T:定时器/计数器选择位。当 C/T=0时,定时器状态;当C/T=1时,计数器状态。Ml MO工作方式选择位。当M1M0=00时,方式0, 13位定时/计数器;当M1M0=01 时,方式1, 16位定时/计数器;当M1M0=10时,方式2, 8位自动重装定时/计数器; 当M1 M0=11时,方式3,分二个8位定时/计数器。10.已知单片机系统时钟频率fosc=6MHz若要求定时时间分别为0.1ms、1ms 10ms 定时器0工作在方式0、方式1、方式2情况下,计算定时初值TH0 TL0分别为多少?解:由于fosc=6MHz所以机器周期为2us。(1) 方式0:定时 0.1ms:初值=213 100/2=8192-50=8142=11111110 01110B,所以:TH0= 0FEH TL0= 0EH定时 1ms 初值=213 1000/ 2=8192-500=7692=11110000 01100B所以:TH0= 0F0H, TL0= 0CH定时 10ms
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学习情境3农产品直播带货任务3.6农产品直播粉丝运维3.6
- 合作意向书的范本2025年
- 五年级数学(小数除法)计算题专项练习及答案
- 网络文学出海2025:跨文化策略与国际化发展挑战
- 2025版高品质美缝施工项目合同正范
- 2025年度婚介服务+旅游婚拍合同范本
- 2025年文化创意产业服务费采购合同
- 2025版绿色生态住宅工程结算合同范本
- 2025版股东借款及违约责任明确合同模板
- 2025年度金融风险管理咨询与服务合同协议
- 建筑工程(一切)险公估作业规范
- 急性脑血管病并发症的预防及处理
- 市场营销实务中职全套教学课件
- 锡纯新材料半导体芯片材料生产项目环评报告
- 奶水牛养殖可行性研究报告
- 新人教版高中数学选择性必修第一册全套精品课件
- 农业机械设备采购投标方案
- 新公务员法培训课件
- 天然药物化学:03-天然药物的提取分离方法
- 公共基础知识1000题
- 光伏包工包料安装合同范本
评论
0/150
提交评论