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

下载本文档

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

文档简介

1、浙江大学远程教育学院微机原理与接口技术课程作业姓名:学号:年级:学习中心:第2章P522. 80C51单片机引脚有哪些第二功能?第-功能第二功能P0.0P0.7地址总线AoA7/数据总线D0D7P2.0P2.7地址总线A8A15P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0夕卜部中断0)P3.3IINT1(夕卜部中断1)P3.4TO(定时器/计数器0的外部输入)P3.5T1(定时器/计数器0的外部输出)P3.6WR(外部数据存储器或1/O的写选通P3.7RD外部数据存储器或1/O的读选通4. 80C51单片机的存储器在结构上有何特点?在物理上和逻辑上各有哪几种地址空间

2、?访问片内RAM和片外RAM的指令格式有何区别?1、80C5I单片机采用哈佛结构,即将程序存储器和数据存储器截然分开,分别进行寻址。不仅在片内驻留一定容量的程序存储器和数据存储器及众多的特殊功能寄存器,而且还具有较强的外部存储器扩展能力,扩展的程序存储器和数据存储器寻址范围都可达64 KB。2、在物理上设有4个存储器空间片内程序存储器;片外程序存储器;片内数据存储器;片外数据存储器。在逻辑上设有3个存储器地址空间片内、片外统一的64 KB程序存储器地址空间。片内256字节(80C52为384字节)数据存储器地址空间。片内数据存储器空间在物理上又包含两部分:对于80C51型单片机,0127字节为

3、片内数据存储器空间;128255字节为特殊功能寄存器(SFR)空间(实际仅占用了 20多个字节)。对于80C52型单片机,O127字节为片内数据存储器空间;128255字节共128个字节是数据存储器和特殊功能寄存器地址重叠空间。片外64 KB的数据存储器地址空间。3 、在访问3个不同的逻辑空间时,应采用不同形式的指令,以产生不同存储空间的选 通信号。访问片内RAM采用MOV旨令,访问片外RAM则一定要采用 MOVX旨令,因为MOVX 指令会产生控制信号 RD或WR用来访问片外 RAM访问程序存储器地址空间,则应采 用MOV(指令。680C51 单片机片内 RAM 低 128 个存储单元划分为哪

4、 3 个主要部分?各部分 主要功能是什么?80C51片内RAM的低128个存储单元划分为 3个主要部分:1 、寄存器区。共4组寄存器,每组8个存储单元,各组以 R0R7作为单元编号。常用 于保存操作数及中间结果等。:RCR7也称为“通用工作寄存器”,占用00H1FH共32个 单元地址。2 、位寻址区。单元地址为 20H2FH既可作为一般 RAM单元使用,按字节进行操作,也可对单元中的每一位进行位操作。因此,称为“位寻址区”。寻址区共有16个RAM单元,共计 128 位,位地址为 OOH 7FH。3 、用户RAM区。在内部RAM氐128单元中,除去前面两个区,剩下 80个单元,单元地 址为30H

5、7FH=在用户RAM区内可以设置堆栈区。13程序存储器指令地址、 堆栈地址和外接数据存储器地址各使用什么指针?为 什么?1、 程序存储器指令地址使用程序计数器PC指针,PC中存放的是下一条将要从程序存储器 中取出的指令的地址。程序计数器 PC变化的轨迹决定程序的流程。 PC最基本的工作方式是 自动加 1 。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序计数器,程序 流向发生变化。 在执行调用指令或响应中断时, 将子程序的入口地址或者中断矢量地址送人 PC程序流向发生变化。2、堆栈地址使用堆栈指针. SP。SP在80C51中存放当前的堆栈栈顶所指存储单元地址,是 一个 8 位寄存器,

6、对数据按照“先进后出”原则进行管理。外接数据存储器地址使用数据指针DPTR DPTR是一个16位特殊功能寄存器,主要功能是作为片外数据存储器或 I /0寻址 用的地址寄存器,这时会产生 RD或wR控制信号,用于单片机对外扩的数据存储器或 I /0 的控制。3、 数据指针DPTR也可以作为访问程序存储器时的基址寄存器,此时是寻址程序存储器中的 表格、常数等单元,而不是寻址指令。第 3章 P939MOV 、 MOVC 、MOVX 指令有什么区别,分别用于那些场合,为什么?MOV旨令用于对内部 RAM的访问。MOVC旨令用于对程序存储器的访问,从程序存储器中读取数据(如表格、常数等)。MOVX旨令采

7、用间接寻址方式访问外部数据存储器有Ri和DPTR两种间接寻址方式。执行MOVX旨令时,在P3. 7引脚上输出RD有效信号或在 P3. 6引脚上输出 WR有效信号,可 以用做外部数据存储器或 I/O的读/写选通信号,与单片机扩展电路有关。15.已知(R1)=20H , (20H)=AAH,请写出执行完下列程序段后 A的内容。MOV A , #55HANL A , #0FFH ORL 20H , A XRL A , R1 CPL A各指令的执行结果如下:MOV A,#55H;(A)=55HANLA ,#0FFH;(A)=55HORL20H,A;(20H)=FFHXRLA ,R1;(A)=AAHCP

8、LA;(A)=55H执行完程序段后,A的内容为5 5 H16阅读下列程序,说明其功能。MOV R0,#30HMOV A,R0RL AMOV R1,ARL ARL AADD A,R1MOV R0,A;功能:将30 H中的数乘以10以后再存回30H中。条件:30 H中的数不能大于 25, 25 X 10=250仍为一个字节。若 30H中的数大于25 , 则应考虑进位。21 读下列程序,请完成下列任务: 画出P1.0P1.3引脚上的波形图,并标出电压 V一时间t坐标 对源程序加以注释。ORG0000HSTART:MOVSP, #20HMOV30H , #01HMOVP1, #01HMLP0 :ACA

9、LLD50msMOVA, 30HCJNEA, #08H , MLP1MOVA, #01HMOVDPTR , #ITABMLP2 :MOV30H,AMOVCA, A+DPTRMOVP1,ASJMPMLP0MLP1 :INCASJMPMLP2ITAB :DB 0,1, 2, 4, 8DB 8,4, 2, 1D50ms:RETP1. OP1. 3引脚上的波形图如图所示。注释说明:判断表格中数据是否取完 ? 取完,从表头开始取给出表格首地址取表格中数据表格中数据未取完,准备取下一个软件延时50 ms子程序 第4章P13210.把长度为10H的字符串从内部RAM的输入缓冲区INBUF向设在外部 RAM的

10、输出缓冲区OUTBUF进行传送,一直进行到遇见字符 “CR时停止,如 字符串中无字符“ CR,则整个字符串全部传送。加上必要的伪指令,并对源程 序加以注释。程序如下:ORG 0000HAJMP MAINORG 0030HMAIN : MOV R7 , #10H;数据长度MOV RO , #INBUF ;源数据首地址MOV DPTR , #OUTBUF ;目的数据首地址LOOP : MOV A , R0;把源数据的值赋给 ACJNE A , #0DH LOOPl ;判断是否为“ CR (ASCII 码值为 0DH)SJMP ENDl ;是“ CR,则结束传送 LOOPl : MOVX DPTR,

11、 A ;把A的值赋给目的数据INC R0;源数据下一个地址值INC DPTR;目的数据下一个地址值DJNZ R7 , L00P;判断数据传送是否完毕ENDI : SJMP ENDIEND14. 80C51单片机从内部RAM的31H单元开始存放一组8位带符号数,字 节个数在30H中。请编写程序统计出其中正数、零和负数的数目,并把统计 结果分别存入20H、21H和22H三个单元中。加上必要的伪指令,并对源程 序加以注释。程序如下:;数据长度;数据首地址;正数个数LENGTH EQU 30HDATA_ADR EQU 31HPOS NUM EQU 20HZERO_NUM EQU 21H;0 个数NEG

12、_NUM EQU 22H ;负数个数ORG 0000HAJMP MAIN ,ORG 0030HMAIN: MOV POS_NUM, #0;计数单元初始化为 0MOV ZERO_NUM , #0MOV NEG_NUM, #0MOV R1 , #LENGTH ;数据长度MOV R0 , #DATA_ADR ;数据首地址LOOP : MOV A , R0 JB ACC 7,INC_NEG ;符号位为 1,该数为负数,跳转加 1CJNE A,#0, INC_POSINC ZERO_NUM ;该数为 0, 0 个数加 1AJMP L00P1INC NEG : INC NE_NUM ;负数个数加 1AJM

13、P LOOPl INC_POS :INC POS_NUM ;该数为正数,正数个数加 1LOOPl : INC R0 ;判断统计是否结束DJNZ R1 , LOOPEND15. 两个 10 位的无符号二一十进制数,分别从内部 RAM 的 40H 单元和 50H 单元开始存放。 请编程计算该两个数的和, 并从内部 RAM 的 60H 单元开始存 放。加上必要的伪指令,并对源程序加以注释。10位的无符号二十进制数,占5字节,每个字节存放一个压缩BCD码(2位)。ORG 0000HAJMP MAIN0Re 0030HMAIN:MOV R7, #05H;十位 (5 字节 ) 计数MOVR0, #40H;

14、被加数首址MOVR1, #50H;加数首址MOVR2, #60H;和数首址CLRC;清 C 标志位ADDB:MOV A, R0ADDCA, R1DA A;二一十进制调整MOVB, R0;保护被加数地址MOV 20H, R2MOVR0, 20HMOVR0,A;存和MOVR2, 20H;恢复和数地址MOVR0,B;恢复被加数地址INCR0;三个地址指针均加 1INC R1INC R2DJNZ R7 , ADDB ;多字节加未结束,则循环HERE : SJMP HEREEND 第 6章 P1774. 请编程实现 80C51 单片机产生频率为 100kHz 等宽矩形波 (定时器 /计数器T0,方式0,

15、定时器中断),假定80C51的晶振频率为12MHz。加上必要的 伪指令,并对源程序加以注释。100 kHz等宽矩形波,周期为 10us,定时周期为5us,机器周期为1 s。13 6 6计算:TC=2 (1 2 X 10 X 5 X 10 ) - 12=8187=1FFBH方式0:定时常数 TCH=FFH TCL=1BH 程序如下:ORG 0000H0000 0130 AJMPMAINORG 000BH定时器 T0 中断矢量000B 0141 AJMORG 0030HP INTER 0030 758900 MAIN:MOV TMQD#00H ;写控制字,设 TO为定时器,方式 00033 758

16、CFF MOV TH0,#OFFH;写定时常数,定时为 5卩0036 7 58AIB MOV TL0, #IBH0039 D28c SETB TR0;开启定时器 T0003B D2A9 SETB ET0;开定时器 T0 中断003D D2AF SETB EA;开中断003F 013F AJMP $定时器T0中断;中断等待0041 758CFF INTER:MOV TH0, #0FFH;重写定时常数0044 758AIB MOV TL00047 B290 CPL P10049 32 RETI, #IBH0;P1 口作为输出端, P1.0 变反输出;中断返回END第 8章P2792、如何构造 80

17、C51 单片机并行扩展的系统总线?总线有: 1、 片内总线;2、片总线 (又称元件级总线或局部总 线).3、内总线 (又称微型机总线或板级总 一般称为系统总线 )4、外总线(又称通信总线 ).总线的类型: 1、地址总线 . 是微机用来传送地址的 信号线 .2 、数据总线 . 传送数据和代码的总 一般为双向信号线 ,3 、控制总线 .传送控制信号的总线 ,用 来实现命令 ,状态传送,中断,储器传送的请求与控制信号传送 ,以及提 供系统使 用的时钟和复位信号等 .8.外接程序存储器的读信号为,外接数据存储器的读信号14.已知可编程I/O接口芯片8255A的控制寄存器的地址为 BFFFH,要求 设定

18、A 口为基本输入,B 口为基本输出, 数据后, 原理图。1.C 口为输入方式。请编写从 C 口读入 再从B 口输出的程序段。并根据要求画出 80C51与8255A连接的逻辑 加上必要的伪指令,并对源程序加以注释。ORG 0000HAJMP MAIN ORG 0030HMAIN: MOVDPTR #2000H B,20H DPTRMOVMOVX ACLR C SUBB A;设定的温度值送B;取实测温度值JNC LOWERMOVMOVX ACLR CSUBB AJC HIGHSJMP MAINLOWER: CLR P1.0SJMP MAINHIGH: SETB P1.0SJMP MAINEND7B

19、,20HDPTR2.答:实测温度值 设定温度值,P1.0输出低电平 ;取设定的温度值;取实测温度值;实测温度值 设定温度值,P1.0输出高电平;实测温度值=设定温度值,P1.0输出不变ORGD000H MONDPTR #2000H MOW1, #10DMON40H, #00HSTEP MOV為,DPTRCJNE A, 40H, STEP1 SJMP NEXTSTEP1 JC NEXT MON40H, ANEXT INCDJNZSJMPEND;无符号数存放单元首址;无符号数长度;最大值存放单元预置为最小值;取数;比较大小;(A)=(40H),不交换;(A) v (40H),不交换;(A) (40

20、H),则较大值存入40H中DPTRR1, STEP $22.利用ADC0809芯片设计以80C51为控制器的巡回检测系统。请画出电 路连接图,并编写进行某一路模拟量转换的源程序。加上必要的伪指令,并对 源程序加以注释。巡回检测系统连接如图所示:;A/D通道0地址;数据存入地址;启动A/D转换;A/D转换等待;读入A/D转换后的数据;存入内部RAM;中断返回;延时子程序(可以直接调用)ADC080啲INO通道地址为7FF8H 计算:ORG 0000HSJMP MAINORC0030HMAINLOOP MOV DPTR #7FF8H MOVR0, #20HMOVX DPTRALCALL D128

