STC89C51系列单片机的结构和原理资料全
89C51单片机硬件结构和原理
返回
单片机原理及接口技术
2.2 89C51单片机引脚及其功能
§2.2.1 89C51单片机引脚
§2.2.2 89C51单片机引脚功能
01:28
返回
单片机原理及接口技术
§2.2.1 89C51单片机引脚
P22图2-3:是89C51/LV51的引脚结构图, 有双列直插封装(DIP)方式和方形封装方式。
01:28
返回
单片机原理及接口技术
89C51单片机还有一种低电压的型号,即89LV51,除 了电压范围有区别之外,其余特性与89C51完全一致。 • 89C51/LV51是一种低功耗/低电压、高性能的8位单片 机。它采用了CMOS工艺和高密度非易失性存储器 (NURAM)技术,而且其输出引脚和指令系统都与 MCS51兼容;片内的Flash ROM允许在系统内改编程 序或用常规的非易失性存储器编程器来编程。因此 89C51/LV51是一种功能强、灵活性高,且价格合理的 单片机,可方便地应用在各种控制领域。
01:28
返回
单片机原理及接口技术
三、控制信号引脚:
RST、ALE、PSEN和EA
RST / VPD(9或10脚): RST:复位信号输入端,高电平有效。当此
输入端保持两个机器周期的高电平时,就
可以完成复位操作。
单片机原理及接口技术
01:28
三、控制信号引脚:
RST、ALE、PSEN和EA
RST / VPD(9或10脚): VPD :RST引脚的第二功能,备用电源输入 端。当主电源Vcc 发生故障,降低到低电 平规定值时,将+5V电源自动接入该引脚, 为RAM提供备用电源,以保证RAM中的信息 不丢失,使得复位后能继续正常运行。
第2章 89C51系列单片机的结构和原理
后缀由“YYYY”四个参数组成,每个参数的表示
和意义不同。在型号与后缀部分有“-”号隔开。
后缀中的第一个参数 Y用于表示速度,后缀中的
第二个参数Y用于表示封装,后缀中第三个参数 Y用 于表示温度范围,后缀中第四个参数Y用于说明产品 的处理情况。 例如:有一个单片机型号为“AT89C51—12PI”,则
2016/6/30
23
OV(PSW.2):溢出标志。带符号加减运算中,超出了累加器A所能 表示的符号数有效范围(-128~+127)时,即产生溢出, OV=1,表明运算运算结果错误。如果OV=0,表明运算结果正 确。 执行加法指令ADD时,当位6向位7进位,而位7不向C进位时, OV=1;或者位6不向位7进位,而位7向C进位时,同样OV=1。 乘法指令,乘积超过255时,OV=1,乘积在AB寄存器对中。若 OV=0,则说明乘积没有超过255,乘积只在累加器A中。
2.2 89C51系列单片机的结构
(3) 21(18)个SFR(128字节) 它用于控制和管理片内算术逻辑部件、并行 I/O口、串行I/O口、定时器/计数器、中断 系统等功能模块的工作。 3. 并行I/O口 89C51单片机共有4个8位的I/O口(P0、P1 、P2和P3),每一条I/O线都能独立地用作 输入或输出。P0口为三态双向口,能带8个 TTL门电路,P1、P2和P3口为准双向口,负 载能力为4个TTL门电路。
89——表示芯片内带有非易失性的Flash程序存储器;
C——代表CMOS工艺制造;
51/52/54/58——分别表示芯片内Flash程序存储器的
容量分别为4K/8K/16K/32K。
2016/6/30
4
2.1 89C51单片机的概述
89C51单片机的结构及原理解析
第二节主要组成
CPU的结构 存储器 I/O口的口结构
CPU的结构
CPU是单片机的核心部分。 功能:读取指令,分析指令,产生控制信号控制数据的传 送,对输入数据进行算术逻辑运算以及位操作等操作。 构成: 1、运算器 2、控制器
1、运算器
运算器:算术逻辑单元ALU 、累加器ACC 、暂存器TMP1 和TMP2 、程序状态字寄存器PSW (Program Status Word) 、BCD码运算调整电路和布尔处理器等。为了提 高数据处理和位操作能力,片内还增加了一个通用寄存器B 和一些专用寄存器。
PSW中的进位位C可以作为位累加器使用,整个位操作系 统构成了一个布尔处理器。
算术逻辑单元ALU
算术逻辑单元是由加法器和逻辑电路组成,主要完成二进 制数的四则运算,以及布尔代数的逻辑运算。 通过对运算结果的判断,决定程序状态字PSW的相关状态 标志位的变化。
累加器ACC
ACC是一个8位累加器,通过暂存器和算术逻辑单元相连。 ACC是CPU中最繁忙的寄存器。 在指令系统中, A作为累加器的助记符。 累加器ACC可以按位来操作,如果按位操作,必须写成
ACC.0、ACC.1,一直到ACC.7,而不能A.0、A.1到A.7。 PUSH ACC, POP ACC
程序状态字PSW
程序状态字PSW是8位寄存器,7位有效: 用作程序运行的状态标志,如算术运算、逻辑运算或移
位操作时,如果结果会影响到标志位的时候,PSW相关 位就会做出相应反应,进行清零或置1。 其中有两位用作工作寄存器选择位。 PSW字节地址是D0H。
3、管脚分配
P1口 P1口它是一个内部带上拉电阻的8位准双向I/O口,每位
可以驱动4个LS型的TTL负载。 P1口是用户随意使用的端口。
STC89C51系列单片机的结构和原理 共63页
XTAL1(19脚):接外部晶体的一端,振荡反向放大器 的输入端和内部时钟电路输入端。
XTAL2(18脚):接外部晶体的另一端,振荡反向放大 器的输出端。
3. 控制信号或与其它电源复用引脚
控制信号或与其它电源复用引脚有 RST/VPD、 ALE/PROG.、PSEN 和 E A / V PP 等4种形式。
• P2口(P2.0-P2.7,21-28脚):是带内部上拉的双向I/O口。 向P2口写入1时,P2口被内部上拉为高电平,可用作输入口。 当作为输入脚时,被外部拉低的P2口会因为内部上拉而输出 电流。在访问外部程序存储器和外部数据时分别作为地址高 位字节和16 位地址,此时通过内部强上拉传送1。当使用8 位寻址方式访问外部数据存储器时,P2口发送P2 特殊功能寄 存器的内容。
2.程序的7个特殊入口地址
表1 MCS-51单片机复位、中断入口地址
操作
复位
外部中断0 定时器/计数器0溢出 外部中断1 定时器/计数器1溢出 串行口中断 定时器/计数器0溢出或T2EX端负跳变(52子系 列)
入口地址 0000H 0003H 000BH 0013H 001BH 0023H 002BH
18
PC中内容变化轨迹决定程序流程。当顺序执行程序时自动 加1;执行转移程序或子程序、中断子程序调用时,自动 将其内容更改成所要转移的目的地址。
PC的计数宽度决定了程序存储器的地址范围。PC为16位, 故可对64KB(=216B)寻址。
19
2.3、存储器
程序存储器(FLASH,下载到4 KB ROM) 1.编址与访问
第二章 STC89C51系列单片机的结构和原理
2.1 STC89C51如何控制流水灯 2.2 STC89C51系列单片机的内部结构 2.3 STC89C51系列单片机的主要组成部分 2.4 单片机的复位电路 2.5 单片机最小系统
89C51单片机硬件结构与基本原理
1. 89C51单片机结构框图
Flash ROM
bus
89C51
89C5189C51单片机硬件结构和 基本的原理
8位CPU
256字节RAM
4KB Flash ROM
4个8位I/O口
2个定时/计数器
5个中断源
1个全双工串行口
片内振荡器和时钟 产生电路(最高允 许振荡频率为 24MHz)
EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0
1、电源线:VCC(+5V)、VSS(地) 2、振荡电路:XTAL1、XTAL2 3、复位引脚:RST 4、并行口:P0、P1、P2、P3 5、EA:访问程序存储控制信号 6、PSEN:外部ROM读选通信号 7、ALE:地址锁存控制信号
振荡器及时钟电路:提供片内时钟
89C51单片机硬件结构和 基本的原理
2.2 89C51单片机的引脚及功能
89C51单片机硬件结构和 基本的原理
MCS-51单片机信号引脚简介
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
RST RXD/ P3.0 TXD/ P3.1 INT0/ P3.2 INT1/ P3.3 T0/ P3.4
片内RAM:
① 低128B片内RAM ② 高128B片内RAM
0000-007FH 0080-00FFH
SFR:特殊功能寄存器区
89C51单片机硬件结构和 基本的原理
PSW位地址
数据存储器
FFFFH
CY AC F0 RS1 RS0 OV F1 P
1 1 第3区 1 0 第2区 0 1 第1区 0 0 第0区 RS1 RS0 寄存器区
STC89C51单片机硬件结构资料
0023H —— 串口中断入口
( 002BH —— T2溢出中断入口 )
三、内部数据存储器
物理上分为两大区域:00H ~ 7FH即128B内RAM区
7FH
80H ~ FFH即SFR区。
用户RAM区
数据缓冲区、堆栈区、工作 单元
2FH / 30H
位寻址区 (位地址00H ~ 7FH )
1FH / 20H
PC增1 PC DPTR P1锁存器 P1驱动器 P1.0-P1.7 P3锁存器 P3驱动器 P3.0-P3.7
1、中央处理单元(89C51 CPU) CPU是单片机的核心,是计算机的控制和指挥中心,由运算 器和控制器等部件组成。如图2-2。 运算器 ALU—8位算术和逻辑运算 对4位(半字节)、8位(字节)、16位(双字节)操作 算术运算 -- 加、减、乘、除、加1、减1、BCD数十进制 调整、比较 逻辑运算 -- 与、或、非、异或、求补、移位 TMP1,TMP2 – 8位暂存器 ACC – 8位累加器 累加器ACC经常作为一个操作数经TMP2进入ALU,与 来自TMP1的另一个操作数进行运算,结果存入ACC中 作为89C51内部数据传送的中间寄存器 大部分指令中用注记符A表示,进出堆栈指令时用注记 符ACC表示
一、89C51单片机的基本组成 图2-1所示位89C51带闪存(Flash ROM)单片机的基本结构 框图。
外部时钟 外部事件计数
振荡器和 时序OSC
程序存储器 4KB FlashROM
数据存储器 256B RAM/SFR
2×16位 定 时器/计数器
80C51 CPU
64KB总线 扩展控制器 可编程I/O 可编程全 双工串行口
MCS-51单片机内共有22个特殊功能寄存器,包括PC及SFR。 PC为程序计数器。它是一个双字节寄存器,寻址范围为: 0000H ~ FFFFH,即0 ~ 64KB。
第2章 89C51单片机的结构及原理PPT课件
2. 数据存储器
FF
80
SFR RAM
30
位寻址区
20
工作 寄存器 0-3组
FFFF RAM
外部 RAM
00
0000
12
表 2.2 寄存器与RAM 地址对照表
13
表 2.3 RAM中的位寻址区地址表
14
内部数据存储器高128单元
(特殊功能寄存器区)
程序计数器PC 累加器A 寄存器B 状态字寄存器PSW
4
2.3 89C51系列单片机的引脚功能
2.3.1 89C51系列单片机引脚功能 2.3.2 三总线结构
5
图2-3(a)89C51系列单片机的引脚 6
表2.1 P3口的第二功能表
7
2.3.2 三总线结构
图2-3(b)89C51系列单片机功能引脚分类
(总线结构图)
8
2.4 89C51系列单片机的主要组成部分
外部 ROM EA=0
0000
FF
SFR 80 RAM
30 位寻址区
20
工作 寄存器 0-3组
00
FFFF RAM
外部 RAM
0000
10
1. 程序存储器
在程序存储器中有6个单元具有特殊功能: 0000H~0002H:是所有执行程序的入口
地址,89C51复位后,CPU总是从0000H单 元开始执行程序。 0003H:外部中断0入口。 000BH:定时器0溢出中断入口。 0013H:外部中断1入口。 001BH:定时器1溢出中断入口。 0023H:串行口中断入口。
0
1
3组
18H~1FH
R0~R7
堆栈指针SP:按照先进后出、后进先出 的原则存取RAM区域。
第二章89C51单片机的硬件结构和原理精品PPT课件
2.1.4 复位和复位电路
•
单片机在重新启动时都需要复位,MCS-51
系列单片机有一个复位引脚输入端RST。
➢ MCS-51系列的单片机复位方法为:在RST上
加一个维持两个机器周期以上的高电平,则单 片机被复位。
➢ 复位时单片机各部分将处于一个固定的状态
➢ 常用的MCS-51单片机复位电路
➢ 上电自动复位电路
➢ 手动复位电路
➢ “看门狗”复位电路
复位后单片机各单元的初始状态
寄存器 PC
ACC
B PSW SP DPTR P1、P2 P3、P4
IP IE
初始状态值 0000H 00H 00H 00H 07H 0000H
Vcc
C1 +
22uF R2
200
RST/VPD
R1 1K
Vs
GND
在系统运行过程中, 有时可能需要对系 统进行复位,以避 免对硬件经常加电 或断电而造成的伤 害,我们可以采用 手动复位的方式。 具体的电路如图所 示。
“看门狗”复位电 路
未稳压电源 R1
R2
WDI
RESET
PFI
WDO
MR
MAX813L
限频率可能有差别)。
C1
XT AL1
30 pF
C2 GND
30 pF
MC S-5 1 XT AL2
常用单片机的最高时钟频率
单片机型号
最高时钟频率
8031 8051
12MHz 12MHz
8751 AT89C2051
12MHz 24MHz
(完整版)STC89C51芯片资料
3.1.1STC89C51芯片及最小系统介绍:STC89C51是一种低功耗、高性能CMOS 8位微控制器,具有4K 在系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51在众多嵌入式控制应用系统中得到广泛应用。
2.3.1.1主要功能列举1、拥有灵巧的8位CPU和在系统可编程Flash2、晶片内部具时钟振荡器(传统最高工作频率可至 12MHz)3、内部程序存储器(ROM)为 4KB4、内部数据存储器(RAM)为 256字节5、32 个可编程I/O 口线6、8 个中断向量源7、两个 16 位定时器/计数器8、三级加密程序存储器9、全双工UART串行通道10、低功耗空闲和掉电模式;11、掉电后中断可唤醒;12、看门狗定时器;13、双数据指针;14、掉电标识符。
2.3.1.2 各引脚功能VCC:STC89C51电源正端输入,接+5V。
GND:电源地端。
XTAL1: 单芯片系统时钟的反相放大器输入端。
XTAL2:系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:STC89C51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:"EA"为英文"External Access"的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。
STC89C51系列单片机的结构和原理资料全
2.利用 keil c软件编写程序
#include <reg51.h> #include <stdio.h> unsigned int temp1; void delay(unsigned int temp)//延时程序 { while(--temp); }
void main() {
P2=0XFF;//led is off while(1)
由用户使用的一个状态标志位,可用指令来使它置1或清0, 控制程序的流向。用户应充分利用。
15
(4)RS1、RS0(PSW.4、PSW.3)4组工作寄存器区选择 选择片内RAM区中的4组工作寄存器区中的某一组为当前工 作寄存区。
(5)OV(PSW.2)溢出标志位 当执行算术指令时,用来指示运算结果是否产生溢出。如 果结果产生溢出,OV=1;否则,OV=0。
端口2 可配置的I/O口
端口1 可配置的I/O口
端口0 可配置的I/O口
振荡器
4K / 8 K/ ... 64KB 程序FLASH
全双工增强型 UART
定时器0 定时器1
定时器2
看门狗定时器
51系列单片机结构框图
1. 电源引脚
VSS(20脚):接地,0V参考点。 VCC(40脚):电源,提供掉电、空闲、正常工作
IP
—
—
— BCH BBH BAH B9H B8H B8H
P3
B7H B6H B5H B4H B3H B2H B1H B0H B0H
IE
AFH —
— ACH ABH AAH A9H A8H A8H
P2
A7H A6H A5H A4H A3H A2H A1H A0H A0H
SCON
89C51单片机的结构及原理解读
堆栈指针寄存器SP
堆栈:在片内数据存储器中开辟的按照“先进后出,后进 先出”的原则进行存取的RAM区。 分布:是片内RAM的低128字节(00——7FH段)。 用途:保护现场和断电保护(中断和调用子程序时)。 操作:压栈和出栈 通过堆栈指针SP来进行堆栈操作: SP随时跟踪栈顶地址; 按照先进后出的原则进行压栈和出栈操作。 开机复位后,SP指向片内RAM地址07H。
数据指针DPTR
DPTR是一个16位的寄存器,主要用来存放16位的地址, 做间接寻址寄存器使用。 可以对64K字节的外部数据存储器和I/O口进行寻址. DPTR可以拆成高字节DPH和低字节DPL两个独立的8位寄 存器,分别占用83H和82H这两个地址,83H是DPH, 82H是DPL。 拆分之后,可以按照8位寄存器的方式进行操作和寻址。
程序存储器
6个特殊功能单元:
0000H:开机或系统复位入口
0003H:外部中断0的中断入口 000BH:定时器T0的溢出中断入口 0013H:外部中断1的中断入口 001BH:定时器T1溢出中断的入口
0023H:串行口中断的入口
数据存储器
数据存储器是用来存放运算的中间结果,数据的暂存以及 缓冲。 单片机片内有256字节的数据存储器,片外最多可以扩展 成64K,构成两个地址空间。 访问片内存储器用“MOV”指令,访问片外数据存储器用 “MOVX”指令
中断、串行口和定时器 PSW
P1锁存器 P1驱动器 P1.0-P1.7
P3锁存器
P3驱动器
P3.0-P3.7
XTAL1
XTAL2
3、管脚分配
3、管脚分配
Vcc:电源,正端 Vss:地线,接地 XTAL2(18脚)和XTAL1(19脚): 内部:片内有晶体振荡电路,外接石英晶振,电源上电 ,自动进行振荡; 外接:XTAL1接外部时钟脉冲,XTAL2悬空。 控制信号引脚RST、ALE、PSEN和EA
stc889c51单片机结构
STC89C51单片机结构一. 概述单片机是一种特殊用途的微型计算机,广泛应用于嵌入式系统中。
STC89C51单片机是由深圳市国科微电子公司生产的一种高性能、低功耗的单片机,它具有较强的数据处理能力和丰富的外设功能,被广泛应用于各种电子设备中。
二. 结构概述STC89C51单片机的结构包括三个主要部分:CPU、存储器和外设。
三. CPU1. 中央处理器单元(CPU)STC89C51单片机采用的是Intel公司的8051内核,工作频率可达到12MHz,它具有强大的指令集和高效的运算能力,能够快速高效地处理各种数据。
2. 时钟电路时钟电路是单片机的重要组成部分,它提供了单片机工作的时序信号和基准时钟信号。
STC89C51单片机内置了丰富的时钟电路模块,可以满足不同的应用需求。
四. 存储器1. 内部存储器STC89C51单片机内置了4KB的闪存程序存储器,用于存储用户程序和数据,同时还包含了256字节的RAM,用于临时存储数据和中间结果。
2. 外部扩展STC89C51单片机还提供了丰富的外部扩展接口,用户可以根据需要连接外部存储器设备,满足不同应用场景中的存储需求。
五. 外设1. 输入输出端口STC89C51单片机具有多个通用输入输出端口(GPIO),用于连接外部设备和传感器,实现与外部环境的数据交换和控制。
2. 串行通信接口单片机支持UART、SPI和I2C等多种串行通信接口,用户可以利用这些接口与外部设备进行数据通信。
3. 定时器/计数器STC89C51单片机内置了多个定时器/计数器模块,用户可以利用这些模块实现定时和计数功能,满足各种实时控制需求。
4. PWM输出单片机还支持PWM输出功能,可以用于控制电机、LED灯等设备。
六. 结论STC89C51单片机具有强大的数据处理能力和丰富的外设功能,是一种性能优越、灵活多样的单片机产品,适用于各种嵌入式应用场景。
通过对其结构和功能的深入了解,可以更好地发挥其优势,实现更多样化的应用目标。
第2章 89C51单片机硬件结构和原理
14:50
单片机原理及接口技术
• XTAL1(19脚):接外部晶体和微调 电容的另一端;在片内它是振荡电路
反向放大器的输入端,在采用外部时
钟时,该引脚输入外部时钟脉冲。
14:50
返回
单片机原理及接口技术
三、控制信号引脚:
RST、ALE、PSEN和EA • RST(9脚):
复位信号输入端,高电平有效。当此 输入端保持两个机器周期(24个时钟周期)的 高电平时,就可以完成复位操作。
一、电源引脚:Vcc和Vss
• 1.Vcc(40脚):电源端,为+5V。 2.Vss(20脚):接地端。
14:50
返回
单片机原理及接口技术
二、时钟电路引脚:XTAL1和XTAL2
• XTAL2(18脚):接外部晶体和微调电容
的一端;在89C51 片内它是振荡电路反向 放大器的输出端,振荡电路的频率就是晶 体固有频率。若需采用外部时钟电路时, 该引脚悬空。89C51正常工作时,该引脚应 有脉冲信号输出。
14:50
单片机原理及接口技术
• EA/Vpp(31脚):
Vpp:固化编程电压输入端。对89C51 片内 Flash ROM固化编程时,编程电 压输入端(12V)。
14:50
返回
单片机原理及接口技术
四、I/O端口P0、P1、P2和P3
• 1、准双向 • 2、P0口
• 3、P1口
• 4、P2口 • 5、P3口
14:50
返回
单片机原理及接口技术
2、存储器
1)程序存储器(ROM)
2)数据存储器(RAM)
14:50
返回
单片机原理及接口技术
1)程序存储器(ROM)
第二章89C51单片机的结构和原理
第2章 89C51单片机的结构和原理
不访问片外存储器时,ALE端也以振荡频率的1/6固定 输出正脉冲,因而ALE信号可以用作对外输出时钟或定时 信号。
注意:如果想确定89C51/8031芯片的好坏,可用示波 器查看ALE端是否有脉冲信号输出,如有脉冲信号输出, 则89C51/8031基本上是好的。
RST/VPD(9脚):复位信号与备用电源的输入端。 RST是复位信号输入端,高电平有效。保持两个机器周期 的高电平时,就可以完成复位操作。 RST引脚的第二功能是VPD,即备用电源的输入端。
ALE/PROG(30脚):地址锁存允许信号端。 当89C51上电正常工作后,ALE引脚不断向外输出正脉冲 信号,此频率为振荡器频率fosc的1/6。CPU访问片外存储器时, ALE输出信号作为锁存低8位地址的控制信号。
存放可以读/写的数据---运算的中间结果、最终结果、欲 显示的数据等。
(3)片内程序存储器ROM/EPROM(4KB/8KB) 。 存放程序,一些原始数据和表格。但也有一些单片机内
部不带ROM/EPROM,如8031,8032,80C31等。 (4)四个8位并行I/O接口P0-P3。 每个口既可以用作输入,也可以用作输出。
第2章 89C51单片机的结构和原理
(3)I/O接口 89C51有四个8位并行接口,即P0-P3。它们
都是双向端口,每个端口有8条I/O线,均可输 入/输出。P0-P3口四个锁存器同RAM统一编址, 可以把I/O口当作一般特殊功能寄存器来寻址。
第2章 89C51单片机的结构和原理
2-2 89C51单片机引脚及其功能
(8)片内振荡器和时钟产生电路。 但石英晶体和微调电容需要外接。最高允许振荡频率24MHZ。
以上各个部分通过内部数据总线相连接。
89C51单片机硬件结构和原理
89C51单⽚机硬件结构和原理第1部分 89C51单⽚机硬件结构和原理1. 89C51单⽚机⽚内包含哪些主要逻辑功能部件?答:89C51单⽚机是个完整的单⽚微型计算机。
芯⽚内部包括下列硬件资源:(1)8位CPU;(2)4KB的⽚内Flash ROM。
可寻址64KB程序存储器和64KB外部数据存储器;(3)256B内部 RAM/SFR;(4)21个 SFR;(5)4个8位并⾏I/O⼝P0~P3(共32位I/O线);(6)⼀个全双⼯uart的异步串⾏I/O⼝,⽤于实现单⽚机之间或单⽚机与PC机之间的串⾏通讯;(7)两个16位定时器/计数器;(8)5个中断源,两个中断优先级;(9)内部时钟发⽣器。
2. 89C51的EA端有何⽤途?答:作外部程序存储器地址允许输⼊端和固化编程电压输⼊端。
3. 89C51的存储器分哪⼏个空间?如何区别不同空间的寻址?答:89C51存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间:(1)64KB的程序存储器地址空间:0000H~FFFFH,其中0000H~0FFFH为⽚内4KB的Flash ROM地址空间,1000H~FFFFH为外部ROM地址空间;(2)256B的内部数据存储器地址空间,00H~FFH,分为两⼤部分,其中00H~7FH(共128B单元)为内部静态RAM的地址空间,80H~FFH为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;(3)64KB的外部数据存储器地址空间:0000H~FFFFH,包括扩展I/O地址空间。
MCS-51单⽚机存储器三类空间地址存在重叠,单⽚机设计了不同的数据传送指令符号来区分:CPU访问⽚内、⽚外ROM指令⽤MOVC,访问⽚外RAM指令⽤MOVX,访问⽚内RAM 指令⽤MOV。
4. 简述89C51⽚内RAM的空间分配。
答:89C51内部256B的数据RAM区,包括有⼯作寄存器组区、可直接位寻址区和数据缓冲区、特殊功能寄存器组区。
89C51单片机硬件结构和原理
(1)累加器ACC(E0H)
在指令系统中用A作为累加 器ACC的助记符。
3+5=? MOV ADD
A, #3 ; A = 3 A, #5 ; A = 3 + 5
2.3 89C51单片机存储器配置
2、片内RAM
◆
片内数据存储器(高128B)
在乘、除指令中,用到了8 位寄存器B。乘法指令的两 个操作数分别取自A和B, 乘积存于B和A两个8位寄存 器中。除法指令中,A中存 放被除数,B中放除数,商 存放于A,B中存放余数。
将被硬件自动置1;否则AC被自动清0。
2、片内RAM
◆
片内数据存储器(高128B)
(3)程序状态寄存器PSW(D0H)
PSW是一个8位特殊功能寄存
器,它的各位包含了程序执行 后的状态信息,供程序查询或 判别之用,可按位寻址。各位 的含义及其格式如表2-9所列。
2.3 89C51单片机存储器配置
(3)程序状态寄存器PSW(D0H)
PSW (D0H)
2.3 89C51单片机存储器配置
二、程序存储器地址空间
用途
用于存放编好的应用程序和表格之类的固定常数。
编址
片内Flash ROM容量为4KB。地址为0000H~0FFFH。 片外最多可扩至64KB ROM/EPROM,地址为1000H~ FFFFH。
◆ ◆
◆
片内、外统一编址。片内外ROM取指速度相同。
串行端口
通常在这些中断入口 地址处应放一条绝对 跳转地址跳向中断服 务寄存器。原因在于2 个中断入口间隔只有8 个单元,存放中断程 序通常是不够用的。
0000H 0003H
LJMP LJMP
教学课件第2章89C51单片机硬件结构和原理
当ROM容量不够时,尽量选择高容量存储器空间的单片机,如 89C52、89C54、89C58等,应避免外扩程序存储器,因为会增加 硬件负担。
程序存储器
FFFFH
(64K)
0FFFH (4K)
0000H
内部
EA=1
外部
EA=0 0000H
0FFFH (4K)
1
28
2
27
EPROM
3
26
4
25
5
24
6
23
7
22
8
21
9
20
10 2764 19
11
18
12
17
13
16
14
15
1
28
2
27
EPROM
3
26
4
25
5
24
6
23
7
22
8
21
9
20
10 2764 19
11
18
12
17
13
16
14
15
64K
3. 程序存储器
通过16位PC寻址,最大可寻址64kB地址空间
程序存储器资源分布
4. 数据存储器
片内、片外分开编址
如何区分0000-00FFH的地址空间是片内RAM还 是片外RAM?
片内RAM:
• 低128B片内RAM ① 高128B片内RAM
0000-007FH 0080-00FFH
SFR:特殊功能寄存器区
PSW位地址
数据存储器
FFFFH
CY AC F0 RS1 RS0 OV F1 P
STC89C51单片机硬件结构和原理
逻辑运算 -- 与、或、非、异或、求补、移位
TMP1,TMP2 – 8位暂存器
ACC – 8位累加器
累加器ACC经常作为一个操作数经TMP2进入ALU,与 来自TMP1的另一个操作数进行运算,结果存入ACC中
作为89C51内部数据传送的中间寄存器
19
VSS
20
40
VCC
39
P0.0
32
31
89C51 30
29 28
P0.7
EA/Vpp ALE / PROG PSEN P2.7
21
P2.0
1. 电源 VCC:电源端,+5V VSS:接地,GND
2. 外接晶体引脚XTAL1和XTAL2
XTAL1:片内振荡器反向放大器输入端,接外部晶体振荡 器一个脚;由外部输入时钟信号时,该脚接地
大部分指令中用注记符A表示,进出堆栈指令时用注记 符ACC表示
B -- 8位寄存器
如图2-2
乘除运算指令中存放一个操作数,操作结束时存放一 部分结果
乘除指令运算之外时可作通用寄存器
PSW -- 程序状态字寄存器
指示指令执行后的状态信息
PSW各位单元可供程序查询和判别
布尔处理器
图2-3
89C51
89C51
89C51
图2-3
ALE / /PROG —— 地址锁存控制端 提供1/6 fosc振荡频率;为其内的Flash ROM输入编程脉冲 /PSEN —— 外部程序存储器的读选通信号端
EA / Vpp —— 内/外ROM选择端
EA = 1 时,访问内部程序存储器,即内ROM EA = 0 时,只访问外部程序存储器,即外ROM
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
类型
名称
P3.0
RxD
I
P3.1
TxD
0
P3.2
INT0
I
P3.3
INT1
I
P3.4
T0
I
P3.5
T1
I
P3.6
WR
O
P3.7
RD
O
串行输入口 串行输出口 外部中断0 外部中断1 定时器0 外部输入 定时器1 外部输入 外部数据存储器写信号 外部数据存储器读信号
2.3 STC89C51的系列单片机的主要组成部分 该系列单片机由中央处理器(CPU)、存储器和I/O接口三 大部分组成。 其中CPU包括运算器和控制器两大部分。 2.3.1 运算器 对操作数进行算术、逻辑和位操作运算。主要包括算术 逻辑运算单元ALU、累加器A、位处理器、程序状态字寄存 器PSW及两个暂存器等。 1.算术逻辑运算单元ALU 可对8位变量逻辑运算(与、或、异或、循环、求补和清 零),还可算术运算(加、减、乘、除)
• RST(9脚):复位端。当晶体在运行时,只要此引脚上出 现2个机器周期高电平即可复位,内部有扩散电阻连接到Vss, 仅需要外接一个电容到Vcc即可实现上电复位。
• ALE(30脚):地址锁存使能。在访问外部存储器时,输出 脉冲锁存地址的低字节,在正常情况下,ALE输出信号恒定 为1/6振荡频率。并可用作外部时钟或定时,注意每次访问外 部数据时,一个ALE脉冲将被忽略。
{ P2=0XFE; temp1=35000; delay(temp1); P2=0XFD;
temp1=35000; delay(temp1); P2=0XFB; temp1=35000; delay(temp1); P2=0XF7; temp1=35000; delay(temp1);
P2=0XEF; temp1=35000; delay(temp1); P2=0XDF; temp1=35000; delay(temp1); P2=0XBF; temp1=35000; delay(temp1); P2=0X7F; temp1=35000; delay(temp1);
2.利用 keil c软件编写程序
#include <reg51.h> #include <stdio.h> unsigned int temp1; void delay(unsigned int temp)//延时程序 { while(--temp); }
void main() {
P2=0XFF;//led is off while(1)
端口2 可配置的I/O口
端口1 可配置的I/O口
端口0 可配置的I/O口
振荡器
4K / 8 K/ ... 64KB 程序FLASH
全双工增强型 UART
定时器0 定时器1
定时器2
看门狗定时器
51系列单片机结构框图
1. 电源引脚
VSS(20脚):接地,0V参考点。 VCC(40脚):电源,提供掉电、空闲、正常工作
2.外接晶体引脚
XTAL1(19脚):接外部晶体的一端,振荡反向放大器 的输入端和内部时钟电路输入端。
XTAL2(18脚):接外部晶体的另一端,振荡反向放大 器的输出端。
3. 控制信号或与其它电源复用引脚
控制信号或与其它电源复用引脚有 RST/VPD、 ALE / PROG.、PSEN 和 EA/VPP 等4种形式。
P3 口 ( P3.0-P3.7 , 10-17 脚 ) : 是 带 内 部 上 拉 的 双 向 I/O 口。向P3 口写入1时,P3 口被内部上拉为高电平, 可用作输入口。当作为输入脚时,被外部拉低的P3 口会因为内部上拉而输出电流。P3口脚具有第二功 能,表2-2介绍了P3口的第二功能。
口 线 第二功能
12
ALU还有位操作功能,对位变量进行位处理,如置“1”、 清“0”、求补、测试转移及逻辑“与”、“或”等。
2.累加器A 使用最频繁的寄存器,可写为Acc。“A”与“Acc” 作用如下: (1)ALU单元的输入数据源之一,又是ALU运算结果存放单
输入/输出引脚
• P0口(P0.0-P0.7,32-39脚):是双向8位三态I/O口。可向 其写入1 使其状态为悬浮,用作高阻输入。P0口也可以在访 问外部程序存储器时作地址的低字节,在访问外部数据存储 器时作数据总线,此时通过内部强上拉传送1。
• P1口(P1.0-P1.7,1-8脚):是带内部上拉的双向I/O口。向 P1口写入1时,P1口被内部上拉为高电平,可用作输入口; 当作为输入脚时,被外部拉低的P1口会因为内部上拉而输出 电流。
• P2口(P2.0-P2.7,21-28脚):是带内部上拉的双向I/O口。 向P2口写入1时,P2口被内部上拉为高电平,可用作输入口。 当作为输入脚时,被外部拉低的P2口会因为内部上拉而输出 电流。在访问外部程序存储器和外部数据时分别作为地址高 位字节和16 位地址,此时通过内部强上拉传送1。当使用8 位寻址方式访问外部数据存储器时,P2口发送P2 特殊功能寄 存器的内容。
• PSEN(29脚):程序存储使能。读外部程序存储。当从外 部读取程序时,PSEN每个机器周期被激活两次,在访问外 部数据存储器时PSEN无效,访问内部程序存储器时PSEN无 效。
• EA/Vpp(31脚):外部寻址使能/编程电压。在访问整个外 部程序存储器时,EA必须外部置低。如果EA为高时,将执 行内部程序。当RST释放后EA脚的值被锁存,任何时序的改 变都将无效。该引脚在对FLASH编程时用于输入编程电压 (Vpp)。
} }
3.利用 keil c软件将C语言转化成HEX文件 4.将HEX文件添加到Proteus7软件中,进行仿真
思考:单片机如何使用?
2.2 STC89C51系列单片机的内部结构
增强的80C51 CPU 12时钟模式,6时钟模式
晶体 或 谐振器
512B/1280B 数据RAM
端口3 可配置的I/O口
第二章 STC89C51系列单片机的结构和原理
2.1 STC89C51如何控制流水灯 2.2 STC89C51系列单片机的内部结构 2.3 STC89C51系列单片机的主要组成部分 2.4 单片机的复位电路 2.5 单片机最小系统
2.1 STC89C51如何控制流水灯
任务:使用单片机控制发光管按一定顺序亮 1.利用Proteus7连接电路图