单片机原理、接口技术及应用课后答案—黄建新(21页).doc

上传人:1595****071 文档编号:35957220 上传时间:2022-08-24 格式:DOC 页数:15 大小:248.50KB
返回 下载 相关 举报
单片机原理、接口技术及应用课后答案—黄建新(21页).doc_第1页
第1页 / 共15页
单片机原理、接口技术及应用课后答案—黄建新(21页).doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《单片机原理、接口技术及应用课后答案—黄建新(21页).doc》由会员分享,可在线阅读,更多相关《单片机原理、接口技术及应用课后答案—黄建新(21页).doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-单片机原理、接口技术及应用课后答案黄建新-第 15 页作业题及答案第1章1.9 完成下列数制的转换。(1)1011.1101B( 11.8125 )D( B.D )H (2)110.101B( 6.625 )D( 6.A )H(3)166.25( 10100110.0100 )B( A6.4 )H(4)1011011.101B( 5B.A )H( 1001 0001.0110 0010 0101 )BCD(5)100001100011.01000101BCD( 863.45 )D1.10 写出下列真值对应的原码、反码和补码。 (1)1100110B 【1100110B】原码=66H【1100

2、110B】反吗=66H【1100110B】补码=66H (2)1000100B 【1000100B】原码=C4H【1000100B】反码=BBH【1000100B】补码=BCH (3)86 【86】原码=D6H【86】反码=A9H【86】补码=AAH1.11写出下列机器数分别作为原码、反码和补码时,其表示的真值分别是多少?(1)01101110B +110(6EH)(2)10110101B-53(35H), -74(-4AH), -75(-4BH)1.12 已知X和Y的真值,试分别计算XY补和XY补,并指出是否产生溢出(设补码均用8位二进制表示)。 (1)X1000100B,Y0010010B

3、X补=01000100B, Y补=11101110BXY补: 0100 0100 1110 1110 1 0011 0010C7=1,C6=1,相同, 所以无溢出。 0100 0100 0001 0010 0101 0110XY补 C7=0,C6=0,相同, 所以无溢出。(2)X1100001B,Y1000010B XY补:有溢出XY补无溢出(3)X1101001B,Y1010101B XY补:有溢出XY补:无溢出1.13 用十六进制写出下列字符的ASCII码。 (1)NBA NBA=4E4241H (2)HELLO!2009 HELLO!2009=48454C4C4F2132303039H第

4、2章2.6 80C51单片机的信号有何功能?在使用80C31和89C51单片机时,信号应如何处理?答:是访问外部程序存储器选通信号。当其为低电平时,对ROM的读操作限定为外部存储器;当其为高电平时,对ROM的读操作是从内部开始的,当PC值大于内部程序存储器地址范围时,CPU自动转向读外部程序存储器。 80C31单片机片内无ROM,应将引脚固定接低电平,以迫使系统全部执行片外程序存储器程序。89C51单片机应将引脚接+5V电源。2.9 系统复位后,CPU使用哪一组工作寄存器?它们的地址是什么?如何改变当前工作寄存器组?答:系统复位后,CPU使用0组寄存器,它们的地址分别是:R0-R7:00H07

5、H. 可以通过改变PSW寄存器的PSW.4和PSW.3两位的值来改变工作寄存器组。2.10 80C51单片机具有很强的布尔(位)处理功能?共有多少单元可以位寻址?采用布尔处理有哪些优点?答:是的,80C51单片机具有很强的布尔处理功能,在内部RAM区20H2FH的16个单元都可以位寻址;同时21个特殊功能寄存器中还有部分特殊功能寄存器可以位寻址。 布尔(位)处理机,是80C5l系列单片机的突出优点之一,给“面向控制”的实际应用带来了极大的方便。布尔(位)处理机借用进位标志CY作为位累加器,在布尔运算中,CY是数据源之一,又是运算结果的存放处,位数据传送的中心。布尔(位)处理机指令系统中有专门进

6、行位处理的指令集,利用位逻辑操作功能进行随机逻辑设计,可把逻辑表达式直接变换成软件执行,方法简便,免去了过多的数据往返传送、字节屏蔽和测试分支,大大简化了编程,节省了存储器空间,加快了处理速度,增强了实时性能。还可实现复杂的组合逻辑处理功能。所有这些,特别适用于某些数据采集、实时测控等应用系统。2.12 单片机的复位方法有哪两种?复位后各寄存器及RAM中的状态如何?答:按键复位和外部脉冲复位。 单片机复位后,21个寄存器中,SP=07H,P0P3均为FFH,SBUF为不定值,其余均为0.2.13 80C51单片机的、XTAL1和XTAL2引脚各有何作用?单片机时钟电路分别采用内部和外部振荡方式

