当前位置:文档之家› 第3章80C51系列单片机的硬件基础知识

第3章80C51系列单片机的硬件基础知识


21:52
9
图3-8 80C51单片机对外三总线构成
21:52 10
四个I/O端口P0、P1、P2、P3的作用总结: P2口负责输出高8位地址, P0口以分时方式承担输出低8位地址信息和数据输入/输出的 双重任务。 P3口则作为和外设沟通的控制线, P1口可随意用作I/O口。 51系列单片机的对外三总线总结: AB(地址总线): P2口负责高8位地址, P0口输出低8位地址。 DB(地址总线): P0口作为8位数据输入/输出口。 CB(地址总线): P3口作为和外设沟通的控制线。
各个子系列所含有的芯片型号及其硬件资源的区别如表3-1所示。
片内 RAM 128B 128B 128B 256B 256B 定时器/计数 中断源数量 器 2×16位 2×16位 2×16位 3×16位 3×16位 5 5 5 6 6
MCS-51系列
型号 8031
片内ROM 无 4KB掩膜ROM 4KB EPROM 无 8KB掩膜ROM
51子序列 (基本型)
8051 8751 8032 8052
52子序列 (增强型)
在不同型号的MCS-51系列单片机中,除片内存储器(ROM、RAM) 容量与种类、定时器/计数器的个数、中断源的数量有所不同外, 指令系统和芯片引脚是完全兼容的。
21:52 1
80C51单片机引脚主要分为主电源引脚、外接晶体 引脚 、输入/输出引脚与控制引脚四类,以PDIP 封装的单片机为例,引脚介绍如下: 1. 主电源引脚(2条) 2. 外接晶体引脚(2条) 3. 输入/输出(I/O)引脚(32条) 4. 控制引脚(4条)
21:52
15
3. 并行输入/输出端口(I/O口)
80C51片内有4个8位的I/O接口:P0、P1、P2和P3,每个I/O接 口内部都有一个8位锁存器和一个8位驱动器,既可用作输出 口,也可用作输入口。 80C51单片机没有专门的I/O口操作指令,而是把I/O口当作寄 存器使用,通过传送指令实现数据的输入和输出操作。
21:52
8
80C51单片机引脚功能总结:
1) 单片机功能多,引脚数少,致使许多引脚具有第二功能。 2) 单片机对外三总线的构成: 80C51单片机对外三总线构成如图3-8所示。由P2、P0组成16 位地址总线,P2作为高8位地址总线A8~A15,P0作为低8位 地址总线A0~A7。因是16位地址线,所以片外存储器的寻址 范围达到64K字节。 由P0分时复用为数据总线。 PSEN 、 EA 与P3口中引脚组成控制总线。 由ALE、RST、
21:52 22
(3) 堆栈及数据缓冲区(30H~7FH) 51子系列的内部RAM的堆栈及数据缓冲区共有80个单元, 字节地址范围为30H~7FH,52子系列的内部RAM的堆栈 及数据缓冲区共有208个单元,字节地址范围为30H~FFH, 用于存放用户数据或作为堆栈区使用。 堆栈区是存储器中一个特殊的存储区,数据按照“先进后出”或 “后进先出”的方式进行存取操作。
21:52
23
(4) 特殊功能寄存器 特殊功能寄存器SFR(Special Function Register)也称专用寄存器 (不包括PC),主要用于管理片内和片外的功能部件,如定时器/ 计数器、中断系统、I/O接口等。 SFR的编址从80H~FFH,但是并没有128个,只有21个(51子系 列)或26个(52子系列),在80H-FFH之间离散分布。 每个SFR都分配有符号名和字节地址,可对其进行直接寻址。 表3-10是特殊功能寄存器一览表,其中字节地址能够被8整除的 SFR(字节地址的末位是0或8H)每一位都具有位名称和位地址, 能够进行位寻址。
PSW.0
— P
21:52
25
PSW.7 Cy AC F0 RS1 RS0 OV —
PSW.0 P
(1) 进位标志位 Cy(PSW.7) : 8 位加法(减法)运算时,如果运算结果 的最高位D7有进位(借位),则C=1,否则C=0 C也为位累加器 (2)辅助进位标志位Ac(PSW.6): 8位加法运算时,如果低半字节的最高位 D3有进位,则 AC=1,否则AC=0;8位减法运算时,如果D3有借位, 则AC=1,否则AC=0。 Ac在作BCD码运算时有用 (3)软件标志F0(PSW.5) :是用户定义的一个状态标志。
组, 每组有8个工作寄存器R0~R7, 共32个内部RAM单元。
21:52
19
同一时刻只有一个组工作,CPU根据程序状态字寄存器PSW中 的RS0和RS1的值(由用户设定)来选择当前的工作组,如表3-8 所示 。 表3-8 工作寄存器地址表
21:52
20
(2) 位寻址区(20H~2FH) 位寻址区共有16字节,128位,位地址为00H~7FH。 CPU能直接寻址这些位,进行置1、清0、求“反”、传送 和
21:52 11
3.3 80C51系列单片机的编程结构
编程结构,即是从编程人员角度所看到的单片机 内部结构,该结构便于人们从软件编程的角度去了 解单片机系统的操作和运行。 80C51系列单片机的编程结构包括中央处理器 (CPU)、 内部存储器(ROM、RAM)、并行I/O接口、片内外设 (定时器/计数器、中断系统、串行口)、振荡器等部 分,各部分之间通过片内总线进行连接。80C51系列 单片机内部采用单总线结构,地址、数据与控制信息 21:52 12 都通过一组总线流通。
21:52 24
1) 累加器A(Accumulator) A是8位寄存器,是最常用的寄存器。
2) 寄存器B
寄存器B是8位寄存器,是专门为乘除法指令设计的。 3) 程序状态字PSW (Program Status Word) 程序状态字PSW是8位寄存器,用于存放程序运行的状态信息。
PSW.7
Cy AC F0 RS1 RS0 OV
逻辑运算等位操作,这就是我们常说的80C51单片机所具有
的布尔处理功能。在程序设计时,还常常将这些位用作软件 标志位。
21:52
21
注意:
① 位寻址区的存储单元既有字节地址又有位地址,因 此既可作为一般存储单元进行字节寻址,也可对它 们进行位寻址。 ② 位寻址区的位地址范围为00H~7FH,字节地址范 围是20H~2FH,有地址重叠现象,进一步观察还可 发现,内部RAM低128个单元的字节地址范围也为 00H~7FH,整个存储区的地址都是重叠的,但 80C51单片机专门为位操作设置了一类指令,因此 在实际应用中可以通过指令的类型来区分字节地址 和位地址。
21:52 14
片内数据存储器为随机存取存储器,用于存放可读写的数据, 常称为片内RAM。80C51系列单片机的片内RAM共有128/256B。
片内程序存储器为只读存储器,用于存放程序指令、常数及数据 表格,常称为片内ROM。80C51系列单片机内部有0/4/8KB的 ROM。用于存放程序,也可以存放一些原始数据和表格等。
21:52 13
2. 内部存储器
80C51系列单片机的存储器有片内和片外之分。 片内存储器集成在芯片内部; 片外存储器(外部存储器)是专用的存储器芯片,需要通过单 片 机引脚提供的三总线(即AB、DB和CB)与80C51连接。 无论片内还是片外存储器,都可分为程序存储器和数据存储器。 由于80C51单片机采用哈佛结构,因此程序存储器和数据存储 器相互独立,有各自的寻址空间。
21:52
5
(3) P2口(21脚~28脚):P2口的8条引脚也有两种不同的 功能: 1) 准双向输入/输出接口,每一位也可独立控制。
2) 在接有片外存储器或扩展I/O接口时,P2口作为高8位地
址总线。
21:52
6
(4) P3口(10脚~17脚):P3口的8条引脚也有两种不同的功能: 1) 准双向输入/输出接口,每一位同样可独立控制。
21:52
2
1. 主电源引脚(2条)
VCC(40脚)和GND(20脚):分别接电源的正端和地端。 不同型号单片机接入对应电压的电源,常压为+5V、低压为 +3.3V。
2. 外接晶体引脚(2条)
XTAL1(19脚)、XTAL2(18脚):XTAL1为片内振荡电 路的输入端,XTAL2为片内振荡电路的输出端。80C51单片 机的时钟有两种方式,一种是片内时钟振荡方式,需在这两 个脚外接石英晶体和振荡电容;另一种是外部时钟方式,即 将XTAL1接地,外部时钟信号从XTAL2脚输入。
21:52
16
4. 片内外设
(1) 定时器/计数器 51子序列单片机中有两个16位的定时器/计数器,用于实现定 时或外部计数的功能。 (2) 中断系统 中断系统的主要作用是对来自单片机内部或外部的中断请求进 行处理,完成中断源所要求的任务。 51子系列共有5个中断源,其中外部中断源有2个,内部中断源 有3个:2个定时器/计数器中断源和1个串行口中断源。全部中 断可分为高级和低级两个优先级别。 (3) 串行口 80C51单片机有一个全双工可编程串行口,用于实现单片机与外 部设备之间的串行数据传送。
2) 作为低8位的地址/数据复用总线。
21:52
4
(2) P1口(1脚~8脚):分别为P1.0~P1.7,其中P1.7为最 高位,P1.0为最低位。P1口引脚也有两种不同的功能: 1) 作为准双向I/O口使用。
2) 对52子序列单片机,P1.0引脚的第二功能为T2定时器/计
数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装 触发,即T2的外部控制端。
1. 中央处理器 (CPU)
80C51系列单片机是8位CPU,它是整个单片机的核心部件, 主要完成运算和控制功能,由运算器和控制器组成。 (1) 运算器 运算器由算术逻辑单元(ALU)、累加器A(Accumulator )、 暂存器TMP以及程序状态字PSW组成,用于算术运算和逻辑 运算。 (2) 控制器 控制器由程序计数器PC(Program Counter)、指令寄存器 IR(Instruction Register)、指令译码器ID( Instruction Decoder) 、定时与控制电路等部分组成使单片机各部分协调工作,从而 完成指令规定的操作。
相关主题