当前位置:首页 >> 小学教育 >>

第2章 - MCS51单片机的结构 - 副本2


第2章

MCS-51单片机的硬件结构
吴彦春 老师讲授

本讲重点:
MCS-51单片机的内部结构; MCS-51单片机的引脚功能; MCS-51单片机的存储器结构。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
1

MCS-51单片机系列<

br />片内存储器(字节) 系列 无 Intel MCS-51 子系列 Intel MCS-52 子系列 ATEML 89C系列 (常用型)

片内ROM
有ROM 有EPROM

片内 RAM
128 字节

定时器 计数器

并行 I/O

串行 I/O

中 断 源

8031 80C31 8032 80C32

8051 80C51
(4K字节)

8751 87C51
(4K字节)

2x16

4x8位

1

5

8052 80C52
(8K字节)

8752 87C52
(8K字节)

256 字节

3x16

4x8位

1

6

1051(1K)/ 2051(2K)/ 4051(4K) 128 (20条引脚DIP封装) 89C51(4K)/ 89C52(8K) (40条引脚DIP封装) 128/ 256

2 2/3

15 32

1 1

5 5/6

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

2

2.1 MCS-51单片机的内部逻辑结构

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

3

2.2 MCS-51单片机的封装与引脚功能

MCS—51系列单片机内部结构简化框图

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

4

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

5

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

6

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
7

(9) (31) (30)

单片机的引脚(电源端)
?

Vcc, GND(Vss): 正电源端与接地端 (+5V/3.3V/2.7V)不同的单片机可以允许不同的 工作电压,不同的单片机表现出的功耗也不同。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

8

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
9

(9) (31) (30)

单片机的引脚(晶振端详见P.29)
?

XTAL1, XTAL2:
通常外接 一个晶振 两个电容
XTAL1

片内振荡电路输入/输出端
也可以由XTAL1端 接入外部时钟, 此时应将XTAL2端 接地:
外部时钟 XTAL1

XTAL2

XTAL2

15~45pfx2

1~12MHz(MCS-51) 0~24MHz(Atmel-89C) (参见图2.12)
武汉理工大学机电学院《单片机应用系统设计》教学课件
10

2013年9月19日星期四

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
11

(9) (31) (30)

(重点) 单片机的引脚(复位端详见P.40)
?

RESET: 复位端(正脉冲有效,宽度?8 mS)

复位使单片机进入某种确定的初始状态:
▼ PC值归零(0000H); ▼ 各个SFR(专用寄存器)被赋予初始值: P0~P3 = 0FFH,Acc = 0,B = 0,TH0=0,TL0=0, TH1=0,TL0=0,SP=7,PSW=0(程序状态字) …… ▼退出处于节电工作方式的停顿状态、退出一切程 序进程、退出程序的死循环,从头开始。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

12

单片机的引脚(复位端第二功能)

VPD——当电源发生故障,电压降低到下限时,备用 电源经此端向内部RAM提供电压,以保护内部RAM 中的信息不丢失。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

13

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
14

(9) (31) (30)

单片机的引脚(EA端)
?

(重点)

EA/Vpp: 寻址外部ROM控制端/编程电源输入端。 低有效,只能访问外部ROM, 片内无ROM时必须接地; 片内有ROM时应当接高电平,可访问内部ROM, 并延续到外部ROM; Vpp:对片内ROM编程时提供25伏电压; 同时,PROG——编程脉冲,低电平有效。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

15

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
16

(9) (31) (30)

单片机的引脚(ALE/PROG端)
?

?

PROG:编程脉冲,低电平有效。 ALE: 地址锁存控制信号,高电平有效。 首先,作为P0口输出的低8位地址锁存; 其次,作外部时钟或外部定时脉冲。 (它是六分之一晶振频率正脉冲)

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

17

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
18

(9) (31) (30)

单片机的引脚(PSEN端)
?

(重点)

PSEN:外部ROM读选通信号(P.14) 寻址外部程序存储器时选通外部EPROM的 读控制端(OE),低电平有效。
D0-D7 P0.0-P0.7 ALE EA PSEN P2.0-P2.4 8D G OE OE A8-A12 锁 存 器 74LS373 CE 8Q A0-A7

单片机
2013年9月19日星期四

EPROM

武汉理工大学机电学院《单片机应用系统设计》教学课件

19

