89C51单片机硬件结构和原理

合集下载

89C51单片机硬件结构和原理

89C51单片机硬件结构和原理

目 录第一章 微机基础知识 第 章 89C51单片机的结构和原理 单片机的结构和原理 第 章 89C51指 系统 指 第四章 汇编语言程序 计知识 第五章 中断系统 第六章 定时器及应用 第七章 89C51串行口及通信技术 串行口及通信技术 第八章 单片机小系统片外扩展 附录A 89C51指 系统表 附录 指 参考资料第2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8章 MCS-51单片机的结构和原理 单片机的结构和原理MCS-51单片机的结构 单片机的结构 MCS-51单片机引脚及 单片机引脚及 89C51 储器配置 能CPU时时序 时时序 复 及复 电路 89C51单片机的 单片机的 输出/输入端口结构 输出 输入端口结构 思考题 题 耗工 方式MCS-5令单片机的结构 该.令 MCS-5令单片机的结构该.令.令 MCS-5令单片机概述 MCS-5令单片机 单片机概 MCS-5令单片机内部结构 该.令.该 MCS-5令单片机内部结构MCS-5令单片机概述 该.令.令 MCS-5令单片机概述一组成MCS-51系列单片机简介 系列单片机简 系列单片机89C51单片机结构框图 如图 所示 单片机结构框图 如图2-1所示外部时钟源 外部 件计数振荡器和时序 OSC程序 储器 4KBROM数据 储器 256B RAM/SFR2×16 × 定时器/计数器 定时器 计数器89C51 CPU 64KB 总线 扩展控制器可编程I/O 可编程可编程全双工 串行口内中断 外中断 控制 并行口 串行通信2.1.180C51系列简介 80C51系列简介MCS-51系列 一 MCS-51系列 是Intel公司生产的一个单片 1 MCS-51是Intel公司生产的一个单片 机系列名称 属于这一系列的单片机有多 种,如 ﹡8051/8751/8031 ﹡8052/8752/8032 ﹡80C51/87C51/80C31 ﹡80C52/87C52/80C32等 等2系列生产工艺有两种一是HMOS工艺 高密度短沟道 工艺 高密度短沟道MOS工 一是 工 是CHMOS工艺 互补金属氧化物 艺 是 工艺 的HMOS工艺 工艺 CHMOS是 CMOS和 HMOS的结合 既保 是 和 的结合 持了HMOS高速度和高密度的特点 持了 高速度和高密度的特点 有 CMOS的 的 耗的特点 在产品型号中凡带有母 “ C” 的 即CHMOS 芯 片TTL电平兼容 电平兼容 又CHMOS芯片的电平既 芯片的电平既 CMOS电平兼容 电平兼容3 在 能 和增 型两大类系列单片机有基本型基本型 8051/8751/8031 80C51/87C51/80C31 增 型 8052/8752/8032 80C52/87C52/80C324 在片内程序 储器的配置 系列单片机有 种形式 即掩膜 ROM EPROM 和 ROMLess( 无 片 内 储器) 程序 储器 如 节的掩膜ROM ﹡80C51有4K 节的掩膜 有 节的EPROM 有 ﹡87C51有4K 节的 ﹡80C31在芯片内无程序 储器 在芯片内无程序80C5令型产品资源配置单片机的要能·8 CPU ·4kbytes 程序 储器 储器(ROM) (52 8K) ·256bytes的数据 储器 的数据 储器(RAM) 52有384bytes的RAM 有 的 ·32条I/O口线 条 口线 ·111条指 条指 大部分 单 节指 ·21个专用寄 器 个专用寄定时/计数器 ● 2个可编程定时 计数器 个可编程定时● 5个中断源 个中断源2个优先级 个优先级52有6个 有 个 ●一个全双工串行通信口 ●外部数据 储器寻址空间 ●外部程序 储器寻址空间 ●逻辑操 寻址 能 双列直插40PinDIP封装 ●双列直插 封装 单一+5V电源供电 ●单一 电源供电64kB 64kB●5个中断源的中断控制系统 个中断源的中断控制系统 个全双工UART 通用异步接收发 个全双工 ●1个全双工 的串行I/O口 送器 的串行 口 用于实现单片 机之间或单片机 微机之间的串行 通信 ●片内振荡器和时钟产生电路 石英 晶体和微调电容需要外接◆ CPU 由运算和控制逻辑组成 时 包括 中断系统和部分外部特殊 能寄 器 ◆ RAM 用 放可 读写的数据 如运算的 中间结果 最终结果 及欲显示的数据 ◆ ROM 用 放程序 一些原始数据和表格 并行I/O口 ◆ I/O口 四个 口 四个8 并行 口 既可用 输入 可用 输出 两个定时/记数器 ◆ T/C 两个定时 记数器 既可 工 在定时模 式 可 工 在记数模式2.1.2 MCS-51单片机内部结构 单片机内部结构一 结构图 结构组成一 结构图●由 中央处理单元 CPU 储器 ROM及RAM 和I/O接口组成 接口组成 及 接口 ● MCS-51单片机内部结构如 图2-2 MCS-51单片机内部结构如 所示89C5令单片机内部 89C5令单片机内部 结构图RAM地 地 址寄 器 128B RAMP0.0-P0.7 P0驱 器 驱P2.0-P2.7P2驱 器 驱P0锁 器 锁P2锁 器 锁4KB Flash ROM程序地址 寄 器 B寄 器 寄 器1 暂 器 器2 暂 器 ACC SP 缓冲器 ALU 中断 串行口和定时器 PSEN ALE EA RST 定 时 控 制 指 译 码 器 OSC XTAL1 XTAL2 指 PSW 寄 器 P1锁 器 锁 P1驱 器 驱 P1.0-P1.7 P3锁 器 锁 P3驱 器 驱 P3.0-P3.7 PC DPTR PC增1 增结构组成一 中央处理单元 储器 I/O接口 接口 CPU一● 1 ● 2中央处理单元 CPU运算器 控制器11 2 3 4 5 6运算器8 的 的ALU 8 累 器 器ACC A 8 程序状态寄 器 器PSW 8 寄 器 器B 布尔处理器 2个8 暂 器 个1 运算器令 8 的 的AL栈AL栈AL栈●可对可对44 8 令6令6 数据进行操 数据进行操 数据进行操1 运算器2 8 累 器ACC A它 常 一个运算数 暂 器该它 常 一个运算数 暂 器该进入进入AL栈AL栈的输入端的输入端 另一个来自暂 器 另一个来自暂 器令令的运算数进行运算数进行运算 运算结果又送回运算结果又送回ACC ACC ACC1 运算器3 8 程序状态寄 器PSW指示指 执行 的状态信息供程序查询和判别用和判别用1 运算器4 8 寄 器B在乘除运算时在乘除运算时 用来 放一个操 数 用来 放运算 的一部分结果数 用来 放运算 的一部分结果 如 能做乘除运算时如 能做乘除运算时 通用寄 器1 运算器布尔处理器5 布尔处理器中PS上中专门用于处理 操 的 PS上专门用于处理 操 的的C 累 器累 器1 运算器暂 器6 2个8 暂 器的两个入口处 AL栈的两个入口处AL栈的两个入口处1 程序计数器PC 16 ●由两个由两个88 计数器 计数器PC寻PC寻PC寻 PCL PCL组成组成组成 ●PC PC是程序的 节地址计数器是程序的 节地址计数器是程序的 节地址计数器,,PC PC内容 将要执行的指 地址内容 将要执行的指 地址内容 将要执行的指 地址 ●改变改变PC PC PC内容内容内容,,改变执行的流向改变执行的流向 ●PC PC可可对64KB 64KB的的ROM ROM直接 址直接 址,也可对可对89C5令89C5令89C5令片内片内片内RAM RAM RAM 址 址2 指 寄 器IR 及指 译码器ID ●由PC PC中的内容指定中的内容指定中的内容指定ROM ROM ROM地址地址,取出来的指 指 寄 器 指 寄 器导R 导R 导R送至送至送至导D 导D ,由导D 对指 译码产生一定序列的控制信号, 执行指 所规定的操作 执行指 所规定的操作3 振荡器和定时电路●89C51单片机片内有振荡电路单片机片内有振荡电路,,只需外接石英晶体和频率微调电容 2个30pF 右 右 , , ,其频率范围 其频率范围1.2MHz~24MHz 该信号作 89C51 作的基本节拍即时间的最小单 时间的最小单储器储器程序 储器 ROM 1 程序 储器数据 储器 RAM 2 数据 储器1 程序 储器程序 储器 ROM开始◆地址从0000H开始◆用于 放程序和表格常数用于 放程序和表格常数2 数据 储器数据 储器 RAM ◆片外64kB 0000H ~FFFFH 片内片内256 节 0000H ~00FFH◆ 中00H ~7FH 用于 放运算的中间结果用于 放运算的中间结果 数据暂 及数据缓冲等数据暂 及数据缓冲等 ◆ 128B 的RAM 中有32个 节单元可指定 工 寄 器个 节单元可指定 工 寄 器 ◆片内 有21个特殊 能寄 器个特殊 能寄 器 SFR 它它们 128 节RAM 统一编址统一编址 地址 80H ~FFH 面 细介绍 面 细介绍I/O 接口◆89C5令89C5令有四个有四个有四个88 并行 并行导/O 导/O 导/O接口接口接口P0P0~P左P左 ◆它们都是它们都是((准) 向端口 向端口,, 个端口各有8各有8条导/O 导/O线线◆P0P0--P左P左口四个锁 器同口四个锁 器同口四个锁 器同RAM RAM RAM统一编址统一编址统一编址,,可作 可作 SFR SFR SFR来 址来 址来 址2.2MCS-51单片机引脚及 能2.2.1 MCS-51单片机引脚2.2.2 MCS-51单片机引脚 能2.2.189C51单片机引脚所示89C5令单片机引脚如•89C5令单片机引脚如图该-详所示单片机引脚图89C5189C51单片机引脚图2.2.2 89C51单片机引脚 能电源引脚 Vcc和Vss•一 电源引脚时钟电路引脚 XTAL1和XTAL2• 时钟电路引脚• 控制信号引脚RST ALE PSEN和EA •四 I/O端口P0 P1 P2和P3一 电源引脚Vcc和Vss电源引脚•令.三cc(40脚) 电源端, +5三 •工.三ss(工0脚) 接地端 图该-详时钟电路引脚时钟电路引脚 XTAL1和XTAL2•XTAL2 18脚 接外部晶体和微调电容的一端容的一端 在89C51 片内它是振荡电路 向放大器的输出端 向放大器的输出端,,振荡电路的频率就是晶体固有频率就是晶体固有频率 若需采用外部时钟电路时电路时,,该引脚悬空该引脚悬空 89C51/8031 常 作时 作时,,该引脚应有脉冲信号输出该引脚应有脉冲信号输出•XTAL1 令9令9脚脚 接外部晶体和微调电容的另一端 时钟电路引脚时钟电路引脚 XTAL1和XTAL2容的另一端 在片内它是振荡电路 向放大器的输入端放大器的输入端,,在采用外部时钟时在采用外部时钟时,,该引脚输入外部时钟脉冲该引脚输入外部时钟脉冲控制信号引脚控制信号引脚RST ALE PSEN 和EA•RS标/三PD 9脚RST RST 复 信号输入端复 信号输入端,,高电平有效高电平有效 当 输入端保持两个机器周期的高电平时,就可 完成复 操作就可 完成复 操作•RS标/三PD 9脚三 控制信号引脚控制信号引脚RST ALE PSEN 和EAPD RST RST引脚的第二功能引脚的第二功能引脚的第二功能,,备用电源输入端入端 当 电源当 电源三cc 三cc 三cc 发生故障发生故障发生故障,,降 到 电平规定值时到 电平规定值时,,将+5三+5三电源自动接电源自动接入该引脚入该引脚,, RAM RAM提供备用电源提供备用电源提供备用电源,, 保证RAM RAM中的信息不丢失中的信息不丢失中的信息不丢失,,使得复 后能继续 常运行继续 常运行•ALE/PROG ALE/PROG 详0详0脚脚ALE 控制信号引脚控制信号引脚RST ALE PSEN 和EAALE 地址锁 允许信号端地址锁 允许信号端 常 作时,该引脚 振荡频率的该引脚 振荡频率的令/6令/6令/6固定输出固定输出 脉冲 脉冲 CPU CPU访问片外 储器时访问片外 储器时访问片外 储器时,,该引脚输出信号作 锁 脚输出信号作 锁 88 地址的控制信号信号 它的负载能力 它的负载能力 88个LS LS型型TTL TTL负负载•ALE/PROG ALE/PROG 详0详0脚脚PROG 控制信号引脚控制信号引脚RST ALE PSEN 和EAPROG 是对片内带有是对片内带有4KB EPROM 4KB EPROM 4KB EPROM的的875令编程写入时的编程脉冲输入端编程写入时的编程脉冲输入端•PSEN 29脚控制信号引脚控制信号引脚RST ALE PSEN 和EA▲程序 储器允许信号输出端程序 储器允许信号输出端▲在访问片外ROM 时,定时输出负脉冲作 读片外作 读片外ROM ROM ROM的选通信号的选通信号的选通信号,,接片外ROM 的OE 端▲它的负载能力 它的负载能力 88个LS 型标标L 负载负载•EA/V pp 31脚EA 外部程序 储器地址允许输入端外部程序 储器地址允许输入端 控制信号引脚控制信号引脚RST ALE PSEN 和EA当该引脚接高电平时当该引脚接高电平时,,CPU 访问片内EPROM/ROM 并执行片内程序 储器中的指 ,但当PC 值超过0FFFH 片内ROM 4KB 时,将自动转向执行片外ROM 中的程序中的程序 当该引脚接 电平时当该引脚接 电平时,,CPU 只访问片外EPROM/ROM 并执行外部程序 储器中的程序•EA/V pp 31脚 三 控制信号引脚控制信号引脚RST ALE PSEN 和EA pp 对875令875令片内片内EPROM 固化编程时固化编程时,,编程电压输入端编程电压输入端 令工令工--工令三工令三四 I/O I/O端口端口端口P0P0P0 P令P令 P该P该和和P详•令 准双向•该 P0P0口口•详 P 令口•4 P 该口•5 P 详口1 准双向当导/O 导/O口作 输入时口作 输入时口作 输入时,,应先向 口锁 器写入全令锁 器写入全令, 时该口引脚浮空浮空,,可作高阻抗输入可作高阻抗输入。

第2章 89C51单片机硬件结构和原理 (单片机原理课件)

第2章  89C51单片机硬件结构和原理 (单片机原理课件)

返回
单片机原理及接口技术
1、准双向 当I/O口作为输入时,应先向此口锁存器写入 全1, 此时该口引脚浮空,可作高阻抗输入。
17:43
返回
单片机原理及接口技术
2、P0口:
P0口可作为一个8位数据准双向输入/输出口;
在CPU访问片外存储器时,P0口为分时复用的
低8位地址总线和8位数据总线。
17:43
3、片内4KB程序存储器Flash ROM(4KB): 用以存放程序、一些原始数据和表格。但有一些单片机内
部不带ROM/EPROM,如8031、8032、80C31等。
4、四个8位并行I/O(输入/输出)接口 P0~P3: 每个口可以用作输入,也可以用作输出。
17:43
返回
单片机原理及接口技术
5、两个或三个定时/计数器: 每个定时/计数器都可以设置成计数方式,用以对外部 事件进行计数,也可以设置成定时方式,并可以根据 计数或定时的结果 实现计算机控制。 6、一个全双工UART的串行I/O口: 可实现单片机与单片机或其它微机之间串行通信。 7、片内振荡器和时钟产生电路: 但需外接晶振和电容。 8、五个中断源的中断控制系统。 9、具有节电工作方式:
(3)8位程序状态寄存器PSW: (4)8位寄存器B:
(5)布尔处理器: (6)2个8位暂存器:
17:43
返回
单片机原理及接口技术
1)运算器 (1)8位的ALU: 可对4位、8位、16位数据进行操作。
17:43
返回
单片机原理及接口技术
(2)8位累加器ACC(A): • 它经常作为一个运算数经暂存器2进入ALU 的输入端,与另一个来自暂存器1的运算数 进行运算,运算结果又送回ACC。
17:43

