单片机原理接口技术及应用课后答案-黄建新_第1页
单片机原理接口技术及应用课后答案-黄建新_第2页
单片机原理接口技术及应用课后答案-黄建新_第3页
单片机原理接口技术及应用课后答案-黄建新_第4页
单片机原理接口技术及应用课后答案-黄建新_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

作业题及答案第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=(10010001.011000100101)BCD(5)=(863.45)D1.10写出以下真值对应的原码、反码和补码。(1)+1100110B【+1100110B】原码=66H【+1100110B】反吗=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的真值,试分别计算[X+Y]补和[X-Y]补,并指出可否产生溢出(设补码均用8位二进制表示)。(1)X=+1000100B,Y=-0010010BX补=01000100B,Y补=11101110B[X+Y]补:0100010011101110100110010C7=1,C6=1,同样,所以无溢出。[X-Y]补010001000001001001010110优选C7=0,C6=0,同样,所以无溢出。2)X=+1100001B,Y=+1000010B[X+Y]补:有溢出[X-Y]补无溢出3)X=-1101001B,Y=-1010101B[X+Y]补:有溢出[X-Y]补:无溢出1.13用十六进制写出以下字符的ASCII码。(1)NBA‘NBA’=4E4241H2)HELLO!2009‘HELLO!2009’=48454C4C4F2132303039H优选第2章2.680C51单片机的EA信号有何功能?在使用80C31和89C51单片机时,EA信号应怎样办理?答:EA是接见外面程序储藏器选通讯号。当其为低电平常,对ROM的读操作优选限制为外面储藏器;当其为高电平常,对ROM的读操作是从内部开始的,当PC值大于内部程序储藏器地址范围时,CPU自动转向读外面程序储藏器。80C31单片机片内无ROM,应将EA引脚固定接低电平,以迫使系统所有执行片外程序储藏器程序。89C51单片机应将EA引脚接+5V电源。2.9系统复位后,CPU使用哪一组工作存放器?它们的地址是什么?怎样改变当前工作存放器组?答:系统复位后,CPU使用0组存放器,它们的地址分别是:R0--R7:00H—07H.可以经过改变PSW存放器的PSW.4和PSW.3两位的值来改变工作存放器组。2.1080C51单片机拥有很强的布尔(位)办理功能?共有多少单元可以位寻址?采纳布尔办理有哪些长处?答:是的,80C51单片机拥有很强的布尔办理功能,在内部RAM区20H—2FH的16个单元都可以位寻址;同时21个特别功能存放器中还有部分特别功能存放器可以位寻址。布尔(位)办理机,是80C5l系列单片机的突出长处之一,给“面向控制”的实质应用带来了极大的方便。布尔(位)办理机借用进位标记CY作为位累加器,在布尔运算中,CY是数据源之一,又是运算结果的存放处,位数据传达的中心。布尔(位)办理机指令系统中有特意进行位办理的指令集,利用位逻辑操作优选功能进行随机逻辑设计,可把逻辑表达式直接变换成软件执行,方法简略,免去了过多的数据往返传达、字节障蔽和测试分支,大大简化了编程,节约了储藏器空间,加快了办理速度,加强了实时性能。还可实现复杂的组合逻辑办理功能。所有这些,特别适用于某些数据收集、实时测控等应用系统。2.12单片机的复位方法有哪两种?复位后各存放器及RAM中的状态怎样?答:按键复位和外面脉冲复位。单片机复位后,21个存放器中,SP=07H,P0—P3均为FFH,SBUF为不定值,其他均为0.2.1380C51单片机的PSEN、RD、WR、XTAL1和XTAL2引脚各有何作用?单片机时钟电路分别采纳内部和外面振荡方式时,XTAL1和XTAL2引脚应怎样连接?答:PSEN是片外程序储藏器选通讯号,低电平有效。RD(片外数据储藏器读选通),输出,低电平有效。WR(片外数据储藏器写选通),输出,低电平有效。XTAL1和XTAL2内部振荡方式:在80C51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTALl,其输出端为引脚XTAL2。当使用芯片内部时钟时,这两根引线用于外接石英晶体和微调电容。外面振荡方式:把外面已有的时钟信号引入单片机内。该方式适适用来使单片机的时钟信号与外面信号保持同步。外面振荡信号由XTAL1引入,XTAL2端悬空不用。优选优选第3章3.7用指令实现下述功能。(1)内部RAM30H单元内容送R0。MOVR0,30H(2)将立刻数10H送入内部RAM30H单元。MOV30H,#10H(3)R0内容送入R1。MOVA,R0MOVR1,A优选(4)内部RAM30H单元内容送外面RAM30H单元。MOVR0,#30HMOVA,@R0MOVX@R0,A(5)外面RAM3000H单元内容送内部RAM30H单元。MOVDPTR,#3000HMOVXA,@DPTRMOV30H,A6)ROM3000H单元内容送内部RAM30H单元。MOVDPTR,#3000HMOVA,#00HMOVCA,@(A+DPTR)MOV30H,A3.8已知内部RAM中,(30H)=40H,(40H)=50H,(50H)=5AH,(5AH)=60H,ROM中(125AH)=88H,试解析下边程序的运转结果,并指出每条指令的源操作数寻址方式。MOVA,50H;直接寻址MOVR0,A;存放器寻址MOVP1,#0F0H;立刻寻址MOV@R0,30H;直接寻址MOVDPTR,#1200H;立刻寻址MOVX@DPTR,A;存放器寻址优选MOVCA,@A+DPTR;变址寻址MOV40H,50H;直接寻址MOVP2,P1;直接寻址程序执行后,P2=F0H;(40H)=5AH;(A)=88H;(1200H)=5AH;(5AH)=40H3.9设(R1)=31H,内部RAM31H的内容为68H,32H单元的内容为60H,(A)=10H。请指出运转下边的程序后各单元内容的变化。MOVA,@R1;(A)=68HMOV@R1,32H;(31H)60HMOV32H,A;(32H)=68HMOVR1,#45H;(R1)=45H程序前3条指令将内部RAM31H和32H单元内容互换。3.10已知当前PC值为2000H,用两种方法将ROM207FH单元中的常数送入累加器A。1)MOVDPTR,#207FHMOVA,#00HMOVCA,@A+DPTR2)MOVA,#7CHMOVCA,@A+PC优选3.16已知延时程序为DELAY:MOVR0,#0A0HLOOP1:MOVR1,#0FFHLOOP2:NOPDJNZR1,LOOP2DJNZR0,LOOP1若系统的晶振频率为12MHz,请指出该延时子程序的延时时间。机器周期数DELAY:MOVR0,#0A0H1LOOP1:MOVR1,#0FFH1LOOP2:NOP1DJNZR1,LOOP22DJNZR0,LOOP12因为晶振频率为12MHz,1M=1μs该程序延时时间为:【1+(1+2)*255+2】*160+1=122.881ms优选第4章4.13编写程序将内部RAM40H~60H单元清0MOVR7,#21HMOVR0,#40HLOOP:MOV@R0,#00HINCR0DJNZR7,LOOP优选SJMP$4.15编程将外面RAM的1000H~1FFF地域的数据送到2000H~2FFFH区域。ORG0100HMOVDPTR,#1000HMOVR7,#10HLL1:MOVR6,#00HMOVXA,@DPTRMOVB,AMOVA,DPHADDA,#10HMOVDPH,AMOVA,BMOVX@DPTR,AMOVA,DPHCLRCSUBBA,#10HMOVDPH,AINCDPTRDJNZR6,LLINCDPH优选DJNZR7,LL1SJMP$4.16已知一内部RAM以BLOCK1和BLOCK2为初步地址的储藏区中分别有5字节无符号被减数和减数(低位在前,高位在后。请编写减办法程序令它们相减,并把差放入以BLOCK1为初步地址的储藏单元。BLOCK1EQU30HBLOCK2EQU40HORG0000HLJMPSTARTSTART:MOVR0,#BLOCK1MOVR1,#BLOCK2MOVR7,#1LP:MOVR6,#5CLRCLP1:MOVA,@R0SUBBA,@R1MOV@R0,AINCR0INCR1DJNZR6,LP1DJNZR7,LPSJMP$优选END4.17从内部RAM20H单元开始存有一组带符号数,其个数已存放在1FH单元中。要求统计出大于0、等于0和小于0的数的数量,并把统计结果分别存放在ONE、TWO、THREE三个单元中。ONEEQU1EHTWOEQU1DHTHREEEQU1CHORG0000HLJMPSTARTSTART:MOVONE,#00HMOVTWO,#00HMOVTHREE,#00HMOVR0,#20HMOVR7,1FHLOOP3:MOVA,@R0INCR0JZLOOP1JBACC.7,LOOP2INCONESJMPHALTLOOP1:INCTWOSJMPHALT优选LOOP2:INCTHREEHALT:DJNZR7,LOOP3SJMP$4.18设内部RAM30H单元有两个非零的BCD数,请编写求两个BCD数的积,并将积以压缩型BCD数形式送入31H单元的程序。ORG0000HMOVA,30HANLA,#0F0HSWAPAMOVB,AMOVA,30HANLA,#0FHMULA,BMOVB,#0AHDIVABSWAPAORLA,BMOV31H,ASJMP$4.20编制绝对值函数程序。绝对值函数方程以下:X当X0Y0当X=0-X当X0优选假设X存于30H单元,Y存于40H单元。X及Y均为补码数.XEQU30HYEQU40HORG0000HLJMPSTARTSTART:MOVA,XJZLOOPJNBACC.7,LOOPCPLAADDA,#01HLOOP:MOVY,ASJMP$END4.21试编写统计数据区长度的程序,设数据区从内RAM30H开始,该数据区以0结束,统计结果送人2FH中。且数据区结束字符,也计入统计数据区的长度中去.ORG0000HLJMPSTARTSTART:MOVR0,#30H优选MOVR7,#00HLOOP:MOVA,@R0INCR0INCR7CJNEA,#00H,LOOPMOV2FH,R7SJMP$4.23巳知R7中为2位十六进制数,试编程将其变换为ASCII码,存人内部RAM31H、32H中(低字节在前)。英文字母为大写.ORG0000HLJMPSTARTSTART:MOVSP,#60HMOVA,R7LCALLBCDASCIIMOV31H,AMOVA,R7SWAPALCALLBCDASCIIMOV32H,ASJMP$BCDASCII:ANLA,#0FH优选CJNEA,#10,LOOPLOOP:JCAD30HADDA,#07HAD30H:ADDA,#30HHT:RETEND解法2ORG0000HLJMPSTARTSTART:MOVDPTR,#TABMOVA,R7ANLA,#0FHMOVCA,@A+DPTRMOV31H,AMOVA,R7ANLA,#0F0HSWAPAMOVCA,@A+DPTRMOV32H,ASJMP$TAB:DB30H,31H,32H,33H,34H,35H,36H,37H,38HDB39H,41H,42H,43H,44H,45H,46H优选END4.24设在MA和MB单元中有两个补码形式的8位二进制带符号数。请编写求两数之和并把它放在SUML和SUMH单元(低8位在SUML单元)的子程序。提示:在两个8位二进制带符号数相加时,其和很可能会高出8位数所能表示的范围,进而需要采纳16位数形式来表示。所以,在进行加法时、可以早先把这两个加数扩大成16位二进制补码形式,尔后对它完成双字节相加。ORG0000HLJMPSTARTSTART:MOVA,MAJBACC.7,LLAMOVR7,#00HSJMPLLLLLA:MOVR7,#0FFHLLL:MOVA,MBJBACC.7,LLBMOVR6,#00HSJMPLADDLLB:MOVR6,#0FFHLADD:MOVA,MAADDA,MBMOVSUML,AMOVA,R6优选ADDCA,R7MOVSUMH,ASJMP$4.25设外面RAM1000H~10FFH数据区中的数均为无符号数。试编写程序,找出该地域中的数的最大值,并放人内部RAM30H单元中。MOVDPTR,#1000HMOVR7,#00H;计数器MOVB,#00H;放中间结果L1:MOVXA,@DPTRCJNEA,B,L2L2:JCL3MOVB,A;B中放大值L3:INCDPTRDJNZR7,L1MOV30H,BSJMP$4.28已知a、b、c均为0~9的整数,试编程求解表达式Y=(a-b)2+(b-c)2+(c-a)2的值?AAEQU31H?BBEQU32H优选?CCEQU33H?YEQU34H?ORG0000H?LJMPSTARTSTART:MOVSP,#60HMOVA,AA?CLRC?SUBBA,BB?ACALLCHUNCI?MOVR6,A?MOVA,BB?CLRC?SUBBA,CC?ACALLCHUNCI?ADDA,R6?MOVR6,AMOVA,CCCLRCSUBBA,AAACALLCHUNCIADDA,R6MOVR6,A优选MOVY,R6SJMP$CHUNCI:JNBACC.7,SQRCPLAADDA,#01HSQR:ADDA,#01HMOVCA,@A+PCRETSQRTAB:DB0,1,4,9,16,25,36,49,64,814.29从内部RAM的SCORE单元开始放有16位同学某门课程的考试成绩,试编程求平均成绩,存入AVERAGE单元。ORG0100HMOVR5,#00HMOVR6,#00HMOVR0,#SCOREMOVR7,#16LL:MOVA,@R0ADDA,R5MOVR5,AMOVA,R6ADDCA,#00H优选MOVR6,AINCR0DJNZR7,LLMOVR4,#04HLL1:CLRCMOVA,R6RRCAMOVR6,AMOVA,R5RRCAMOVR5,ADJNZR4,LL1MOVAVERAGE,R5SJMP$第5章5.880C51外扩ROM时,为何P0口要接一个8位锁存器,而P2口却不接?答:P0口既作为地址线传达地址的低8位,又要作为数据线传达8位数据,只能分时用做地址线,故P0口输出的低8位地址数据一定用锁存器锁存。锁存器的锁存控制信号为引脚ALE输出的控制信号。P2口只用作地址高8位。优选5.9若要设计一个32K×8位的外RAM储藏器,分别采纳2114(1K×4位)和6264(8K×8位)芯片,各需多少块储藏芯片?答:2114芯片需要:(8/4)*(32/1)=64片6264芯片需要:32/8=4片5.1280C51扩展2片6264储藏器芯片,试用P2.6、P2.7对其片选,并指出它们的地址范围。答:地址范围:6264(1)10*00000000000000000111111111111111118000H—9FFFH6264(2)01*00000000000000000111111111111111114000H—5FFFH优选*P2.728P2.6278031P2.526WRRD16173039383736353433322122232425+5V654123*E3E2E1ABC11181714138743