认识单片机的引脚 MCS-51单片机40脚
Vcc, GND 2

XTAL1, XTAL2
RESET/VPD EA/Vpp ALE/PROG PSEN P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

2
1 1 1 1 8 8 8 8
20

(9) (31) (30)

单片机的引脚(I/O端) P.24.表2-1 (重点)

第一功能:作为并口使用 P0.0—P0.7 P1.0—P1.7 P2.0—P2.7 P3.0—P3.7 第二功能: P3.0—P3.7 作为串口使用 (见P.23表2-1)
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
21

2.3 MCS-51单片机的CPU
运算器
负责算术运算和逻辑运算

控制器
负责指挥整个单片机系统各个微操作的同步 运行

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

22

2.3.1 控制器

注意DPTR与PC的区别,详见P.28.倒数第2段。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
23

2.3.2 运算器

算术逻辑单元ALU 累加器ACC 寄存器B 程序状态字PSW(特殊功能寄存器)
CY AC F0 RS1 RS0 OV — P

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

24

2.3.3 布尔处理器

位累加器(CY) 位寻址的数据存储区 位寻址的寄存器区 位寻址的I/O引脚 位操作指令系统

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

25

2.3.4 时钟电路

HMOS型单片机的片内振荡电路
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
26

CHMOS型单片机的片内振荡电路
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
27

使用外部时钟的链接方法
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
28

2.3.5 时序
CPU执行指令时所需控制信号的时间顺 序。 在制造商设计产品时,CPU的时序已经 固定。 CPU发出的时序信号。
一类用于芯片内部各功能部件的控制; 另一类用于芯片外部存储器或I/O端口的控 制,需要通过器件的控制引脚送到片外。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

29

定时单位
节拍——一个振荡周期(用P表示) 状态(用S表示)
经过内部2分频触发器对振荡频率分频产生的连续 两个节拍( 1个状态包含2个拍节); 前半周期称作P1,后半周期称作P2。

机器周期
MCS-51采用固定机器周期的方式; 一个机器周期包含6个状态,即12个拍节,依次记 为S1~S6。因此,机器周期就是振荡脉冲的12分 频。

指令周期——执行一条指令所需的时间
? 可以包含1、2、4个机器周期。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
30

(重点)
振荡电路产生的振荡信号经分频后才能得到各种相关的 时钟信号。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

31

S状态

MCS-51的时序定时单位 节拍、状态、机器周期和指令周期

P节拍

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

32

CPU总是按照一定的时钟节拍与时序工作:

(重点)

振荡周期/时钟周期: Tc=1/晶振频率fosc或外加频率)的倒数 状态周期:Ts=2个时钟周期(Tc)(很少用到此概念) 机器周期:Tm=6个状态周期(Ts)=12个振荡周期(Tc) 指令周期: Ti:执行一条指令所需的机器周期(Tm)数 牢牢记住:振荡周期 = 晶振频率fosc的倒数; 1个机器周期 = 12个振荡周期; 1个指令周期 = 1、2、4个机器周期。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
33

2.4 MCS-51单片机的存储器组织
物理上——4个存储器空间 从用户的角度,即逻辑上——3个存储器 地址空间
程序存储器空间 内部数据存储器地址空间 外部数据存储器空间 访问这3个不同逻辑空间时使用不同的指令

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

34

? ?

?
? ? ?

80C51内部共有256个数据存储单元,通常分为两部分: 低128单元(00H—7FH)和高128单元(80H-FFH) 片内RAM低128字节(00H—7FH)称为内部(片内RAM)存储器 片内RAM前32个单元是工作寄存器区(00H—1FH),分4组(P.35) 片内RAM有128个可按位寻址的位,占16个单元 位地址为:00H—7FH,分布在20H—2FH单元(P.36.表2-4) 片内21个特殊功能寄存器(SFR)中:地址号能被8整除的SFR中的 各位也可按位寻址(P.35图2-10和P.38表2-5) 可寻址片外RAM 64K字节 (0000H—FFFFH) 可寻址片外ROM 64K字节 (0000H—FFFFH) 片内 Flash ROM 4K字节 (000H—FFFH)

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

35

几个有关单片机存储器的概念:
?数据存储器——RAM(Random Access Memory)
?程序存储器——ROM(Read Only Memory) ?闪速存储器——Flash Memory (ATMEL公司的51) ?EPROM——(UV)Erasable Programmable ROM ?EEPROM/E2PROM——Electrical Erasable