第2章 89C51单片机硬件结构和原理

第2章 89C51单片机硬件结构和原理

2.累加器A 使用最频繁的寄存器,可写为Acc。“A”与“Acc” 书写上 的差别,将在第3章介绍。
作用如下:
(1)ALU单元的输入数据源之一,又是ALU运算结果存放单元。 (2)数据传送大多都通过累加器A,相当于数据的中转站。为 解决“瓶颈堵塞”问题,AT89S51增加了一部分可以不经过 累加器的传送指令。
18
PSW中各个位的功能: (1)Cy(PSW.7)进位标志位
可写为C。在算术和逻辑运算时,若有进位/借位,Cy=1;
否则,Cy=0。在位处理器中,它是位累加器。 (2)Ac(PSW.6)辅助进位标志位 在BCD码运算时,用作十进位调整。即当D3位向D4位产生进 位或借位时,Ac=1;否则,Ac=0。 (3)F0(PSW.5)用户设定标志位 由用户使用的一个状态标志位,可用指令来使它置1或清0, 控制程序的流向。用户应充分利用。
端(12-21V)。
4、I/O端口P0、P1、P2和P3 准双向的含义:
当I/O口作为输入时,应先向此口锁存器写入全1, 此 时该口引脚浮空,可作高阻抗输入。
1)P0口:用作通用的I/O口;当外扩存储器及I/O接口芯片时,P0口作为低8位地址 总线及数据总线的分时复用端口。 2)P1口:用作通用的I/O口 3)P2口:用作通用的I/O口;当外扩存储器及I/O接口芯片时,P2口作为高8位地址 总线 4)P3口:用作通用的I/O口;每个引脚有第二功能
图2-6 高128字节RAM(SFR区)
1、堆栈指针SP
堆栈指针SP(8位),可指向片内RAM00H~7FH的任何单元。系统 复位后,SP指向07H的RAM单元,所以入栈的第一个数据位于08H单元。

