内容发布更新时间 : 2024/11/19 0:31:42星期一 下面是文章的全部内容请认真阅读。
浙江大学远程教育学院 《微机原理与接口技术》课程作业
姓名: 年级:
第2章 P52
学 号: 学习中心:
2.80C51单片机引脚有哪些第二功能?
第一功能 第二功能
P0.0~P0.7 地址总线Ao~A7/数据总线D0~D7 P2.0~P2.7 地址总线A8~A15 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INT0外部中断0) P3.3 IINT1(外部中断1)
P3.4 TO(定时器/计数器0的外部输入) P3.5 T1(定时器/计数器0的外部输出) P3.6 WR(外部数据存储器或I/O的写选通) P3.7 RD外部数据存储器或I/O的读选通)
4.80C51单片机的存储器在结构上有何特点?在物理上和逻辑上各有哪几种地
址空间?访问片内RAM和片外RAM的指令格式有何区别?
1、80C5l单片机采用哈佛结构,即将程序存储器和数据存储器截然分开,分别进行寻址。不仅在片内驻留一定容量的程序存储器和数据存储器及众多的特殊功能寄存器,而且还具有较强的外部存储器扩展能力,扩展的程序存储器和数据存储器寻址范围都可达64 KB。 2、在物理上设有4个存储器空间
·片内程序存储器; ·片外程序存储器;
·片内数据存储器; . ·片外数据存储器。
在逻辑上设有3个存储器地址空间
? 片内、片外统一的64 KB程序存储器地址空间。
? 片内256字节(80C52为384字节)数据存储器地址空间。 片内数据存储器空间在物理上又包含两部分:
? 对于80C51型单片机,0~127字节为片内数据存储器空间;128~255字节为特殊
功能寄存器(SFR)空间(实际仅占用了20多个字节)。
? 对于80C52型单片机,O~127字节为片内数据存储器空间;128~255字节共128
个字节是数据存储器和特殊功能寄存器地址重叠空间。 片外64 KB的数据存储器地址空间。
3、在访问3个不同的逻辑空间时,应采用不同形式的指令,以产生不同存储空间的选
通信号。访问片内RAM采用MOV指令,访问片外RAM则一定要采用MOVX指令,因为MOVX指令会产生控制信号RD或WR,用来访问片外RAM。访问程序存储器地址空间,则应采用MOVC指令。
6.80C51单片机片内RAM低128个存储单元划分为哪3个主要部分?各部分
主要功能是什么?
80C51片内RAM的低128个存储单元划分为3个主要部分:
1、寄存器区。共4组寄存器,每组8个存储单元,各组以R0~R7作为单元编号。常用于保存操作数及中间结果等。:R0~R7也称为“通用工作寄存器”,占用00H~1FH共32个单元地址。
2、位寻址区。单元地址为20H~2FH,既可作为一般RAM单元使用,按字节进行操作,也可对单元中的每一位进行位操作。因此,称为“位寻址区”。寻址区共有16个RAM单元,共计128位,位地址为OOH~7FH。
3、用户RAM区。在内部RAM低128单元中,除去前面两个区,剩下80个单元,单元地址为30H~7FH。在用户RAM区内可以设置堆栈区。
13.程序存储器指令地址、堆栈地址和外接数据存储器地址各使用什么指针?为
什么?
1、程序存储器指令地址使用程序计数器PC指针,PC中存放的是下一条将要从程序存储器中取出的指令的地址。程序计数器PC变化的轨迹决定程序的流程。PC最基本的工作方式是自动加1。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序计数器,程序流向发生变化。在执行调用指令或响应中断时,将子程序的入口地址或者中断矢量地址送人PC,程序流向发生变化。
2、堆栈地址使用堆栈指针.SP。SP在80C51中存放当前的堆栈栈顶所指存储单元地址,是一个8位寄存器,对数据按照“先进后出”原则进行管理。外接数据存储器地址使用数据指针DPTR。DPTR是一个16位特殊功能寄存器,主要功能是作为片外数据存储器或I/0寻址用的地址寄存器,这时会产生RD或wR控制信号,用于单片机对外扩的数据存储器或I/0的控制。 3、数据指针DPTR也可以作为访问程序存储器时的基址寄存器,此时是寻址程序存储器中的表格、常数等单元,而不是寻址指令。 第3章P93
9.MOV、MOVC、MOVX 指令有什么区别,分别用于那些场合,为什么?
MOV指令用于对内部RAM的访问。
MOVC指令用于对程序存储器的访问,从程序存储器中读取数据(如表格、常数等)。
MOVX指令采用间接寻址方式访问外部数据存储器.有Ri和DPTR两种间接寻址方式。执行MOVX指令时,在P3.7引脚上输出RD有效信号.或在P3.6引脚上输出WR有效信号,可以用做外部数据存储器或I/O的读/写选通信号,与单片机扩展电路有关。 15.已知(R1)=20H,(20H)=AAH,请写出执行完下列程序段后A的内容。
MOV A,#55H ANL A,#0FFH ORL 20H,A XRL A,@R1 CPL A
各指令的执行结果如下:
MOV A,#55H ;(A)=55H
ANL A,#0FFH ;(A)=55H ORL 20H,A ;(20H)=FFH XRL A,@R1 ;(A)=AAH CPL A ;(A)=55H
执行完程序段后,A的内容为5 5 H
16.阅读下列程序,说明其功能。
MOV R0,#30H MOV A,@R0 RL A MOV R1,A RL A RL A ADD A,R1
MOV @R0,A ; 功能:将30 H中的数乘以10以后再存回30H中。
条件:30 H中的数不能大于25,25×10=250仍为一个字节。若30H中的数大于25,则应考虑进位。
21.读下列程序,请完成下列任务:
①画出P1.0~P1.3引脚上的波形图,并标出电压V-时间t坐标。 ②对源程序加以注释。
P1.O~P1.3引脚上的波形图如图所示。
ORG 0000H START: MOV SP,#20H MOV 30H,#01H MOV P1,#01H MLP0:ACALL D50ms MOV A, 30H CJNE A, #08H,MLP1 MOV A, #01H
MOV DPTR,#ITAB
MLP2∶MOV 30H, A MOVC A,@A+DPTR MOV P1, A SJMP MLP0 MLP1:INC A SJMP MLP2 ITAB: DB 0,1,2,4,8 DB 8,4,2,1 D50ms:…
RET