21、卩sMOVX A, DPTRMOR0 AD128卩s:RETEND微机原理与接口技术实验作业第一部分 简答题1. 80C51单片微机内部有哪几个常用的地址指针,它们各有什么用处。80C51单片微机内部有三个常用的指针,即PC-程序计数器,存放下一条将要从程序存储器取出的指令的地址。SP-堆栈指示器,指向堆栈栈顶。DPTR数据指针,作为外部数据存储器或I/O的地址指针。2. 简述80C51的程序状态字PSW勺主要功能。PSW勺主要部分是算术逻辑运算单元 ALU的输出。有些位根据指令运算结果,由硬 件自动生成。如 0V为溢出标志位,用于指示 8位带符号数运算后有否超出 8位带符号 数允许范围。C标

22、志为进位/借位标志位。多倍精度的加减法运算。3. 80C51访问片内外不同存储空间时采用哪 3类传送指令。M0传送指令用于访问片内数据存储器。MOV传送指令用于对程序存储器内的表格进行查表操作。MOVX专送指令用于访问片外数据存储器或I/O,因为执行MOV指令时会产 生控制信号RD或WR。4. 简述80C51单片微机内部RAM氐128字节4个主要区域的特点。寄存器区:共4组寄存器,每组8个存储单元,以R0R7作为单元编号。 位寻址区:20H- 2FH中的每一位进行位操作。堆栈区:设置在用户RAMK内,数据先进后出。用户RAM区:除去前面3个区,剩下的所有单元。5. 简述80C51单片微机的并行