堆栈:在片内RAM区专门开辟的一个区域,数据的存取是按“后进先

AT89C51单片机的基本结构和工作原理

AT89C51单片机的基本结构和工作原理

A T89C51单片机的主要工作特性:·内含4KB的FLASH存储器,擦写次数1000次;·内含28字节的RAM;·具有32根可编程I/O线;·具有2个16位可编程定时器;·具有6个中断源、5个中断矢量、2级优先权的中断结构;·具有1个全双工的可编程串行通信接口;·具有一个数据指针DPTR;·两种低功耗工作模式,即空闲模式和掉电模式;·具有可编程的3级程序锁定定位;AT89C51的工作电源电压为5(1±0.2)V且典型值为5V,最高工作频率为24MHz.AT89C51各部分的组成及功能:1.单片机的中央处理器(CPU)是单片机的核心,完成运算和操作控制,主要包括运算器和(1)运算器运算器主要用来实现算术、逻辑运算和位操作。

其中包括算术和逻辑运算单元ALU、累加器ACC、B寄存器、程序状态字PSW和两个暂存器等。

ALU是运算电路的核心,实质上是一个全加器,完成基本的算术和逻辑运算。

算术运算包括加、减、乘、除、增量、减量、BCD码运算;逻辑运算包括“与”、“或”、“异或”、左移位、右移位和半字节交换,以及位操作中的位置位、位复位等。

暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。

ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过内部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。

累加器是CPU使用最频繁的一个寄存器。

ACC既是ALU处理数据的来源,又是ALU运算结果的存放单元。

单片机与片外RAM或I/O扩展口进行数据交换必须通过ACC来进行。

B寄存器在乘法和除法指令中作为ALU的输入之一,另一个输入来自ACC。

运算结果存于AB寄存器中。

(2)控制器控制器是识别指令并根据指令性质协调计算机内各组成单元进行工作的部件,主要包括程序计数器PC、PC增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。

89C51单片机硬件结构与基本原理

89C51单片机硬件结构与基本原理
89C51单片机硬件结构和 基本的原理
1. 89C51单片机结构框图
Flash ROM
bus
89C51
89C5189C51单片机硬件结构和 基本的原理
8位CPU
256字节RAM
4KB Flash ROM
4个8位I/O口
2个定时/计数器
5个中断源
1个全双工串行口
片内振荡器和时钟 产生电路(最高允 许振荡频率为 24MHz)
EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0
1、电源线:VCC(+5V)、VSS(地) 2、振荡电路:XTAL1、XTAL2 3、复位引脚:RST 4、并行口:P0、P1、P2、P3 5、EA:访问程序存储控制信号 6、PSEN:外部ROM读选通信号 7、ALE:地址锁存控制信号
振荡器及时钟电路:提供片内时钟
89C51单片机硬件结构和 基本的原理
2.2 89C51单片机的引脚及功能
89C51单片机硬件结构和 基本的原理
MCS-51单片机信号引脚简介
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
RST RXD/ P3.0 TXD/ P3.1 INT0/ P3.2 INT1/ P3.3 T0/ P3.4
片内RAM:
① 低128B片内RAM ② 高128B片内RAM
0000-007FH 0080-00FFH
SFR:特殊功能寄存器区
89C51单片机硬件结构和 基本的原理
PSW位地址
数据存储器
FFFFH
CY AC F0 RS1 RS0 OV F1 P
1 1 第3区 1 0 第2区 0 1 第1区 0 0 第0区 RS1 RS0 寄存器区

