数据存储器 PO P2 程序存储器 RAM 4KB Flash ROM CPU 特殊功能 (运算器) 寄存器 (控制器) 定时器/计数器 中断 (SFR) XTALI 时器 串行口 16位2个 系统 XTAL2 P3 AT89S51 ALE EA PSEN RESET 图2-1AT89S51单片机片内结构 6
6 图2-1 AT89S51单片机片内结构
P1.0g1 40 ▣Vcc 2.2.1电源及时钟引脚 P1.1□2 39 ▣P0.0 P1.2□3 38 ▣P0.1 Vcc(40脚):+5V电源。 P1.3☐4 37 ▣P0.2 Vss(20脚):数字地。 P1.4▣5 36▣P0.3 MOS/P1.5▣6 35▣P0.4 EA MISO/P1.6□7 34▣P0.5 SCK/P1.7▣8 XLAT1、XLAT2 33▣P0.6 RST▣9 32▣P0.7 P3 RX①/P3.0▣10 AT89S51 31▣EA/VP TX①/P3.1□11 30 ▣ALE/PROG NT0/P3.2口12 29 PSEN NT1/P3.3▣13 28 ▣P2.7 T0/P3.4□14 27▣2.6 T1/P3.5▣15 26▣P2.5 W丞/P3.6□16 25▣P2.4 RD/P3.7□17 24▣P2.3 XTAL2口18 23 口2.2 XTAL1▣19 22 ▣P2.1 Vss□20 21 ▣P2.0 图2-2AT89S51双列直插封装方式的引脚
7 2.2.1 电源及时钟引脚 VCC(40脚):+5V电源。 VSS(20脚):数字地。 EA XLAT1、XLAT2 P3 7 图2-2 AT89S51双列直插封装方式的引脚
D7 D6 D5 D4 D3 D2 D1 DO PSW Cy Ac FO RS1 RSO Ov 力 DOH 表2-2 RS1、RS0与4组工作寄存器区的对应关系 RS1 RSO 所选的4组寄存器 0 0 0区(内部RAM地址00H~-07H) 0 1 1区(内部RAM地址08H0FH) 1 0 2区(内部RAM地址10H-17H) 1 1 3区(内部RAM地址18H~1FH) 程序计数器PC: 是一个独立的16位计数器,不可访问。单片机复位时, PC中内容为0000H,从程序存储器0000H单元取指令,开 始执行程序。 8
8 是一个独立的16位计数器,不可访问。单片机复位时, PC中内容为0000H,从程序存储器0000H单元取指令,开 始执行程序。 程序计数器PC:
P℃中内容变化轨迹决定程序流程。当顺序执行程序时自动 加1;执行转移程序或子程序、中断子程序调用时,自动 将其内容更改成所要转移的目的地址。 PC的计数宽度决定了程序存储器的地址范围。PC为16位, 故可对64KB(=21B)寻址。 2.4AT89S51存储器的结构 存储器的结构特点之一是将程序存储器和数据存储器分开( 哈佛结构),并有各自的访问指令。 存储器空间可分为4类。 9
9 PC中内容变化轨迹决定程序流程。当顺序执行程序时自动 加1;执行转移程序或子程序、中断子程序调用时,自动 将其内容更改成所要转移的目的地址。 PC的计数宽度决定了程序存储器的地址范围。PC为16位, 故可对64KB(=216B)寻址。 2.4 AT89S51存储器的结构 存储器的结构特点之一是将程序存储器和数据存储器分开( 哈佛结构),并有各自的访问指令。 存储器空间可分为4类。 9
2.4.1程序存储器空间 片内和片外两部分。 (1)片内8 KB Flash,编程和擦除完全是电气实现。可用通 用编程器对其编程,也可在线编程。 当片内8 KB Flash存储器不够用时,可片外扩展,最多可扩展 至64KB程序存储器。 存放程序和表格之类的固定常数。片内为8KB的Flash,地址 为0000H~1FFFH。16位地址线,可外扩的程序存储器空间 最大为64KB,地址为2000H~FFFFH。使用时应注意以下问 题: 10
10 2.4.1 程序存储器空间 片内和片外两部分。 (1)片内8KB Flash ,编程和擦除完全是电气实现。可用通 用编程器对其编程,也可在线编程。 当片内8KB Flash 存储器不够用时,可片外扩展,最多可扩展 至64KB程序存储器。 存放程序和表格之类的固定常数。片内为8KB的 Flash ,地址 为0000H~1FFFH。16位地址线,可外扩的程序存储器空间 最大为64KB,地址为2000H~FFFFH。使用时应注意以下问 题: 10