23、扩展三总线(AB DB和CB如何构成及应 用。AB共16位,由P0 口经锁存后得到 A0-A7、P2 口构成A8-A15。作地址总线。 DB由P0口分时构成。作数据总线。CB主要有ALE /RD、/WR /PSEN等。作控制总线。6. 为什么要进行低功耗设计?实现绿色电子,节约能源。某些场合(如野外)要求便携并由电池供电,要求功耗小。能提高应用系统可靠性,因为在低功耗下,单片微机对干扰不敏感7. 说明80C51单片微机的复位方式主要有哪几种。主要有上电复位方式、按键电平复位方式和外脉冲复位方式8. 80C51芯片内部主要集成逻辑功能部件有哪些?有中央处理器、存储器、定时器 / 计数器、 I/O 口等9. 80C51的程序存储器中有几个特定地址。0000H为复位后 PC初始值,0003H为外部中断0中断矢量地址,000BH为 T0中断矢量地址,0013H为外部中断1中断矢量地址,001BH为T1中断矢量地 址和0023H为串行口中断矢量地址10. 请简述如何在实验室完成实验任务,使用哪些资源?仿真软件由 WAV的编辑软件及 MICETE公司的EasyProbe8052F仿真软件组成, 源程序在PC上进行编辑、编译,将编译通过后所生成的后缀名为 HEX的机器码文 件,通过RS- 232串行口下载给仿真器,仿真器采用MICETEK公司的 EasyProbe8052F仿真器。在仿真器上

温馨提示

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

评论

0/150

提交评论