Programmable ROM ?静态存储器SRAM——Static RAM (动态存储器DRAM——Dynamic RAM) ?按字节寻址:每个字节(8个位)占一个地址 ?按位寻址:有的存储器每一个位就有一个地址

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

36

ROM和RAM的主要区别: 1、断电后ROM内的信息不丢失 RAM 中的信息立即丢失 2、读/写方式不同

ROM采用特殊方式写入信息,
正常工作是只读方式

RAM正常工作既能读又能写

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

37

(重点)
存储元的概念 半导体存储器由能够表示二进制数“0”和 “1”的、具有记忆功能的半导体器件组成。 能存放一位二进制数的半导体器件称为一个 存储元。 若干存储元构成一个存储单元。 存储容量
存储单元个数×每单元的二进制数位数。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
38

存储器地址的概念

(重点)

内存地址

片选地址

片内地址

高位地址

低位地址

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

39

存储器编址的概念
00 00

(重点)
10 00

0100

0011

0111

1011

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

40

(重点)
00 00 10 00

0100

0011

0111

1011

CS

CS

译 码 器

0 1 0

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

41

存储器编址的概念

(重点)

片选地址

片内地址

高位地址(选片地址) 低位地址(片内地址)

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

42

存储器编址的概念
以6264为例:
A19 A12

(重点)

A0

X X X X X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 片首地址

A19

A12

A0

X X X X X X X 1 1 1 1 1 1 1 1 1 1 1 1 1 片尾地址

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

43

存储器编址的概念
全地址译码
A19 A12

(重点)
A0

1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 片首地址

A19

A12

A0

1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 片尾地址

该6264芯片的地址范围 = F0000H~F1FFFH

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

44

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

45

(重点)

程序存储器
采用只读存储器(ROM)形式 程序存储器空间大小为64KB,地址从 0000H到FFFFH MCS-51系列中有3种形式
无内部ROM型,如8031、8032 4KB内部ROM型,如8051 8KB内部ROM型,如8052

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

46

(重点) 用引脚EA的电平高低来区分是否有内部ROM。
D0-D7 P0.0-P0.7 ALE EA PSEN P2.0-P2.4 8D G 8Q A0-A7

OE
OE A8-A12 锁 存 器 74LS373 CE

单片机

EPROM ( 0000H ~ 0FFFH )

EA=0时,只能使用外部ROM; EA=1时,不仅可以从内部ROM开始使用, 还可以延续使用外部ROM。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
47

(重点)
FFFFH

(64K) 0FFFH
(4K) 0000H 内部
EA=1

外部
0000H
EA=0

0FFFH (4K) 0000H

启动单元
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
48

(重点)
七个具有特殊含义的单元是: 0000H —— 系统复位,PC指向此处;

0003H —— 外部中断0入口
000BH —— T0溢出中断入口 0013H —— 外中断1入口 001BH ——T1溢出中断入口 0023H —— 串口中断入口

牢记!

002BH —— T2溢出中断入口

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

49

2.4.2 内部数据存储器

(重点)

内部数据存储器用8位地址,通常用MOV指令 访问; 外部数据存储器用16位地址,只能用MOVX指 令访问; 数据存储器使用RAM技术,所以二者也通常称 为内部RAM和外部RAM; 内部RAM空间最大为256字节,地址为00H~ FFH; 地址范围的80H~FFH,被各外围功能部件的 寄存器占用,称作特殊功能寄存器区。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

50

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

51

内部数据存储器低128单元区
数据存储器用来存放运算的中间结果、标志位, 及数据的暂存和缓冲等。 分为片内RAM和片外RAM。 8051系列单片机 片内数据存储器最大可寻址256个单元, 片外可寻址16位(64kB)的地址空间,该空间 包括外扩展I/O口的地址,两者统一编址。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

52

(重点)
?

片内RAM 128字节(00H—7FH)
FFH 52子系列才有 的RAM区 80H 7FH 80H FFH

SFR分布在 80H-FFH
其中92个位 可位寻址

用户RAM区

8051 128字节

30H 2FH 20H 1FH 00H

堆栈、数据缓冲

位寻址区 工作寄存器区

所有的RAM区(包括位 寻址区、工作寄存器 区)都可以用于存放 数据,故也称为数据 缓存寄存器
53

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

