保捱科技网
您的当前位置:首页微机原理课件:第二章 MCS-51单片机内部结构(8031、8051、8751)

微机原理课件:第二章 MCS-51单片机内部结构(8031、8051、8751)

来源:保捱科技网
第二章 MCS-51单片机硬件结构(8031、8051、8751)

§2-1 MCS-51机主要功能

8位CPU

20多个特殊功能寄存器 5个中断源(可屏蔽中断),2个优先级。 有较强的位处理功能 振荡器和时钟电路

4K字节的程序存贮器(ROM或EPROM) 128字节的RAM

4个并行I/O口,32线。(可控制) 2个16位定时/计数器(可编程控制) 另外:1个串行I/O口(2线)

片外可寻址的存贮器空间 程序存贮器(ROM):K. 数据存贮器(RAM):K

§2-2 MCS-51机引脚

P3~P0:四个并行I/O口线,共32线

XTAL1 XTAL1、XTAL2:芯片内部振荡电路输入/ XTAL2 P0 输出端 RESET EA:存储器选择信号 EA P2 ALE:地址锁存信号

ALE PSEN:程序存储器器读选择 PSEN P1 VCC VSS P3 RESET:复位信号 VCC、VSS:电源端

§2-3 CPU

一、算术逻辑运算部件ALU

算术运算:加、减、乘、除

功能:对8位无符号数进行 逻辑运算:与、或、异或、取反、清0、移位 位处理功能:与、或、置位、清0、取反、检测等

二、专用寄存器

MCS-51单片机中有0~255等256个内部存贮器(除内部程序存贮器之外)地址。MCS-51有128个RAM单元。有20多个特殊功能寄存器单元(都是8位)。RAM占用00H~7FH地址。余下的地址中部分提供给特殊功能寄存器。 1、 累加器A (E0H) ① 使用频率高。

② 算术运算和逻辑运算必用。

③ 存放指令中的操作数和运算中部结果。

2、 寄存器B (F0H)

① 存放乘、除法指令中的被乘数和被除数。 ② 存放乘积的高位字节或除法的余数。 ③ 作一般的寄存器。

3、 程序状态字PSW (D0H)

D7 ~ D0 1 (DOH) Cy Ac Fo RS RS0 OV - P

① Cy ----- ALU 操作结果最高位(D7位)进位或错位标志。

位处理操作中作位累加器

② Ac ----- ALU操作结果D4进位标志(半进位标志);CPU自用(用于BCD码操作) ③ Fo ----- 用户标志(由用户定义使用)

(指定当前使用的寄存器组) ④ RS0、RS1 ----- 选择工作寄存器组。

RAM中00H~1FH 32个单元分成四组。定义为工作寄存器组。

寄存器组0 对应RAM地址:00H~07H RS1RS0=00 指定当前工作寄存器组为0组 寄存器组1 对应RAM地址:08H~0FH RS1RS0=01 指定当前工作寄存器组为1组 寄存器组2 对应RAM地址:10H~17H RS1RS0=10 指定当前工作寄存器组为2组 寄存器组3 对应RAM地址:18H~1FH RS1RS0=11 指定当前工作寄存器组为3组 开机时,RS1RS0=00

被指定的工作寄存器组中8个单元,既可以按其地址寻址,也可以分别用R0~R7寻址。

⑤ OV ----- 溢出标志,ALU操作结果超出符号数表示的范围(-128~+127),OV=1。

⑥ P ----- 奇偶标志,ALU操作结果(存放在A中)有偶数个1 P=0

ALU操作结果(存放在A中)有奇数个1 P=1

4、堆栈及栈指针SP (81H) ① 堆栈区在内部RAM中;

② 堆栈区单元向下延伸,既栈顶单元地址>栈底单元地址; ③ 一次堆栈操作只将一个字节二进制数压入或弹出堆栈;

④ 栈指针SP总是指向栈顶单元,既SP的内容 = 栈顶单元地址; ⑤ 栈指针SP是一个8位寄存器(计数器),开机时SP=07H,可更改内容;