STC89C51单片机硬件结构资料

STC89C51单片机硬件结构资料

0023H —— 串口中断入口
( 002BH —— T2溢出中断入口 )
三、内部数据存储器
物理上分为两大区域:00H ~ 7FH即128B内RAM区
7FH
80H ~ FFH即SFR区。
用户RAM区
数据缓冲区、堆栈区、工作 单元
2FH / 30H
位寻址区 (位地址00H ~ 7FH )
1FH / 20H
PC增1 PC DPTR P1锁存器 P1驱动器 P1.0-P1.7 P3锁存器 P3驱动器 P3.0-P3.7
1、中央处理单元(89C51 CPU) CPU是单片机的核心,是计算机的控制和指挥中心,由运算 器和控制器等部件组成。如图2-2。 运算器 ALU—8位算术和逻辑运算 对4位(半字节)、8位(字节)、16位(双字节)操作 算术运算 -- 加、减、乘、除、加1、减1、BCD数十进制 调整、比较 逻辑运算 -- 与、或、非、异或、求补、移位 TMP1,TMP2 – 8位暂存器 ACC – 8位累加器 累加器ACC经常作为一个操作数经TMP2进入ALU,与 来自TMP1的另一个操作数进行运算,结果存入ACC中 作为89C51内部数据传送的中间寄存器 大部分指令中用注记符A表示,进出堆栈指令时用注记 符ACC表示
一、89C51单片机的基本组成 图2-1所示位89C51带闪存(Flash ROM)单片机的基本结构 框图。
外部时钟 外部事件计数
振荡器和 时序OSC
程序存储器 4KB FlashROM
数据存储器 256B RAM/SFR
2×16位 定 时器/计数器
80C51 CPU
64KB总线 扩展控制器 可编程I/O 可编程全 双工串行口
MCS-51单片机内共有22个特殊功能寄存器,包括PC及SFR。 PC为程序计数器。它是一个双字节寄存器,寻址范围为: 0000H ~ FFFFH,即0 ~ 64KB。

