单片机基础课后答案_第1页
单片机基础课后答案_第2页
单片机基础课后答案_第3页
单片机基础课后答案_第4页
单片机基础课后答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

单片机基础课后答案单片机基础课后答案第一章一、填空题1.111010011100011001002.4255-51

错对错对错错错

错错错对对对对

错错对对对错

输入设备

(三)其它类型题84630**1024

3.编写程序RAM20H-23H单元的高4位写低位写0

位字节

bitword

分析:就是把这四个单元写入F0H。用一个DJNZ的循环。1111001001001101101111089-115二、单选:DBCABBBCB第二章一、填空1.PCPC

MOV;R0指向20H单元MOVR5,#04H;四个数LOOP:INCR0MOV@R0,#0F0H写入DJNZ;循环次2.

反相器

石英晶体振荡器

两只电容器

.把和单元存有两个BCD数,将它们合并单3.

加电复位

手动复位

0000H07H

第000H

元中,编写程序完成。07H4.62125.6.64KB单选题AD第三章一、填空题:1.10312.

(设m=30H,高位在30H,数在31H)MOVANLA,#0FH;把它的高四位清零AMOV30H;高低四位调一下,放回原处MOVANLA,#0FHA,30H;合并起来MOV3.

4.1100H5.6.71H0A5H0A5H75H

5.内部RAM中从单元开始的个无符号数相加和送sum单元多,假定相加结果小于。编写程序完成。(设MOV;指向前一个单元MOVR5,#0AH;循环10次0A7H

CLRA

;先加到A中0AAHIFH10AAH20H0D5H149H0

LOOP:R0ADDA,@R0DJNZMOV6.假8位二进制带符号数丰于中,要求编写一个求二、单选题三、其它类型题

补程序,所得补码入入中。MOVA,R0错

对/

A;按位取反ADDA,#01H;+1

单片机基础课后答案若X为正偶数,Z若X为负奇数,Z

=X∨Y;=XYMOVR1,A

若X为负偶数,Z

=X⊕Y

分析:负数:第位为1正数:第位为0第四章

奇数:第位为1,偶:第位为0一、填空题03H22.914ms3.

MOVCLRCRLA4A)32.87ms编程题

