单片机硬件基础知识
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DF FA
DD F6 22
0015H
0017H 0019H
DJNZ
DJNZ RET END
ຫໍສະໝຸດ Baidu
R6,D2
R5,D1 ;子程序返回 ;程序结束
C语言源程序
#include <reg51.h> sbit L1=P1^0; void delay02s(void) { unsigned char i,j,k; for(i=20;i>0;i--) for(j=20;j>0;j--) for(k=248;k>0;k--); } void main(void) { while(1) { L1=0; delay02s(); L1=1; delay02s(); } }
表1-1 MCS-51系列单片机主要性能指标
片内存储器
系列
无ROM 片内ROM 片内EPROM 片内RAM
定时器/计数 器
并行I/O
串行I/O
中断源
制造工艺
8031 51子系列 80C31
8051 4KB ROM
8751 4KB EPROM
128B
2×16位
4×8位
1
5
HMOS
80C51 4KB ROM
第1章 单片机硬件基础知识
实训任务1 控制发光二极管的亮灭 1.1 单片机概述 1.2 MCS-51系列单片机的内部结构 1.3 MCS-51系列单片机的外部引脚 1.4 MCS-51系列单片机的时序与工作方式 1.5 单片机最小系统设计
实训任务1
实训目的
控制发光二极管的亮灭
1.通过搭建一个单片机最小系统,控制一个
MCS-51系列单片机内部几个重要寄存器
程序计数器PC是专门用于存放将要执行指令的16位地址的。 CPU就是根据PC中的地址到ROM中去读取程序指令码和数 据,并送给指令寄存器进行分析。 PC可寻址64KB范围的ROM。 程序计数器PC具有如下特点: 1)PC的内容是需要执行的下一条指令所在的地址; 2)PC具有自动加1的功能(自动顺序执行程序; 3)在程序中用指令改变PC的值,可实现程序的跳转。 (PC本身没有地址,因此用户无法对其进行读写)
87C51 4KB EPROM
128B
2×16位
4×8位
1
5
CHMOS
8032 52子系列
8052 8KB ROM
8752 8KB EPROM
256B
3×16位
4×8位
1
6
HMOS
80C32
80C52 8KB ROM
87C52 8KB EPROM
256B
3×16位
4×8位
1
6
CHMOS
AT89系列单片机的主要型号
XTAL1
XTAL2
P1.0 ~ P1.7
P3.0 ~ P3.7
*只在AT 89C52中有
MCS-51系列单片机的基本组成
中央处理器是单片机内部的核心部件,是一
个8位二进制数的中央处理单元,主要由运算 器、控制器和若干寄存器组成,并且通过内 部总线与其他功能部件联接。
MCS-51系列单片机内部几个重要寄存器
单片机应用系统
单 片 机
+
接口 电路 及外 设等
+
软 件
硬 件
图1-3 单片机应用系统的组成
单片机的应用
单片机的应用主要在以下领域中: (1)工业控制领域(过程控制,机电一体化控制系统) (2)家用电器领域 (洗衣机,空调、微波炉等) (3)办公自动化领域(键盘,打印机,考勤机等) (4)商业营销领域(电子称,收款机,条形码阅读器等) (5)智能仪表与智能传感器(存储,数据处理、查找、 判断、联网等智能化功能
02 00 00
7D 14 7E 14 7F F8 DF FE
000AH
000DH 000FH 0011H 0013H
LJMP
DELAY: MOV D1: D2: MOV MOV DJNZ
START ;返回,从START开始重复
R5,#20 R6,#20 R7,#248 R7,$ ;延时子程序,延时0.2秒
AT89S51/AT89S52 是AT89C51/AT89C52的换代产品。完全兼容51系列,4KB/8KB FlashROM,并且可以在线编程,内置看门狗定时器,工作电压为 4~5.5V。 AT89LV51/AT89LV52 分别是AT89C51/AT89C52的低电压产品,最低电压可以低至2.7V。 AT89C1051/AT89C2051 为低档型低电压产品,只有20条引脚,最低电压也为2.7V。 AT89S8252 属高档型,除了8KB Flash存储器外,还含有一个2KB的EEPROM,从而 可提高存储容量。
用户 RAM区 (间接寻址) FFH
80H
用户区和 堆栈区 位寻址区
R7 . . 3区(8字节) . R0 R7 . . 2区(8字节) . R0 R7 . . 1区(8字节) . R0 R7 . . 0区(8字节) . R0
用户区和 堆栈区 位寻址区
R7 . . 3区(8字节) . R0 R7 . . 2区(8字节) . R0 R7 . . 1区(8字节) . R0 R7 . . 0区(8字节) . R0
RCAP2L*
ALU PSEN ALE EA RST 定 时 控 制 指 令 寄 存 器 PSW
SCON TH 0 TH 2 SBUF
TMOD TL 0 TL 2 IE
TCON TH 1
RCAP2H*
PC加1器 程序计数器 DPTR
IP
中断、串行口、定时器控制逻辑
P 1 锁存器
P 3 锁存器
OSC P 1驱动器 P 3驱动器
1.2 MCS-51系列单片机的内部结构
AT89S51的内部结构框图如图1-4所示。
P0.0 ~ P0.7 P2.0 ~ P2.7 P 0驱动器 P2驱动器
VCC GND
RAM地址 寄存器
RAM
P 0锁存器
P 2 锁存器
Flash
程序地址 寄存器 B ACC TMP 2 TMP 1 SP 缓冲器 PCON T 2CON TL1
1. 片内数据存储器的配置
(1) 工作寄存器区 00H~1FH这32个字节单元为工作寄存器区,可以用寄存器 寻址方式访问。共有四组工作寄存器,每组八个,命名为 R0~R7。工作寄存器也称为通用寄存器,用于临时寄存8位 信息,编程时用于存放数据或地址。但每组工作寄存器在内 部RAM中的物理地址不同。RS1和RS0的四种状态组合就是 用来确定四组工作寄存器的实际物理地址的。 (2) 位寻址区 20H~2FH这16个字节单元为位寻址区。它有双重寻址功能, 既可以进行位寻址操作,也可以同普通RAM单元一样按字节 寻址操作。该区域共有16个字节单元,共128个二进制位。 这128位每一位都可以按位寻址,进行位运算。每一位都有 一个位地址,位地址范围为00H~7FH。
定时器/计数器
中断系 统
并 行
CPU
串 行 I/O
TxD RxD
P0-P3
I/O 口
存储 器
口
图1-2 单片机内部结构图
单片机应用系统
单片机实质上是一个芯片。在实际应用中, 通常很难将单片机直接和被控对象进行电气 连接,必须外加各种扩展接口电路、外部设 备、被控对象等硬件和软件,构成一个单片 机应用系统,以实现一种或多种功能。硬件 是应用系统的基础,软件是根据硬件结构来 完成相应功能设计。单片机应用系统的组成 如图1-3所示。
MCS-51系列单片机内部几个重要寄存器
堆栈指针SP 堆栈是一段特殊的存储空间,它只有一 个数据进/出端口且按照“先进后出”原则来 组织数据。堆栈存储器的底部称为栈底。堆 栈的数据入口/出口处称为栈顶,栈顶的地址 称为堆栈指针,用堆栈指针(寄存器)SP来存 放。SP是一个8位的寄存器,是专门用于寄 存堆栈存储器地址的寄存器。
累加器ACC简称为A,是一个8位的寄存器,
用来存放操作数或运算的结果。在MCS-51指 令系统中,绝大多数指令都要求累加器A参与 处理。 寄存器B是专为乘法和除法设置的寄存器,也 是8位寄存器。用于存放乘法和除法运算中的 操作数和运算结果。
MCS-51系列单片机内部几个重要寄存器
状态寄存器PSW是一个8位标志寄存器,用来存放 指令执行结果的有关状态。具体如图1-5所示。
//延时0.2秒子程序
1.1 单片机概述
什么是单片机?单片机是微型计算机中的一
种,是把微型计算机中的中央处理器、存储 器、I/O接口、定时器/计数器、串行接口、中 断系统等电路集成在一块集成电路芯片上形 成的微型计算机。因而被称为单片微型计算 机,简称为单片机。内部结构如图1-2所示。
T
INT
D7 D6 D5 D4 D3 D2 D1 D0
Cy
AC
F0
RS1
RS0
OV
-
P
图1-5 PSW结构
PSW中各位状态通常是指令执行过程中自动形成的, 但也可以由用户根据需要通过传送指令来改变。 PSW各位意义及使用如下: ① 进位标志位Cy:表示累加器A在加减运算过程中 其最高位A7有无进位或借位。如果操作结果的最高 位产生进位或借位,Cy由硬件置“1”,否则清零。 另外,也可以由位运算指令置位或清零。 ② 辅助进位标志位AC:表示累加器A在加减运算时 低4位(A3)有无向高4位(A4)进位或借位。当低4位向 高4位进位或借位时,AC由硬件置“1”,否则清零。 ③ 用户标志位F0:可由用户设定的一个标志位,根 据需要可以用软件来使它置位或清除。
1. 片内数据存储器的配置
FFH 特殊功能 寄存器 (SFR)区 80H 7FH 30H 2FH 20H 1FH 18H 17H 10H 0FH 08H 07H 00H 80H 7FH 30H 2FH 20H 1FH 18H 17H 10H 0FH 08H 07H 00H FFH 特殊功能 寄存器 (SFR)区
工 作 寄 存 器 区
(a) 51子系列
(b) 52子系列
图1-6 片内数据存储器结构图
1. 片内数据存储器的配置
对于普通8051单片机,片内数据存储器RAM
空间最大为256B,用于存放程序执行过程的 各种变量及临时数据。 片内RAM的低128个字节可用直接寻址或间 接寻址方式进行访问。分为工作寄存器区、 位寻址区、用户区和堆栈区四个区域;片内 高128B为特殊功能寄存器区。如图1-6所示。
④ 寄存器组选择位RS1、RS0:AT89C51片内共有四组 工作寄存器,每组八个,分别命名为R0~R7。编程时用 于存放数据或地址。但每组工作寄存器在内部RAM中的 物理地址不同。RS1和RS0的四种状态组合就是用于选择 CPU当前使用的工作寄存器组,从而确定R0~R7的实际 物理地址。RS1、RS0状态与工作寄存器R0~R7的物理 地址关系如表1-2所示。
表1-2 RS1、RS0对工作寄存器组的选择
RS1 0 0 1 1
RS0 0 1 0 1
当前工作寄存器组 R0~R7的物理地址 第0组 第1组 第2组 第3组 00H~07H 08H~0FH 10H~17H 18H~1FH
⑤ 溢出标志位OV:当执行算术指令时,由硬件自 动置位或清零,表示累加器A的溢出状态。 在4种情况下该位为1: a)带符号数运算结果超过范围(-128~+127); b)无符号数运算结果超过范围(255); c)乘法运算中积超过255; d)除法运算中除数为0。 判断该位时,通常用运算中次高位向最高位的进 (借)位C6和最高位向前的进(借)位C7(也就是CY)的 异或来表示OV,即OV=C6⊕C7。 ⑥ 奇偶标志位P:用于指示运算结果中1的个数的奇 偶性,若累加器A中1的个数为奇数,则P=1;若1 的个数为偶数,则P=0。
MCS-51系列单片机内部几个重要寄存器
数据指针(地址)寄存器DPTR DPTR是一个十六位的专用寄存器,它由两 个8位的寄存器DPH(高8位)和DPL(低8 位)组成。专门用来寄存片外RAM及扩展I/O 口进行数据存取时用的地址。
1.2.3 存储器结构
MCS-51单片机的存储器组织采用哈佛结构,
LED灯闪烁,了解单片机的基本工作过程。 2.了解单片机应用系统的基本组成及功能。
图1-1 实训1电路图
汇编语言源程序:
机器码 (十六进制形式) 存储地址 标号 程序 注释
ORG C2 90 12 00 0D D2 90 12 00 0D 0000H 0002H 0005H 0007H START: CLR LCALL SETB LCALL 0000H P1.0 DELAY P1.0 DELAY ;灯亮 ;延时 ;灯灭
即程序存储器ROM和数据存储器RAM严格分 开,独立设置。各有自己的存储空间、寻址 机构和寻址方式。程序存储器用来存放用户 程序和固定不变的数据表格;数据存储器用 作工作区和存放数据。
1.2.3 存储器结构
MCS-51单片机的存储器在物理上分为4个空
间,即片内ROM、片外ROM,片内RAM和 片外RAM。在逻辑上分为3个空间,即程序 存储器(片内、外统一编址,使用MOVC指 令访问),片内数据存储器(使用MOV指令 访问)和片外数据存储器(使用MOVX指令 访问)