7、时,XTAL1和XTAL2引脚应如何连接?答:是片外程序存储器选通信号,低电平有效。(片外数据存储器读选通),输出,低电平有效。(片外数据存储器写选通),输出,低电平有效。XTAL1和XTAL2内部振荡方式:在80C51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTALl,其输出端为引脚XTAL2。当使用芯片内部时钟时,这两根引线用于外接石英晶体和微调电容。外部振荡方式:把外部已有的时钟信号引入单片机内。该方式适宜用来使单片机的时钟信号与外部信号保持同步。外部振荡信号由XTAL1引入,XTAL2端悬空不用。第3章3.7用指令实现下述功能。(1)内部RAM30H单元内容送R0。MOV R

8、0,30H(2)将立即数10H送入内部RAM30H单元。MOV 30H,#10H(3)R0内容送入R1。MOV A,R0MOV R1,A(4)内部RAM30H单元内容送外部RAM30H单元。MOV R0,#30HMOV A,R0MOVX R0,A(5)外部RAM3000H单元内容送内部RAM30H单元。MOV DPTR,#3000HMOVX A,DPTRMOV 30H,A(6)ROM3000H单元内容送内部RAM30H单元。MOV DPTR,#3000HMOV A,#00HMOVC A,(A+DPTR)MOV 30H,A3.8已知内部RAM中,(30H)40H,(40H)50H,(50H)5A

9、H,(5AH)60H,ROM中(125AH)88H,试分析下面程序的运行结果,并指出每条指令的源操作数寻址方式。 MOV A,50H;直接寻址 MOV R0,A;寄存器寻址 MOV P1,0F0H;立即寻址 MOV R0,30H;直接寻址 MOV DPTR,1200H;立即寻址 MOVX DPTR,A;寄存器寻址 MOVC A,ADPTR;变址寻址 MOV 40H,50H;直接寻址 MOV P2,P1;直接寻址程序执行后,P2=F0H ; (40H)= 5AH ;(A)=88H ;(1200H)=5AH; (5AH)=40H3.9设(R1)31H,内部RAM31H的内容为68H,32H单元的内

10、容为60H,(A)10H。请指出运行下面的程序后各单元内容的变化。 MOV A,R1;(A)=68H MOV R1,32H;(31H)60H MOV 32H,A;(32H)=68H MOV R1,45H;(R1)=45H程序前3条指令将内部RAM31H和32H单元内容互换。3.10 已知当前PC值为2000H,用两种方法将ROM207FH单元中的常数送入累加器A。(1)MOV DPTR,#207FHMOV A,#00HMOVC A,A+DPTR(2)MOV A,#7CHMOVC A,A+PC3.16 已知延时程序为 DELAY:MOV R0,0A0H LOOP1:MOV R1,0FFH LOO

11、P2:NOPDJNZ R1,LOOP2DJNZ R0,LOOP1 若系统的晶振频率为12MHz,请指出该延时子程序的延时时间。机器周期数DELAY:MOV R0,0A0H1 LOOP1:MOV R1,0FFH1 LOOP2:NOP1DJNZ R1,LOOP22DJNZ R0,LOOP12由于晶振频率为12MHz,1M=1s该程序延时时间为:【1+(1+2)*255+2】*160+1=122.881ms第4章4.13编写程序将内部RAM40H60H单元清0MOV R7,#21HMOV R0,#40HLOOP:MOV R0,#00HINC R0DJNZ R7,LOOPSJMP $4.15 编程将外

12、部RAM的1000H1FFF区域的数据送到2000H2FFFH区域。ORG 0100HMOV DPTR,#1000HMOVR7,#10HLL1:MOVR6,#00HLL:MOVXA,DPTRMOVB,AMOVA,DPHADDA,#10HMOVDPH,AMOVA,BMOVXDPTR,AMOVA,DPHCLRCSUBBA,#10HMOVDPH,AINCDPTRDJNZR6,LL INCDPHDJNZR7,LL1SJMP$4.16已知一内部RAM以BLOCK1和BLOCK2为起始地址的存储区中分别有5字节无符号被减数和减数(低位在前,高位在后。请编写减法子程序令它们相减,并把差放入以BLOCK1为起

