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

下载本文档

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

文档简介

1、计算机由运算器、控制器、存储器、输入设备和输出设备组成,运算器与控制器合称为cpu。章2 80c51的结构和原理380c51单片机的p0p3口在结构上有何不同?在使用上有何特点? 答:作为通用i/o口时,p0、p1、p2和p3都是准双向口。p0可以作为地址/数据总线,此时是一个真正的双向口;p2口可以作为地址线的高8位;p3口是双功能口,每条口线还具有不同的第二功能。另外,p0口的驱动能力为8个ttl负载,而其它口仅可驱动4个ttl负载。注:当不需要外部程序存储器和数据存储器扩展时,p0、p2用作通用的输入/输出口p0用作通用口,输出驱动级工作在需外接上拉电阻的漏极开路方式,p1为80c51唯

2、一的单功能口。4如果80c51单片机晶振频率分别为6 mhz、11.0592 mhz、12mhz时,机器周期分别为多少?答:机器周期分别为2s,1.085s,1s。580c51单片机复位后的状态如何?复位方法有几种?答:复位后,pc内容为0000h,p0口p3口内容为ffh,sp内容为07h,sbuf内容不定,ip、ie和pcon的有效位为0,其余的特殊功能寄存器的状态均为00h。复位方法一种是上电复位,另一种是上电与按键均有效的复位。680c51单片机的片内、片外存储器如何选择?答:80c51的引脚为访问片内、片外程序存储器的选择端。访问片内、片外数据存储器需要采用不同的指令加以区分。780

3、c51单片机的psw寄存器各位标志的意义如何?答:cy:进位、借位标志。有进位、借位时 cy=1,否则cy=0;ac:辅助进位、借位标志(高半字节与低半字节间的进位或借位);f0:用户标志位,由用户自己定义;rs1、rs0:当前工作寄存器组选择位;ov:溢出标志位。有溢出时ov=1,否则ov=0;p:奇偶标志位。存于acc中的运算结果有奇数个1时p=1,否则p=0。8 80c51单片机的当前工作寄存器组如何选择?答:当前工作寄存器组的选择由特殊功能寄存器中的程序状态字寄存器psw的rs1、rs0 来决定。章3 80c51的指令系统180c51系列单片机的指令系统有何特点?答:执行时间短。1个机

4、器周期指令有64条,2个机器周期指令有45条,而4个机器周期指令仅有2条(即乘法和除法指令);指令编码字节少。单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;位操作指令丰富。这是80c51单片机面向控制特点的重要保证。280c51单片机有哪几种寻址方式?各寻址方式所对应的寄存器或存储器空间如何?答:80c51单片机的寻址方式有七种。即:寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址寄存器加变址寄存器变址寻址、相对寻址和位寻址。这些寻址方式所对应的寄存器和存储空间如下表所示。序号寻址方式寄存器或存储空间1寄存器寻址寄存器r0r7,a、ab、dptr和c(布尔累加器)2直

5、接寻址片内ram低128字节、sfr3寄存器间接寻址片内ram(r0,r1,sp)片外ram(r0,r1,dptr)4立即寻址rom5变址寻址rom(adptr,apc)6相对寻址rom(pc当前值的127128字节)7位寻址可寻址位(内部ram20h2fh单元的位和部分sfr的位)8对于80c52单片机内部ram还存在高128字节,应采用何种方式访问?答:寄存器间接寻址方式。14试用位操作指令实现下列逻辑操作。要求不得改变未涉及的位的内容。 (1)使acc.0置位; (2)清除累加器高4位; (3)清除acc.3,acc.4,acc.5,acc.6。答:(1)setb acc.0 (2)an

6、l a,#0fh (3)anl a,#87h15试编写程序,将内部ram的20h、21h、22h三个连续单元的内容依次存入2fh、2eh和2dh单元。答:mov 2fh,20h mov 2eh,21hmov 2dh,22h16试编写程序,完成两个16位数的减法:7f4dh2b4eh,结果存入内部ram的30h和31h单元,30h单元存差的高8位,31h单元存差的低8位。答:clr cymov 30h,#7fhmov 31h,#4dhmov r0, #31hmov a,r0subb a ,#4emov r0,a ;保存低字节相减结果dec r0mov a, r0subb a,#2bhmov r0