⑥ “先进后出”原则。

5、数据指针DPTR (83H,82H) ① 16位的寄存器,可存放一个十六位的二进制数(地址数); ② 可分成DPH(83H)和DPL(82H)2个8位的寄存器; ③ 用于片外存贮器(程序存贮器和数据存贮器)存取数据。

6、其他寄存器

P0 P0口锁存器 TMOD 定时/计数器方式控制寄存器 P1 P1口锁存器 TCON 定时/计数器控制寄存器 P2 P2口锁存器 TH0 定时/主数器0 (高字节) P3 P3口锁存器 TL0 (低字节) IP 中断优先级控制寄存器 TH1 定时/计数器1 (高字节) IE 中断允许控制寄存器 TL1 (低字节) SCON 串行控制寄存器 SBUF 串行数据缓冲器 PCON 电源控制寄存器

三、振荡器、时钟电路

MCS51机时钟的产生方式:内部方式和外部方式二种。

1、内部方式:(如右图)片内有反相放大器(作振荡器用) 和时钟电路 ① XTAL1 ---- 片内反相放大器输入端

XTAL2 ---- 片内反相放大器输出端和内部时钟输入端

② 外接定时元件,构成振荡器(时钟信号发生器) 晶振频率:1.2MHZ ~ 12MHZ(晶体或陶瓷谐振器) C:20PF~100PF

XTAL1 当C = 60 ~ 70PF时,振荡器

有较高的频率稳定率。 XTAL2

2、外部方式

MCS51MCS51

外部时(NC)钟信号XTAL2XTAL2 外部时

XTAL1XTAL1 钟信号

HMOS产品 CHMOS产品

XTAL1

XTAL2

时钟电路

15SCM

时钟

8031、8051、8751 80C31、80C51、87C51

§2-4 MCS-51存贮器 (8051为例) 一、存贮器单元空间

(MCS-51)存贮器空间有四种

1、128个单元的RAM(地址00H~7FH),特殊功能寄存器(地址80H~FFH中能被8整除的地

址数及81H、82H、83H、H、8CH、8AH、8DH、8BH、98H、97H)

2、片内4KROM(程序存贮器) 地址:0000H~0FFFH

3、片外程序存贮器 K 地址:0000H~FFFFH

4、片外数据存贮器 K 地址:0000H~FFFFH

二、片内存贮器位空间

1、RAM中位空间

单元地址: ( 位地址) D7 D6D5D4D3D2D1D0

20H 07H ~ 00H 21H 0FH ~ 08H

. . . . . . 2FH 7FH ~ 78H

2、特殊功能寄存器。(80H~FFH中能被8整除单元)

单元地址: FOH B 位地址: F7H~F0H

EOH A(或ACC) E7H~E0H DOH PSW D7H~D0H

B8H IP BDH~B8H

B0H *P3 B7H~B0H A8H IE AFH~A8H A0H *P2 A7H~A0H 98H SCON 9FH~98H 90H *P1 97H~90H 88H TCON 8FH~88H 80H *P0 87H~80H

详见教材

128位 位存贮 空间

三、 程序存贮器的寻址。(8051为例)

1、当EA =1时,CPU使用片内存贮器(4K),PC值=0000~0FFFH(4095);

当PC值≥1000H(4096),CPU自动从1000H单元起使用外部程序存贮器。 2、EA =0时,CPU从0000H单元起使用外部程序存贮器。

。 注:8031内部无ROM,故EA必须接低电平(地)

§2-5 并行I/O口 一、 I/O口结构

片内有P0、P1、P2、P3四个并行的I/O口,共32线。结构见教材P23、P22图2.5。

以P1口为例介绍结构。

地址/数据

Vcc

控制

读锁存器

T0

P0.X

引脚

内部总线D P0.XQ

T1 锁存器

MUX写锁存器QCL

读引脚

P0口位结构

读锁存器

Vcc

内部总线D P1.XQP1.X 引脚锁存器 写锁存器QCL

读引脚

P1口位结构

读锁存器

地址控制

