一、填空题:1、当使用8051单片机时,需要扩展外部程序存储器,此时EA应接低电平。
2、8051上电复位后,从地址0000H开始执行程序,外部中断1的中断入口地址为0013H.3、8051最多有64KB的程序存储器和64KB的数据存储器。
4、P0口通常用作分时复用为地址总线(低8位)及数据总线或外接上拉电阻用作普通I/O 口。
5、P2口的功能为用作地址总线和作为普通I/O口使用。
6、若由程序设定RS1、RS0=01,则工作寄存器R0的直接地址为08H。
7、若由程序设定RS1、RS0=00,则工作寄存器R0的直接地址为00H。
8、若累加器A中的数据为01110010B,则PSW中的P=0(偶数个1为0,奇数为1)9、8051单片机共有5个中断源,分别是INT0外部中断0、INT1外部中断1、T0定时器/计数器中断0中断、T1定时器计数器1中断、串行口中断。
10、ADC0809是8通路8位逐次逼近式模/数转换器。
11、计算机中按功能把总线分为数据总线、地址总线和控制总线。
12、MOV A,#0F5H中,#0F5H的寻址方式称之为立即寻址。
MOV类指令称之为一般传输指令。
13、8051的一个机器周期等于12个晶体震荡周期;通常8051单片机的ALE引脚以1/6倍的晶振频率输出脉冲。
14、8051单片机复位后,堆栈指针SP指向第07H号内部RAM;8051的堆栈是向上生长的。
15、十进制调整指令DA A,专用于BCD码的加减运算。
16、单片机的中断触发方式有低电平触发和下降沿触发两种。
大多数情况下,单片机控制系统采用下降沿触发方式触发中断。
17、若执行加法运算后累加器(A)中的数据为01110010B,则PSW中的P=018、8051单片机的程序存储器和数据存储器编址方式采用的是哈佛结构,即数据存储器和程序存储器分开的编址方式。
二、单项选择题1、8051单片机执行MOVX写指令时,相关的信号状态是PSEN无效为高电平,WR有效为低电平2、若PSW.4=1,PSW.3=1,现在需要保存R1的内容,可执行PUSH 19H指令3、下列指令不是变址寻址方式的是MOVX A,@DPTR4、在8051片外扩展一片EEPROM 28C64需要13根地址线(片选除外),8根数据线。
5、8051定时器/计数器工作方式2是自动重装8位计数器6、单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,MCS-51的PC为15位,因此其寻址范围是64KB。
(2^16B=64KB)7、若单片机的振荡频率为12MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为2^16-1000.(计算过程:机器周期=12/12MHz=1μs 次数=1ms/1μs=1000次方式一为16位=2^16)8、访问外部数据存储器的指令是MOVX,访问程序存储器的指令是MOVC。
9、汇编语言中,最多包含4个区段,其中操作码区段是必不可少的。
10、MCS-51单片机的位寻址区域为20H-2FH。
11、MCS-51单片机复位后,PC值被初始化为0000H。
12、MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应外部中断0.三、读程序1、执行下列程序段中第一条指令后(1)(P1.7)= 0(P1.3)= 0执行第二条指令后,(2)(P1.5)=1 (P1.4)=0ANL P1,#42HORL P1,#0ECH2、下列程序段执行后,(R0)=47H,(48H)= 0FFH,(47H)=3FHMOV R0,#48HMOV 48H,#0MOV 47H,#40HDEC @R0DEC R0DEC @R03、已知(SP)=29H,(DPTR)=1234H,在执行下列指令后,(SP)= 2BH,内部RAM(2AH)=34H,(2BH)=12HPUSH DPLPUSH DPH四、简答题1、简述MCS-51单片机中,振荡周期、机器周期和指令周期的关系。
答:(1)振荡周期:振荡周期为单片机提供定时信号的振荡源的周期或外部输入时钟的周期。
(2)时钟周期:又称状态周期或状态时间S,是振荡周期的两倍,分为P1、P2节拍,通常P1完成算术逻辑操作,在P2节拍完成内部寄存器间的数据传送操作。
(3)机器周期:一个机器周期由6个状态(时钟周期)(或12个振荡周期)组成。
(4)指令周期:执行一条指令的全部时间,是机器周期的倍数,MCS-51单片机中指令周期通常由1、2、4个机器周期组成。
2、DAC0832作为数模转换器,其连接方式有几种?答:3种。
单缓冲方式、双缓冲方式和直通方式。
(1)直通方式常用于不带微机的控制系统。
(2)单缓冲方式是值DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受8051控制的锁存方式。
(3)对于多路D-A转换,要求同步进行D-A转换输出时,必须采用双缓冲同步方式。
3、8051单片机作定时和计数时,其计数脉冲分别由谁提供?8051单片机定时计数器共有几种工作模式?分别是什么?答:当用作定时器时,是在内部对CPU的时钟脉冲计数。
当用作计数器时,是对相应输入引脚输入的脉冲信号计数。
工作模式:(1)工作模式0:使用低字节的5位和高字节的8位组成13位的计数器,低5位计数溢出后向高位进位计数,高8位计数器计满后置位溢出标志位。
(2)工作模式1:使用低字节和高字节的16位组成16位计数器。
与0模式的区别仅在计数器长度,定时长度和计数容量不同。
(3)工作模式2:使用低字节的8位做计数器、高字节的8位作为预置常数的寄存器。
(4)工作模式3:只适用于定时器/计数器T0,T0分别为两个独立的8位计数器TH0和TL0.4、MCS-51单片机系统共有几种寻址方式?分别是什么?答:有7种寻址方式:(1)寄存器寻址(2)直接寻址(3)立即寻址(4)寄存器间接寻址(5)相对寻址(6)位寻址(7)基址加变址寄存器间接寻址5、试说明特殊功能寄存器TCON中TF1、TR1、IE1、IT1位的含义是什么?这些位什么情况下被置位或清除?答:TF1T1计数溢出标志位,当计数器T1计数计满溢出时,该位由硬件置1,转到中断服务程序时,再由硬件自动清0.TR1 T1计数运行控制位,由软件置1或清0.为1时允许计数器T1计数,为0时禁止计数器T1计数。
TF0 T0计数溢出标志位,当计数器T0计数计满溢出时,由硬件置1,申请中断。
进入中断服务程序后由硬件自动清0.TR0 T0计数运行控制位,由软件置1或清0,为1时允许计数器T0计数,为0时禁止计数器T0计数。
IE0 外部中断0(INT0)请求标志位,当CPU采样到INT0引脚出现中断请求后,此位由硬件置1.在中断响应完成后转向中断服务程序时,再由硬件自动清0.IE1外中断1(INT0)请求标志位,功能同上。
IT0 外中断0请求信号方式控制位,当IT0=1,后沿负跳变有效;IT0=0,低电平有效。
此位可由软件置1或清0.IT1外中断1请求信号方式控制位,IT1=1,后沿负跳变有效;IT1=0,低电平有效。
五、应用题1、将存于外部RAM 8000H开始的50H个数据传送到内部0010H开始的区域,请编程实现。
ORG 0100HMOV DPR,#8000HMOV R0,#10HMOV R2,#50HMOVX A,@DPTRMOV @R0,AINC DPTRINC R0END知识点:1、各P口功能:P0口:8位双向三态I/O口,或分时复用为地址总线(低8位)及数据总线,或作为普通I/O 口使用。
P1口:8位准双向I/O口,常用作普通I/O口使用,个别引脚有第二功能P2口:8位准双向I/O口,或用作地址总线(高8位),或作为普通I/O口使用P3口:8位准双向I/O口,或作为普通I/O口使用;或作为第二功能口使用。
P3.0串行输入端口(RXD)P3.1串行输出端口(TXD)P3.2外部中断0(INT0)P3.3外部中断1(INT1)P3.4 T0 P3.5 T1P3.6外部数据存储器写选通(WR)P3.7外部数据存储器读选通(RD)2、引脚EA当EA=1时,访问内部程序存储器,EA=0时,访问外部程序存储器引脚PSEN外部程序存储器的读选通信号,读取时有效低电平引脚PROG/ALE当访问外部存储器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。
即使不访问外部存储器,ALE端扔以不变的频率周期性地出现正脉冲信号,次频率为振荡器频率的1/6,可用作对外输出的时钟,或用于定时,每当访问外部数据存储器的时候,将跳过一个ALE脉冲。
3、PSW中各个位的功能:PSW.7 (CY)进位标志位PSW.6 (AC)辅助进位标志位PSW.5 (F0)标志位PSW.4 PSW.3 (RS1\RS0)四组工作寄存器区选择控制位1和位000 工作0区(00H)01 1区(08H)10 2区(10H)11 3区(18H)PSW.2 (OV)溢出标志位PSW.1 保留位,未用4、8051单片机的时序定时单位:节拍、状态、机器周期和指令周期6、寻址方式(1)寄存器寻址方式是对选中寄存器中的数据进行处理,适用于数据放置在寄存器之中的情况。
MOV R1,B ;将寄存器B中的数值送入到寄存器R1中INC R2;将寄存器R2中的数值加1MOV A,R7 ;将寄存器R7中的数值送入累加器A寄存器寻址范围:寄存器区中8个工作寄存器R0~R7中的一个(由指令操作码的低三位数值确定)、特殊寄存器A, B, DPTR, Cy(进位位,也是位处理机的累加器)也可作为寄存器寻址的对象。
(2)直接寻址方式是对直接指定地址的存储器单元中的数据进行处理,适用于数据放置在可以直接寻址的存储单元之中的情况。
MOV 40H,B ;将寄存器B中的数值送入到内部RAM的40H单元中INC 30H ;将内部RAM的30H单元中的数值加1MOV TL0 , R7 ;将寄存器R7中的数值送入到特殊功能寄存器TL0中直接寻址范围: 片内RAM,包括SFR,且SFR只能直接寻址(3)立即寻址是对指令操作码后的数据进行处理,适用于在程序中直接处理的数据的情况。
MOV 38H,#05H ;将数值05H送入到内部RAM的38H单元中ADD A,#30H ;将A寄存器中的数值加上30HMOV TH0,#0F2H ;将定时器0高8位设置为数值0F2H(4)位寻址MOV C,40H ;把位40H的值送进位位C位寻址的寻址范围包括:内部RAM中的位寻址区单元地址为20H-2FH,共16个单元,128个位,位地址是00H-7FH。
特殊功能寄存器中的可寻址位可供位寻址的特殊功能寄存器共有11个,实际有寻址位83个。
注意: 位寻址只能直接寻址。
(5)寄存器间接寻址是将要处理数据的地址放在寄存器中,即用寄存器中的数据作为存储单元的地址数值。