2.1 89C51单片机的内部结构

2.1 89C51单片机的内部结构

4. 数据存储器 (1) 功能: 用于存放运算的中间结果、数据暂存和缓冲、 标志位等。
(2) 编址:
FFH 52子系列才有 FFH
SFR分布在 80H-FFH
其中11个可 位寻址
的RAM区
80H 7FH 80H
普通RAM区
89C51 128字节
30H 2FH 20H 1FH 00H
位寻址区 工作寄存器区
片内RAM前32个单元是工作寄存器区(00H—1FH)
FFH 52子系列才有 的RAM区 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
80H 7FH
2
15
1
5
2/3
32
1
5/6
3. 程序存储器 (1) 功能: 用于存放编好的程序和表格常数。 (2) 编址:
0FFFFH
外部 ROM
1000H 0FFFH 内部 ROM 0000H (EA=1) 外部 ROM (EA=0) 0000H 0FFFH
片内ROM和片外ROM取指的速度相同
0000H 0003H 000BH 0013H 001BH 0023H 002BH
51系列单片机的存储器分为数据存储器和程序存储 器,其地址空间,存取指令和控制信号各有一套。
1. 物理结构
片内程序存储器
程序存储器ROM
89C51存储器
片外程序存储器 片内数据存储器 片外数据存储器
数据存储器ROM
2. 逻辑结构
FFH 特 殊 功 能 寄 存 器 80H 7FH 通用 RAM区 位寻址区 30H 2FH 20H 1FH 0FFFH 工作寄 存器区 0000H 0000H 1000H F0H E0H D0H B8H B0H A8H A0H 98H 90H 88H 80H 特 殊 FFFFH 功 能 寄 存 器 中 位 寻 址 F移位功能;位操作。

第2章 89C51单片机的结构及原理PPT课件

第2章 89C51单片机的结构及原理PPT课件
11
2. 数据存储器
FF
80
SFR RAM
30
位寻址区
20
工作 寄存器 0-3组
FFFF RAM
外部 RAM
00
0000
12
表 2.2 寄存器与RAM 地址对照表
13
表 2.3 RAM中的位寻址区地址表
14
内部数据存储器高128单元
(特殊功能寄存器区)
程序计数器PC 累加器A 寄存器B 状态字寄存器PSW
4
2.3 89C51系列单片机的引脚功能
2.3.1 89C51系列单片机引脚功能 2.3.2 三总线结构
5
图2-3(a)89C51系列单片机的引脚 6
表2.1 P3口的第二功能表
7
2.3.2 三总线结构
图2-3(b)89C51系列单片机功能引脚分类
(总线结构图)
8
2.4 89C51系列单片机的主要组成部分
外部 ROM EA=0
0000
FF
SFR 80 RAM
30 位寻址区
20
工作 寄存器 0-3组
00
FFFF RAM
外部 RAM
0000
10
1. 程序存储器
在程序存储器中有6个单元具有特殊功能: 0000H~0002H:是所有执行程序的入口
地址,89C51复位后,CPU总是从0000H单 元开始执行程序。 0003H:外部中断0入口。 000BH:定时器0溢出中断入口。 0013H:外部中断1入口。 001BH:定时器1溢出中断入口。 0023H:串行口中断入口。
0
1
3组
18H~1FH
R0~R7
堆栈指针SP:按照先进后出、后进先出 的原则存取RAM区域。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1部分 89C51单片机硬件结构和原理1. 89C51单片机片内包含哪些主要逻辑功能部件?答:89C51单片机是个完整的单片微型计算机。