1.工作寄存器区
?

(重点)

片内RAM前32个单元是工作寄存器区 (00H—1FH)

FFH 52子系列才有 的RAM区 80H 7FH

用户RAM区
30H 2FH 20H 1FH 00H
堆栈、数据缓冲

位寻址区 工作寄存器区

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

54

(重点)
?

片内RAM前32个单元是工作寄存器区 (00H—1FH) 通过设置PSW中的RS1、RS0来选择一组寄存器。
FFH 52子系列才有 的RAM区 80H 7FH 1FH 18H 17H 10H 0FH 08H 07H 06H 05H 04H 03H 02H 01H 00H

工作寄存器区3 工作寄存器区2 工作寄存器区1
R7 R6 R5 R4 R3 R2 R1 R0

用户RAM区
30H 2FH 20H 1FH 00H
堆栈、数据缓冲

位寻址区 工作寄存器区

工 作 寄 存 器 区 0

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

55

内部RAM 的三个区域:
工作寄存器(00H—1FH)
RS1 0 0 1 1 RS0 0 1 0 1 寄存器组 第0组 第1组 第2组 第3组 片内RAM地址 00H~07H 08H~0FH 10H~17H 18H~1FH

一次仅一组,P.28表2-2
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
56

工作寄存器和RAM地址对照表

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

57

2. 位寻址区
?

(重点)

片内RAM中有128个可按位寻址的位。 位地址:00H—7FH 分布在:20H—2FH单元可作一般单元进行字节操作, 也可以对单元中的每一位进行操作。P.25表2.2
FFH

52子系列才有
的RAM区 80H 7FH

用户RAM区
30H 2FH 20H 1FH 00H
2013年9月19日星期四

堆栈、数据缓冲

位寻址区 工作寄存器区

武汉理工大学机电学院《单片机应用系统设计》教学课件

58

(重点)
?

片内RAM中有128个可按位寻址的位。 2FH 7F 7E 7D 7C 7B 7A 79 位地址:00H—7FH 位地址 分布在:20H—2FH单元
FFH 52子系列才有 的RAM区 80H 7FH

78

28H 47 46 45 44 43 42 41 40 27H 3F 3E 3D 3C 3B 3A 39 38 26H 37 36 35 34 33 32 31 30 25H 2F 2E 2D 2C 2B 2A 29 28 24H 27 26 25 24 23 22 21 20

总共 128 个可 按位 寻址 的位

用户RAM区
30H 2FH 20H 1FH 00H
堆栈、数据缓冲

23H 1F 1E 1D 1C 1B 1A 19 18

22H 17 16 15 14 13 12 11 10 21H 0F 0E 0D 0C 0B 0A 09 08
20H 07 06 05 04 03 02 01 00

位寻址区 工作寄存器区

单元地址
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
59

这16个单元(共计128位)的每一位都有一个8位表示的 位地址,位寻址范围为00H~7FH,如表2-2所示P25。 位寻址区的每一个单元既可作为一般RAM单元使用,进 行字节操作,也可以对单元中的每一位进行位操作。 MCS-51布尔处理器的存储空间就是指这个位寻址空间。

D7

D6

D5

D4

D3

D2

D1

D0

47H 46H 45H 44H 43H 42H 41H 40H

位地址
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
60

D7 0

D6 1

D5 0

D4 1

D3 1 0

D2 0 1

D1 1

D0 0

47H 46H 45H 44H 43H 42H 41H 40H

字节 操作

MOV 28H,#56H
SETB 43H CLR 42H 位操作

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

61

(重点)
在平时使用中,“位”有两种表示方式:
?

?

位地址的形式; 存储单元+位的形式。

例如:表2.2中左上角的单元,也就是最后一个单元的 地址可表示为: 7FH——位地址形式; 2FH.7——存储单元+位的形式。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

62

3. 用户RAM区(普通存储区)
?

(重点)

片内RAM剩余的80个单元 (30H—7FH)
FFH 52子系列才有 的RAM区 80H 7FH

用户RAM区

8051 128字节

30H 2FH 20H 1FH 00H

堆栈、数据缓冲

常把堆栈开辟在此区。

位寻址区 工作寄存器区

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

63

4. 堆栈区
堆栈是一种数据结构。 1)堆栈的功用

(重点)

?为子程序调用和中断操作而设立; ?保护断点(PC值)和现场(相关寄存器单元内容); ?数据的临时存放与传输。

