单片机作业与答案_第1页
单片机作业与答案_第2页
单片机作业与答案_第3页
单片机作业与答案_第4页
单片机作业与答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、第四章1、单片机系统结构特点?答:(1)在系统结构上采用哈佛型;(2)极强的布尔处理能力(3)具有较齐全的输入/输出接口及实时中断功能(4)配有实时控制时的特殊电路2、MCS- 51单片机的基本组成?答:(1) 8位中央处理单元 CPU。4KB程序存储器ROM,256B数据存储器RAM。4个8位并行 I/O 口(P0P3)。1个全双工串行I/O口( P3QP3.1)。2个16位加法定时/计数器(T0,T1)。5个中断源。内部时钟产生电路。最高允许振荡频率为12MHz。3、MCS-51单片机存储器可划分为几个空间?各自地址范围是多少?答:单片机存储器划分为四个空间:1) EA=1片内程序存储器

2、地址0000-0FFFH,片外程序存储器 地址1000-FFFFH EA=0片外程序存储器地址0000-FFFFH2)片内数据存储器地址00-FFH片外数据存储器地址为0000-FFFFH4、MCS-51单片机内RAM存储器可划分为几个空间?各自地址范围是多少?答: 寄存器区00H-1FH位寻址区20H-2FH用户区和堆栈区30H-7FH特殊功能寄存器区 80H-FFH弟五早. MCS- 51系列单片机有哪几种寻址方式?答:立即寻址:MOV A , #5直接寻址:MOV A , 30H寄存器寻址:MOV A , R0寄存器间接寻址: MOV A , R0变址寻址:MOVC A , A+DPTR

3、相对寻址: JZ REL位寻址: MOV C , BIT.指出下列指令中画线的操作数的寻址方式。MOVRO, # 60H立即寻址MOVA 30H直接寻址MOVA Ri寄存器间接寻址MOVRi, A寄存器寻址ADDA B寄存器寻址SUBBA R7寄存器寻址3.指出下列指令中画线的操作数的寻址方式。MOVXA,DPTR寄存器间接寻址MOVDPTR # 0123H立即寻址MOVCA A+ DPTR基址变址寻找MULA B寄存器寻址INCDPTR寄存器寻址4.指出下列指令中画线的操作数的寻址方式。SJMPNEXT相对寻址JZAB相对寻址CJNEA # 00H,ONE相对寻址CPLC位寻址MOVC, 3