7、,a ;保存高字节相减结果17试编写程序,将r1中的低4位数与r2中的高4位数合并成一个8位数,并将其存放在r1中。答:mov a,r2anl a,#0f0horl r1,a18试编写程序,将内部ram的20h、21h单元的两个无符号数相乘,结果存放在r2、r3中,r2中存放高8位,r3中存放低8位。答:mov a,20hmov b,21hmul abmov r3,amov r2,b章4 80c51的汇编语言程序设计5什么是伪指令?常用的伪指令功能如何?答:伪指令是汇编程序能够识别并对汇编过程进行某种控制的汇编命令。常用的伪指令包括:org,功能是向汇编程序说明下面紧接的程序段或数据段存放的起

8、始地址;end,功能是结束汇编;db,功能是从标号指定的地址单元开始,在程序存储器中定义字节数据;dw,功能是从标号指定的地址单元开始,在程序存储器中定义字数据空间;equ,功能是将表达式的值或特定的某个汇编符号定义为一个指定的符号名;bit,功能是将位地址赋给指定的符号名。6设被加数存放在内部ram的20h、21h单元,加数存放在22h、23h单元,若要求和存放在24h、25h中,试编写出16位无符号数相加的程序(采用大端模式存储)。答:程序如下:org 0000hmov r0,21hmov r1,23hmov a,r0add a,r1mov 25h,adec r0dec r1mov a,r

9、0addc a,r1mov 24h,asjmp $end7编写程序,把外部ram中1000h101fh的内容传送到内部ram的30h4fh中。答:org 0000h mov dptr,#1000h mov r0,#30h mov r7,#32loop:movx a,dptr mov r0,a inc r0 inc dptr djnz r7,loop ret8编写程序,实现双字节无符号数加法运算,要求 (r0r1)+(r6r7)(60h61h)。答:org 0000hmov a,r1 add a,r7mov 61h,amov a,r0 addc a,r6 mov 60h,a sjmp $ end

10、章5 80c51的中断系统及定时/计数器中断响应条件:中断源有中断条件;此中断源的中断允许位为1;cpu开中断,即ea=11.80c51有几个中断源?各中断标志是如何产生的?又是如何复位的?cpu响应各中断时,其中断入口地址是多少?答:5个中断源,分别为外中断和、t0和t1溢出中断、串口中断。电平方式触发的外中断标志与引脚信号一致;边沿方式触发的外中断响应中断后由硬件自动复位。t0和t1,cpu响应中断时,由硬件自动复位。ri和ti,由硬件置位。必须由软件复位。另外,所有能产生中断的标志位均可由软件置位或复位。各中断入口地址:0003h,t0000bh,0013h,t1001bh,ri和ti0

11、023h。(优先级由高到低)3.外部中断源有电平触发和边沿触发两种触发方式,这两种触发方式所产生的中断过程有何不同?怎样设定?答:当it0=0时,为电平触发方式。电平触发方式时,cpu在每个机器周期的s5p2采样引脚电平,当采样到低电平时,置ie0向cpu请求中断;采样到高电平时,将ie0清0。在电平触发方式下,cpu响应中断时,不能自动清除ie0标志。电平触发方式时,外部中断源的有效低电平必须保持到请求获得响应时为止,不然就会漏掉;在中断服务结束之前,中断源的有效的低电平必须撤除,否则中断返回之后将再次产生中断。该方式适合于外部中断输入为低电平,且在中断服务程序中能清除外部中断请求源的情况。

12、当it0=1时,为边沿触发方式。边沿触发方式时,cpu在每个机器周期的s5p2采样引脚电平,如果在连续的两个机器周期检测到引脚由高电平变为低电平,即第一个周期采样到=1,第二个周期采样到=0,则置ie01,产生中断请求。在边沿触发方式下,cpu响应中断时,能由硬件自动清除ie0标志。边沿触发方式时,在相继两次采样中,先采样到外部中断输入为高电平,下一个周期采样到为低电平,则在ie0或ie1中将锁存一个逻辑1。若cpu暂时不能响应,中断申请标志也不会丢失,直到cpu响应此中断时才清0。另外,为了保证下降沿能够被可靠地采样到,和引脚上的负脉冲宽度至少要保持一个机器周期(若晶振频率为12mhz,为1

13、微秒)。边沿触发方式适合于以负脉冲形式输入的外部中断请求。5.定时/计数器的4种工作方式各有何特点?答:方式0位13位计数器,由tl0的低5位(高3位未用)和th0的8位组成。tl0的低5位溢出时向th0进位,th0溢出时,置位tcon中的tf0标志,向cpu发出中断请求。计数初值计算的公式为: x213n方式1的计数位数是16位,由tl0作为低8位、th0作为高8位,组成了16位加1计数器。计数个数与计数初值的关系为:x216n方式2为自动重装初值的8位计数方式。th0为8位初值寄存器。当tl0计满溢出时,由硬件使tf0置1,向cpu发出中断请求,并将th0中的计数初值自动送入tl0。tl0

