微机原理与接口技术作业答案_第1页
微机原理与接口技术作业答案_第2页
微机原理与接口技术作业答案_第3页
微机原理与接口技术作业答案_第4页
微机原理与接口技术作业答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

《微机原理与接口技术》作业答案

第2章P52

2.80c51单片机引脚有哪些笫二功能?

【答】80C51单片机的P0、P2和P3引脚都具有第二功能。

第一功能笫二变异功能

P0口地址总线A0〜A7/数据总线D0〜D7

P2口地址总线A8〜A15

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2INTO(外部中断0)

P3.3而1(外部中断1)

P3.4TO(定期器/计数器0的外部输入)

P3.5T1(定期器/计数器0的外部输出)

P3.6WR(外部读写存储器或I/O的写选通)

P3.7RD(外部读写存储器或I/O的读选通)

4.80C51单片机的存储器在构造上有何特点?在物理上和逻辑上各有哪几种地址空

间?访问片内RAM和片外RAM的指令格式有何区别?

【答】80c51单片机采用哈佛出打一刈2)构造,即是将程序存储器和数据存储器截然

分开,分别进行寻址。不仅在片内驻留一定容量的程序存储器和数据存储器及众多的

特殊功能寄存器,并且还具有强的外部存储器扩展能力,扩展的程序存储器和数据存

储器寻址范围分别可达64KB。

1.在物理上设有4个存储器空间

•片内程序存储器;

•片外程序存储器;

•片内数据存储器;

•片外数据存储器。

2.在逻辑上设有3个存储器地址空间

•片内、片外统一的64KB程序存储器地址空间。

•片内256B(80C52为384B)数据存储器地址空间。

片内数据存储器空间,在物理上又包括两部分:

•一对于80C51型单片机,从0~127字节为片内数据存储器空间;从

128〜255字节为特殊功能寄存器(SFR)空间(实际仅占用了20多种字节)。

•片外64KB的数据存储器地址空间。

在访问三个不一样的逻辑空间时,应采用不一样形式的指令,以产生不一样存储空间

的选通信号。

访问片内RAM采用MOV指令,访问片外RAM则一定要采用MOVX指令,由于

MOVX指令会产生控制信号或,用来访问片外RAM。访问程序存储器地址空间,则应

采用MOVC指令。

•6.80C51单片机片内RAM低128个存储单元划分为哪4个重要部分?各部分重

要功能是什么?

•【答】80C51片内RAM日勺低128个存储单元划分为4个重要部分:

•寄存器区:共4组寄存器,每组8个存储单元,各组以R0〜R7作为单元编号。常

用于保留操作数及中间成果等等。R0〜R7也称为通用寄存器,占用00H〜1FH共

32个单元地址。

位寻址区:20H〜2FH,既可作为一般RAM单元使用,按字节进行操作,也可以对单元

中的每一位进行位操作,称为位寻址区。寻址区共有16个RAM单元,合计128位,位

地址为00H〜7FH。

堆栈区:设置在顾客RAM区内。

顾客RAM区:在内部RAM低128单元中,除去前面3个区,剩余的所有单元。

13.程序存储器指令地址、堆栈地址和外接数据存储器地址各使用什么指针?为

何?

【答】程序存储器指令地址使用程序计数器PC指针,PC中寄存的是下一条将要从程

序存储器中取出的指令的地址。程序计数器PC变化的轨迹决定程序的流程。PC的最基本

的工作方式是自动加1。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序

计数器,程序的流向发生变化。在执行调用指令或响应中断时,将子程序的入口地址或者中

断矢量地址送入PC,程序流向发生变化。

堆栈地址使用堆栈指示器SP,SP在80c51中寄存目前的堆栈栈顶所指存储单元地址,是一

种8位寄存器,对数据按照“先进后出”原则进行管理。

外接数据存储器地址使用数据指针DPTR,是一种16位的特殊功能寄存器,重要功能是作

为片外数据存储器或I/O寻址用的地址寄存器,这时会产生或控制信号,用于单片机对

外扩的数据存储器或I/O的控制。数据指针DPTR也可以作为访问程序存储器时的.基址寄

存器,这时寻址程序存储器中的表格、常数等单元,而不是寻址指令。

第3章P93

9.MOV.MOVC.MOVX指令有什么区别,分别用于那些场所,为何?

【答】MOV指令用于对内部RAM的访问。

MOVC指令用于对程序存储器的访问,从程序存储器中读取数据(如表格、常数等)。

MOVX指令采用间接寻址方式访问外部数据存储器,有Ri和DPTR两种间接寻址方式。

MOVX指令执行时,在P3.7引脚上输出有效信号或在P3.6引脚上输出有效信号,可以