2)堆栈的开辟
?只能开辟在内部数据存储器中的任意位置; ?通常放在用户RAM区靠后的地方; ?操作速度快但容量有限。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
64

(重点)
3)堆栈指针(SP) ?无论进栈还是出栈都是对栈顶单元的操作; ?堆栈指针用于指示栈顶; ?SP是一个8位寄存器; ?向上型堆栈进栈时,SP+1,反之SP-1; ?系统复位后,(SP)=07H,堆栈从08H开始; ?堆栈最好开辟在内部RAM的30H~7FH,以免占用宝 贵的寄存器区和位寻址区。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

65

4)堆栈类型 ?有2种类型:向上生长型和向下生长型。 进栈 操作

进栈 操作

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

66

5)堆栈使用方法 ?有2种方法:自动方式和指令方式; ?调用子程序或中断时为自动方式; ?指令方式就是在程序中使用PUSH、POP。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

67

5. 间接寻址区

(重点)

? 使用R0、R1对高于30H的非堆栈区进行间接寻址;

? 52系列的80H~FFH的内部RAM只能用间接寻址。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

68

2.4.3 特殊功能寄存器 (内部RAM高128单元区)
内部数据存储器的 高128单元是为专用寄 存器提供的,因此称为 专用寄存器区,其单元 地址为:80H~FFH。 因这些寄存器的功 能已作专门规定,故而 称为专用寄存器(SFR) 或特殊功能寄存器。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

(重点)

69

1. 专用寄存器简介 (1)累加器A(或ACC) ?用于存放操作数,是ALU数据的一个来源; ?是ALU运算结果的暂存器; ?大部分的数据传输都通过累加器; ?在变址寻址中作变址寄存器用。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

70

(2)B寄存器(简称B) ?乘法操作时:
?运算时为乘数; ?运算后为积的高8位。

?除法操作时:
?运算时为除数; ?运算后为余数。

?其他情况下:
?作为一般的数据寄存器。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

71

(3)程序状态字(简称PSW)

(重点)

?是一个8位的寄存器; ?用于存放指令执行前后的状态信息; ?CY、AC、OV、P位由硬件自动设置; ?F0、RS0、RS1由软件设置; ?CY、F0可作为条件转移判别位。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

72

程序状态字(简称PSW)

(重点)

CY(PSW.7)——进位标志位 ?是进位标志位,是PSW中最常用的; ?加法时,有进位则CY=1,否则CY=0; ?减法时,有借位则CY=1,否则CY=0; ?位操作时,作为传送位或运算位; ?作为循环移位的通路。
2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

73

CY是PSW中最常用的标志位
由硬件或软件置位和清零。 ? 字节运算 (ALU中): 它表示运算结果是否有进位(或借位)。

(重点)

Cy=SUB⊕C8 加法时(SUB=0):有进位 Cy由硬件置“1” 即Cy=1; 无进位 CY被硬件清“0” 即Cy=0。 减法时(SUB=1): 有借位 Cy由硬件置“1” 即Cy=1; 无借位 CY被硬件清“0” 即Cy=0。 ? 位 操 作 ( 布 尔 操 作 ) 时 , CY 作 为 累 加 器 使 用 , 其作用相当于字节操作的累加器ACC。
武汉理工大学机电学院《单片机应用系统设计》教学课件
74

2013年9月19日星期四

在指令中可作为转移的条件
JC rel ; cy=1 转移 JNC rel ; cy=0 转移 位操作指令中做累加器 ANL C, bit ANL C, / bit ORL C, bit ORL C, / bit SETB C CLR C MOV C,bit CPL C MOV bit,C

(重点)

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

75

程序状态字(简称PSW)

(重点)

AC(PSW.6)——半进位标志位 ?加、减运算时:
?低4位向高4位进位或借位时,AC=1; ?否则,AC=0。

?十进制BCD码调整时:
?作为状态判断位。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

76

AC(PSW.6) 辅助进位(或称半进位)标志

当执行加减运算时,其运算结果产生低四位向 高四位进位或借位时, AC由硬件置“1”;否则AC位 被自动清“0”。 AC=SUB ⊕ C4 一般在BCD码运算时,系统用于进行十进制调整。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

77

程序状态字(简称PSW)

(重点)

