第2章 AT89S51单片机原理与基本应用系统(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机实用教程

第2章AT89S51单片机原理与

基本应用系统

本章主要内容

1、单片机的内部结构与引脚功能

2、单片机存储器空间配置与功能

3、汇编语言指令格式与内部RAM的操作

指令

4、单片机I/O输入输出端口结构及工作原理

5、单片机基本应用系统

一、AT89S51单片机内部结构(1)一个8位的CPU;

(2)一个片内振荡器及时钟电路;

(3)4KB的Flash ROM;

(4)128B的内部RAM

(5)可扩展64KB外部ROM和外部

RAM的控制电路;

(6)两个十六位的定时/计数器;

(7)26个特殊功能寄存器(双数据

指针);

(8)4个8位的并行口;

(9)一个全双工的串行口;

(10)5个中断源,两个外部中断,

三个内部中断;

(11)内部硬件看门狗电路;

(12)一个SPI串行接口,用于芯片

的在系统编程(ISP)。

二、AT89S51单片机引脚功能

1、电源

VCC(P40)——芯片电源,接+5V。VSS(P20)——接电源地。

2、时钟

XTAL1(P19)——晶体振荡电路的反相器

输入端

XTAL2(P18)——晶体振荡电路的反相器

输出端。

使用内部振荡电路时,该引脚外接石英晶体和补偿电容。使用外部振荡输入时从XTAL2输入,此时XTAL1需接地。

3、控制

控制引脚有4个,先学习其中的两个。

(1)RST/VPD——复位/备用电源

RST复位功能是单片机正常工作必不可少的,因为复位可以使单片机从程序的开头运行,使单片机按照人们设计的程序运行,在单片机系统上电开始工作,或单片机系统由于外界干扰偏离正常运行,都需要复位。AT89S51单片机是高电平复位,只要在该引脚上一段时间(两个机器周期以上)的高电平,单片机就复位。在正常运行程序时该引脚为低电平。

VPD功能是在VCC掉电情况下,该引脚接备用电源,向片内的RAM供电,使RAM中的数据不丢失。

3、控制

(2)EA/VPP——内外ROM选择/EPROM编程电源在通常的应用中EA功能是作为内部和外部ROM的选择端。当EA=1,CPU从芯片内部的ROM中取指令运行,但超过4KB范围的程序,也从外部扩展的ROM中取得。反之当EA=0时,只从芯片外部扩展的ROM中取指令运行。在绝大多数的应用中,4KB空间范围足够存放程序,一般都选择内部ROM,将EA接高电平。

VPP功能是在我们要把程序下载到内部ROM中才用到的功能,只有设计制造编程器时考虑,一般情况用不到。

4、I/O口

AT89S51单片机有4个8位的并行口,分别称为P0口、P1口、P2口和P3口,共32个引脚。

单片机就是通过这些口线对外部电路进行控制和检测。它们的详细结构原理和功能在本章第三节中介绍。

三、AT89S51单片机存储空间配置

AT89S51单片机存储器结构采用的是哈佛型结构,程序存储器(ROM)和数据存储器(RAM)是分开的,有各自的寻址系统和控制信号,分别用不同的指令操作。ROM用来存放我们编写的程序和常数表格。数据存储器用来存放程序运行的数据和结果。ROM和RAM都分为内部和外部。

内部ROM (4KB)EA=1

外部ROM (4KB)EA=0

外部ROM (60KB)

内部RAM 128B

SFR (21个)

外部RAM (64KB)

0000H 0000H 0000H

0FFFH

0FFFH

1000H

FFFFH

FFFFH

FFH

00H

7FH

80H MOVC 指令操作

MOV 指令操作

MOVX 指令操作

ROM 地址空间RAM 地址空间

1、程序存储器(ROM)

不管是内部的还是外部的ROM,开头的

0003H~002AH空间地址是中断源的入口地址区,是专用单元,一般情况下用户不能用来存放其它

程序。

CPU是根据PC(程序计数器)值从ROM中取指令来执行的。CPU每从ROM中读取一个字节,自动执行(PC)+1→PC,即PC指向下一个地址空间,一般情况下CPU是按ROM地址空间顺序从小到大依次执行。只有执行的指令是转移类指令,才根据转移类指令所指示的新地址,调整PC值,然后根据新的PC值从对应的地址空间中取指令来执行。

当调用子程序或中断发生时,PC值也会改变。

2、内部数据存储器(内RAM )

AT89S51单片机内部有128B 字节划分为三部分:工作寄存器区、位寻址区和数据缓冲区。

Cy

AC

F0

RS1RS0OV

F1

P

0区

1区2区

3区位寻址

区数据缓冲区

工作寄存器区

8位整体操作

位寻址区

8位整体操作、位操作

堆栈与数据缓冲区8位整体操作

00~07H 08~0FH 10~17H

18~1FH 20~2FH 位地址

D7

D0

PSW

07H 06H 05H 04H 03H 02H 01H 00H

D7

D0

20H (字节地址)

(R0~R7)

30~7FH

相关文档
最新文档