Vcc

内部总线写锁存器

D P2.XQCL

锁存器

MUX

P2.X引脚

Q读引脚

P2口位结构

读锁存器

第二输出功能

Vcc

内部上拉电阻

内部总线写锁存器

D P3.XQCL

锁存器

P3.X引脚

Q读引脚

第二输入功能

P3口位结构

二、功能

1、各口的8根I/O可同时使用,作8位并行I/O线。

可各自使用,作I/O线。

2、输出通过写I/O口锁存器(特殊功能寄存器)进行。

输入时,锁存器必须置1。

3、P2和P0一般用作外部地址总线和数据总线。

P2口提供(十六位地址数)高八位地址,P0口提供低八位地址和输入、输出数据。低八位地址和数据读/写分时复用P0口。

4、作外部地址和数据总线时:

P2口的锁存器内容不变,输出地址操作完,P2口又输出原锁存器内容;

P0口的锁存器置1,保证外部地址/数据总线操作完,P0输出处于高阻状态。 5、当P3口的锁存器内容=1时,P3口具有特殊变异功能。

P3.0 RXD ---- 串行(I/O口)数据接收端 P3.1 TXD ---- 串行(I/O口)数据发送端 P3.2 INT0 ---- 外部中断0请求输入端 P3.3 INT1 ---- 外部中断1请求输入端

P3.4 T0 ---- 定时器/计数器0的外部输入端 P3.5 T1 ---- 定时器/计数器1的外部输入端 P3.6 WR ---- 外部数据存贮器写选通(输出端) P3.7 RD ---- 外部数据存贮器读选通(输出端)

6、P0、P2、P3口的第2种功能均由片内控制逻辑自动控制。

三、总线结构

1、总线由地址总线、数据总线和控制总线组成。

2、利用外接锁存器,在ALE信号控制下,将P0口的地址/数据线分开。

地址总线:P2和片外锁存器输出 数据总线:P0口

控制总线: PSEN ----- 程序存贮器读选择线

RD、WR ----- 数据存贮器读/写控制线。(可扩展数据存贮器和片外I/O口)

3、MCS-51机的控制总线中没有I/O读/写线。

§2-6 复位及节电运行方式 一、复位

复位片内复位电路结构框图。 RST

电路

斯密特 触发器1、复位条件:

在振荡器电路工作时,复位输入端RST上,至少保持2个机器(24个振荡)周期为高电平(触发器最低阀值电压)------ 实现一次复位操作。

2、结果:

PC:0000H P0~P3:0FFH TL0:00H A: 00H IP: ×××00000 TH1:00H B: 00H IE:0××00000 TL1:00H PSW: 00H TMOD:00H SCON:00H

SP: 07H TCON:00H PCON:0×××××××

DPTR:0000H TH0:00H

不影响RAM: ① 上电复位 RAM内容为随机值 ② 非上电复位 RAM不变

3、复位电路:

22u

9

+5VRST

1K 100Ω

二、节电工作方式

1、节电控制寄存器PCON (87H)

D1 D0 PD0IDL 冻结方式控制位 分别可由软件置位 掉电方式控制位

正常工作方式时(8051)功耗是125mA

2、冻结方式

① 工作电流↓80%~90%;

② CPU内部保持不变,内部时钟电路、定时器、串行口和中断系统工作; ALE = 0 PSEN = 1 ③ 结束冻结方式: 任何允许的中断请求信号复位 IDL( = 0 )

硬件复位

3、掉电方式

① 工作电流 10mA左右;

② 片内振荡器停止工作 --→ 芯片不工作,片内RAM、 特殊功能寄存器保持原值;

ALE = 0 PSEN = 0 ③ 结束掉电方式:硬件复位。

三、8751单片机

1、MCS-51系列单片机: 8031(或80C31) 片内无ROM

8051(或80C51) 片内有4KROM 8751(或87C51) 片内有4KEPROM

2、8751中4KEPROM可多次写入; 3、有一个可编程保密位。

因篇幅问题不能全部显示,请点此查看更多更全内容