F0(PSW.5)——用户标志位 ?是一个用户自定义标志位; ?用于软件特殊控制的判别位; ?以该位的信息作为条件转移的条件。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

78

F0(PSW.5) 用户标志位

用户可根据自己的需要对F0位赋予一定的含义, 由用户置位或复位,作为软件标志。

SETB F0
CLR F0

; 置位
; 复位

相当于高级语言中的逻辑变量。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

79

程序状态字(简称PSW)

(重点)

RS1和RS0(PSW.4和PSW.3)——寄存器组选择位 ?用于设定当前通用寄存器组号; ?每次仅能选择一组。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

80

程序状态字(简称PSW)

(重点)

OV(PSW.2)——溢出标志位 ?在加、减运算中,OV=1表示运算结果超出了 累加器A所能表示的范围; ?在乘法运算中,OV=1表示乘积超过255; ?在除法运算中,OV=1表示除数=0,除法操作 不能进行。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

81

OV(PSW.2) 溢出标志位

它反映运算结果是否溢出,溢出时则由硬件将 OV 位置“1”;否则置“0”。只有在补码运算时起 作用。
双进位位法判溢出: OV=C8 ⊕ C7

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

82

溢出和进位是两种不同性质的概念 溢出是指有正负号的两个数运算时,运算结果超出 了累加器以补码所能表示一个有符号数的范围。补码 运算是闭运算。 而进位则表示两数运算最高位(D7)相加(或相 减)有无进位(或借位)。无符号运算是开运算。

因此使用时应加以注意。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

83

程序状态字(简称PSW)

(重点)

P(PSW.0)——奇偶标志位 ?仅统计累加器A中1的个数; ?若1的个数为奇,则P=1; ?若1的个数为偶,则P=0 。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

84

P(PSW.0) 奇偶标志位

P标志表明累加器ACC中1的个数的奇偶性。在每 条指令执行完后,单片机根据ACC的内容对P 位自动 置位或复位。

若累加器ACC中有奇数个“1”,则P=1;

若累加器ACC中有偶数个“1”,则P=0。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

85

(重点)
(4)数据指针(简称DPTR) 这是一个16位的地址指针。

?也可分作两个8位的寄存器使用; ?DPH为高8位; ?DPL位低8位; ?在变址寻址方式中,DPTR为基址寄存器,用 于对存储器进行访问。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

86

2. 专用寄存器的单元寻址

(重点)

有以下几点重要说明:
?这21个可寻址的专用寄存器不连续地分散在 高128单元中,空闲单元不可访问; ?对专用寄存器只能使用直接寻址方式; ?在指令中既可使用寄存器符号表示,也可使 用寄存器地址表示; ?在P3~P0口中,作专用寄存器的是它们的锁 存器。 标示符、名称和地址——详见P.38.表2-5。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
87

3. 专用寄存器的位寻址
21个专用寄存器中有11个可以位寻址。

(重点)

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

88

4. 程序计数器PC

?程序计数器是一个16位寄存器; ?PC的内容为下一条将要执行的指令的地址; ?寻址范围可达64K。

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

89

(重点)
程序计数器PC(Program Counter)
PC 不是一个特殊功能寄存器SFR,但其作用又十 分重要和特殊!!! 特点:

▼它是16位的按机器周期自动增1计数器
▼总指向下一条指令所在首地址(当前PC值) ▼一切分支/跳转/调用/中断/复位等操作的本质 就是:改变PC值

▼PC没有地址是不可寻址的
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
90

2.4.4 外部数据存储器

(重点)

也称作外部RAM,使用MCS-51提供的总线 结构扩展; 数据总线由P0口提供,地址总线由P2口 和P0口分别提供高8位和低8位,控制总 线 由 P3 口 P3.6 、 P3.7 的 第 二 功 能 WR# 、 RD#提供; 外部RAM的地址范围为0000H~FFFFH,共 64KB; 只能使用间接寻址方式和MOVX指令。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件

91

2.5

MCS-51单片机的工作方式

系统设计制造完成、产品交付使用后,第一步 就是上电工作; 为了使系统从确定的状态开始工作,必须进行 内部复位操作,然后进入程序执行方式; 在运行过程中,如果外部干扰或其他因素使系 统处于不正常状态,还需要通过手动按钮或监 视定时器使其复位; 在电源不稳定或由电池供电的场合,需要降低 功耗,启用单片机的低功耗方式; 对于EPROM型单片机,交付使用或软件调试期 间都需要对EPROM编程和校验。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
92

