复习期末考试题型:1、填空题(20%)2、选择题(20%)3、分析题(28%)4、综合编程题(32%)第一章1、51单片机内部有哪些功能部件?(具体看课本P20~P21)例:下面的哪一个功能部件不属于8051单片机的内部硬件。
( B )(A)串行口(B)SPI接口(C)定时器(D)中断系统2、CPU结构?1)什么是PC指针?复位时PC指针的值?(见课本P25)程序计数器PC(Program Counter):存放下一条要执行的指令在程序存储器中的地址。
复位时PC指针的值0000H2)累加器A(见课本P24页),寄存器B(见课本P24页),程序状态字PSW(见课本P24页),堆栈SP(见课本P30)累加器A :使用最频繁的寄存器,也可写为Acc。
是ALU单元的输入之一,又是运算结果的存放单元。
A的进位标志Cy是特殊的,同时又是位处理机的位累加器。
寄存器B:运算结果的另一个存放单元。
程序状态字寄存器PSW:RS1 RS0 所选的4组寄存器0 0 0区(内部RAM地址00H~07H)0 1 1区(内部RAM地址08H~0FH)1 0 2区(内部RAM地址10H~17H)1 1 3区(内部RAM地址18H~1FH)(5)OV(PSW.2)溢出标志位指示运算是否产生溢出。
各种算术运算指令对该位的影响情况较复杂,将在第3章介绍。
(6)PSW.1位: 保留位,未用(7)P(PSW.0)奇偶标志位P=1,A中“1”的个数为奇数P=0,A中“1”的个数为偶数堆栈指针SP :指示出堆栈区顶部在内部RAM块中的位置复位后,SP中的内容为07H。
堆栈的作用:(1)保护断点(2)现场保护堆栈的原则:先进后出堆栈的操作:入栈(PUSH):先(SP)+1,后把数据压入堆栈出栈(POP):先把数据弹出堆栈,后(SP)-1例:(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,执行指令POP DPH,POP DPL,POP SP后,DPTR、SP中的内容分别是()。
(A)3C5F,50H (B)5F3CH,30H(C)3C5FH,30H (D)3C5FH,4FH2、存储器结构1)51单片机的寻址范围?(见课本P26)51有16根地址线,最大寻址程序存储空间为64KB(寻址范围是:0000H~FFFFH 共64K),分为片内程序存储器、片外程序存储器,采用统一编址方式。
4KB的片内ROM编址范围为0000H~0FFFH;64KB的片外ROM编址范围为0000H~FFFFH;2)两种工作模式:微处理器和微控制器(见课本p27)微处理器(或称CPU,中央处理单元)微控制器MCU(MicroController Unit)微处理器模式:类似于电脑的CPU,程序存取器、数据存储器及I/O设备都是外部提供的,即不使用51内部RAM、ROM等资源。
此时,EA=0。
微控制器模式:该模式就是充分利用51内部RAM、ROM、定时/计数器的资源进行编程工作的模式。
此时,EA= 1。
3)程序存储空间:内部,外部,范围(见课本P26)程序存储空间地址范围64KB(ROM)。
包括片内程序存储器(4KB)和片外程序存储器(64KB)。
4)数据存储空间:内部,外部(见课本P26)外部:外RAM与I/O空间统一编址,范围0000H~FFFFH,共64K内部:内RAM,SFR内RAM分布:地址范围,工作寄存器区,位寻址区,通用区(见课本P28页)SFR:地址范围,位寻址(见P29页)特殊功能寄存器SFR共21个,离散地分布在高128B片内RAM的80H~FFH区域中。
11个可以进行位寻址。
特别提示:对SFR只能使用直接寻址方式,书写时可使用寄存器符号,也可用寄存器单元地址。
数据存储空间地址范围64KB(RAM)。
包括片内数据存储器(共256B,21个特殊功能寄存器与128B内部RAM)和片外数据存储器(64KB)。
MCS-51单片机没有独立的I/O空间,而是将I/O空间与片外数据存储器空间共用64KB地址空间范围(共同编址)。
例:位地址为2BH的位具体是哪个字节的哪一位?( B )[见课本P28页表] (A)24H.1 (B)25H.3 (C)26H.0 (D)27H.43、最小系统1)什么是最小系统?最小系统:使得单片机能正常工作所必需的最少外部功能部件。
应包括:电源,时钟电路,复位电路,相应软件。
2)引脚功能电源引脚Vcc、Vss;时钟引脚XTAL1、XTAL2;复位引脚RESET(即RST);控制引脚PSEN、EA、ALE;I0引脚P0、P1、P2、P3,为4个8位I/O口的外部引脚;重点掌握:EA、RST、P0~P3(见课本P23页)EA:访问程序存储控制信号(见课本P23页)复位引脚:RST (见课本P22、P31~P36页)1、P0口三态复用口功能(二者选其一)基本输入输出端口(通用I/O端口)片外总线(地址总线低8位与数据总线复用)驱动能力:8个LSTTL门电路(1个LSTTL的驱动电流是:低电平时0.36mA,高电平时20uA)2、P1口准双向基本输入输出端口驱动能力:4个LSTTL门电路3、P2口准双向功能基本输入输出端口总线(地址总线的高8位)驱动能力:4个LSTTL门电路4、P3口准双向功能基本输入输出端口第二功能驱动能力:4个LSTTL门电路例:当单片机要求工作在微控制器模式,则EA=1;当单片机要求工作在微处理器模式,则EA=0;3)时钟电路(见课本P37页)51系列单片机最高工作频率可达?AT系列:24MHzS系列:40MHz时钟周期,机器周期,状态周期之间的关系。
时钟周期:单片机的基本时间单位。
若时钟的晶体的振荡频率为fosc,则时钟周期Tosc=1/fosc。
机器周期:CPU完成一个基本操作所需要的时间称为机器周期。
执行一条指令分为几个机器周期。
每个机器周期完成一个基本操作。
MCS-51单片机每12个时钟周期为一个机器周期,状态周期:在51里,一个机器周期又分为6个状态:S1~S6。
因此,一个状态周期为2个时钟周期。
每个状态又分为两拍:P1和P2。
因此,一个机器周期中的12个时钟周期表示为:S1P1、S1P2、S2P1、S2P2、…、S6P2。
4)复位电路51单片机的复位条件?复位条件:引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可使MCS-51复位。
复位时,PC初始化为0000H,使MCS-51单片机从0000H单元开始执行程序。
复位时,SFR状态?SP,P0~P3SFR的复位值:除PC之外,复位操作还对其它一些寄存器有影响,见表1-12。
SP=07H ,P0-P3的引脚均为高电平FFH。
第四-七章一、4个8位并行I/O端口(见课本P23)1、P1(基本输入输出,准双向)操作:输出输入:必须先写12、P0,P2(总线或基本输入输出)P0:3态,作为基本I/0时,必须外加上拉电阻3、P3(第二功能或基本IO)4、应用♦P0口:8位,内部无上拉电阻✧访问外RAM或ROM时,分时复用作低8位地址及数据I/0口.具体看✧普通I/O口:当做输入口时,需要令P0口对应管脚为1.这主要是因为I/O口有“线与”功能,就是说I/O线的电平状态是I/O两端共同决定的,一旦有一端为0,相与之后,I/O线的状态就肯定为0。
所以,在作为输入口时,我们需要把相应端口拉高至1,这样,当另一端为0时,I/O线就为0;当另一端为1时,I/O线就为1.♦P1口:8位,内部有上拉电阻✧普通I/O口,同P0口♦P2口:8位,有上拉✧访问外RAM或ROM时,用作高8位地址✧普通I/O口,同P0口♦P3口:8位,有上拉✧除了有丰富的第二功能外,与P1口相同例:8051的准双向I/O端口有P1 、P2 、P3 ,这是因为准双向口只有高电平态和低电平态。
例:要求系统使用P2口读入拨码开关的状态,并通过P1口使得发光二极管显示该状态,请设计硬件电路并编程。
#include <REGX51.H>void delay (void) /* delay 函数*/{ unsigned char i,j; /*这个函数执行时间的延迟*/for (i=0;i<255;i++)for(j=0;j<255;j++);}void main (void){ unsigned char temp; /* 声明变量temp */while (1) /* 无穷循环*/{temp=P2; /* 将P2输入的数据直接放入变量temp当中*/P1=temp; /* 将变量temp中的数据直接输出到Port 1*/delay();}}二、中断系统1、概念什么是中断,中断源,中断嵌套,中断优先级中断的定义:CPU正在执行程序时,单片机外部或内部发生的某一事件,请求CPU迅速去处理。
CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。
处理完该事件后,再回到原来被中止的地方,继续原来的工作,这称为中断。
CPU处理事件的过程,称为CPU的中断响应过程。
中断源:(1)外围设备:A/D、键盘、打印机等。
(2)故障源:掉电、溢出(3)定时器和实时时钟(4)为调试程序设置的中断源(如单步调试)中断嵌套:指CPU因响应和执行某一中断源的中断请求时,发生了另一个优先级比它高的中断源请求,那么CPU暂停原来执行的中断服务程序转而响应和处理中断优先级更高的中断源的中断请求,处理完以后,再回到原来继续执行低优级中断服务程序。
中断的优先级:针对同时有多个中断源进行中断请求时,CPU按优先级的高低来响应中断。
高优先级低优先级同级中的优先权2、51单片机的中断源、中断入口地址,中断优先级中断源MCS-51有5个中断源,两个中断优先级,可以实现两级中断服务程序嵌套。
中断源中断入口地址外部中断0 /INT0 0003H定时器0 T0 000BH外部中断1 /INT1 0013H定时器1 T1 001BH串行口0023H优先级结构:(1)低优先级中断可被高优先级中断所中断,反之不能;(2)任何一种中断(不管是高级还是低级),一旦得到响应,与它同级的中断源不能再中断它。
(3)同级的中断源同时请求时,遵循辅助优先级顺序。
例:当IP=45H时,请排出5个中断源优先级的先后。
中断优先级控制寄存器IP中的数据是PX1=1,PX0=1.外部中断0,外部中断1,定时器0,定时器1,串行口。
3、外部中断触发方式(2种)(课本P126)边沿触发方式和电平触发方式。
4、中断标志位的清除方式中断请求的撤除中断源发出中断请求,相应中断请求标志置“1”。
CPU响应中断后,必须清除中断请求“1”标志。
否则中断响应返回后,将再次进入该中断,引起死循环出错。