1.2 单片机的外形与框架
单片机与我们日常办公等用的台式计算机、笔记本电脑等都属于微型计算机系统。与计算机相比,单片机只少了显示器、键盘等输入/输出设备。它如计算机一样有自己的硬件资源,如CPU、存储器等,但在量上相差太悬殊,如此它才能做到微小,而且弱化计算功能,强化控制功能,可以嵌入被控对象中,成为嵌入式微控制器。它已渗透到我们生活的各个领域,如使用智能IC卡等的仪器仪表,录像机、摄像机、全自动洗衣机等家用电器,程控玩具、电子宠物、医用设备、航空航天、专用设备等。下面通过表1-1的比较建立对单片机的感性认识。
表1-1 单片机与PC的比较
1.2.1 内部结构框图和主要部件
1.内部结构框图
AT89C51内部结构框图如图1-2所示,给出了单片机的基本硬件资源。
图1-2 AT89C51内部结构框图
2.主要部件
AT89C51有下列主要部件。
(1)一个以ALU为中心的8位中央处理器(CPU),完成运算和控制功能。
(2)128B的内部数据存取存储器(片内RAM),其地址范围为00H~7FH。
(3)21个特殊功能寄存器(在片内RAM的SFR块中,又称专用寄存器),离散分布于地址80H~FFH中。
(4)程序计数器PC,是一个独立的16位专用寄存器,其中的内容是将要执行的指令地址(程序存储器中的地址)。
(5)4KB Flash内部程序存储器(片内ROM),用来存储程序、原始数据、表格等。
(6)4个8位可编程I/O口(P0、P1、P2、P3)。
(7)一个UART串行通信口。
(8)2个16位定时器/计数器。
(9)5个中断源,两个中断优先级的中断控制系统。
(10)一个片内振荡电路和时钟电路。
1.2.2 引脚:数据输入/输出通道
双列直插式封装的AT89C51单片机的引脚和逻辑符号如图1-3所示。40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
1.电源引脚
(1)GND(20):接地端。
(2)VCC(40):接DC电源端,在-40~85℃时,VCC=5.0V±20%,极值为6.6V。
图1-3 双列直插式封装的AT89C51单片机的引脚图和逻辑符号图
2.时钟引脚
(1)XTAL1(19):外接振荡元件(如晶振)的一个引脚。采用外部振荡器时,此引脚接振荡器的信号。
(2)XTAL2(18):外接振荡元件(如晶振)的一个引脚。采用外部振荡器时,此引脚悬浮。
3.控制线
(1)RST(9):复位输入端。
(2)ALE/()(30):地址锁存允许/编程脉冲。在对Flash存储器编程期间,此引脚用于输入编程脉冲()。
(3)/VPP(31):内、外ROM选择/编程电源
为片内外ROM选择端。ROM寻址范围为64KB。AT89C51单片机有4KB的片内ROM,若不够用时,可扩展片外ROM。当保持高电平时,先访问片内ROM,当PC的值超过4KB时,自动转向执行片外ROM中的程序。当保持低电平时,只访问片外ROM。在Flash编程期间,此引脚用于施加编程电压VPP。
(4)(29):外部ROM读选通信号。
在从外部程序存储器取指令(或常数)期间,每个机器周期出现两次有效信号。但在此期间内,每当访问外部数据存储器时,这两次有效的信号将不出现。有效信号作为外部ROM芯片输出允许OE的选通信号。在读内部ROM或RAM时,无效。
4.P0~P3口的32根引脚
P0~P3口的32根引脚是四个并行I/O(输入/输出)口,即P0、P1、P2、P3。P0有P0.0~0.7引脚8根,P1有P1.0~1.7引脚8根,P2有P2.0~2.7引脚8根,P3有P3.0~3.7引脚8根,共32根。