用作外部数据存储器或I/O的读或写选通信号,与单片机扩展电路有关。

15.巳知(R1)=20H,(20H尸AAH,请写出执行完下列程序段后A的内容。

MOVA,#55H

ANLA,#OFFH

ORL20H,A

XRLA,@R1

CPLA

【答】各指令执行成果如下:

功能:将30H中的数乘以10后来再存回30H中。

条件:30H中时数不能不小于25,25X10=250仍为一种字节。若30H中的数不小于25,则

应考虑进位。

21.读下列程序,请完毕下列任务:

①画出PL0〜PL3引脚上的波形图,并标出弓压V一时间t坐标。

②对源程序加以注释。

ORG0000H

START:MOVSP,#20H

MOV30H,#01H

MOVPl,#01H

MLPO:ACALLD50ms

MOVA,30H

CJNEA,#08H,MLP1

MOVA,#01H

MOVDPTR,#ITAB

MLP2:MOV30H,A

MOVCA,@A+DPTR

MOVPl,A

SJMPMLP0

MLP1:INCA

SJMPMLP2

ITAB:DB0,1,2,4,8

DB8,4,2,1

D50ms:

RET

【答】

①程序功能:P1.0〜Pl.3引脚上的波形图如图3-2所示。

图3-2P1.0〜P1.3引脚上的波形图

②注释见源程序右边所述。

ORG0000H

START:MOVSP,#20H

MOV30H,#01H

MOVPl,#01H;PLO〜PL3引脚输出波形

MLPO:ACALLD50ms;软件延时50ms

MOV30H

CJNEA,#08H,MLP1;判表格中数据与否取完?

MOV#01H;取完,从表头开始取

MOVDPTR,#ITAB;表格首地址

MLP2:MOV30H,

MOVCA,@A+DPTR;取表格中数据

MOVPl,A

SJMPMLPO

MLP1:INCA;表咯中数据未取完,准备取下一种

SJMPMLP2

ITAB:DB0,1,2,4,8;表

DB8,4,2,1

D50ms:•••;软件延

时50ms子程序

RET

第4章P132

10.把长度为10H的字符串从内部RAM时输入缓冲区INBUF向设在外部RAM的输出

缓冲区OUTBUF进行传送,一直进行到遇见字符“CR”时停止,如字符串中无字符“CR”,

则整个字符串所有传送。加上必要的伪指令,并对源程序加以注释。

【答】程序如下:

ORGOOOOH

AJMPMAIN

ORG0030H

MAIN:MOVR7,#10H;数据长度

MOVRO,#INBUF;源数据首地址

MOVDPTR,#OUTBUF;目的数据首地址

LOOP:MOVA,@R0;把源数据的值赋给A

CJNEA,#ODH,LOOP1;是“CR”(ASCII码值为ODH)?

SJMPEND1;是“CR”,则结束传送

LOOP1:MOVX@DPTR,A;把A的值赋给目的数据

INCRO;源数据下一种地址值

INCDPTR;目的数据下一种地址值

DJNZR7,LOOP;判数据传送与否完毕?

END1:SJMPEND1

14.80C51单片机从内部RAM的31H单元开始寄存一组8位带符号数,字节

个数在30H中。请编写程序记录出其中正数、零和负数的数目,并把记录成果

分别存入20H、21H和22H三个单元中。加上必要的伪指令,并对源程序加以

注释。

【答】

分析:带符号数以字节最高位D7的值来辨别是正数(包括零)和负数。D7=l,则该带符

号数为负数。

程序如下:

POSNUMEQU20H;正数个数

ZERONUMEQU21H;零个数

NEG.NUMEQU22H;负数个数

ORGOOOOH

AJMPMAIN

ORG0030H

MAIN:MOVPOS_NUM,#0;计数单位初始化为0

MOVZERO.NUM,#0

MOVNEG.NUM,#0

MOVRI,30H;数据长度

MOVRO,#31H;数据首地址

LOOP:MOVA,@R0

JBACC.7,INC_NEG;符号位为1,该数为负数,跳

转加1

CJNEA,#0,INC.POS

INCZERO_NUM;该数为0,0个数加1

AJMPLOOP1

INC_NEG:INCNEGNUM;负数个数加1

AJMPLOOP1

INCPOS:INCPOSNUM;该数为正数,正数个数加1

LOOP1:INCRO;判断记录与否结束

DJNZRI,LOOP

END

例如:已知(30H)=08H,31H单元起寄存数据为:OOH,80H,7EH,6DH,2FH,34H,EDH,

FFHo

执行成果:(20H)=04H,(21H)=01H,(22H)=03Ho

15.两个10位的无符号二一十进制数,分别从内部RAM的40H单元和50H单元开始寄存。

请编程计算该两个数的和,并从内部RAM的60H单元开始寄存。加上必要的伪指令,并对

源程序加以注释。

【答】

分析:10位的无符号二一十进制数,占5个字节,每个字节寄存一种压缩

BCD码(2位)。

ORG0000H

AJMPMAIN

ORG0030H

MAIN:MOVR7,#05H十位(5个字节)计数

MOVRO,#40H;被加数首址

MOVRl,#50H;加数首址

MOVR2,#60H;和数首址

CLRC;清C标志位

ADDB:MOVA,@R0

ADDCA,@R1

DAA;二一十进制调整

MOVB,RO;保井被加数地址

MOV20H,R2

MOVRO,20H

MOV@R0,A;存和

MOVR2,20H;恢复和数地址

MOVRO,B;恢复被加数地址

INCRO;三个地址指针均加1

INCRI

INCR2

DJNZR7,ADDB;多字节加未结束,则循环

HERE:S.JMPHERE

END

注意:寄存器间接寻址只针对RO和RI,因此存和时不能使用指令MOV@R2,A»

例如:

40H〜44H内容为78H,10H,10H,10H,10H

50H〜54H内容为42H,10H,10H,10H,10H

即BCD数1010101078

+1010101042

2020202120

运行成果:60H〜64H单元中的数为20H,21H,20H,20H,20H

第6章P177

4.请编程实现80C51单片机产生频率为100kHz等宽矩形波(定期器/计数器TO,方式0,

定期器中断),假定80c51的晶振频率为12MHz。加上必要的伪指令,并对源程序加以注释。

【答】分析:100kHz等宽矩形波,周期为10人,定期周期为5ns,机器周期为1匹。

计算:TC=213-(12X106X5X10-6)4-12=8187=1FFBH

方式。:定期常数TCH=FFH,TCL=1BH。

ORG0000H

00000130AJMPMAIN

ORG000BH;定期器TO中断矢量

000B0141AJMPINTER

ORG0030H

0030758900MAIN:MOVTMOD,#0011;写型制字,设TO为定期器,方式0

0033758CFFMOVTH0,#0FFH;写定期常数,定期为511s

0036758A1BMOVTL(),#1BH

0039D28CSETBTRO;启动定期器TO

003BD2A9SETBETO;开定期器TO中断

003DD2AFSETBEA;开中断

003F013FAJMP$;中断等待

;定期器TO中断

0041758CFFINTER:MOVTH0,#0FFH;重写定期常数

0044758A1BMOVTL(),#1BH

0047B290CPLP1.0;Pl口作为输出端,变反输出

004932RETI;中断返回

END

第8章P279

2.怎样构造80C51单片机并行扩展的系统总线?

【答】80C51并行扩展的系统总线有三组。

①地址总线(A0〜A15):由P0口提供低8位地址A0〜A7,P0口输出的低8位地址A0〜

A7必须用锁存器锁存,锁存器的锁存控制信号为单片机引脚ALE输出的控制信号。由P2

口提供高8位地址A8〜A15。

②数据总线(DO〜D7):由P0口提供,其宽度为8位,数据总线要连到多种外围芯片上,而

在同一时间里只可以有一种是有效的数据传送通道。哪个芯片的数据通道有效,则由地址线

控制各个芯片的片选线来选择。

③控制总线(CB):包括片外系统扩展用控制线和片外信号对单片机的控制线。系统扩展

用控制线有ALE、、、。

8.外接程序存储器的读信号为,外接数据存储器的读信号为。

【答】外接程序存储器的读信号为,外接数据存储器的读信号为。

14.已知可编程I/O接口芯片8255A的控制寄存器的地址为BFFFH,规定设定A口为基

本输入,B口为基本输出,C口为输入方式。请编写从C口读入数据后,再从B口输出的程

序段。并根据规定画出80c51与8255A连接的逻辑原理图。加上必要的伪指令,并对源程

序加以注释。

【答】已知8255A的控制寄存器地址为BFFFH,若地址线AO、A1被用做8255A端口

选择信号,则8255A的C口地址为BFFEH,B口地址为BFFDH,A口地址为BFFCH。可

以选用地址线P2.6(A14)作8255A的片选线。

8255A与80C51连接图如图8-7所示。

图8-78255A与80C51连接图

程序如下:

ORG0000H

MOVDPTRf#OBFFFH

8255A控制寄存器地址

MOVAf#99H

MOVX@DPTR,A;控制字(PA输入、PB输出、PC输入)

MOVDPTR,#0BFFEH;C口地址

MOVXA,@DPTR;PC输入

温馨提示

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

评论

0/150

提交评论