4、0H位寻址5、已知:(A) =7AH, ( R0) =30H, ( 30H) =0A5H ( PSW =80H,请填写下列各条指令 的执行结果。由于 (PSW/ =80H C=1SUBBA,30H A=A-(30H) -C=7AH-A5H-1=0D4H(2)SUBBA,#30H A=A-30H-C=7AH-30H-1=49H(3)ADDA,R0 A=A+R0=7AH+30H=0AAH(4)ADDA,30H A=A+(30H)=7AH+A5H=1FHADDA,# 30H A=A+30H=7AH+30H=0AAH(6)ADDCA,30H A=A+(30H)+C=7AH+A5H+1=20HSWAPA

5、A=0A7H(8)XCHDA,R0 A=75H(9)XCHA,R0 A=30H(10)XCHA,30H A=0A5H(11)XCHA,R0 A=0A5H(MOVA,R0 A=0A5H6、试分析以下程序段的执行结果。MOVSP,# 3AHMOV A ,# 20HMOV B ,#30HPUSHACCPUSHBPOPACC A和B勺内容互换POPB A=30H B-20H7、已知:(A) =81H,(R0) =17H, (17H) =35H,指出执行完下列程序段后ANLA #17HORL17H,AXRLAR0CPLAA=0CBHA的内容。8、设R0的内容为32H, A的内容为48H,内部RAM1 3

6、2Hll元内容为80H, 40Hll元内容为08H,指出在执行下列程序段后上述各单元内容的变化。MOVMOVA R0 A=80HR0, 40HR0=(32H)=08HMOVMOV40H, A (40H)=80hRO, 3 35H R0=35H9、用单片机来实现下列电路的逻辑功能。Z图 逻辑电路解:为了使逻辑问题适合单片机来处理,先来选择一些端口位作为输入逻辑变量和输出逻辑变量。设 P1.0=A , 程序为:P1.1=B , P1.2=C,P1.3=D, P1.4=Z。MOV C, P1.0 ANL C, P1.1 CPL C MOV 30H, C MOV C, P1.2 ANL C , P1.

7、3 MOV 31H,C MOV C, P1.3 CPL C ANL C, 31H ORL C , 30H CPL CMOV P1.4 , C RET;读入变量A;保存中间运算结果;输出运算结果10、51单片机访问程序存储器、内部RAM外部RAM勺指令区另1J?答: 访问程序存储器用 MOVC,内部RAMR MOV,外部RAMR MOVX 11、跳转指令 SJMP AJMP LJMP的区别和跳转范围?答:相为:寸跳转 SJMP范围-128-+127短调转 AJMP,范围=2K(11位地址)长跳转LJMP ,范围=64K(16位地址)弟八早.将BCD码转换成16进制(设BA=0251HMOV B,

8、#02HMOV A,#51HMOV 30H,A/(30H)=51HANL A,#0FH/A=01HXCH A,30HA=51H,(30H)=01HSWAP AA=15HANL A,#0FHA=05HMOV 31H,A/(31H)=05HMOV A,#100MUL AB /BA=200=008CH,A=C8HMOV 32H,A/(32H)=0C8HMOV A,31HMOV B,#10MUL AB /BA=50=0032HADD A,32H/A=FAHADD A,30H/A=FBH.将16进制转换成 BC加(设A=FBHMOV A,#FBHMOV B,#100IV AB /A=02H,B=33HM

9、OV R7,A /R7=02HMOV A,B /A=33HMOV B,#10IV AB /A=05H,B=01HSWAP A/A=50HA A,B/A=51HMOV B,R7/B=02H.将BCDB马转换成 ASCII码(数在 BA中=0251H)MOV B,#02HMOV A,#51HMOV R0,#30HXCH A,BA A,#30H/A=32HMOV R0,AINC R0/R0=31HMOV A,B/A=51HSWAP A/A=15HANL A,#0FH/A=03HA A,#30H/A=35HMOV R0,AINC R0MOV A,BANL A,#0FHA A,#30HMOV R0,AB

10、CM/ A=32H/ B=02H/ R0=35H/ A=35H/ A=05H/ A=50H. 将 ASCII 码转换成 MOVR0,#30H MOV30H,#32H MOV31H,#35HMOV32H,#31H MOVA,R0ANL A,#0FH MOVB,A INC R0MOVA,R0ANL A,#0FH SWAP AINC R0XCH A,R0/ A=31H,R030HANL A,#0FH/ A=01HADDA,R0A=51H TOC o 1-5 h z 第七章 1、MCS-51单片机有几个中断源?其入口地址是如何规定的? 答: 有5个中断源:INTO外中断00003HINT1 外中断 1

11、0013HT0定时器0溢出中断 000BHT1定时器1溢出中断 001BH 串行口中断0023H2、MCS-51单片机外中断触发方式? 答:低电平和边沿触发 2种方式3、简述MCS-51单片机内部定时器的工作方式。答:M1M0=00 M1M0=01 M1M0=10 M1M0=114、设定时/计数器 解:对于方式 (213方式0方式1 方式2方式313位定时器/计数器16位定时器/计数器自动重新赋值8位定时器/计数器T0分为两个8位定时器/计数器0工作于方式0,定时时间为1ms,时钟频率为6MHz试确定定时/计数值。0,化成二进制:所以(TH0)加1计数器为13位,设定时/计数值为 a。则)X

12、( 12+ 6) =1000 a=7692a=1111000001100B,低5位:01100B=0CH 高8位:11110000B=F0H=0F0H, (TL0) = 0CH。5、设时钟频率为6MHz试利用定时计数器1,采用方式0产生10mSl勺定时,并使P1.7输出周 期为20mSl勺方波。解:计算计数值a:(213 a) X ( 12+6000000)a=3192=110001111000B初值装入TL1和TH1:MOV TL1, # 18HMOV TH1, 6 63H写方式控制字TMOD _M1M0=00 GATE=0 C/T =0,可取方式控制字 00H;当T1定时10ms寸间到,T

13、F1=1 ,如果采用中断方式,则请求中断。也可用软件查询方式。下面分别以两种方法进行编程。软件查询法源程序清单如下:ORG0000HLJMPMAIN;上电,转向主程序ORG0030H;主程序MAINMOV TMOD,0 00H;设T1工作于方式0SETBTR1;启动定时器T1LOOPMOV TH1,6 63H;装入计数值高8位MOVTL1, # 18H;装入计数值低5位JNBTF1, $;TF1=0,等待CLRTF1;清 TF1CPLP1.7;将P1.7取反,输出SJMPLOOP;END中断法程序清单如下:ORG0000HAJMPMAIN;上电,转向主程序ORG001BH;T1的中断入口地址A

14、JMPSERVE;转向中断服务程序ORG0030H;主程序MAIN :MOVTMOD,00H;设T1工作于方式0MOVTH1,63H;装入计数值高 8 位MOVTL1 ,18H;装入计数值低5 位SETBTR1;启动定时器T1SETBET1;T1开中断SETBEA;CPUF中断SJMP;等待中断SERVE:CPLP1.7;P1.7取反,输出MOVTH1, 63HMOVTL1,18H;重新装入计数值RETI;中断返回END6、上例中,T1工作于方式2, P1.7输出1mST波(采用中断方式)。 解:求计数值a:(28 a ) X ( 12+6000000) =0.5x10 %s a=6初值装入:

15、 TOC o 1-5 h z MOV TL0,06HMOV TH0,06H方式控制字TMOD:同上例为 20H源程序如下:ORG 0000HAJMP MAIN;上电,转向主程序ORG 001BH;T1的中断入口地址CPL P1.7;P1.7取反,输出RETIORG 0030H;主程序MAIN: MOV TMOD, 20H;设TI 工作于方式2MOV TH1, 06H;赋循环计数初值MOV TL1, 06H;装入计数值SETB TR1;启动定时器T1SETB ET1;允许 TI 中断SETB EA;允许允许CP出断SJMP ;等待中断等待中断END7、设时钟频率为6MHz试编写利用T0产生1s定

16、时的程序。解:定时器T0工作方式的确定:0最长可定时16.384ms;方式1最因定时时间较长,我们采用哪一种工作方式呢?方式 长可定时131.072ms ;方式2最长可定时512科s。题中要求定时1秒,可选方式1,每隔100m抻断一次,中断10次为1s。求计数值a:(216 a ) X(12+6) = 100 x 103a = 15536 = 3CB0H(TL0)= 0B0H , (TH0) = 3CH:对于中断10次计数,可采用T1工作于计数方式,也可用循环程序的方法实现。本例采用循环程序法。确定方式控制率,因 T必受INT0控制,故取为01H。源程序如下:MAIN:ORG LJMP ORG

17、 AJMP ORG MOV MOV MOV MOVMOV0000HMAIN000BHSERVE0030H SP, 660H B, # 0AHTMOD # 01HTL0, # 0B0HTHO, 3 3CH;上电,转向主程序T0的中断入口地址转向中断服务程序;主程序设堆栈指针设循环次数;设T0工作于方式1;装入计数值低8位 装入计数值高8位SETB TR0;启动定时器T0SETB ET0;允许T0中断SETB EA;允许CP中断SJMP $;等待中断MOV TL0, # 0B0H;SERVE重新赋计数值LOOPMOV THO, 3 3CH; DJNZ B, LOOP CLR TR0 RETI;1s

18、定时到,停止T0工作;中断返回4种工作方式。波特率固定f/12END8、简述MCS-51单片机内部串行接口的方式0:移位寄存器工作方式方式1: 8位数据,波特率可变2s mod f 2 32 12(256 -a)方式2: 9位数据,方式3: 9位数据,波特率固定波特率可变9、存储器的译码方式:线选法、部分地址译码、f/64 或 f/32同方式1 全地址译码三种10、存储器的连接扩展:要熟悉EPROM #174LS373地址锁存器,138译码器0000+1FFFHEPROM #22000Hp3FFFHEPROM #3显然,采用译码方式扩展4000Hp5FFFH2764,最多可以扩展 8片2764

19、。图1 138译码器线选EPROMT展图EPROM # 1EPROM #2EPROM # 30c0001H0DFFF H0A000% 0BFFF H60005 7FFFH图2 线选EPROM展图典型外部数据存储器的扩展方法MCS- 51外扩数据存储器的典型芯片采用容量为8Kx 8的随着RAM;片的发展,目前作为 6264。其连接图如图757所示。31RA031.P2.7GN1J-11IS lbPSSP3J0(RXD) P3.KTXD) F3.2 P3.3tIRTl) PajcTt) P3 型口) P3.fi (WR) P3.74RI5)S2S2STB OEr-腐偿憾噌图3 8051 外部8K

20、RAM连接图注:若将图1中2764ROM:成6264RAM口何连接?注意 PSENW WR,RD:分?重要:若将图1中2764RO畋成6264RA政口何连接?注意 PSENf WR,RCK分?第八章1、8255A是一种可编程的并行I/O接口芯片,它输出有 24条I/O引脚,分PA、PB、PC三组, 每组8个引脚,从功能上分A、B两大组,每组12条引脚,允许分组编程, A组包括端口 A和端口 C的上半部 (PC7PC4), B组包括端口 B和端口 C的下半部(PC3PC0),工作方式分为 0、1 和2三种,4个端口地址。2、按键电路和消除抖动键盘中按键的开关状态, 通过一定的电路转换为高、低电平

21、状态,按键闭合过程在相应的I/O端口形成一个负脉冲,闭合和释放过程都要经过一定的过程才能达到稳定,这一过程 是处于高、低电平之间的一种不稳定状态,称为抖动。抖动持续时间的长短与开关的机械特性有关,一般在510ms之间。消除抖动的方法有两种,一种是采用硬件电路来实现,如用滤波电路、双稳态电路等。另一种是利用软件来实现,即当发现有键按下时,延时1020ms再查询是否有键按下,若没有键按下,说明上次查询结果为干扰或抖动;若仍有键按下,则说明闭合键已稳定,即可 判断其键码。3、行列式键盘将I/O 口线的一部分作为行线,另一部分作为列线,按键设置在行线和列线的交叉点上, 这就构成了行列式键盘。图 825

22、为4%行列式键盘的电路原理图。8条I/O 口线分为4条行线和4条列线,按键设置在行线和列线交点上,即按键开关的两端分别接在行线和列线上。行 线通过一个电阻接到+5V电源上,在没有键按下时,行线处于高电平状态。D0-P1.0, D1-P1.1, D2-P1.2, D3-P1.3, D4-P1.4, D5-P1.5, D6-P1.6, D7-P1.7;扫4列即循环4次LP0:MOV R6, #4 MOV A,R7MOV P1, A ACALLYAN10MOV A, P1 MOV B, AORL A,#0Fh CPL AJNZ LP1 MOV A, R7;发扫描线-先扫第一列 P1.0=0涎时10毫

23、秒;读行回收线P1 口高四位;若没按键A=0FFH;反向若没按键A=0;否则A的内容不为零-有按键LP1:RL ADJNZ R6, LP0MOV B,#0FFHMOV A, BRET;列扫描线左移,扫下一列;扫完4列?若R6-1-R6不为零,继续扫下一列;R6=0没有按键4、数码管的工作原理数码管是由8个发光二级管构成的显示器件,其外形如图829 (a)所示。ag和h为8个发光二极管。在数码管中,若将二级管的阳极连在一起,称为共阳极数码管;若将二极管的阴极连在一起,称为 共阴极数码管,如图8- 29 (b)所示。当发光二极管导通时,它就会发光。每个二极管就是一个笔画,若干个二极管发光时,就构成了一个显示字符。若将单片机的I/O 口与数码管的ag及h相连,高电平的位对应的发光二极管房,这样,由不同的代码,就可以控制数码管显示不同的字符。例如:当I /O 口输出的代码为时,数码管显示的字符为 0。这样形成的显示字符的代码称为显示代码或段选码。表 共阴极十六进制数字的显示代码,8位二进制hgfedcba。I/O 口输出0011 11118 - 5为;没按键A=0图w-如数码管的结构5、A/D转换和D/A转换的概念6、分辨率7、8位的A/D转换或D/A转换,对应电压0-5V,电压为2.5V对应数字量为128 (线性

温馨提示

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

评论

0/150

提交评论