14、从初值重新进行加1计数。周而复始,直至tr0=0才会停止。计数个数与计数初值的关系为:x28n方式3只适用于定时/计数器t0,定时器t1处于方式3时相当于tr10,停止计数。方式3时,t0分成为两个独立的8位计数器tl0和th0,tl0使用t0的所有控制位。当tl0计数溢出时,由硬件使tf0置1,向cpu发出中断请求。而th0固定为定时方式(不能进行外部计数),并且借用了t1的控制位tr1、tf1。因此,th0的启、停受tr1控制,th0的溢出将置位tf1。8.利用定时/计数器t0从p1.0输出周期为1s,脉宽为20ms的正脉冲信号,晶振频率为12mhz。试设计程序。答:采用定时20ms,然后

15、再计数1、49次的方法实现。a、t0工作在定时方式1时,控制字tmod配置: m1m0=01,gate=0,c/=0,可取方式控制字为01h;b、计算计数初值x:晶振为12 mhz,所以机器周期tcy为1。nt/ tcy 20103/110620000x216n655362000045536ble0h 即应将4eh送入th1中,20h送入tl1中。 c、实现程序如下: org 0000h ajmp main ;跳转到主程序 org 0030h main:mov tmod,#01h ;设t1工作于方式2 mov th0,#b1h ;装入循环计数初值 mov tl0,#e0h ;首次计数值 lp0

16、:setb p1.0 acall nt0 clr p1.0 mov r7,#49 ;计数49次 lp1:acall nt0 djnz r7,lp1 ajmp lp0 nt0:mov th0,# 4eh mov tl0,#20h setb tr0 jnb tf0,$ clr tr0 clr tf0 ret end章6 80c51的串行口180c51单片机串行口有几种工作方式?如何选择?简述其特点?答:四种工作方式,由scon中的sm0、sm1进行定义:方式0:同步移位寄存器的输入输出方式,主要用于扩展并行输入或输出口,波特率固定。方式1:10位数据的异步通信口,波特率可变。方式2:11位数据的异

17、步通信口,波特率固定。方式3:11位数据的异步通信口,波特率可变。3在串行通信中通信速率与传输距离之间的关系如何?答:最大距离与传输速率及传输线的电气特性有关。当传输线使用每0.3m(约1 ft)有50pf电容的非平衡屏蔽双绞线时,传输距离随传输速率的增加而减小。当波特率超过1000 bps 时,最大传输距离将迅速下降。注:比特率(传输速率)=10位240个/秒=2400bps,对于将数字信号1或0直接用两种不同电压表示的所谓基带传输,比特率和波特率相同。5利用单片机串行口扩展并行输入接口电路如图所示。试编写程序完成将sw1sw8的状态反应在p0口所接的led上(如sw1闭合时l7应点亮)。答

18、:电路图如下: org 0000h mov scon,#10h loop:clr p1.7 nop nop nop setb p1.7 clr rijnb ri,$mov a,subfomv p0,asjmp loop end章8 80c51的串行总线扩展2、i2c总线的起始信号和终止信号是如何定义的?答:scl线为高电平期间,sda线由高电平向低电平的变化表示起始信号;scl线为高电平期间,sda线由低电平向高电平的变化表示终止信号。起始和终止信号如图所示。7、请说明spi数据传输的基本过程。答:单片机读(从器件输出)操作时,在cs有效的情况下,sck的下降沿时从器件将数据放在miso线上,单片机经过延时采样miso线,并将相应数据位读入,然后将sck置为高电平形成上升

温馨提示

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

评论

0/150

提交评论