芯片内部包括下列硬件资源:(1)8位CPU;(2)4KB的片内Flash ROM。

可寻址64KB程序存储器和64KB外部数据存储器;(3)256B内部 RAM/SFR;(4)21个 SFR;(5)4个8位并行I/O口P0~P3(共32位I/O线);(6)一个全双工uart的异步串行I/O口,用于实现单片机之间或单片机与PC机之间的串行通讯;(7)两个16位定时器/计数器;(8)5个中断源,两个中断优先级;(9)内部时钟发生器。

2. 89C51的EA端有何用途?答:作外部程序存储器地址允许输入端和固化编程电压输入端。

3. 89C51的存储器分哪几个空间?如何区别不同空间的寻址?答:89C51存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间:(1)64KB的程序存储器地址空间:0000H~FFFFH,其中0000H~0FFFH为片内4KB的Flash ROM地址空间,1000H~FFFFH为外部ROM地址空间;(2)256B的内部数据存储器地址空间,00H~FFH,分为两大部分,其中00H~7FH(共128B单元)为内部静态RAM的地址空间,80H~FFH为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;(3)64KB的外部数据存储器地址空间:0000H~FFFFH,包括扩展I/O地址空间。

MCS-51单片机存储器三类空间地址存在重叠,单片机设计了不同的数据传送指令符号来区分:CPU访问片内、片外ROM指令用MOVC,访问片外RAM指令用MOVX,访问片内RAM 指令用MOV。

4. 简述89C51片内RAM的空间分配。

答:89C51内部256B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区、特殊功能寄存器组区。

各区域的特性如下:(1)00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。

当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。

如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。

(2)20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。

当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。

(3)30H~7FH为堆栈、数据缓冲区。

(4)80H~FFH高128字节的RAM有21个特殊功能寄存器(SFR)。

访问SFR只允许使用直接寻址方式。

其中11个具有位寻址能力,它们的字节地址正好被8整除。

5. 简述布尔处理存储器的空间分配,片内RAM中包含哪些可位寻址单元。

答:20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH;还有80H~FFH高128字节的RAM有11 个SFR具有位寻址能力,它们的字节地址正好被8整除,如PO、P1、P2、P3、TCON、SCON、IE、IP、PSW、A、B。

6. 如何简捷地判断89C51正在工作?答:用示波器看/PSEN端有脉冲输出。

7. 89C51如何确定和改变当前工作寄存器组?答:通过查看PSW的RS0和RS1位确定哪一组工作寄存器为当前工作寄存器组。

通过用户用软件改变RS0和RS1值的组合,以切换当前选用的工作寄存器组。

8. 89C51 P0口用作通用I/O口输入时,若通过TTL“OC”门输入数据,应注意什么?为什么?答:当P0口作输入口使用时,应先向口锁存器写入全1,此时P0口的全部引脚浮空,可作为高阻抗输入。

从P0口硬件图可知,在读入端口引脚数据时,由于输出驱动FET(T2)并接在引脚上,如果FET(T2)导通,就会将输入的高电平拉成低电平,从而产生误读。

所以,在端口进行输入操作时,应先向端口锁存器写入1。

9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令?答:读端口锁存器,使用“读-修改-写”指令,如执行“ANL P0,A”指令,它不直接读引脚上的数据,而是CPU先读P0口D锁存器中的数据;当“读锁存器”信号有效时,三态门缓冲器1开通,Q端数据送入内部总线和累加器A中的数据进行逻辑与操作,结果送回P0端口锁存器。

这样避免错读引脚上的电平信号的可能性。

“读引脚”使用“MOV A,PO”。

10. 89C51 P0~P3口结构有何不同?用作通用I/O口输入数据时,应注意什么? 答:89C51 P0~P3口结构相同之处:P0~P3都是准双向I/O口,做输入时,必须先向相应端口的锁存器写入“1”。

不同之处:P0口的输出级与P1~P3口不相同,它无内部上拉电阻,不能提供拉电流输出,而P1~P3口则带内部上拉电阻,可以提供拉电流输出。

当P0口作通用I/O口使用时,需外接上拉电阻才可输出高电平;但做地址/数据总线时,不需要外接上拉电阻。

P1~P3口作通用I/O口使用时,均不需要外接上拉电阻。

11. 89C51单片机的EA信号有何功能?在使用80C31时,EA信号引脚应如何处理?答:EA/V PP是双功能引脚,功能如下:(1)EA接高电平时,在低4KB程序地址空间(0000H~0FFFH),CPU执行片内程序存储器的指令,当程序地址超出低4KB空间(1000H~FFFFH)时,CPU将自动执行片外程序存储器的指令。