13、始地址的存储单元。BLOCK1 EQU 30H BLOCK2 EQU 40H ORG 0000H LJMP STARTSTART:MOV R0,#BLOCK1 MOV R1,#BLOCK2 MOV R7,#1 LP:MOV R6,#5 CLR C LP1:MOV A,R0 SUBB A,R1 MOV R0,A INC R0 INC R1 DJNZ R6,LP1 DJNZ R7,LP SJMP $ END4.17 从内部RAM20H单元开始存有一组带符号数,其个数已存放在1FH单元中。要求统计出大于0、等于0和小于0的数的数目,并把统计结果分别存放在ONE、TWO、THREE三个单元中。ONE

14、EQU 1EHTWO EQU 1DH THREE EQU 1CH ORG 0000H LJMP STARTSTART:MOV ONE,#00H MOV TWO,#00H MOV THREE,#00H MOV R0,#20H MOV R7,1FHLOOP3: MOV A,R0 INC R0 JZ LOOP1 JB ACC.7,LOOP2 INC ONE SJMP HALTLOOP1: INC TWOSJMP HALTLOOP2: INC THREEHALT: DJNZ R7,LOOP3 SJMP $4.18 设内部RAM30H单元有两个非零的BCD数,请编写求两个BCD数的积,并将积以压缩型BC

15、D数形式送入31H单元的程序。 ORG 0000HMOVA, 30HANLA, #0F0HSWAPAMOVB, AMOVA, 30HANLA, #0FHMULA, BMOVB, #0AHDIVABSWAP AORLA, BMOV31H, ASJMP$4.20 编制绝对值函数程序。绝对值函数方程如下: 假设X存于30H单元,Y存于40H单元。X 及Y均为补码数. X EQU 30H Y EQU 40H ORG 0000H LJMP STARTSTART: MOV A,X JZ LOOP JNB ACC.7,LOOP CPL A ADD A,#01H LOOP: MOV Y,A SJMP $ EN

16、D4.21 试编写统计数据区长度的程序,设数据区从内RAM30H开始,该数据区以0结束,统计结果送人2FH中。且数据区结束字符,也计入统计数据区的长度中去. ORG 0000H LJMP START START:MOV R0,#30H MOV R7,#00H LOOP:MOV A,R0 INC R0 INC R7 CJNE A,#00H,LOOP MOV 2FH, R7 SJMP $4.23巳知R7中为2位十六进制数,试编程将其转换为ASCII码,存人内部RAM 31H、32H中(低字节在前)。英文字母为大写.ORG 0000H LJMP START START:MOV SP,#60H MOV

17、 A,R7 LCALL BCDASCII MOV 31H,A MOV A,R7 SWAP A LCALL BCDASCII MOV 32H,ASJMP $ BCDASCII:ANL A,#0FH CJNE A,#10,LOOP LOOP: JC AD30H ADD A,#07H AD30H:ADD A,#30H HT: RET END解法2 ORG 0000H LJMP STARTSTART: MOV DPTR,#TAB MOV A,R7 ANL A,#0FH MOVC A,A+DPTR MOV 31H,A MOV A,R7 ANL A,#0F0H SWAP A MOVC A,A+DPTR M

18、OV 32H,A SJMP $ TAB:DB30H,31H,32H,33H,34H,35H,36H,37H,38HDB 39H,41H,42H,43H,44H,45H,46H END4.24设在MA和MB单元中有两个补码形式的8位二进制带符号数。请编写求两数之和并把它放在SUML和SUMH单元(低8位在SUML单元)的子程序。提示:在两个8位二进制带符号数相加时,其和很可能会超过8位数所能表示的范围,从而需要采用16位数形式来表示。因此,在进行加法时、可以预先把这两个加数扩张成16位二进制补码形式,然后对它完成双字节相加。ORG 0000HLJMP STARTSTART:MOV A,MA JB

19、 ACC.7,LLA MOV R7,#00H SJMP LLLLLA: MOV R7,#0FFHLLL: MOV A,MB JB ACC.7,LLB MOV R6,#00H SJMP LADDLLB: MOV R6,#0FFHLADD:MOV A,MA ADD A,MB MOV SUML,A MOV A,R6 ADDC A,R7 MOV SUMH,A SJMP$4.25 设外部RAM1000H10FFH数据区中的数均为无符号数。试编写程序,找出该区域中的数的最大值,并放人内部RAM30H单元中。MOVDPTR,#1000HMOVR7,#00H;计数器MOVB,#00H;放中间结果L1:MOVX