Y7Y6Y5Y4Y3Y2Y1Y074LS138G

*8D7D6D5D4D3D2D1D

791011121314151E

8Q7Q6Q5Q4Q3Q2Q1Q74L37319161512965210987654325242123227WEA0A1A2A3A4A5A6A7A8A9A10A11A12CS12022OED0D1D2D3D4D5D6D7*6264(1)1112131516171819Title10987654325242123227WEA0A1A2A3A4A5A6A7A8A9A10A11A12CS12022OED0D1D2D3D4D5D6D7*6264(2)1112131516171819优选优选第6章6.1输入/输出信息有哪几种?答:经过接口传送的信息包含数据信息、状态信息和控制信息。6.2什么是接口?接口应拥有哪些功能?接口是将外设连接到总线上的一组逻辑电路的总称。优选功能:1.地址译码与设备选择缓冲锁存数据信息的输入输出信息变换6.7什么是中止源?80C51有哪些中止源?CPU响应中止时,其入口地址是什么?答:能引起中止的外面设备或内部原由称为中止源,包含外面中止源和内部中止源。80C51中有5此中止源:(1)INT0(P3.2):外面中止0。(2)INT1(P3.3):外面中止1。(3)TF0(P3.4):准时器/计数器T0溢出中止。(4)TF1(P3.5):准时器/计数器T1溢出中止。(5)RX,TX:串行中止入口地址:外面中止0(INT0):0003H准时器/计数器0(T0):000BH外面中止1(INT1):0013H准时器/计数器1(T1):001BH串行口(RI、TI):0023H准时器/计数器2(T2)(仅80C52有):002BH优选6.1180C51的外面中止有哪几种触发方式?怎样选择?答:有电平触发方式和边缘触发方式。经过对ICON存放器的D0位IT0和D2位IT1置位或清0实现。该为为0,为低电平触发方式,该位为1,为降落沿触发方式。第7章7.88255A各端口可以工作在几种方式下?当端口A工作在方式2时,端口B和C工作于什么方式下?答:8255A共有三种工作方式:方式0、方式1和方式2。此中A口可以工作在方式0、方式1和方式2,B口可以工作在方式0、方式1,而C口只好工作在方式0。在A口工作在方式2时,B口可以工作在方式0或方式1。C口高5位为A口供给联系信号,C口低3位可作为输入输出线使用或用作B口方式1之下的控制线。优选7.9某8255A芯片的地址范围为7F80H—7F83H,工作于方式0,A口、B口为输出口。C口低4位为输入,高4位为输出,试编写初始化程序。MOVDPTR,#7F83HMOVA,#10000001BMOVX@DPTR,A7.118255A的方式控制字和C口按地址位/复位控制字都可以写入8255A的同一控制存放器,8255A是怎样区分这两个控制字的?答:看控制字的最高位D7,若是该位的值为“1”,则以为是方式控制字;反之,则以为是C口置位/复位控制字。7.12编写程序,采纳8255A的C口按地址位/复位控制字,将PC7置0,PC4置1,(已知8255A各端口的地址为7FFCH-7FFFH)。MOVDPTR,#7FFFHMOVA,#0EHMOVX@DPTR,AMOVDPTR,#7FFFHMOVA,#09HMOVX@DPTR,A7.13设8255A接到系统中,端口A、B、C及控制口地址分别为220H、221H、222H及223H,工作在方式0,试编程将端口B的数据输入后,从端口C输出,同时,将其取反后从端口A输出。MOVDPTR,#223H优选MOVA,#82HMOVX@DPTR,AMOVDPTR,#221HMOVXA,@DPTRINCDPTRMOVX@DPTR,ACPLAMOVDPTR,#220HMOVX@DPTR,ASJMP$第8章8.3准时器T1用于对外面脉冲计数,每计满1000个脉冲后使内部RAM60H单元内容加一,要求T1以方式1中止实现,TR1启动。解:计数常数为:TC=216-1000=64536=FC18H,因为采纳T1方式1计数方式,故方式控制字为:01010000B=50H程序以下:ORG0000HAJMPMAINORG001BHLJMPT1INT优选ORG0200HMAIN:MOVTMOD,#50HMOVTH1,#0FCHMOVTL1,#18HSETBET1SETBEASETBTR1SJMP$ORG0800HT1INT:INC60HMOVTH1,#0FCHMOVTL1,#18HRETI8.4利用准时器T0方式2产生一个5KHz的方波,已知晶振频率为12MHz。解:方波的周期为1/5000=0.2ms,故T0准时时间应为0.1ms。准经常数为:TC280.11031210

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论