,单片微机原理及应用,教学课件
,单片微机原理及应用,
主讲教师,陆 坤成都理工大学核自学院自动化系
,单片微机原理及应用,精品课程建设组
,单片微机原理及应用,教学课件有关本课程学习的几点建议本课程是一门实践性、应用性很强的学科仅仅听懂还不够,重在培养动手能力硬件 /软件同样重要、不可偏废硬件是骨架,软件是皮肉器脏及思想本课程的前期基础课程是数字电路与微机原理这方面知识掌握得不够好的请自己补上预习、听课、复习、作业、实验环环都重要用科学的方法学习请各班去教材科买本课程的,实验指导书,
,单片微机原理及应用,教学课件作业与答疑答疑定于每周 星期四 晚上 7:00— 9:00在 核自院楼
112室答疑;
平时任何一天,同学们有问题均可到 核自院楼 112办公室寻求解答,112室 电话,84078776
每人准备一个作业本 —— 作业和实验报告可用其他课程用过而没用完的本子,但 不能用单页纸,学期末作业本就是一本复习提纲。
,单片微机原理及应用,教学课件第 1章 预备知识(数制与码制) —— 不讲第 2章 单片机基础 —— 4
第 3章 指令系统及汇编语言程序设计 —— 6
第 5章 输入 /输出、中断、定时与串行通信
—— 8
第 4章 单片机系统的扩展(并入 第 6章 讲)
第 6章 接口芯片与接口技术 —— 12~ 14
插入,C- 51程序设计 —— 2
第 7章 单片机应用系统设计 —— 3~ 4
第 8章 几种典型的单片机 —— 4
课堂授课时间分配,(40学时 )
,单片微机原理及应用,教学课件绪 论
,单片微机原理及应用,教学课件绪 论在工业、农业、军事、保安、金融、仪器仪表、航空航天、医疗、通讯、办公设备、
娱乐休闲、健身、体育竞赛、服务领域 ……,
大量 单片机 -嵌入式 技术已经无处不在。正迅速改变着人们传统的生产和生活方式。
请稍微留心一下我们的周围,看看身边到底发生了什么变化?
,单片微机原理及应用,教学课件单片机技术的应用遍布国民经济与人民生活的各个领域
,单片微机原理及应用,教学课件从一个简单的测控应用实例说起动作选择按钮红外线传感器
89C2051单片机复位按钮电源指示灯
,单片微机原理及应用,教学课件从一个简单的测控应用实例说起任务一,控制一盏灯点亮任务二,红灯周期性地点亮 /熄灭信号检测柔性开关集群灯控顺序控制 /多任务定时切换自动生产流水线任务三,红外防盗报警实时控制
,单片微机原理及应用,教学课件简单测控实例原理图
,单片微机原理及应用,教学课件数字电路中由 13片 IC组成的数字钟
,单片微机原理及应用,教学课件数字电路中由 13片 IC组成 的数字钟
,单片微机原理及应用,教学课件数字电路中由 13片 IC组成的数字钟
,单片微机原理及应用,教学课件单片 IC(单片机)电子钟单片机
,单片微机原理及应用,教学课件单片机与嵌入式技术重要吗?有用吗?遥远吗?
问题的答案是不言而喻的。
,单片微机原理及应用,教学课件第一讲:单片机基础本讲重点:
MCS-51的基本特性 ;
单片机的引脚与 I/O口结构 ;
存储器、堆栈与特殊功能寄存器,
,单片微机原理及应用,教学课件第二章 单片机基础单片机与嵌入式,
单片微机( Single Chip Micro-computer)
微控制器( Micro-Controller Unit—— MCU)
嵌入式微控制器( Embedded Microcontroller)
单片机应用领域,
测控系统,智能仪表,智能接口,办公自动化,
光机电一体化设备,通讯设备,网络设备,汽车电子,消费类电子产品,智能楼宇设备 ……
单片机的多元化发展,
Intel Motorola Philips Atmel Siemens NS LG
Winbond Microchip EPSON NEC Cypress Dallas
Oki Fairchild Fujitsu Hitachi SAMSUNG……
,单片微机原理及应用,教学课件组成,
CPU(进行运算、控制 ) RAM(数据存储器 )
I/O口 (串口、并口等 ) ROM(程序存储器 )
PC机,上述部件以芯片形式安装在 主板 上。
单片机,上述部件被集成到 单芯片 中。
通用 PC包括,键盘、显示器、鼠标、硬 /软 /光驱、
音箱、打印机、扫描仪 … 等外设 。
单片机 则只是一片集成电路。( …… 100,48、
40,32,28,20,16,8条引脚)。
单片机与计算机之异同 ( 1)
,单片微机原理及应用,教学课件功能,
PC机,数据运算、采集、处理、存储、传输;
单片机,控制(或受控于)外设。
通用计算机擅长于数据 运算,采集、处理、存储和传输;
单片机的专长则是 测控,往往 嵌入 某个仪器 /设备
/系统中,使其达到智能化的效果。
单片机与计算机之异同 ( 2)
,单片微机原理及应用,教学课件应用特点,
个人计算机(微机),
体积大,功耗大,价格高,用途较固定,属 通用计算机 。易于学习掌握和使用,但用于控制时必须制作或购买专用的接口卡,并编制专门的应用软件。
单片机,
体积小,功耗小,价格低,用途灵活,无处不在,
属 专用计算机。 是一种特殊器件,需经过专门学习方能掌握应用,应用中要设计专业的硬件和软件。
单片机与计算机之异同 ( 3)
,单片微机原理及应用,教学课件
MCS-51单片机基本特性
8 位的 CPU,片内有振荡器和时钟电路,工作频率为
1~ 12MHz( Atmel 89Cxx为 0~ 24MHz)
片内有 128/256字节 RAM
片内有 0K/4K/8K字节 程序存储器 ROM
可寻址片外 64K字节 数据存储器 RAM
可寻址片外 64K字节 程序存储器 ROM
片内 21/26个 特殊功能寄存器 ( SFR)
4个 8位 的并行 I/O口 ( PIO)
1个 全双工串行口 ( SIO/UART)
2/3个 16位 定时器 /计数器 ( TIMER/COUNTER)
可处理 5/6个 中断源,两级 中断优先级
内置 1个 布尔处理器 和 1个 布尔累加器 ( Cy)
MCS-51指令集含 111条指令
,单片微机原理及应用,教学课件
MCS-51系列单片机配置一览表系列片内存储器(字节) 定时器计数器并行
I/O
串行
I/O
中断源片内 ROM 片内
RAM无 有 ROM 有 EPROM
Intel
MCS-51
子系列
8031
80C31
8051
80C51
(4K字节 )
8751
87C51
(4K字节 )
128
字节 2x16 4x8位 1 5
Intel
MCS-52
子系列
8032
80C32
8052
80C52
(8K字节 )
8752
87C52
(8K字节 )
256
字节 3x16 4x8位 1 6
注意:今后将会经常提到 ATMEL的 AT89C2051/51/52等 MCU!
ATEML
89C系列
(常用型 )
1051(1K)/ 2051(2K)/ 4051(4K)
( 20条引脚 DIP封装) 128 2 15 1 5
89C51(4K)/ 89C52(8K)
( 40条引脚 DIP封装)
128/
256 2/3 32 1 5/6
,单片微机原理及应用,教学课件内部结构框图
,单片微机原理及应用,教学课件单片机的引脚定义从一片集成电路的角度去认识单片机
,单片微机原理及应用,教学课件认识单片机的引脚 MCS-51单片机 40脚
Vcc,GND 2
XTAL1,XTAL2 2
RESET 1
EA/Vpp 1
ALE/PROG 1
PSEN 1
P0.0— P0.7 8
P1.0— P1.7 8
P2.0— P2.7 8
P3.0— P3.7 8
,单片微机原理及应用,教学课件单片机的引脚 (电源端)
Vcc,GND,正电源端与接地端( +5V/3.3V/2.7V)
不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不同。
,单片微机原理及应用,教学课件单片机的引脚 (晶振端)
Vcc,GND,正电源端与接地端( +5V/3.3V/2.7V)
不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不同。
XTAL1,XTAL2,片内振荡电路输入 /输出端
,单片微机原理及应用,教学课件单片机的引脚 (晶振端)
Vcc,GND:正电源端与接地端 (+5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入 /输出端
15~ 45pfx2 1~ 12MHz( MCS-51)
0~ 24MHz( Atmel-89C)
XTAL1
XTAL2
也可以由 XTAL1
端接入外部时钟,
此时应将 XTAL2
接地:
XTAL2
XTAL1外部时钟通常 外接一个晶振两个电容
,单片微机原理及应用,教学课件单片机的引脚 (晶振端)
Vcc,GND:正电源端与接地端( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
CPU总是按照一定的时钟节拍与时序工作:
振荡周期 /时钟周期:
Tc=晶振频率 fosc(或外加频率)的倒数状态周期,Ts=2个时钟周期 (Tc)(很少用到此概念)
机器周期,Tm=6个状态周期 (Ts)=12个振荡周期 (Tc)
指令周期,Ti:执行一条指令所需的机器周期 (Tm)数牢牢记住,振荡周期 = 晶振频率 fosc的倒数;
1个机器周期 = 12个振荡周期;
1个指令周期 = 1,2,4个机器周期
,单片微机原理及应用,教学课件单片机的引脚 (复位端)
Vcc,GND,电源端 ( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端(正脉冲有效,宽度?8 mS)
,单片微机原理及应用,教学课件复位使单片机进入某种确定的 初始状态,
▼ PC值归零( 0000H);
▼ 各个 SFR被赋予初始值(见 P.42):
P0~ P3 = 0FFH,Acc = 0,B = 0,TH0=0,
TL0=0,TH1=0,TL0=0,SP=7,PSW=0 ……
▼ 退出处于节电工作方式的停顿状态、退出一切程序进程、退出程序的死循环,从头开始 。
单片机的引脚 (复位端)
Vcc,GND,电源端 ( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端(正脉冲有效,宽度?8 mS)
,单片微机原理及应用,教学课件
PC与 SFR复位状态表寄存器 复位状态 寄存器 复位状态
PC 0000H TCON 00H
A 00H T2CON 00H
B 00H TH0 00H
PSW 00H TL0 00H
SP 07H TH1 00H
DPTR 0000H TL1 00H
P0~P3 FFH SCON 00H
IP XX000000B SBUF XXH
IE 0X000000B PCON 0XXX0000B
TMOD 00H
,单片微机原理及应用,教学课件单片机的引脚 (复位端)
+5V
10uF
10K
Vcc
RST
GND
上电复位
10uF
10K
Vcc
RST
GND
手动 &上电复位
1K
Vcc,GND,电源端 ( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端 (正脉冲有效,宽度?8 mS)
+5V
,单片微机原理及应用,教学课件单片机的引脚 ( EA端)
Vcc,GND,电源端 ( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端 (正脉冲有效,宽度?8 mS)
EA/Vpp,寻址外部 ROM控制端 /编程电源输入端。
低有效,片内 无 ROM时 必须 接地 ;
片内 有 ROM时 应当 接高电平 ;
对片内 ROM编程时编程正电源加到此端。
,单片微机原理及应用,教学课件单片机的引脚 ( ALE端)
Vcc,GND,电源端 ( +5V/3.3V/2.7V)
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端 (正脉冲有效,宽度?8 mS)
EA/Vpp,寻址外部 ROM控制端 /编程电源输入端。
ALE/PROG,地址锁存允许 /编程脉冲输入端。
P0口寻址外部低 8位地址 时 接外部锁存器 G端;
ALE端 平时会输出周期正脉冲,f? fosc/6 ;
对片内 ROM编程时编程脉冲由此端加入。
,单片微机原理及应用,教学课件单片机的引脚 ( PSEN端)
PSEN,寻址外部程序存储器时选通外部 EPROM的读控制端 ( OE) 低有效。
,单片微机原理及应用,教学课件单片机 锁存器74LS373
P0.0-P0.7
ALE
PSEN
P2.0-P2.4
8D 8Q
OE
A8-A12
A0-A7
D0-D7
G
EA OE
CE
EPROM
单片机的引脚 ( PSEN端)
PSEN,寻址外部程序存储器时选通外部 EPROM的读控制端 ( OE) 低有效。
,单片微机原理及应用,教学课件单片机的 I/O引脚结构众多功能各异的 I/O引脚源于它结构的不同
,单片微机原理及应用,教学课件单片机的引脚 ( P1口)
P1.0— P1.7,准双向 I/O口 (内置了上拉电阻)
输出时一切照常,仅在作 输入口 用时要先对其写,1” 。
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线
Vcc
引脚 P1.X
内部上拉电阻
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线
Vcc
引脚 P1.X
内部上拉电阻输 出 数据 = 1 时
1 1
0
截止
=1
单片机的引脚 ( P1口)
P1.0— P1.7,准双向 I/O口 (内置了上拉电阻)
输出时一切照常,仅在作 输入口 用时要先对其写,1” 。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线
Vcc
引脚 P1.X
内部上拉电阻输 出 数据 = 0 时
0 0
1
=0
导通单片机的引脚 ( P1口)
P1.0— P1.7,准双向 I/O口( 内置了上拉电阻 )
输出时一切照常,仅在作 输入口 用时要先对其写,1” 。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =1
读锁存器写锁存器内部总线
Vcc
引脚 P1.X
内部上拉电阻输 入 数据时,要先对其写,1”
1 1
0
截止单片机的引脚 ( P1口)
P1.0— P1.7,准双向 I/O口( 内置了上拉电阻 )
输出时一切照常,仅在作 输入口 用时要先对其写,1” 。
,单片微机原理及应用,教学课件简单测控实例原理图
,单片微机原理及应用,教学课件
P1.3
作输入端口光路通畅,R亮?2K?
光路阻断,R暗?400K?
R亮 < 2.2K?
R暗 >250K?
,单片微机原理及应用,教学课件
JOB3,CLR P1.1 ;亮绿灯
REDO,SETB P1.3 ;P1.3作输入口必先置 1
CHECK:JNB P1.3,CHECK ;检测 通道是否被阻断?
LOOP,………… ;有入侵者,报警!
AJMP REDO ;再跳回去检测任务三,红外防盗报警
P1.3口 用于输入状态检测的语句,
R亮 <2.2K?,红外线光路通畅时,P1.3端= 低电平
R暗 >250K?,红外线光路阻断时,P1.3端= 高电平
,单片微机原理及应用,教学课件单片机的引脚 ( P0口)
P0.0— P0.7,双向 I/O (内置 场效应管 上拉)
寻址外部程序存储器时 分时 作为 双向 8位数据口和 输出低 8位地址 复用口 ;不接外部程序存储器时可 作为 8位 准双向 I/O口 使用。
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线地址 /数据 控制引脚 P0.X
3
4
Vcc
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =1
读锁存器写锁存器内部总线地址 /数据 控制引脚 P0.X
3
4
控制 =0 时,此脚作 输入口 (事先必须对它写,1”)
0 0
1
0 0
截止截止
=0 Vcc
单片机的引脚 ( P0口)
P0.0— P0.7,双向 I/O (内置 场效应管 上拉)
寻址外部程序存储器时分时作为 双向 8位数据口和 输出低 8位地址 复用口;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址 /数据 控制 =1
引脚 P0.X
3
4
控制 =1时,此脚作地址 /数据 复用口,
( 1) 输出地址 /数据 =0时
1
0
1
1
=0
导通截止=0
Vcc
单片机的引脚 ( P0口)
P0.0— P0.7,双向 I/O (内置 场效应管 上拉)
寻址外部程序存储器时分时作为 双向 8位数据口和 输出低 8位地址 复用口;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址 /数据 控制 =1
引脚 P0.X
3
4
控制 =1时,此脚作地址 /数据 复用口,
( 2) 输出地址 /数据 =1时
1
1
0
0
=1
截止导通=1
Vcc
单片机的引脚 ( P0口)
P0.0— P0.7,双向 I/O (内置 场效应管 上拉)
寻址外部程序存储器时分时作为 双向 8位数据口和 输出低 8位地址 复用口;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =1
读锁存器写锁存器内部总线地址 /数据 控制 =1
引脚 P0.X
3
4
控制 =1时,此脚作地址 /数据 复用口,
( 3) 输入数据时,输入指令将使引脚与内部总线直通
Vcc
单片机的引脚 ( P0口)
P0.0— P0.7,双向 I/O (内置 场效应管 上拉)
寻址外部程序存储器时分时作为 双向 8位数据口和 输出低 8位地址 复用口;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件单片机的引脚 ( P2口)
P2.0— P2.7,双向 I/O (内置了上拉电阻)
寻址外部程序存储器时 输出高 8位地址 ;不接外部程序存储器时可 作为 8位 准双向 I/O口 使用。
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线地址高 8位 控制引脚
P2.X3
内部上拉电阻
Vcc
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址高 8位 控制引脚 P2.X
控制 =0时,此脚作通用 输出口,
输出 =1时
1
1 0 截止3
内部上拉电阻
1 1
Vcc
=1
=0
单片机的引脚 ( P2口)
P2.0— P2.7,双向 I/O (内置了上拉电阻)
寻址外部程序存储器时 输出高 8位地址 ;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址高 8位 控制引脚 P2.X
控制 =0时,此脚作通用 输出口,
输出 =0时
0
0 1 导通3
内部上拉电阻
0 0
Vcc
=0
=0
单片机的引脚 ( P2口)
P2.0— P2.7,双向 I/O (内置了上拉电阻)
寻址外部程序存储器时 输出高 8位地址 ;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址高 8位 控制 =1
引脚 P2.X
控制 =1 时,此脚作 高 8位地址 A8— A15输出口:
当 输出 =1 时
1
0 截止3
内部上拉电阻
1
=1
Vcc
=1
单片机的引脚 ( P2口)
P2.0— P2.7,双向 I/O (内置了上拉电阻)
寻址外部程序存储器时 输出高 8位地址 ;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚 =0
读锁存器写锁存器内部总线地址高 8位 控制 =1
引脚 P2.X
0
1 导通3
内部上拉电阻
0
=0
Vcc
=0
控制 =1 时,此脚作 高 8位地址 A8— A15输出口:
当 输出 =0 时单片机的引脚 ( P2口)
P2.0— P2.7,双向 I/O (内置了上拉电阻)
寻址外部程序存储器时 输出高 8位地址 ;不接外部程序存储器时可作为 8位 准双向 I/O口 使用。
,单片微机原理及应用,教学课件单片机的引脚 ( P3口)
P3.0— P3.7,双功能口 (内置了上拉电阻)
它 具有特定的第二功能 。在不使用它的第二功能时它就是普通的 通用准双向 I/O口 。
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线第二功能输出引脚
P3.X3
内部上拉电阻
Vcc
第二功能输入
4
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线第二功能输出
( WR,RD,TxD)
引脚
P3.X3
内部上拉电阻
Vcc
4
第二功能输出时,内部自动 D=1
1 1
1
反相器单片机的引脚 ( P3口)
P3.0— P3.7,双功能口 (内置了上拉电阻)
它 具有特定的第二功能 。在不使用它的第二功能时它就是普通的 通用准双向 I/O口 。
,单片微机原理及应用,教学课件
2
1
D Q
CK /Q
读引脚读锁存器写锁存器内部总线此端自动= 1
引脚 P3.X3
内部上拉电阻
Vcc
第二功能输入 ( RxD,
T0,T1,INT0,INT1)
4
第二功能输入时,信号经缓冲器 4 直接进入内总线
1
1
1 0 截止单片机的引脚 ( P3口)
P3.0— P3.7,双功能口 (内置了上拉电阻)
它 具有特定的第二功能 。在不使用它的第二功能时它就是普通的 通用准双向 I/O口 。
,单片微机原理及应用,教学课件
P3口第二功能表 ( P.26 表 2- 3)
引 脚 第 二 功 能
P3.0 RxD,串行口接收数据输入端
P3.1 TxD,串行口发送数据输出端
P3.2 INT0,外部中断申请输入端 0
P3.3 INT1,外部中断申请输入端 1
P3.4 T0,外部计数脉冲输入端 0
P3.5 T1,外部计数脉冲输入端 1
P3.6 WR,写外设控制信号输出端
P3.7 RD,读外设控制信号输出端
,单片微机原理及应用,教学课件
51单片机的 8个特殊引脚
Vcc,GND,电源端
XTAL1,XTAL2,片内振荡电路输入、输出端
RESET,复位端 正脉冲有效(宽度?8 mS)
EA/Vpp,寻址外部 ROM控制端 。低有效片内有 ROM时应当接高电平。
ALE/PROG,地址锁存允许 控制端 。
PSEN:选通外部 ROM的读 (OE)控制端。 低有效小结
,单片微机原理及应用,教学课件
51单片机的 4个 8位的 I/O口
P0.0— P0.7:8位数据口 和 输出低 8位地址 复用口
(复用时是 双向口 ;不复用时也是 准双向口 )
P1.0— P1.7,通用 I/O口 (准双向口)
P2.0— P2.7,输出高 8位地址
(用于寻址时是 输出口; 不寻址时是 准双向口 )
P3.0— P3.7,具有特定的第二功能 (准双向口)
注意,在不外扩 ROM/RAM时,P0~ P3均可作通用 I/O
口使用,而且 都是 准双向 I/O口 (例如,AT89C51)!
小结
,单片微机原理及应用,教学课件
P3口第二功能表 ( P.26 表 2- 3)
引 脚 第 二 功 能
P3.0 RxD,串行口接收数据输入端
P3.1 TxD,串行口发送数据输出端
P3.2 INT0,外部中断申请输入端 0
P3.3 INT1,外部中断申请输入端 1
P3.4 T0,外部计数脉冲输入端 0
P3.5 T1,外部计数脉冲输入端 1
P3.6 WR,写外设控制信号输出端
P3.7 RD,读外设控制信号输出端小结
,单片微机原理及应用,教学课件存储器、堆栈,SFR
,单片微机原理及应用,教学课件
数据存储器 —— RAM( Random Access Memory)
程序存储器 —— ROM( Read Only Memory)
闪速存储器 —— Flash Memory
EPROM—— ( UV) Erazible Programmable ROM
EEPROM/E2PROM—— Electrical Erasable
Programmable ROM
静态存储器 SRAM—— Static RAM
(动态存储器 DRAM—— Dynamic RAM)
按字节寻址:每个字节 (8个位 )占一个地址
按位寻址:有的存储器每一个位就有一个地址单片机的存储器 —— 几个有关的概念:
,单片微机原理及应用,教学课件
89C51单片机存储器配置
片内 RAM 128字节( 00H— 7FH);
片内 RAM前 32个单元是工作寄存器区 (00H— 1FH)
片内 RAM有 128个可按位寻址的位,占 16个单元。
位地址编号为,00H— 7FH,分布在 20H— 2FH单元
片内 21个特殊功能寄存器 (SFR)中:地址号能被
8整除的 SFR中的各位 也可 按位寻址 ( P.33-34)
可寻址片外 RAM 64K字节 ( 0000H— FFFFH)
可寻址片外 ROM 64K字节 ( 0000H— FFFFH)
片内 Flash ROM 4K字节 ( 000H— FFFH)
,单片微机原理及应用,教学课件存储器配置 ( 片内 RAM)
片内 RAM 128字节 ( 00H— 7FH)
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
SFR分布在
80H-FFH
其中 92个位可位寻址80H
FFH
所有的 RAM区 (包括位寻址区、工作寄存器区)都可以用于存放数据,故也称为 数据缓存寄存器
89C51
128字节
,单片微机原理及应用,教学课件
片内 RAM前 32个单元是 工作寄存器区
(00H— 1FH)
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区存储器配置 ( 片内 RAM)
,单片微机原理及应用,教学课件
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区 R0
R2
R1
R3
R4
R5
R6
R707H
02H
01H
00H
06H
04H
05H
03H
08H
1FH 工作寄存器区 3
工作寄存器区 2
工作寄存器区 1
工作寄存器区
0
0FH10H
17H
18H
片内 RAM前 32个单元是 工作寄存器区
(00H— 1FH)
存储器配置 ( 片内 RAM)
,单片微机原理及应用,教学课件
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
片内 RAM中有 128个可按位寻址的位。
位地址,00H— 7FH
分布在,20H— 2FH单元存储器配置 ( 片内 RAM)
,单片微机原理及应用,教学课件
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
27H
22H
21H
20H
26H
24H
25H
23H
28H
2FH
单元地址
07 06 05 04 03 02 01 00
0F 0E 0D 0C 0B 0A 09 08
17 16 15 14 13 12 11 10
1F 1E 1D 1C 1B 1A 19 18
27 26 25 24 23 22 21 20
2F 2E 2D 2C 2B 2A 29 28
37 36 35 34 33 32 31 30
3F 3E 3D 3C 3B 3A 39 38
47 46 45 44 43 42 41 40
7F 7E 7D 7C 7B 7A 79 78
位地址总共
128
个可按位寻址的位
片内 RAM中有 128个可按位寻址的位。
位地址,00H— 7FH
分布在,20H— 2FH单元存储器配置 ( 片内 RAM)
,单片微机原理及应用,教学课件
可寻址片外 RAM 64K字节 ( 0000H— FFFFH);
可寻址片外 ROM 64K字节 ( 0000H— FFFFH);
片内 Flash ROM 4K字节 ( 000H— FFFH);
FFFFH
0000H
可寻址片外
RAM
64K
字节
FFFFH
0000H
可寻址片外
ROM
64K
字节FFFH
000H
可寻址片内
Flash
ROM
4K
字节
89C51
7FH
00H
片内 RAM
128字节
FFH
80H
存储器配置 ( 片内 RAM)
,单片微机原理及应用,教学课件堆栈,
在 片内 RAM中,常常要指定一个专门的区域来存放某些 特别的 数据,它遵循 顺序存取 和 后进先出 (LIFO/FILO)的原则,这个 RAM区 叫 堆栈 。
功用,
1)子程序调用 和 中断服务 时 CPU自动将当前 PC
值 压栈保存,返回时自动将 PC值弹栈。
2)保护现场 /恢复现场
3)数据传输
,单片微机原理及应用,教学课件
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
SP
栈顶 下一个进栈的数据将存在此数据进栈已经进栈的数据存放在此初始
SP
复位后 SP=07H,数据进栈时,首先
SP+1指向 08H单元,第一个放进堆栈的数据将放进 08H单元,然后 SP再自动增 1,仍指着栈顶 ……
堆栈区由特殊功能寄存器 堆栈指针 SP管理堆栈区可以安排在 RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的 RAM区,通常 放在 RAM
区的 靠后 的位置。
,单片微机原理及应用,教学课件从堆栈取出数据时,取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后 SP再自动减 1,
仍指着栈顶 ……
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
SP
栈顶 当前要出栈的数据数据出栈
SP-1指向下一个将要出栈的数据初始
SP
堆栈区由特殊功能寄存器 堆栈指针 SP管理堆栈区可以安排在 RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的 RAM区,通常 放在 RAM
区的 靠后 的位置。
,单片微机原理及应用,教学课件从堆栈取出数据时,取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后 SP再自动减 1,
仍指着栈顶 ……
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
SP-1 指向新的栈顶,也就是下一个将要出栈的数据数据出栈初始
SP
堆栈区由特殊功能寄存器 堆栈指针 SP管理堆栈区可以安排在 RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的 RAM区,通常 放在 RAM
区的 靠后 的位置。
,单片微机原理及应用,教学课件
89C51特殊功能寄存器 (SFR)
▼ 特殊功能寄存器 SFR(专用寄存器)
专用于 控制、选择、管理、存放 单片机内部各部分的工作 方式、条件、状态、结果 的寄存器 。
▼ 不同的 SFR管理不同的硬件模块,负责不同的功能 —— 各司其职换言之:要让单片机实现预订的功能,必须有相应的硬件和软件,而软件中最重要的一项工作就是对
SFR写命令(要求) 。
,单片微机原理及应用,教学课件程序计数器 PC( Program Counter)
PC 不是 一个特殊功能寄存器 SFR,但其作 用又十分重要和特殊 !!!
特点:
▼ 它是 16位 的按机器周期 自动增 1计数器
▼ 一切 分支 /跳转 /调用 /中断 /复位 等操作的 本质就是,改变 PC 值
▼ 总指向下一条指令所在首地址 (当前 PC值 )
特殊功能寄存器 (PC)
,单片微机原理及应用,教学课件
89C51有 21个 SFR(89C52有 26个 ) P.33~ 34
已知的 P0,P1,P2,P3等四个 8位 I/O口 分别由名为 P0,P1,P2,P3四个 SFR代表。
堆栈指针寄存器 SP( Stack Pointer),总是指向栈顶,压栈时先 (SP)+1 然后数据进栈;弹栈时数据先出栈 然后 (SP)-1。
累加器 ACC:一个被众多指令用得最频繁的特殊功能寄存器 (如:运算、数据传输 … )。
副累加器 B:一个经常与 ACC 配合在一起使用的特殊功能寄存器 (如:乘法、除法 ),此外,它也经常当作普通寄存器使用。
特殊功能寄存器 (P0— P3,SP,A,B)
,单片微机原理及应用,教学课件程序状态字寄存器 PSW:
CY AC F0 RS0 OV PRS1
PSW.7 PSW.0
▼ CY(PSW.7)进位 /借位标志位 。若 ACC在运算过程中发生了进位或借位,则 CY=1;否则 =0。它也是 布尔处理器 的 位累加器,可用于布尔操作。
▼ AC(PSW.6)半进位 /借位标志位。 若 ACC在运算过程中,D3位向 D4位发生了进位或借位,则 CY=1,
否则 =0。机器在执行,DA A”指令时 自动 要判断这一位,我们可以暂时不关心它。
▼ F0 (PSW.5)可由用户定义的标志位。
PSW.6 PSW.5
特殊功能寄存器 (PSW)
,单片微机原理及应用,教学课件程序状态字寄存器 PSW(续),
CY AC F0 RS0 OV PRS1
PSW.7 PSW.0
▼ RS1(PSW.4),RS0(PSW.3)工作寄存器组选择位 。
RS1,RS0 = 0 1 则选择了工作寄存器组 1 区
R0~ R7分别 代表 08H ~ 0FH单元。
RS1,RS0 = 1 0 则选择了工作寄存器组 2 区
R0~ R7分别 代表 10H ~ 17H单元。
RS1,RS0 = 1 1 则选择了工作寄存器组 3 区
R0~ R7分别 代表 18H ~ 1FH单元。
PSW.4 PSW.3
RS1,RS0 = 0 0 则选择了工作寄存器组 0 区
R0~ R7分别 代表 08H ~ 0FH单元。
,单片微机原理及应用,教学课件
片内 RAM前 32个单元 (00H— 1FH)是工作寄存器区 (由 PSW中的 RS1,RS0决定 )
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区 R0
R2
R1
R3
R4
R5
R6
R707H
02H
01H
00H
06H
04H
05H
03H
08H
1FH 工作寄存器区 3
工作寄存器区 2
工作寄存器区 1
工作寄存器区
0
,单片微机原理及应用,教学课件程序状态字寄存器 PSW(续),
CY AC F0 RS0 OV PRS1
PSW.7 PSW.0
▼ OV (PSW.2)溢出标志位。
OV=1时特指累加器在进行带符号数 (-128— +127)
运算时出错(超出范围); OV=0时未出错。
▼ PSW.1 未定义 。
▼ P (PSW.0)奇偶标志位。
P=1表示累加器中,1”的个数 为奇数
P=0表示累加器中,1”的个数 为偶数
CPU随时监视着 ACC中的,1”的个数,并反映在 PSW

PSW.2 PSW.1
,单片微机原理及应用,教学课件
PC与 SFR复位状态表寄存器 复位状态 寄存器 复位状态
PC 0000H TCON 00H
A 00H T2CON 00H
B 00H TH0 00H
PSW 00H TL0 00H
SP 07H TH1 00H
DPTR 0000H TL1 00H
P0~P3 FFH SCON 00H
IP XX000000B SBUF XXH
IE 0X000000B PCON 0XXX0000B
TMOD 00H
回顾
,单片微机原理及应用,教学课件
89C51单片机存储器配置
片内 RAM 128字节( 00H— 7FH);
片内 RAM前 32个单元是工作寄存器区 (00H— 1FH)
片内 RAM有 128个可按位寻址的位,占 16个单元。
位地址编号为,00H— 7FH
分布在,20H— 2FH单元
片内 21个特殊功能寄存器 (SFR)中:地址号能被
8整除的 SFR中的各位 也可 按位寻址
可寻址片外 RAM 64K字节 ( 0000H— FFFFH)
可寻址片外 ROM 64K字节 ( 0000H— FFFFH)
片内 Flash ROM 4K字节 ( 000H— FFFH)
小结
,单片微机原理及应用,教学课件存储器配置 (片内 RAM)
片内 RAM 128字节 ( 00H— 7FH)
00H
20H
2FH
7FH
1FH
30H
80H
FFH
52子系列才有的 RAM区普通 RAM区位寻址区工作寄存器区
SFR分布在
80H-FFH
其中 92个位可位寻址80H
FFH
所有的 RAM区 (包括位寻址区、工作寄存器区)都可以用于存放数据,故也称为 数据缓存寄存器
128字节小结
,单片微机原理及应用,教学课件单片机存储器配置 (片外 RAM/ROM)
可寻址片外 RAM 64K字节 ( 0000H— FFFFH);
可寻址片外 ROM 64K字节 ( 0000H— FFFFH);
片内 Flash ROM 4K字节 ( 000H— FFFH);
FFFFH
0000H
可寻址片外
RAM
64K
字节
FFFFH
0000H
可寻址片外
ROM
64K
字节FFFH
000H
可寻址片内
Flash
ROM
4K
字节
89C51
7FH
00H
片内 RAM
128字节
FFH
80H
小结
,单片微机原理及应用,教学课件
OVER !