第2章MCS-51单片机的硬件结构 2,1概述 2.2中央处理器CPU 2.3MS-51单片机的内部存储器 2.4MCS-51单片机并行输入/输出口 2.5MCS-51单片机的复位 2.6单片机的几种工作方式 電子工掌出版社 Publishing House of Electronics Inoustry
第2章 MCS-51单片机的硬件结构 • 2.1 概述 • 2.2 中央处理器CPU • 2.3 MCS-51单片机的内部存储器 • 2.4 MCS-51单片机并行输入/输出口 • 2.5 MCS-51单片机的复位 • 2.6 单片机的几种工作方式
2.1概述 2.1.1MCS-51单片机的内部结构框图 单片机主要部件有8个,通过片内总线连接而成: 中央处理器(CPU)、数据存储器(RAM)、程序 存储器( ROM/ EPROM)、并行输入/输出口(PO口 P3口)、串行口、定时/计数器、中断系统及特殊 功能寄存器。 P0.0-P0 P2.0-P2.7 数据 P2口 程序 存佬番 P口 存佬器 CPU Vss G云算部件〕 梓霖 巧能 MTAI 中断寄存器 数器 束统 CSFR> 〔控制部件〕 P1口 P3 P SEN ALE P10-P1.7 P3.0-P3.7 RE SET 图2.1单片机的基本组成框图 ruDasnang nouse or Elecronics Industry
2.1 概述 2.1.1 MCS-51单片机的内部结构框图 单片机主要部件有8个,通过片内总线连接而成: 中央处理器(CPU)、数据存储器(RAM)、程序 存储器(ROM/EPROM)、并行输入/输出口(P0口- P3口)、串行口、定时/计数器、中断系统及特殊 功能寄存器
2.1.2MCS-51单片机的引脚及片外总线结构 1.MCS-51单片机的引脚 MCS-51单片机的封装有两种形式:一种是 双列直插式PDIP( PLASTIC DIP)封装的形式, 另一种是方形封装形式PLC( PLASTIC LEADED CHIP CARRIED),方形封装有44引脚,其中4个 NC为空引脚。HMOS工艺的80C51单片机采用40 引脚的PDIP封装,CHM0s工艺的单片机80C51 除采用PDIP封装外,还采用PLCC封装形式。 40引脚PDIP封装的80C51单片机引脚排列 图如图2.2所示 電子工掌出版社 Publishing House of Electronics Inoustry
2.1.2 MCS-51单片机的引脚及片外总线结构 1.MCS-51单片机的引脚 MCS-51单片机的封装有两种形式:一种是 双列直插式PDIP(PLASTIC DIP)封装的形式, 另一种是方形封装形式PLCC(PLASTIC LEADED CHIP CARRIED),方形封装有44引脚,其中4个 NC为空引脚。HMOS工艺的80C51单片机采用40 引脚的PDIP封装,CHMOS工艺的单片机80C51 除采用PDIP封装外,还采用PLCC封装形式。 40引脚PDIP封装的80C51单片机引脚排列 图如图2.2所示
P0口的P0.0~P0.7引脚(39~32脚) P1口的P1.0~P1.7引脚(1~8脚) P1.0 40 P1.1 39 P2口的P2.0~P2.7引脚(28~21脚) P0.0 F1.2 38 P3口的P3.0~P3.7引脚(10~17脚) 卫0 P1.3 3T=20.2 Vcc(40脚):电源端,接+5V; 11.4 3Pp03 F1.5 5 Vss(20脚):接地端; F1.5 XTAL1(19脚)、XTAL2(18脚):外 P0.5 9Dc51 P0. 接石英晶体、微调电容或振荡信号输 入引脚。 RST/NPD(9脚):复位信号输入端引F:3e 脚。第二功能为备用电源输入端。 I0/34 >/Vpp(31脚):读片内或片外程序1.5 存储器选择端引脚。第二功能为编程 w61 电压输入端。 XT. ALE/PROG〔30脚):低8位地址锁存允许 MTIL1 84554322 信号输出引脚。第二功能为编程脉冲 输入引脚; PSEN(29引脚):读片外程序存储 器选通信号输出端引脚。 图2.2PDIP封装引脚排列 電子工掌出版社
➢ P0口的P0.0~P0.7引脚(39~32脚) ➢ P1口的P1.0~P1.7引脚(1~8脚) ➢ P2口的P2.0~P2.7引脚(28~21脚) ➢ P3口的P3.0~P3.7引脚(10~17脚) ➢ Vcc(40脚):电源端,接+5V; ➢ Vss(20脚):接地端; ➢ XTAL1(19脚)、 XTAL2(18脚):外 接石英晶体、微调电容或振荡信号输 入引脚。 ➢ RST/VPD(9脚):复位信号输入端引 脚。第二功能为备用电源输入端。 ➢ /Vpp(31脚):读片内或片外程序 存储器选择端引脚。第二功能为编程 电压输入端。 ➢ :低8位地址锁存允许 信号输出引脚。第二功能为编程脉冲 输入引脚; ➢ (29引脚):读片外程序存储 器选通信号输出端引脚
2McS-51单片机的片外三总线结构 所谓总线就是连接单片机与系统中各部件的一组公共的 信号线。 (1)地址总线( Address bus,简写AB) 地址线A0~A15共16位,P2口提供高 8位地址A8~A15,P0口经地址锁存器提 PO 供低8位地址A0~A7。片外存储器可寻 址范围达64KB(即=65536个字节)。 改据 90c51 (2)数据总线 Data bus,简写DB) 地址线D0-7共8位,由P0口提供,分 L 时输送低8位地址(通过地址锁存器锁存) 和8位数据信息。 丽丽頭 总 (3)控制总线 ontrol bus,简写CB) 控制总线由P3口的第二功能WR YP3.6)、RD(P3.7)和3根独立的控制 线EA、ALE和RSEN组成。 图23片外三总线结构 Publishing House of Electronics Inoustry
⑴ 地址总线(Address Bus,简写AB) 地址线A0~A15 共16位,P2口提供高 8位地址A8~A15,P0口经地址锁存器提 供低8位地址A0~A7 。片外存储器可寻 址范围达64KB(即=65536个字节)。 ⑵ 数据总线(Data Bus,简写DB) 地址线D0-D7共8位,由P0口提供,分 时输送低8位地址(通过地址锁存器锁存) 和8位数据信息。 ⑶ 控制总线(Control Bus,简写CB) 控制总线由P3口的第二功能 (P3.6)、 (P3.7)和3根独立的控制 线 、ALE和 组成。 WR RD EA PSEN 2.MCS-51单片机的片外三总线结构 所谓总线,就是连接单片机与系统中各部件的一组公共的 信号线。 回上层目录
2.2中央处理器CPU 2.2.1CPU的组成 CPU由运算器、控制器和若干特殊功能寄存器 (如累加器A、B寄存器、程序状态字寄存器PSW 堆栈指针寄存器SP、数据指针寄存DPTR等)组 成能 1.运算器具有一般微机所不具备的位处理功 2.控制器以主振频率为基准产生时钟信号, 掉制取指令、执行指令、存取操作数或运算结果 等操作,并向其它部件发出各种微控制信号,保 证单片机各部分能自动协调地工作。 電子工掌出版社 Publishing House of Electronics Inoustry
2.2 中央处理器CPU 2.2.1 CPU 的组成 CPU由运算器、控制器和若干特殊功能寄存器 (如累加器A、B寄存器、程序状态字寄存器PSW、 堆栈指针寄存器SP、数据指针寄存DPTR等)组 成。 1.运算器 具有一般微机所不具备的位处理功 能。 2.控制器以主振频率为基准产生时钟信号, 控制取指令、执行指令、存取操作数或运算结果 等操作,并向其它部件发出各种微控制信号,保 证单片机各部分能自动协调地工作
2.2.2指令执行的基本过程 1.单片机在工作前,首先必须在存储器 中装入程序。所谓程序,就是为了完成某项 工作,将一系列指令有序地组合,而指令则 是要求单片机执行某种操作的命令。 2.指令分为操作码和地址码两个部分 操作码部分规定了单片机操作类型,而地址 码部分一般是直接或间接地给出了参与操作 的数据的存放地址,所以地址码也可以直接 称为操作数。 電子工掌出版社 Publishing House of Electronics Inoustry
2.2.2 指令执行的基本过程 1.单片机在工作前,首先必须在存储器 中装入程序。所谓程序,就是为了完成某项 工作,将一系列指令有序地组合,而指令则 是要求单片机执行某种操作的命令。 2.指令分为操作码和地址码两个部分, 操作码部分规定了单片机操作类型,而地址 码部分一般是直接或间接地给出了参与操作 的数据的存放地址,所以地址码也可以直接 称为操作数
3.单片机完成每项工作,必须有序地执行一系 列指令。单片机执行一条指令一般分为取指令和 执行指令两个阶段。 从存储器中取出指令,并且对指令进行译码, 以明确该指令执行何种操作,以及操作数的存放 地址(即操作数存放在哪一个单元中),再根据 这个地址获取操作数,这是取指令阶段。 按操作码指明的操作类型对获取的操作数进 行操作(也可称为运算),这是执行指令阶段。 電子工掌出版社 Publishing House of Electronics Inoustry
3.单片机完成每项工作,必须有序地执行一系 列指令。单片机执行一条指令一般分为取指令和 执行指令两个阶段。 从存储器中取出指令,并且对指令进行译码, 以明确该指令执行何种操作,以及操作数的存放 地址(即操作数存放在哪一个单元中),再根据 这个地址获取操作数,这是取指令阶段。 按操作码指明的操作类型对获取的操作数进 行操作(也可称为运算),这是执行指令阶段
4.程序计数器( Program Counter简称PC)是一个16 位的有自动加1功能的计数器。PC没有地址,是不可寻址的, 因此用户不能对它进行读写。 16位PC中的内容总是CPU将要执行的那条指令所存放的 存储单元的首地址。 在单片机复位时,PC中的内容为000,指向第1条要 执行的指令的首地址,在CP从存储单元取指令的过程中, 每取1个字节的内容,程序计数器PC就自动加1,在取完这 条指令后,PC中的内容就是下一条要执行的指令所存放的 存储单元的首地址。 5.在实际应用中,有时CP还要执行程序的转移、子 程序的调用和中断响应等操作,那时PC中的内容不再是上 述情况中简单的加1,而是根据不同的情况自动地被置入或 修改成新的目的地址,从而改变程序的执行顺序。 電子工掌出版社
4.程序计数器(Program Counter简称PC)是一个16 位的有自动加1功能的计数器。PC没有地址,是不可寻址的, 因此用户不能对它进行读写。 ➢ 16位PC中的内容总是CPU将要执行的那条指令所存放的 存储单元的首地址。 ➢ 在单片机复位时,PC中的内容为0000H,指向第1条要 执行的指令的首地址,在CPU从存储单元取指令的过程中, 每取1个字节的内容,程序计数器PC就自动加1,在取完这 条指令后,PC中的内容就是下一条要执行的指令所存放的 存储单元的首地址。 5.在实际应用中,有时CPU还要执行程序的转移、子 程序的调用和中断响应等操作,那时PC中的内容不再是上 述情况中简单的加1,而是根据不同的情况自动地被置入或 修改成新的目的地址,从而改变程序的执行顺序
2.2.3时钟电路 时钟电路用于产生单片机工作所需要的时钟信号。时钟电路框图如图2.4 所示。单片机芯片内部有一个高增益反向放大器,其输入引脚为XTAL1, 输出引脚为XTA2,芯片外部通过这两个引脚接晶体振荡器CY和微调电容器 C1、C2形成反馈电路(通常取值在20~30pF),构成稳定的自激振荡器,振 荡频率范闺通常是1.2MHz~12MHz。振荡脉冲经分频后再为系统所用。 PD是PCON中的控制位,当PD=1时,振荡器停止工作,系统进入低功耗工 作态。 时钟发生器实质上是一个2分频的触发器,其输入来自振荡器,输出为2 相时钟信号,即状态时钟信号,其频率为fosc/2:状态时钟3分频后为ALE信 号,其频率为fosc/6;状态时钟6分频后为机器周期,其频率为fosc/12(0SC 是osi1 lator的缩写)。 振荡器 二分频 CYS XTAL2 f *P1 状态时钟 PD Rf 三分频 C2 R XTAL1 6 机器周期 六分频 子工業出版社 图2.4MCS-51单片机时钟电路框图
2.2.3 时钟电路 时钟电路用于产生单片机工作所需要的时钟信号。时钟电路框图如图2.4 所示。 单片机芯片内部有一个高增益反向放大器,其输入引脚为XTAL1, 输出引脚为XTAL2,芯片外部通过这两个引脚接晶体振荡器CYS和微调电容器 C1、C2形成反馈电路(通常取值在20~30pF),构成稳定的自激振荡器,振 荡频率范围通常是1.2MHz~12MHz。振荡脉冲经分频后再为系统所用。 PD是PCON中的控制位,当PD=1时,振荡器停止工作,系统进入低功耗工 作态。 时钟发生器实质上是一个2分频的触发器,其输入来自振荡器,输出为2 相时钟信号,即状态时钟信号,其频率为fosc/2;状态时钟3分频后为ALE信 号,其频率为fosc/6;状态时钟6分频后为机器周期,其频率为fosc/12(OSC 是osillator的缩写)