2.5.1 复位方式

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

93

外部复位信号的产生

2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

94

ROM中的特殊单元:
0000H~0002H——系统启动单元(3个)

(重点)

使用时应该在该单元中存放一条无条件转移指令。

牢记! 0003H~002AH——中断向量表单元(40个)
?0003H~000AH——外部中断0中断地址区; ?000BH~0012H——定时/计数器0中断地址区; ?0013H~001AH——外部中断1中断地址区; ?001BH~0022H——定时/计时器1中断地址区; ?0023H~002AH——串行中断地址区。 002BH —— T2溢出中断入口

中断地址区中,一般存放一条无条件转移指令。
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
95

2.5.2

程序执行方式

(重点)

复位信号撤销后,单片机总是从0000H处取 指令并开始执行程序; 从0003H开始,很多存储单元作为中断服务 程序的预留空间,不便使用。所以,通常 在0000H处放一条转移指令,转移到0000H ~FFFFH范围内合适的位置继续执行; 在执行程序的过程中,还会发生中断响应 的情况,打断正常的程序执行流程。但中 断返回后,仍将继续原来的程序。
2013年9月19日星期四

武汉理工大学机电学院《单片机应用系统设计》教学课件

96

作业:
P.50. 3、4、5、6、11、12、13、16、17

END
2013年9月19日星期四 武汉理工大学机电学院《单片机应用系统设计》教学课件
97


相关文章:
第2章 MCS-51单片机的结构及原理 - 副本
第2章 MCS-51单片机的结构及原理 - 副本 隐藏>> 第二章 2.1 MCS-51 单片机的结构 MCS-51 单片机的结构及原理 2.1.1 MCS-51 单片机的内部结构 MCS-51 ...
第2章 MCS-51单片机的结构及原理 - 副本(1)
第2章 MCS-51单片机结构及... 95页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 ...
第2章 MCS-51单片机结构及原理题解
MCS第 2 章 MCS-51 单片机结构及原理 习题 1.MSC-51 单片机内部由哪些功能部件组成,各有什么功能? MSC- 单片机内部由哪些功能部件组成,各有什么功能? 单片机为...
第二章 MCS-51单片机的结构和工作原理
第二章 MCS-51 单片机的结构和工作原理 INTEL 公司生产的 MCS-51 系列单片机以其典型的硬件结构和面向控制的指令系统 ,为 单片机的发展奠定了良好的基础。众多...
第2章 MCS-51单片机组成及结构分析
第2 章 MCS-51 单片机组成及结构分析 MCS-51 系列单片机有一定容量的片内 RAM, 有较强的 I/O 口功能、 系统扩展能力以及 CPU 处理功能。尤其是 MCS-51 所...
第二章 MCS-51单片机结构和原理
第二章 MCS-51单片机结构和原理第二章 MCS-51单片机结构和原理隐藏>> 第二章 MCS-51 单片机结构和原理 2-1 微型计算机功能部件 2-2 微型计算机结构特点 2-3...
第二章 MCS-51单片机的硬件结构答案
第二章 MCS-51单片机的硬件结构答案_计算机硬件及网络_IT/计算机_专业资料。第二章 MCS-51 单片机的硬件结构答案 1 MCS-51 单片机的片内都集成了哪些功能部件?...
第二章 80C51的结构和原理习题及答案
第二章 80C51 的结构和原理习题及答案 1、80C514 单片机在功能上、工艺上、程序存储器的配置上有哪些种类? 答:80C51 单片机在功能上有两种大类: (1) 、...
第二章 80C51单片机内部结构和工作原理
第二章 80C51单片机内部结构和工作原理_信息与通信_工程科技_专业资料。第二章 80C51单片机内部结构和工作原理 单片机内部结构和工作原理本章要点 ? 80C51系列单片机...
第2章- MCS—51单片机基本组成原理
系统设计 第二章 MCS51 单片机基本组成原理 MCS—51 系列单片机包括许多类型,常用的有 8031、8051、8751 以及 80C31、80C51、 87C51 等,它们的内部结构基本...
更多相关标签:
mcs51系列单片机 | mcs51系列单片机原理 | mcs51系列单片机教程 | mcs96系列单片机 | mcs单片机 | mcs52单片机 | mcs51 | mcs51指令集 |