20、 A, DPTRCJNEA, B, L2L2:JCL3MOVB, A; B中放大值L3:INCDPTRDJNZR7, L1MOV30H, BSJMP$4.28 已知a、b、c均为09的整数,试编程求解表达式Y=(a-b)2+(b-c)2+(c-a)2的值 AA EQU 31H BB EQU 32H CC EQU 33H Y EQU 34H ORG 0000H LJMP START START:MOV SP,#60H MOV A,AA CLR C SUBB A,BB ACALL CHUNCI MOV R6,A MOV A,BB CLR C SUBB A,CC ACALL CHUNCI ADD A

21、,R6 MOV R6,A MOV A,CC CLR C SUBB A,AA ACALL CHUNCI ADD A,R6 MOV R6,A MOV Y,R6SJMP $CHUNCI:JNB ACC.7,SQR CPLA ADDA,#01H SQR: ADD A,#01H MOVC A,A+PC RETSQRTAB:DB 0,1,4,9,16,25,36,49,64,814.29 从内部RAM的SCORE单元开始放有16位同学某门课程的考试成绩,试编程求平均成绩,存入AVERAGE单元。 ORG 0100HMOVR5,#00HMOVR6,#00HMOVR0,#SCOREMOVR7,#16LL:MO

22、VA,R0ADDA,R5MOVR5,AMOVA,R6ADDCA,#00HMOVR6,AINCR0DJNZR7,LLMOVR4,#04HLL1:CLRCMOVA,R6RRCAMOVR6,AMOVA,R5RRCAMOVR5,ADJNZR4,LL1MOVAVERAGE,R5SJMP$第5章5.8 80C51外扩ROM时,为什么P0口要接一个8位锁存器,而P2口却不接?答:P0口既作为地址线传送地址的低8位,又要作为数据线传送8位数据,只能分时用做地址线,故P0口输出的低8位地址数据必须用锁存器锁存。锁存器的锁存控制信号为引脚ALE输出的控制信号。P2口只用作地址高8位。5.9 若要设计一个32K8位

23、的外RAM存储器,分别采用2114(1K4位)和6264(8K8位)芯片,各需多少块存储芯片?答:2114芯片需要:(8/4)*(32/1)=64片 6264芯片需要:32/8=4片5.12 80C51扩展2片6264存储器芯片,试用P2.6、P2.7对其片选,并指出它们的地址范围。答:地址范围:6264(1)10*0 0000 0000 0000 0000 1 1111 1111 1111 11118000H9FFFH6264(2) 01*0 0000 0000 0000 0000 1 1111 1111 1111 11114000H5FFFH第6章6.1 输入/输出信息有哪几种?答:通过接

24、口传送的信息包括数据信息、状态信息和控制信息。6.2 什么是接口?接口应具有哪些功能?接口是将外设连接到总线上的一组逻辑电路的总称。功能:1. 地址译码与设备选择2. 缓冲锁存数据3. 信息的输入输出4. 信息转换6.7 什么是中断源?80C51有哪些中断源?CPU响应中断时,其入口地址是什么?答:能引起中断的外部设备或内部原因称为中断源,包括外部中断源和内部中断源。80C51中有5个中断源: (1)(P3.2):外部中断0。 (2) (P3.3):外部中断1。(3)TF0(P3.4):定时器/计数器T0溢出中断。(4)TF1(P3.5):定时器/计数器T1溢出中断。(5)RX,TX:串行中断

25、入口地址:外部中断0():0003H定时器/计数器0(T0):000BH外部中断1():0013H定时器/计数器1(T1):001BH串行口(RI、TI):0023H定时器计数器2(T2)(仅80C52有):002BH6.11 80C51的外部中断有哪几种触发方式?如何选择?答:有电平触发方式和边沿触发方式。通过对ICON寄存器的D0位IT0和D2位IT1置位或清0实现。该为为0,为低电平触发方式,该位为1,为下降沿触发方式。第7章7.8 8255A各端口可以工作在几种方式下?当端口 A工作在方式2时,端口B和C工作于什么方式下?答:8255A共有三种工作方式:方式0、方式1和方式2。其中A口