(2)EA接低电平时,CPU只能执行外部程序存储器的指令。

80C31单片机内部无ROM,必须外接程序存储器。

因此,8031的EA引脚必须接低电平。

12. 89C51单片机有哪些信号需要芯片引脚以第2功能的方式提供?答:RXD、TXD、/INTO、/INT1、T0、T1、/WR、/RD这些信号引脚以第2功能的方式提供。

13. 内部RAM低128字节单元划分为哪3个主要部分?各部分主要功能是什么? 答:89C51内部128B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。

各区域的特性如下:(3)00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。

当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。

如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。

(4)20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。

当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。

(3)30H~7FH为堆栈、数据缓冲区。

14. 使单片机复位有几种方法?复位后机器的初始状态如何?答:单片机的复位有上电自动复位和按钮手动复位两种。

使用时应注意,上电复位的最短时间应保证为振荡周期建立时间加上两个机器周期的时间;当单片机运行程序出错或进入死循环时,可用按钮复位来重新启动。

复位后,把PC初始化为0000H,使单片机从0000H单元开始执行程序。

在SFR中,除P0~P3的复位值为FFH、堆栈指针SP为07H、SBUF内为不定值外,其余的寄存器全部清零。

15. 开机复位后,CPU使用的是哪组工作寄存器?它们的地址是什么?CPU如何确定和改变当前工作寄存器组?答:单片机开机复位后,CPU使用的是0组寄存器,0组R0~R7的地址是00H~07H。

通过用户用软件改变RS0和RS1值的组合,以切换当前选用的工作寄存器组。

16. 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?答:程序状态字寄存器PSW:是一个8位寄存器,用来存放当前指令执行后操作结果的某些特征,以便为下一条指令的执行提供依据。

定义格式如下。

其中,CY:进借位标志;AC:辅助进借位标志; F0:软件标志;OV:溢出标志;F1:用户标志位;P:奇偶校验标志; RS1、RS0:工作寄存器组选择(如表所示)。

17. 位地址7CH与字节地址7CH如何区别?位地址7CH具体在片内RAM中的什么位置?答:字节地址是片内RAM的单元地址,而位地址是片内RAM单元的某一位。

7CH字节地址RAM的7CH单元,而7CH位地址是RAM 2FH单元中的D4位。

18. 89C51单片机的时钟周期与振荡周期之间有什么关系?什么叫机器周期和指令周期?答:时钟周期为最基本的时间单位。

振荡周期是晶振的振荡周期,是最小的饿时序单位。

一个时钟周期为振荡周期的2倍。

机器周期则是完成某一个规定操作所需的时间。

指令周期是指执行一条指令所占的全部时间。

通常一个指令周期含1~4个机器周期。

19. 一个机器周期的时序如何划分?答:一个机器周期为6个时钟周期,共12个振荡周期,依次可表示为S1P1、S1P2、…、S6P1、S6P2。

2 0. 什么叫堆栈?堆栈指针SP的作用是什么?89C51单片机堆栈的容量不能超过多少字节?答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构方式处理的。

实质上,堆栈就是一个按照"后进先出"原则组织的一段内存区域。

堆栈指针SP的作用,是用来指示保存内容的存储地址,可指向89C51片内的00H~7FHRAM的任何单元。

89C51单片机堆栈的容量不能超过128个字节。

21. 89C51有几种低功耗方式?如何实现?答:89C51有两种低功耗方式,分别是待机(休闲)方式和掉电方式。

置PCON中的D0位即IDL为“1”,单片机即进入待机(休闲)方式;置D1为即PD为“1”,则进入掉电方式。

22. PC与DPTR各有哪些特点?有何异同?答:PC是16位程序计数器(Program Counter),它不属于特殊功能寄存器范畴,程序员不以像访问特殊功能寄存器那样来访问PC。

PC是专门用于在CPU取指令期间寻址程序存储器。

PC总是保存着下一条要执行的指令的16位地址。

通常程序是顺序执行的,在一般情况下,当取出一个指令(更确切地说为一个指令字节)字节后,PC自动加1。

如果在执行转移指令、子程序调用/返回指令或中断时,要把转向的地址赋给PC。

DPTR是16位数据指针寄存器,它由两个8位特殊功能寄存器DPL(数据指针低8位)和DPH(数据指针高8位)组成,DPTR用于保存16位地址,作间址寄存器用,可寻址外部数据存储器,也可寻址程序存储器。

相关文档
最新文档