51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一。其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。
51单片机是基础入门的一个单片机,还是应用最广泛的一种,不仅因为其编程简单,更重要的是网上的资料非常丰富,所以一般学习单片机开发的都将51单片机作为入门开发的首选。需要注意的是,51系列的单片机一般不具备自编程能力。
(一)单片机芯片介绍
1.主要的51单片机芯片
Intel(英特尔)的80C31、80C51、87C51,80C32、80C52、87C52等。
ATMEL(艾德梅尔)的89C51、89C52、89C2051,89S51(RC),89S52(RC)等。
Philips(飞利浦)、华邦、Dallas(达拉斯)、Siemens(西门子)等公司的许多产品。
STC(国产宏晶)单片机89C51、89C52、89C516、90C516等。
在本教材中,单片机产品设计与制作项目的所有产品都选用STC系列的芯片。
2.芯片封装简介
芯片封装方式如表3-1所示。
表3-1 芯片封装方式
续表
在本教材中单片机产品设计与制作项目的所有产品都选用DIP双列直插式封装的芯片。
3.51单片机引脚简介
51单片机PLCC和PDIP封装的芯片引脚如图3-1所示。
图3-1 51单片机引脚图
51单片机PDIP引脚介绍如下。
(1)电源引脚。
VCC(40脚):电源端,接+5 V电源。
GND(20脚):接地端,接+5V电源地端。
(2)外接晶体引脚。
89C51内部有一个振荡器和时钟产生电路。
XTAL1(19脚):片内振荡电路反相放大器输入。
XTAL2(18脚):片内振荡电路反相放大器输出。
当采用内部时钟时,片外连接石英晶体和微调电容,产生原始的振荡脉冲信号。
采用外部时钟时,XTAL1输入外部时钟脉冲信号,XTAL2悬空。
(3)控制信号引脚。
RST(9脚):复位信号输入端,高电平有效。保持两个机器周期高电平时,完成复位操作。
ALE/PROG(30脚):地址锁存允许输出端/编程脉冲输入端。
正常时,连续输出振荡器频率的1/6正脉冲信号。
PSEN(29脚):外部程序存储器读选通输出信号。访问片外ROM时,输出负脉冲作为读ROM选通。常连接到片外ROM芯片的输出允许端(OE)作外部ROM的读选通信号。
(31脚):外部程序存储器地址使能输入/编程电压输入端。(www.xing528.com)
平时接“1”时,CPU访问片内4kB的ROM,当地址超4kB时,自动转向片外ROM中的程序。当接“0”时,CPU只访问片外ROM。
第2功能VPP,对8051编程时,编程电压输入端。
(4)输入/输出端口引脚。
4个8位的并行输入/输出端口,共32个引脚。作为通用输入/输出端口,准双向口,作为输入时要先对锁存器写“1”。默认启动初始化为高电平。
P0端口(P0.0~P0.7,第39~32脚):漏极开路的准双向口,内部没有上拉电阻,为高阻状态,不能正常输出高低电平,做I/O时需要接上拉电阻(10kΩ)。
P1端口(P1.0~P1.7,第1~8脚):内部带上拉电阻的准双向口,在做输入时要先置1。
P2端口(P2.0~P2.7,第21~28脚):内部带上拉电阻的准双向口,与P1相似。
P3端口(P3.0~P3.7,第10~17脚):内部带上拉电阻的准双向口,做I/O时与P1相似,另外还有特别重要的第二功能,如表3-2所示。
表3-2 P3口的第二功能
4.单片机工作的基本时序
(1)振荡周期:也称时钟周期,是指为单片机提供时钟脉冲信号的振荡源的周期,常用12 MHz 和11.059 2 MHz 的晶振。
(2)状态周期:每个状态周期为时钟周期的2倍,是振荡周期经二分频后得到的。
(3)机器周期:一个机器周期包含6个状态周期S1~S6,也就是12个时钟周期。在一个机器周期内,CPU可以完成一个独立的操作。
(4)指令周期:它是指CPU完成一条操作所需的全部时间。每条指令执行时间都是有一个或几个机器周期组成。MCS-51系统中,有单周期指令、双周期指令和四周期指令。单片机工作基本时序图如图3-2所示。
图3-2 单片机工作基本时序图
5.单片机最小系统
单片机最小系统或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括电源电路、时钟电路和复位电路。51单片机的最小系统电路如图3-3所示。
图3-3 51单片机最小系统电路图
(1)复位电路。
单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。复位电路用于将单片机内部各电路的状态恢复到一个确定的初始值,并从这个状态开始工作。
单片机的复位条件:必须使其RST引脚上持续出现两个(或以上)机器周期的高电平。
单片机的复位电路分上电复位[见图3-4(a)]和按键复位[见图3-4(b)]。
图3-4 复位电路
上电复位电路中,利用电容充电来实现复位。在电源接通瞬间,RST引脚上的电位是高电平(VCC),电源接通后对电容进行快速充电,随着充电的进行,RST引脚上的电位也会逐渐下降为低电平。只要保证RST引脚上高电平出现的时间大于两个机器周期,便可以实现正常复位。
按键复位电路中,当按键没有按下时,电路同上电复位电路。如在单片机运行过程中,按下按键,已经充好电的电容会快速通过4.7kΩ电阻的回路放电,从而使得RST引脚上的电位快速变为高电平,此高电平会维持到按键释放,从而满足单片机复位的条件实现按键复位。
(2)时钟电路。
时钟电路就是晶振电路,一般选择12MHz或11.059 2MHz的晶振,因为可以准确地得到9 600波特率和19 200波特率,用于有串口通信的场合,产生精确的微秒级时间,方便使用定时器、计数器的功能。
片外石英晶体和放大器共同构成自激振荡器,旁路电容Cl、C2与外接石英晶体接在具有反馈功能的放大器中,构成了并联反馈振荡电路。对外接旁路电容Cl、C2即使没非常严厉的要求,但是电容容量的大小也会轻微影响振荡器频率的稳定性、振荡频率的幅值、起振的难易程度和温度稳定性等。
(3)电源电路。
电源电路就是单片机的供电电路,一般是3.3V或者5V,具体多少要参考各种型号的单片机的工作电压,通常情况下是5 V。在电路中40脚接电源5V,20脚接电源负极,在单片机里面,负极也可以叫GND或者“地”,我们在单片机的应用中,习惯说负极为“地”,上面GND就是英文ground的缩写,翻译过来就是“地”的意思。
特别注意:对于31脚(EA/VPP),当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行。这一点是初学者容易忽略的。
6.单片机的内部结构和应用功能
单片机的内部结构和应用功能请参见其他单片机教材,读者自行了解和学习。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。