姓名:陈婧娴
学号:19021211245
【嵌牛导读】:51单片机是初学者常接触的单片机,本文着重介绍51单片机基本结构
【嵌牛鼻子】:51单片机
【嵌牛提问】:51单片机的基本结构是什么?
【嵌牛正文】:
一、单片机最小系统介绍
单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。
上图说明:图中的VCC表示volt current condenser,表示供电电压,51单片机一般选用5V或3.3V电源,GND是ground 的缩写,表示接地,可以理解为电源负极,0V,并将其作为参考电压(整个系统中的所有的电压都以之为参考点)。注意电源正负极不要接反,否则烧坏单片机。
对共地的理解:将来大家做一个复杂的单片机系统,会涉及到许多模块相互通信,这些模块的负极必须接在一起,这样整个系统才有了统一的电势标准,(就像物理题中必须先规定一个零势能面才能谈势能差),否则容易出现乱码,或者根本不工作。1、复位电路:
由电容串联电阻构成,由图并结合"电容电压不能突变"(参看电路分析基础)的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以,适当组合RC的取值就可以保证可靠的复位.一般推荐C 取10u,R取8.2K.当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平.至于如何具体定量计算,可以参考电路分析相关书籍.
①、复位电路的用途 :
单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。单片机复位电路如下图:
②、复位电路的工作原理 在书本上有介绍,51单片机要复位只需要在第9引脚接个高电平持续2US就可以实现,那这个过程是如何实现的呢?
在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。
开机的时候为什么为复位?
在电路图中,电容的的大小是10uF,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。
按键按下的时候为什么会复位?
在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。
2、晶振电路:
①、连接在引脚XTAL1和XTAL2和GND之间的电路叫晶振时钟电路,(XTAL表示external crystal oscillator,外接晶振)。举个例子,时钟电路就像人的心脏一样,每时每刻以相同的频率跳动着,是单片机内部电路正常工作的驱动力。一般来说,晶振的频率越高,单片机的处理速度越快,但是STC89c51单片机的最高工作频率不能超过80MHz。
②、时钟周期、机器周期等的概念区分:
时钟周期:
时钟周期就是晶振完成一次振动所需要的时间,又称为震荡周期,如果晶振的频率是12MHz,那么单片机的时钟周期就是(1/12M)秒 ,是计算机中最基本的、最小的时间单位。
在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250us。由于时钟脉冲是计算机的基本工作脉冲,它控制着计算机的工作节奏(使计算机的每一步都统一到它的步调上来)。显然,对同一种机型的计算机,时钟频率越高,计算机的工作速度就越快。
51单片机把一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示)。
机器周期:
在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。一般情况下,一个机器周期由若干个S周期(状态周期)组成。
51系列单片机的一个机器周期同6个 S周期(状态周期)组成。前面已说过一个时钟周期定义为一个节拍(用P表示),二个节拍定义为一个状态周期(用S表示),51单片机的机器周期由6个状态周期组成,也就是说一个机器周期=6个状态周期=12个时钟周期。以后大家会遇到12T、6T、1T单片机的概念,即是指这个。
例如外接24M晶振的单片机,他的一个机器周期=12/24M秒;
③、常见晶振
典型的晶振取11.0592MHz,因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合。
或者取12MHz的晶振,可以产生精确的微秒级延时函数,方便定时操作。3、总结:①、复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。②、按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。③、51单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统容值越大需要的复位时间越短。④. 51单片机最小系统晶振Y1也可以采用12MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。⑤. 51单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好4.P0口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。
二、51单片机各引脚功能介绍
(PDIP是芯片封装格式)
如上图,芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4、...、40,其中芯片的1脚顶上有个凹点(见右图)。在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
1、主电源引脚(2根):
VCC(Pin40):电源输入,接+5V电源
GND(Pin20):接地线,电源负极
2、外接晶振引脚(2根):
XTAL1(Pin19):片内振荡电路的输入端
XTAL2(Pin20):片内振荡电路的输出端
3、控制引脚(4根)
RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号
PSEN(Pin29):外部存储器读选通信号
EA/VPP(Pin31):特别注意:程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。即当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行.很多情况下将它悬空会导致程序运行出错。大多数情况下内部程序存储器都足够使用,所以我们将它与VCC相连。
4、可编程输入/输出引脚(4*8根) :
AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。每一根引脚都可以编程。
P0口(Pin39~Pin32):8位双向I/O口线 ,名称为P0.0~P0.7
P1口(Pin1 ~Pin8 ):8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7
PS:p3.0和p3.1口还兼具串口通信的功能
P3.2到p3.5兼具外部中断和定时器功能。
网友评论