欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机原理与应用 习题答案.docx

    • 资源ID:12347014       资源大小:154.94KB        全文页数:27页
    • 资源格式: DOCX        下载积分:6金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要6金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机原理与应用 习题答案.docx

    1、单片机原理与应用 习题答案习题解答第三章3-1 已知A=7AH,R0=30H(30H=A5H),PSW=80H,SP=65H,试分析下面每条指令的执行结果及对标志位的影响。(1)ADD A,R0; 01111010+=1,00011111, (A)=1FH,Cy=1 ,AC=0,OV=0,P=1(2)ADD A,#30H;01111010+00110000=,(A)=AAH,Cy=0,AC=0,OV=1,P=0 (3)ADDC A,30H;01111010+1=1,00100000,(A)=20H,Cy=1,AC=1,OV=0,P=1(4)SUBB A,R0;0101-1=1,,(A)=D4H

    2、,Cy=1,AC=0,OV=1,P=0(5) DA A;01111010+00000110=,(A)=80H,Cy=0,其他无变化(6) RLC A;(A)=B=F5H,Cy=0,AC=0,OV=0,P=0(7)RR A;(A)=00111101B=3DH,Cy=1,AC=0,OV=0,P=1 (8)PUSH 30H;SP=66H,(66H)=A5H (9)POP B;SP=64H,(B)=(65H) (10) XCH A,R0;(A)=A5H,(30H)=7AH, Cy=1,OV=0,AC=0,P=03-4 试分析在执行完下面的程序段后,A,R0,R1,R7,SP以及片内RAM的一些单元中内

    3、容各是什么 MOV SP,#65H MOV R7,#5 MOV R0,#30H MOV R1,#40HLOOP:MOV A,R1 PUSH ACC$ MOV A,R0 MOV R1,A INC R0 INC R1 DJNZ R7,LOOP结果:(A)=(34H), (R0)=34H,(R1)=44H,(R7)=0, SP=70H ,(70H)=(44H),(30H)=(40H),(34H)=(44H)。3-5 已知SP=62H,(62H)=50H,(61H)=30H,问执行指令RET后,PC=,SP=并解释。答:执行指令RET,从堆栈中弹出地址值给PC,栈指针减2,(62H),(61H)中的内

    4、容分别弹出PC=5030H,SP=60H 3-7 试编程求出片外RAM从2000H开始的连续20个单元的平均值,并将结果存入内部RAM20H单元。 MOV DPTR,#2000H) ACALL AVG子程序名:AVG子程序功能:求20个无符号数平均值子程序子程序入口:(DPTR)=数据区首地址指针子程序出口:(R3)(R4)=均值 AVG: MOV R2,#20 MOV R3,#00H;部分和高位字节单元清零 MOV R4,#00H;部分和低位字节单元清零 ACALL D-ADD;调用累加和子程序 ACALL D-DIV;调用除以20的子程序% 求多字节累加和子程序子程序名:D-ADD子程序功

    5、能:多字节累加和子程序子程序入口:(DPTR)=数据区首地址指针子程序出口:(R3)(R4)=累加和,R3中内容为和高字节,R4中内容为和低字节 D-ADD:CLR C LOOP:MOVX A,DPTR ADD A,R4 MOV R4,A CLR A ADDC A,R3 MOV R3,A INC DPTR DJNZ R2,LOOP RET双字节除以20的子程序子程序名:D-DIV子程序功能:除以20的子程序子程序入口:(R3)(R4)=被除数子程序出口:(R3)(R4)=商!D-DIV:MOV R7,#08H;置计数初值DV1: CLR C MOV A,R4;将(R3)(R4)左移1位 RLC

    6、 A MOV R4,AMOV A,R3RLC A MOV 00H,C;将移出的标志位送00H CLR C SUBB A,R2;余数高位减除数 JB 00H,GOU;标志位为1够减 JNC GOU;无借位,也说明够减 ADD A,R2,不够减,恢复余数 AJMP DV2GOU: INC R4;够减,商上1DV2: MOV R3,A DJNZ R7,DV1;减完没完继续 MOV 20H,R3;转存20H MOV 21H,R4;转存21H RET3-9 在外部数据存储区首地址为TABLE的数据表中存有10B的数据,编程将每个字节的最高位置1,并送回原来的单元。 ORG 0030HMOV DPTR,#

    7、TABLE MOV R2,#10 LOOP:MOVX A,DPTR SETB MOVX DPTR,A INC DPTR DJNZ R2,LOOP END3-10 编写能延时1s的子程序,设晶振频率为12MHz。DELAY1S:MOV R6,#4 ;1T DL1: MOV R5,#251 ;1T DL2: MOV R4,#248 ;1T DL3: NOP ;1T NOP ;1T DJNZ R4,DL3 ;2T DJNZ R5,DL2 ;2T DJNZ R6,DL1 ;2T RET ;2T|延时时间:(248 4+1+2) 251+1+2)4+1+2=9989953-12 编程实现:将30H,31

    8、H中的双字节二进制数转换为3B压缩BCD码,并存放到40H开始的空间中。因为(a15a14a1a0)=(02+a15) 2+a14) 2+a0),所以将二进制从最高位逐次左移入BCD码寄存器的最低位,并且每次都实现()2+ai的运算。 BINBCD2:CLR A MOV R4,A MOV R5,A MOV R6,A MOV R7,#16 LOOP: CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A MOV A,R6 ADDC A,R6 DA A MOV R6,A¥ MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV

    9、 A,R4 ADDC A,R4 DA A MOV R4,A DJNZ R7,LOOP RET¥3-13 试编写一个查表程序,求X2(设X50)。X已存于50H单元,X2存入51H和52H单元。 MOV DPTR,#TABLEMOV A,50H CJNE A,#15,$+3 JNC GO MOVC A,A+DPTR MOV 51H,A GO: CLR C MOV R1,A SUBB A,#15¥ ADD A,DPL MOV DPL,A MOV A,R1 MOVC A, A+DPTR MOV 52H,A DEC DPTR MOVC A, A+DPTR MOV 51H,A RET3-14 从P1口输

    10、入50个带符号数,编程统计其中正数、负数和零的个数,结果分别存入片内RAM30H、31H、32H单元。! ORG 0030H MOV 30H,#00H MOV 31H,#00HMOV 32H,#00HMOV R5,#50 LOOP:ORL P1,#0FFHMOV A,P1 JZ NEXT1 JB NEXT2 INC 30H* SJMP DONE NEXT1:INC 32H SJMP DONE NEXT2:INC 31H DONE: DJNZ R5,LOOP SJMP $3-17 设计带有两个按键和2个LED显示器的系统,每当按一下S1键,则使LED1点亮、LED2暗,若按一下S2键,则使LED

    11、2点亮、LED1暗。绘出相应的电路示意图,并编写相应的程序。 ORG 0030H ORL P1,#0FHLOOP1:JNB ,NEXT1. JNB ,NEXT2 AJMP LOOP1NEXT1:LCALL DL10ms JB ,LOOP1 JNB ,$ MOV P1,#FEH AJMP LOOP1NEXT2:LCALL DL10ms JB ,LOOP1 JNB ,$ MOV P1,#FDH AJMP LOOP1 RET DL10ms: RET第四章4-1 MCS-51单片机内部有几个定时/计数器定时/计数器是由哪些专用寄存器组成的答:有T0和T1两个定时/计数器;工作方式寄存器TMOD,用于定

    12、义T0和T1的工作模式选择定时/计数工作方式以及启动方式等;控制寄存器TCON,主要用于定时/计数器T0或T1的启停控制,标志定时/计数器的溢出和中断情况。&4-3 定时/计数器有哪几种工作方式各有什么特点适用于什么应用场合答:有四种工作方式,方式0,13位定时/计数器;方式1,16位定时/计数器;方式2,8位定时/计数器,初值自动重装;方式3,T0运行,而T1停止工作,8位定时/计数器。方式0,1,2需要重装初值,使得定时的时间产生误差,方式2自动重装初值,可精确定时。4-5 设某单片机的晶振频率为12MHz,定时/计数器T0工作于定时方式1,定时时间为20s;定时/计数器T1工作于计数方式

    13、2,计数长度为100,请计算T0,T1的初始值,并写出其控制字。答:T0的初始值X=2M-fosct/12=216-121062010-6/12=65536-20=65516=0FFECHT1的初始值X=2M-N=28-100=256-100=156=9CH控制字为01100001B=61HMOV TMOD,#61HMOV TH0,#0FFHMOV TL0,#0ECHMOV TH1,#09CHMOV TL1,#09CH4-7 试用定时/计数器T1对外部事件计数,要求每计数100,就将T1改成定时方式,控制从输出一个脉宽为10ms的正脉冲,然后又转为计数方式,如此反复循环。设系统晶振频率为12M

    14、Hz。解:(1)T1设置为工作方式1计数,由软件启动(2)T1计数方式控制字TMOD=01010000=50H,X1=216-100=65436=FF9CH,TH1=0FFH,TL1=9CHT1定时方式控制字TMOD=0001000=10H,X2=216-12106510-3/12=65536-5000=60536=B=0EC78HORG 0000HSJMP MAIN、ORG 0030HMAIN:MOV TMOD,#50HMOV TH1,#0FFCHMOV TL1,#9CHSETB TR1STA1:JBC TF1,NEXT1SJMP STA1 NEXT1:MOV TMOD,#10HMOV TH

    15、1,#0ECH MOV TL1,#78H/SETB LP:JBC TF1,NEXT2 SJMP LPNEXT2: MOV TH1,#0ECH MOV TL1,#78H CPL NEXT3:JBC TF1,MAIN SJMP NEXT3 RET4-9 利用单片机内部定时/计数器T1产生定时时钟,由P1口输出信号控制8个LED指示灯,试编程使8个指示灯依次轮流闪动,闪动频率10Hz。Fosc=12MHz。解:T=1/10=100ms,因此T1定时50ms,方式1 TMOD=00010000B=10HX0=216-50103/1=65536-50000=15536=000=3C78H ORG 000

    16、0H SJMP MAIN ORG 001BH AJMP DVT1 ORG 0030H MAIN:MOV TMOD,#10H MOV TH1,#3CH* MOV TL1,#78H SETB ET1 SETB EA SETB TR1 CLR C MOV A,#0FFHMOV P1,A SJMP $DVT1: MOV TH1,#3CH MOV TL1,#78H? RLC A MOV P1,A RETI4-10利用定时/计数器测量某正脉冲宽度,已知此脉冲宽度小于10ms,系统晶振频率为12MHz。试编程测量脉宽,并把结果存入内部RAM的50H和51H单元。解:12MHz,采用例4-6可测量脉冲宽度,程

    17、序参考例4-6第五章5-1什么是异步串行通信,它有何特点答:异步串行通信是按数据或字符一帧一帧传送的,前面有一个起始位(0),后面有一个停止位(1),这是一种起止式的通信方式,字符之间没有固定的间隔长度。其优点是数据传送的可靠性较高能及时发现错误,缺点是通信效率比较低。5-2 MCS-51单片机的串行口由哪些功能部件组成各有什么作用】MCS-51单片机的串行口是一个全双工的异步串行通信接口,可同时发送和接收数据。串行口内部有数据接收缓冲器和数据发送缓冲器。数据接收缓冲器只能读出不能写入,数据发送缓冲器只能写入不能读出,这两个数据缓冲器都用符号SBUF来表示,地址是99H。特殊功能寄存器SCON

    18、存放串行口的控制和状态信息,串行口用定时器T1或T2作为波特率发生器,特殊功能寄存器PCON的最高位SMOD为串行口波特率的倍率控制位。5-3简述串行口接收和发送数据的过程。答:串行口的接收和发送是同一地址(99H)两个物理空间的特殊功能寄存器SBUF进行读或写的。当向SBUF发“写”命令时(执行“MOV SBUF,A”指令),即向发送缓冲器SBUF装载并开始由TXD引脚向外发送一帧数据,发送完中断标志位TI=1。在满足RI=0的条件下,置允许接收REN=1,就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使RI=1。当发读SBUF命令时(执行“MOV A, SBUF”指令),便由

    19、接收缓冲器SBUF取出信息通过内部总线送CPU。5-4 MCS-51串行口有几种工作方式有几种帧格式各工作方式的波特率如何确定答:有4种工作方式:方式0(8位同步移位寄存器),方式1(10位异步收发),方式2(11位异步收发),方式3(11位异步收发)。有2种帧格式:10位和11位。方式0:波特率=fosc/12!方式2:波特率=2SMODfosc/64方式1和方式3:波特率=2SMODfosc/32/12(256-x)定时器T1用作波特率发生器时通常选用工作模式2。5-6设计一个8051单片机的双机通信系统,并编写程序将甲机片内RAM30H5FH单元的数据块,通过串行口传送到乙机片外RAM3

    20、030H305FH单元中去。第六章6-3 MCS-51单片机系统采用6264扩展数据存储器,用译码法扩展数据存储器在16根地址线内最多可扩展几片此时数据存储器的容量是多少答: 最多可扩展8片, 此时数据存储器的容量是64KB。6-5MCS-51单片机的控制线有哪些信号线它们的作用是什么答:控制信号线有:#使用ALE作为地址锁存的选通信号,以实现低8位地址的锁存。以PSEN信号作为扩展程序存储器的读选通信号以EA信号作为内外程序存储器的选择信号以RD和WR作为扩展数据存储器和I/O端口的读写选通信号,执行MOVX指令时,这两个信号分别自动有效。6-6 MCS-51单片机P0口作地址线时为什么用锁

    21、存器答:由P0口提供低8位地址线,由于P0口分时复用为地址数据总线,所以为保持地址信息,在访问存储器期间一直有效,需外加地址锁存器锁存低8位地址,用ALE正脉冲信号的下降沿进行锁存。6-7E2PROM的“写”操作和RAM的“写”操作有什么异同答:“写”操作都是WR信号有效,与RAM相比,E2PROM的“写”操作速度是很慢的,E2PROM“写”的数据能长期保存,而RAM“写”的数据掉电后消失。6-9设某RAM芯片具有1MB(20根地址线),按32个32KB设计(1)画出MCS-51单片机与RAM的连接图(2)、(3)确定RAM的地址(4)系统能否再扩展其他接口芯片说明原因。解:(1)MCS-51

    22、单片机与RAM的连接图如下(2)RAM的地址单片机信号 A14 A13 A028SF040A19A18 A17 A16 A15A14 A13 A0 页面00 0 00 0 0 00000H7FFFH|页面15 0 0 0 1 1 1 10000H7FFFH页面160 0 10 0 0 00000H7FFFH-页面310 0 11 1 1 10000H7FFFH(5)通过译码器还能扩展RAM,另外通过PSEN可扩展程序存储器。6-12某8255A工作在PB口选通输入PC口高四位输出,试确定8255A的方式控制字。答:控制字可为B=A2H第七章7-1什么是单片机I/O接口I/O接口应具备有哪些功能

    23、答:I/O接口是单片机与外部设备交换信息的桥梁,是指CPU和外存储器外部设备或两种机器之间通过系统总线进行连接的逻辑部件(或电路)。主要功能:实现和不同外设的速度匹配;输出数据锁存;输入数据三态缓冲。7-3什么是接口电路中的端口答:I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。7-5单片机与I/O设备之间,通常包括哪些传送的信息答:数据信息状态信息和控制信息。7-6在单片机中,使用哪三种控制方式实现数据的I/O传送试说明各种方式的特点。#答:无条件传送查询传送和中断传送方式。7-7键盘接口必须解决的问题有哪些答:是否有键按下;有键按下,判定是哪一个;确定被按键的含义

    24、;去抖动;等7-9单片机应用系统中有哪些常用的显示器显示器有哪些显示方式答:有LED发光二极管显示器LCD液晶显示器显示方式静态显示和动态显示7-15简述LCD液晶显示器件的特点和使用场合。答:特点:体积小重量轻功耗低抗干扰能力强使用场合:仪器仪表和控制系统中7-17对于大多数并行打印机接口,需要哪些信号满足时序关系,即可控制打印机正常打印?答:4种信号线CPU先查看BUSY信号,为低时,数据送上DATA线后,发出STB信号通知打印机,打印机接到STB后,BUSY为高,数据接收好并存入内部打印缓冲器后,打印机送出ACK信号,并撤消BUSY信号。7-19为什么说使用RS-485网络可以有效地防止

    25、噪声干扰答:RS-485与RS-232比,信号的幅值低,另外RS-485采用差动信道,发送回路和接收回路分别提供独立的地线,因此RS-485网络可以有效地防止噪声干扰。8-2试画出三种可能使DAC0832工作于单缓冲方式的硬件连线图。 8-5在例8-5中,用8255A作接口,则应如何将ADC0809与8255A连接试画出其连接示意图。用查询方式读取转换结果,写出相应的采集程序。解:ADC0809各通道地址为7FF0H7FF7H8255A的4个地址分别为:PA口岸FF1FH,PB口FF3FH,PC口FF5FH,控制字寄存器地址FF7FH。 第九章?9-1单片机应用系统设计包括哪些内容答:硬件设计

    26、,软件设计和抗干扰设计9-2AT89C2051单片机与MCS51单片机有什么区别答:AT89C2051单片机与MCS51单片机相比,没有如下信号:没有P0,P2口,没有地址锁存信号线ALE没有外部程序存储器读选通信号PSEN没有读信号RE和写信号WR9-3电子钟是利用定时器T1产生时间基值,试问电子钟是否有时间误差?答:T1采用工作方式1,因此需要重装初值,电子钟是有时间误差。9-4定时器T1的中断响应时间是多少它与时间的误差是否有关答:中断响应时间是指从查询中断请求标志位到转向中断服务程序如口地址所需的机器周期数,一般是38个机器周期,与时间误差有关,一般情况下中断响应可以不考虑,精确定时场

    27、合应进行调整。9-5中断服务程序的执行时间大约是多少它与时间的误差是否有关答:由中断服务程序可知中断服务程序的执行时间,其中重装初值语句影响时间的误差。9-6读取正在运行中TH1TL1的值,是否会产生误差它与时间的误差是否有关答:CPU不能在同一时刻读取THX和TLX的内容,比如,先读(TLX),后读(THX),由于定时器在不断运行,读(THX)前,恰好出现TLX溢出向THX进位的情况,则读得的(TLX)值就完全不对了。用样先读(THX)再读(TLX)也可能出错。解决的办法:先读(THX)后读(TLX),再读(THX)。如2次读得的(THX)相同,则可确定读得的内容是正确的。如2次读得的(TH

    28、X)不相同,则再重复上述过程。对定时器没影响,因此对时间的误差没影响。12填空题1)如不使用MCS-51片内存储器引脚EA必须接地。2)微处理器由寄存器堆控制器和运算器三部分组成。3)当MCS-51引脚ALE信号有效时,表示从P0口稳定地送出了低8位地址。4)MCS-51有4个并行I/O口,其中P0P3是准双向口,所以由输出转输入时必须先写入“1”。5)MCS-51系统中,当PSEN信号有效时,表示CPU要从程序存储器读取数据。6)MCS-51特殊功能寄存器只能采用直接寻址方式。7)如用传送指令访问MCS-51的程序存储器,它的操作码助记符应为MOVC。8)MCS-51有4组工作寄存器,它们的地址范围是00H1FH。9)计算机的系统总线有地址总线控制总线和数据总线。10)MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器SCON加以选择。11


    注意事项

    本文(单片机原理与应用 习题答案.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开