=((30H)>(30H)<

JCFS;移到负数处处理AA第0位移到C再判定一下是不是1.把长度为10H的字符串从内部RAM的输入缓冲区inbuf向位物外部的输出缓冲区传送,一直进行到遇见回车或整个字符串传送完毕。试编程实现。0030HMOVMOVR1,#outbufMOVR4,#10HLOOP:MOV;从内部取数A,#0DH,LL;是否为回车符SJMPSTOP;是转停止传送LL:@R1,A;不是则传送到外部RAMINCINCDJNZ沒传送完则循环SJMP2、内部从list单元开始存放一正数表,表中之数作无序排列并“-1作结束标志编程实现在表中找出最小数。(3AH放在运行程序时的最小的数)0030H

JCZJS;正奇数处MOVA,21HMOVSJMPOKZJS:MOVADDMOVSJMPOKMOVCLRCAJCFJS;第0位1,移到正MOVXRLMOVSJMPOKMOVANLMOV

奇数处理MOVR0,#listMOVA,@R0;取第一个正数LOOP:R0;指向下一个正数MOVA,3AH,CHK;一个数与后一个数比较CHK:;前一个数小则转MOVA,@R0;前个数大,取一个数XCHA,3AHXCH;最小数MOV3BH,ASJMP3.部的X,Y单元中各存放一个带符号的数,试编程实现按如下条件进行的运算,并将结果存入Z单元中。

OK:4、把一个位二进制数的各位用ASCII码表示之(亦即为0”的位用30H表示,为1”的位用31H表示数存放在内部RAM中单元中。变换后得到的8个ASCII码存放在外部RAM以buf始的存储单元中去。0030HMOVR0,#byteMOVDPTR,#bufMOVR5,#08HMOVA,@R0LOOP:RLCAMOVR7,AJCLOOP1若X为正奇数,Z

=X+Y;

MOV/

单片机基础课后答案SJMPMOVMOVA,R7INCDPTRDJNZ5.程实现运算式ca22

假定b3个

MOVLOOP:MOVXA,@DPTRE7H就是累加器A的最高位(也可:SETBACC.7MOVXINCDJNZ数分别存放在内部的DA、DB、单元中,别有平方运算子程序调用。(内部的DBDC单元设为20H21HMOVAJMPSQRPOPACCMOVMOVAJMPSQRPOPACC

3写程序将RAM20H-23H单元的高4位写1位写0分析是把这四个元写入F0H个DJNZ的循环。MOV;R0指向20H单元MOVR5,#04H;四个数LOOP:INCMOV@R0,#0F0H写入DJNZ;循环次4m单元存有两个BCD数们合并到单元中,编写程序完成。ADD

(m=30H,

高位在30H,数在31H)MOV6、比较两个ASCII码字符串是否相等。字符串的长度在内部41H单元,第一个字符串的首地址为,第二个字符串的首地址为。如果两个字符串相等,则置内部RAM单元为00H;否则置40H单元为FFMOVMOVMOV字符串长度LOOP:MOVA,30H,LKINCINC

MOVANLA,#0FH;把它的高四位清零AMOV30H;高低四位调一下,放回原处MOVANLA,#0FHA,30H;合并起来MOV5.内部RAM中从单元开始的个无符号数相加,其和送sum单元多,假定相加结果小于。编写程序完成(设MOV;指向前一个单元MOVR5,#0AH;循环10次DJNZ

CLRA

;先加到A中MOV40H,#00HSJMPDDLK:MOVDD:DD外部RAM址为的数据表中,有个字节的数据。编程将每个字节的最高位无条件地置“1MOV

LOOP:R0ADDA,@R0DJNZR5,LOOPMOV6.假8位二进制带符号数丰于中,要求编写一个求补程序,所得补码入入中。/

MOVA,R0A;按位取反ADDA,#01H;+1MOVR1,A

单片机基础课后答案若X为正奇数,Z若X为正偶数,Z若X为负奇数,Z若X为负偶数,Z

=X+Y=X∨Y=XY;=X⊕Y。

分析:负数:第位为,数:第位为第四章

奇数:第位为,偶数:第位为一、空题03H22.914ms3.

MOVCLRCRLA4A)32.87ms

=((30H)(A)>(30H)(A)<(30H)

JCFS;移到负数处处理A编程题

A第0位移到C

再判定一下是不是1.把长度为10H的字符串从内部RAM的输入缓冲区inbuf向位物外部的输出缓冲区传送,一直进行到遇见回车或整个字符串传送完毕。试编程实现。MOVMOVR1,#outbufMOVR4,#10HLOOP:MOV;从内部取数A,#0DH,LL;是否为回车符SJMPSTOP;是转停止传送LL:@R1,A;不是则传送到外部RAMINCINCDJNZ沒传送完则循环SJMP2、内部从list单元开始存放一正数表,表中之数作无序排列并“-1作结束标志编程实现在表中找出最小数。(3AH放在运行程序时的最小的数)0030H

JCZJS;到正奇数处MOVA,21HMOVSJMPOKZJS:MOVADDMOVSJMPOKMOVCLRCAJCFJS;第0位,移到正MOVXRLMOVSJMPOKMOVANLMOV

奇数处理MOVR0,#listMOVA,@R0;取第一个正数LOOP:R0;指向下一个正数MOVA,3AH,CHK;一个数与后一个数比较CHK:;前一个数小则转MOVA,@R0;前个数大,取一个数XCHA,3AHXCH;最小数MOV3BH,ASJMP3.部的X,Y单元中各存放一个带符号的数,试编程实现按如下条件进行的运算,并将结果存入Z单元中。

OK:4、把一个位二进制数的各位用ASCII码表示之(亦即为0”的位用30H表示,为1”的位用31H表示数存放在内部RAM中单元中。变换后得到的8个ASCII码存放在外部RAM以buf始的存储单元中去。0030HMOVR0,#byteMOVDPTR,#bufMOVR5,#08HMOVA,@R0LOOP:RLCAMOVR7,AJCLOOP1/

单片机基础课后答案MOVSJMPMOVMOVA,R7INCDPTRDJNZ5.程实现运算式ca+b假定a、3个数分别存放在内部的DA、DB、DC单元中,别有平方运算子程序调用。

MOVDPTR,#tableMOVLOOP:MOVXA,@DPTRE7H就是累加器A的最高位(也可:SETBACC.7MOVXINCDJNZ第五章一、填空题(内部的DBDC单元设为20H21HMOV

1.2.3.

各项任务INT0T0INT1T1PCPCROM

串口

4.

中断源

查询状态AJMPSQRPOPACCMOVMOV

5.6.7.8.

10000001000000/6553615.26100ms1111010FFHAJMPSQR

二、单选题:DCAADCDPOPACC

单片机基础

第五章

习题ADDMOV6、比较两个ASCII码字符串是否相等。字符串的长度在内部41H单元,第一个字符串的首地址为,第二个字符串的首地址为。如果两个字符串相等,则置内部RAM单元为00H;否则置

课本5设单片机的晶振频率为6MHZ使用定时器以方式产生500us的等宽正方波连续脉冲,并由输出。分析使用P1.0输出脉冲可定时器产生一个250us的定时,到了时间,就执行就可以了。所以问题转化为产生定时。40H单元为FF

解)

计算定时器的初值:

(2

-X)*

T

T

MOV

代入数据得:X

8067MOV

由于方式0的特(高8位低位算出TH1TL1MOV字符串长度

得=

0FCHTL1

03HLOOP:

(2)

计算出TMOD的初始值:MOVA,30H,LK

(3)

TMOD=编程实现:INCINC

方法一:使用查询法。程序不断地查询TF1的值。如定时器溢出(=P1.0DJNZMOV40H,#00HSJMPDDLK:MOV

所以:

MOVTMODMOVMOVTL1,#03HMOV#00H;用中断的方法,DD:DD

关掉外部RAM址为的数据表中,有个字节的数据。编程将每个字节的最高位无条件地置“1

;开启定时器LOOP:JBCAJMPLOOPMOVTH1,#0FCH/

MOVTL1,#03HAJMPLOOP

单片机基础课后答案8、片选9、3ALE二、单选题方法二:使用中断的方法。需确定寄存器:TMOD

00H

DADDCADAIE

=88HTCON=40H(或TR1)

第七章的中断向量=001BH

填空题程序如下:

1.

数据RDWRAJMPMAIN001BH

2.3.4.

无条件传送缓冲锁存1211

查询

中断AJMPT1_TIMER

5.

口方式定义

位置位/复位MAIN:MOVTMOD#00H

方式1输出

方式输出

输出

输入MOVTCON,#40H7.

10100111MOV

单选题MOVTCONDACDBBMOVMOVTL1,#03HHereT1_TIMER:MOVMOVTL1,#03HRETI注意:定时器定时或计数,不会影响的工

温馨提示

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

评论

0/150

提交评论