26、可以工作在方式0、方式1和方式2,B口可以工作在方式0、方式1,而C口只能工作在方式0。在A口工作在方式2时,B口可以工作在方式0或方式1。C口高5位为A口提供联络信号,C口低3位可作为输入输出线使用或用作B口方式1之下的控制线。7.9 某8255A芯片的地址范围为7F80H7F83H,工作于方式0,A口、B口为输出口。C口低4位为输入,高4位为输出,试编写初始化程序。MOV DPTR,#7F83HMOV A,#1000 0001BMOVX DPTR, A7.11 8255A的方式控制字和C口按位置位/复位控制字都可以写入8255A的同一控制寄存器,8255A是如何区分这两个控制字的?答:看控

27、制字的最高位D7,如果该位的值为“1”,则认为是方式控制字;反之,则认为是C口置位/复位控制字。7.12 编写程序,采用8255A的C口按位置位/复位控制字,将PC7置0,PC4置1,(已知8255A各端口的地址为7FFCH-7FFFH)。MOV DPTR,#7FFFHMOV A,#0EHMOVX DPTR,AMOV DPTR,#7FFFHMOV A,#09HMOVX DPTR,A7.13 设8255A接到系统中,端口A、B、C及控制口地址分别为220H、221H、222H及223H,工作在方式0,试编程将端口B的数据输入后,从端口C输出,同时,将其取反后从端口A输出。MOV DPTR,#22

28、3HMOV A,#82HMOVX DPTR,AMOV DPTR,#221HMOVX A,DPTRINC DPTRMOVX DPTR,ACPL AMOV DPTR,#220HMOVX DPTR,ASJMP $第8章8.3 定时器T1用于对外部脉冲计数,每计满1000个脉冲后使内部RAM 60H单元内容加一,要求T1以方式1中断实现,TR1启动。解:计数常数为:TC216100064536FC18H,由于采用T1方式1 计数方式,故方式控制字为:0101 0000B50H程序如下:ORG 0000HAJMP MAINORG 001BH LJMP T1INTORG 0200HMAIN:MOV TMO

29、D,50HMOVTH1,0FCHMOVTL1,18HSETB ET1SETBEASETBTR1SJMP$ORG0800HT1INT:INC 60HMOVTH1,0FCHMOVTL1,18HRETI8.4 利用定时器T0方式2产生一个5KHz的方波,已知晶振频率为12MHz。解:方波的周期为1/5000=0.2ms,故T0定时时间应为0.1ms。定时常数为:即 TCH9CH,TCL9CH由T0工作于方式2,故方式控制字为02H1. 查询方式ORG 0000HAJMP MAINORG 0200HMAIN:MOVTMOD,02HMOVTH0,9CHMOVTL0,9CHCLR ET0SETBTR0WA

30、TT:JBCTF0,WAVESJMPWATT WAVE:CPLP1.7 SJMPWATT 2中断方式 ORG0000H AJMPMAINORG000BHLJMPT0INTORG 0200HMAIN:MOVTMOD,02HMOVTH0,9CHMOVTL0,9CH SETBET0SETBEASETBTR0SJMP$ORG0800HT0INT:CPLP1.7RETI8.5 试编写程序,使T0以方式1每隔10ms向CPU发出中断申请,在中断服务程序中将30H单元内容减1。设晶振频率为12MHz, 解:计数常数为:由于采用T0方式1 定时方式,故方式控制字为:0000 0001B01H程序如下:ORG

31、0000HAJMP MAINORG 000BH LJMP T0INTORG 0200HMAIN:MOV TMOD,01HMOVTH0,0D8HMOVTL0,F0HSETB ET0SETBEASETBTR0SJMP$ORG0800HT0INT:DEC 30HMOVTH0,0D8HMOVTL0,F0HRETI第10章10.11 DAC0832在逻辑上由哪几部分组成?可以工作在哪几种模式下?答:输入寄存器、转换寄存器和D/A转换器三部分组成。单缓冲、双缓冲和直通方式。10.12 某8位D/A转换器,输出电压为05V。当输入数字量为30H时,其对应的输出电压是多少?解:X/48=(5-0)/(255-0),X=5*48/255=0.94V10.13 DAC0832与80C51单片机连接时有哪些控制信号?它们的作用是什么?答:ILE:输入锁存允许。:片选信号。:写输入寄存器 上述三个信号用于把数据写入到输入寄存器。:写DAC寄存器:允许输入寄存器的数据传送到DAC寄存器 上述二个信号用于启动转换10.16 ADC0809是什么功能的芯片?答:模数转换芯片。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 单元课程

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