第2章+MCS-51单片机结构和时序_1003

霍凯

电话:010-5168.8244

136.0108.0764

邮箱:

khuo@https://www.360docs.net/doc/486373691.html,

第2章MCS-51单片机结构和时序

学习目的及要求

2?了解MCS-51单片机内部结构和引脚功能;

?理解MCS-51单片机工作原理,掌握MCS-51单片机工作方式;?理解MCS-51单片机工作时序、编程和应用。

使用模式来学习和设计单片机应用系统

3 <器件名称>

(1)功能/指标

(2)结构/原理

(3)引脚

(4)寄存器(控制、状态和通用)

(5)工作方式

(6)时序

(7)编程应用

(8)存储器和I/O系统

第2章MCS-51单片机结构和时序

4 2.0MCS-51单片机概述

2.1 MCS-51单片机内部结构

2.2 MCS-51单片机引脚功能

2.3 MCS-51单片机工作方式

2.4 MCS-51单片机时序

2.5 编程和应用

2.6 本章小结

5

MCS是Intel公司单片机系列的符号。Intel公司推出有MCS-48、MCS-51、MCS-96系列单片机。其中MCS-51系列单片机典型机型包括51和52两个子系列。

在51子系列中,主要有8031、8051、875l、89C51四种机型,它们的指令系统与芯片引脚完全兼容,只是片内程序存储器有所不同。

6

n8位CPU

n片内带振荡器及时钟电路

n128B片内数据存储器

n4KB片内程序存储器(8031/80C31无)

n程序存储器的寻址范围为64KB

n片外数据存储器的寻址范围为64KB

n21B特殊功能寄存器

n4×8根I/O线

n1个全双工串行I/O接口,可多机通信

n2个16位定时器/计数器

n中断系统有5个中断源,可编程为两个优先级

n111条指令,含乘法指令和除法指令

n布尔处理器

n使用单+5V电源

7 52子系列的产品主要有8032、8052、8752三种机型。

与51子系列的不同之处在于:片内数据存储器增至256B,片内程序存储器增至8KB(8032/80C32无),有26B的特殊功能寄存器,有3个16位定时器/计数器,有6个中断源。其他性能均与5l子系列相同。其对应的低功耗CHMOS工艺器件分别为80C32、

80C52和87C52。

8

9 Intel 80C51系列产品命名规则

10 Atmel 80C51系列产品命名规则

11 Philips 80C51系列产品命名规则

122.1MCS-51单片机内部结构

MCS-51单片机的基本结构

T0T1

14

15 1.算术逻辑部件

功能:运算器的核心部件,完成算术运算和逻辑运算。

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

逻辑运算:与、或、非、异或

位操作

其它:数据传送、移位、判断、转移等

16

2.定时控制部件

指令寄存器、定时控制逻辑、内部时钟电路功能等。

控制信号

17

程序计数器PC(Program Counter)

※PC不属于特殊功能寄存器,不可访问,在物理结构上是独立的。※PC是一个16位的地址寄存器,用于存放将要从ROM中读出的下一字节指令码的地址,因此也称为地址指针。

※PC的基本工作方式有:

⑴自动加1。CPU从ROM中每读一个字节,自动执行PC+1→PC;

⑵执行转移指令时,PC会根据该指令要求修改下一次读ROM新

的地址;

⑶执行调用子程序或发生中断时,CPU会自动将当前PC值压入堆

栈,将子程序入口地址或中断入口地址装入PC;子程序返回或中断返回时,恢复原有被压入堆栈的PC值,继续执行原顺序程序指令。

18 3.专用寄存器组

专用寄存器主要用来指示当前要执行指令的内存地址、存放操作数、指示指令执行后的状态等。

MCS-51单片机的专用寄存器组主要包括:程序计数器PC、累加器A、程序状态寄存器PSW、堆栈指针SP、数据指针DPTR和通用寄存器B等。

(1)累加器A(Accumulator)

8位特殊功能寄存器。

功能:用来存放操作数或运算结果。

(2)通用寄存器B(General Purpose Register)

8位特殊功能寄存器

功能:专用于乘法或除法,也可用作通用寄存器。

19⑶程序状态字寄存器PSW (Program Status Word) PSW也称为标志寄存器,存放各有关标志。其结构和定义如下:

①Cy—进位标志。

用于表示Acc.7有否向更高位进位。

②AC—辅助进位标志。

用于表示Acc.3有否向Acc.4进位。

20

③RS1、RS0 —工作寄存器区选择控制位。

RS1、RS0 = 00 ——0区(00H~07H)

RS1、RS0 = 01 ——1区(08H~0FH)

RS1、RS0 = 10 ——2区(10H~17H)

RS1、RS0 = 11 ——3区(18H~1FH)

④OV —溢出标志。

表示Acc在有符号数算术运算中的溢出。

⑤P —奇偶标志。

表示Acc中“1”的个数的奇偶性。

⑥F0 、F1 —用户标志。

8051单片机的内部结构

8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: 中央处理器(CPU)是整个单片机的核心 部件,是8位数据宽度的处理器,能处理 8位二进制数据或代码,CPU负责控制、 指挥和调度整个单元系统协调的工作,完 成运算和控制输入输出功能等操作。 ·数据存储器(RAM): 8051内部有128个8位用户数据存储 单元和128个专用寄存器单元,它们是统 一编址的,专用寄存器只能用于存放控制 指令数据,用户只能访问,而不能用于存 放用户数据,所以,用户能使用的的RAM 只有128个,可存放读写的数据,运算的 中间结果或用户定义的字型表。 ·程序存储器(ROM): 8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 ·定时/计数器(ROM): 8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。 ·并行输入输出(I/O)口: 8051共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。 ·全双工串行口: 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以 用作异步通信收发器,也可以当同步移位器使用。 ·中断系统: 8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可 满足不同的控制要求,并具有2级的优先级别选择。 ·时钟电路: 8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051 单片机需外置振荡电容。

单片机第二章答案

单片机内部由哪些部分组成 答:MCS-51单片机主要包括的内部结构有8位的CPU、4KB的ROM存储器、128B 的RAM存储器、两个定时器/计数器、中断系统、4个并行I/O接口、1个串行接口和片内的时钟振荡器。 2.MCS-51单片机存储器的组织结构是怎样的 答:MCS-51单片机的存储器组织采用哈佛结构,即分为相互独立的程序存储器和数据存储器两大空间结构。程序存储器空间由内部ROM存储器和外部ROM存储器组成。数据存储器也分为内部RAM存储器和外部RAM存储器。内部RAM存储器又可划分为工作寄存器区、位寻址区和一般数据RAM区,MCS-51单片机的特殊功能寄存器也实现在内部RAM 区。 3.8051单片机内部的特殊功能寄存器有哪些 答:累加器B寄存器程序状态字堆栈指针数据寄存器指针P1口P0口P2口P3口中断优先级控制器中断允许控制器定时器方式选择定时器控制器 定时器2控制器定时器0高8位定时器串行控制器串行数据缓冲器电源控制器 4.8051的内部数据存储器分为哪几个部分 答:特殊功能寄存器区,位寻址区,用户RAM区,工作寄存器区。 5.MCS-51单片机的工作寄存器有多少个共分为多少个区域如何选择工作寄存器区 答:地址范围在00H~1FH的区域被称为工作寄存器区,共有32个单元,这32个单元又分为4个区域,称为0区、1区、2区和3区,每个区域有8个单元,这8个单元拥有自己的寄存器名称,分别为R0、R1、…、R7。MCS-51单片机在工作过程中只能选定一个区域作为当前活动的工作寄存器区,单片机复位后系统设置0区为当前默认的工作寄存器区,如果用户需要应用其他工作寄存器区,必须通过软件改变寄存器区选择位的值来切换当前工作寄存器区,工作寄存器区选择位是特殊功能寄存器PSW中的RS1和RS0两位。其选择规则

8051单片机的引脚及其功能

今天我们学习8051单片机的引脚及其功能。 8051系列各种芯片的引脚是互相兼容的,8051,8751和8031均采用40脚双列直播封装型式。当然,不同芯片之间引脚功能也略有差异。8051单片机是高性能的单片机,因为受到引脚数目的限制,所以有不少引脚具有第二功能,其中有些功能是8751芯片所专有的。各引脚功能简要说明如下: Vcc(40脚):电源端,为+5V。 Vss(20脚):接地端。 时钟电路引脚XLAL2(18脚):接外部晶体和微调电容的一端。若需采用外部时钟电路时,该引脚输入外时钟脉冲,要检查8051的振荡电路是否正确工作,可用示波器查看XLAL2端是否有脉冲信号输出。 时钟电路引脚XLAL1(19脚):接外部晶体的微调电容的另一端。在片内它是振荡电路方相放大器的输入端。在采用外部时钟时,该引脚必须接地。 RST(9脚):RST是复位信号输入端,高电平有效。当此输入端保持两个机器周期,即24个时钟振荡周期的高电平时,就可以完成复位操作。RST引脚的第二功能是VPD,即备用电源的输入端。当主电源Vcc发生故障降低到低电平规定值时,将+5V电源自动接入RST端,为RAM 提供备用电源,以保证存储在RAM中的信息不丢失,以使电源正常后能继续正常运行。 ALE(30脚):地址锁存允许信号端。当8051上电正常工作后,ALE引脚不断向外输出正脉冲信号,此频率为振荡器频率fosc的1/6。CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。在CPU访问片外数据存储器时,会丢失一个脉冲。平时不访问外存储器时,ALE端也可1/6的振荡频率固定输出正脉冲,因而ALE也可以用作对外输出时钟或定时信号。如果你想看一下8051芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出,如有,则8051基本上是好的。ALE端的负载驱动能力为8个LS型TTL。此引脚的第二功能PROG是对片内带有4K EPROM的8751固化程序时,作为编程脉冲输入端。 PSCN(29脚):程序存储器允许输出信号端。在访问片外程序存储器时,此端口定时输出脉冲作为读片外程序存储器的选通信号。此引脚EPROM的OE端,PSCN端有效,即允许读出片

单片机第二章答案

第二章作业 2.1 8051单片机内部结构主要由哪些部件组成?各部件的主要功能各是什么? 答:8051单片机在一块芯片中集成了CP U、RAM、ROM、定时/计数器、I/O接口等功能部件。 (1)一个面向控制的8位CPU。 (2)一个片内振荡器及时钟电路。 (3) 256字节片内RAM(低128字节做数据存储器,高128字节包含21个特殊功能寄存器SFR)。 (4) 4KB片内存程序存储器ROM。 (5) 4个8位并行I/O接口。 (6)一个全双工串行I/O接口。 (7) 2个16位定时/计数器T0/T1。 (8)为5个中断源配套的两级优先级嵌套的中断结构。 (9)有位寻址功能、适于布尔处理的位处理机。 各部件的主要功能:CPU是单片机的指挥、执行机构,由它读入用户编写的控制程序并逐条执行,主要由运算器和控制器两大部分组成;内振荡器及时钟电路CPU的操作需要精确的定时,这是用一个晶体振荡器产生稳定的时钟脉冲来控制的。MCS-51单片机在通常应用的情况下,使用6MHz或12MHz的振荡频率;RAM 的作用其中低128字节的数据存储器有工作寄存器(00H~1FH),位寻址区,数据缓冲区。高128字节的内部数据存储器单元专用寄存器使用的,其单元地址为80H~FFH为专用寄存器;ROM用于存放编好的程序和表格常数;4个8位并行I/O 接口每个接口中,每个口的每一位口线都包含一个锁存器,一个输出驱动器和输入缓存器;一个全双工串行I/O接口一个发送缓存器,另一个接收缓存器;2个16位定时/计数器T0/T1它们各自由两个独立的8位寄存器组成,共有4个独立的寄存器:TH0,TL0,TH1,TL1。可以对这4个寄存器寻址,但不能把T0,T1当做一个16位寄存器来寻址; 位寻址功能:内部RAM的20H~2FH单元,既可以作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行位操作;布尔处理:能在开光决策、逻辑电路仿真和实时控制方面非常有用。 2.4 8051的振荡周期和机器周期有什么关系?当振荡频率为10MHz时,机器周期是多少? 答:一个机器周期=12个振荡周期;当振荡频率为10MHz时,机器周期是1us。 2.5 8031单片机有很多外接程序存储器时,实际它还有多少条I/O线可以用?当接有外部数据存储器时,还剩下多少条I/O线可以用?

51单片机CPU的内部结构

51单片机CPU的内部结构 在前面的课程中,我们已知道了单片机内部有一个8位的CPU,同时知道了CPU 内部包含了运算器,控制器及若干寄存器。在这节课,我们就与大家一起来讨论一下51单片机CPU的内部结构及工作原理。 从上图中我们可以看到,在虚线框内的就是CPU的内部结构了,8位的MCS-51单片机的CPU内部有数术逻辑单元ALU(Arithmetic Logic Unit)、累加器A (8位)、寄存器B(8位)、程序状态字PSW(8位)、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR(16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。 1、运算器(ALU)的主要功能 A)算术和逻辑运算,可对半字节(一个字节是8位,半个字节就是4位)和单字节数据进行操作。 B)加、减、乘、除、加1、减1、比较等算术运算。 C)与、或、异或、求补、循环等逻辑运算。 D)位处理功能(即布尔处理器)。 由于ALU内部没有寄存器,参加运算的操作数,必须放在累加器A中。累加器A 也用于存放运算结果。 例如:执行指令 ADD A,B 执行这条指令时,累加器A中的内容通过输入口In_1输入ALU,寄存器B通过内部数据总线经输入口In_2输入ALU,A+B的结果通过ALU的输出口Out、内部

数据总线,送回到累加器A。 2、程序计数器PC PC的作用是用来存放将要执行的指令地址,共16位,可对64K ROM直接寻址,PC低8位经P0口输出,高8位经P2口输出。也就是说,程序执行到什么地方,程序计数器PC就指到哪里,它始终是跟蹿着程序的执行。我们知道,用户程序是存放在内部的ROM中的,我们要执行程序就要从ROM中一个个字节的读出来,然后到CPU中去执行,那么ROM具体执行到哪一条呢?这就需要我们的程序计数器PC来指示。 程序计数器PC具有自动加1的功能,即从存储器中读出一个字节的指令码后,PC自动加1(指向下一个存储单元)。 3、指令寄存器IR 指令寄存器的作用就是用来存放即将执行的指令代码。 在这里我们先简单的了解下CPU执行指令的过程,首先由程序存储器(ROM)中读取指令代码送入到指令寄存器,经译码器译码后再由定时与控制电路发出相应的控制信号,从而完成指令的功能。关于指令在单片机内部的执行过程,我们在后面将会以另一节课来进行详细的讲解。 4、指令译码器ID 用于对送入指令寄存器中的指令进行译码,所谓译码就是把指令转变成执行此指令所需要的电信号。当指令送入译码器后,由译码器对该指令进行译码,根据译码器输出的信号,CPU控制电路定时地产生执行该指令所需的各种控制信号,使单片机正确的执行程序所需要的各种操作。 5、地址寄存器AR(16位) AR的作用是用来存放将要寻址的外部存储器单元的地址信息,指令码所在存储单元的地址编码,由程序计数器PC产生,而指令中操作数所在的存储单元地址码,由指令的操作数给定。从上图中我们可以看到,地址寄存器AR通过地址总线AB与外部存储器相连。 6、数据寄存器DR 用于存放写入外部存储器或I/O端口的数据信息。可见,数据寄存器对输出数据具有锁存功能。数据寄存器与外部数据总线DB直接相连。 7、程序状态字PSW 用于记录运算过程中的状态,如是否溢出、进位等。 例如,累加器A的内容83H,执行: ADD A,#8AH ;累加器A与立即数8AH相加,并把结果存放在A中。 指令后,将产生和的结果为[1]0DH,而累加器A只有8位,只能存放低8位,即0DH,元法存放结果中的最高位B8。为些,在CPU内设置一个进位标志位C,当执行加法运算出现进位时,进位标志位C为1。 8、时序部件 由时钟电路和脉冲分配器组成,用于产生微操作控制部件所需的定时脉冲信号在后面的课程中我们将会安排一节课来讲解这些专用的寄存器。

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

第二章单片机的基本结构与工作原理 2·1 80C51系列单片机在片内集成了哪些主要逻辑功能都件?各个逻辑部件的主要功能是什么? 答:80C51系列单片机在片内集成了以下主要逻辑功能部件及分别有如下的主要功能。 (l)CPU(中央处理器):8位 功能:中央处理器由中央控制器与运算器一起构成。中央控制器是识别指令,并根据指令性质控制计算机各组成部件进行工作的部件。 (2)片内RAM:128B 功能:在单片机中,用随机存取存储器(RAM)来存储程序在运行期间的工作变量和数据,所以称为数据存储器。一般,在单片机内部设置一定容量(64B至256B)的RAM。这样小容量的数据存储器以高速RAM的形式集成在单片机内,以加快单片机运行的速度。同时,这种结构的RAM还可以使存储器的功耗下降很多。 (3)特殊功能寄存器:21个 功能:特殊功能寄存器(SFR)是80C51单片机中各功能部件所对应的寄存器,用以存放相应功能部件的控制命令、状态或数据的区域。这是80C51系列单片机中最有特色的部分。现在所有80C51系列功能的增加和扩展几乎都是通过增加特殊功能寄存器(SFR)来达到的。 80C51系列单片机设有128B内部数据RAM结构的特殊功能寄存器(SFR)空间区。除 程序计数器PC和4个通用工作寄存器组外,其余所有的寄存器都在这个地址空间之内。 (4)程序存储器:4KB 功能:80C51单片机的程序存储器用于存放经调试正确的应用程序和表格之类的固定常数。由于采用16位的程序计数器PC和16位的地址总线,因而其可扩展的地址空间为64KB,而且这64KB地址空间是连续、统一的。 (5)并行I/O口:8位,4个 功能:为了满足"面向控制"实际应用的需要,80C51系列单片机提供了数量多、功能强、使用灵活的并行I/O口。80C51系列单片机的并行I/O口,不仅可灵活地选作输人或输出,而且还具有多种功能。例如,它既是I/O口,又是系统总线或是控制信号线等,从而为扩展外部存储器和I/O接口提供了方便,大大拓宽了单片机的应用范围。 (6)串行接口:全双工,1个 功能:全双工串行I/O口,提供了与某些终端设备进行串行通信,或者和一些特殊功能的器件相连的能力;甚至可用多个单片机相连构成多机系统,使单片机的功能更强和应用更广。 (7)定时器/计数器:16位,2个 功能:在单片机的实际应用中,定时器/计数器提供精确的定时,或者对外部事件进行计数。为了减少软件开销和提高单片机的实时控制能力,因而均在单片机内部设置定时器/计数器电路,通过中断,实现定时/计数的自动处理。 (8)片内时钟电路:1个 功能:计算机的整个工作是在时钟信号的驱动下,按照严格的时序有规律地一个节拍一个节拍地执行各种操作的。各种计算机均有自己的固定时序和定时电路。同样,80C51系列单片机内部也设有定时电路,只须外接振荡元件即可工作。外接振荡元件一般选用晶体振荡器,或用价廉的RC振荡器,也可用外部时钟源作振荡元件。近来也有的单片机将振荡元件也集成在芯片内部,这样不仅大大缩小了单片机的体积,同时也方便了使用。 2·2 80C51系列单片机有哪些信号需要芯片引脚以第二功能的方式提供?

51单片机的内部结构

51单片机的内部结构 MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、 并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: ·中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位 二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控 制输入输出功能等操作。 ·数据存储器(RAM): 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据, 所以,用户能使用的的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义 的字型表。 ·程序存储器(ROM): 8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 ·定时/计数器(ROM): 8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。 ·并行输入输出(I/O)口: 8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。 ·全双工串行口: 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。 ·中断系统: 8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。

80C51单片机内部结构和工作原理

第2章80C51单片机内部结构和工作原理 本章要点 80C51系列单片机内部结构 外部引脚功能 存储空间配置和功能 片内RAM结构和功能 特殊功能寄存器的用途和功能 程序计数器PC的作用和基本工作方式 I/O端口结构、工作原理及功能 时钟和时序 复位电路、复位条件和复位后状态 低功耗工作方式的作用和进入退出的方法 §2-1 内部结构和引脚功能 一、 二、引脚功能 40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。

⒈电源: ⑴VCC - 芯片电源,接+5V; ⑵VSS - 接地端; ⒉时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 ⒊控制线:控制线共有4根, ⑴ALE/PROG:地址锁存允许/片内EPROM编程脉冲 ①ALE功能:用来锁存P0口送出的低8位地址 ②PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。 ⑵PSEN:外ROM读选通信号。 ⑶RST/VPD:复位/备用电源。 ①RST(Reset)功能:复位信号输入端。 ②VPD功能:在Vcc掉电情况下,接备用电源。 ⑷EA/Vpp:内外ROM选择/片内EPROM编程电源。 ①EA功能:内外ROM选择端。 ②Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 ⒋I/O线 80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。 P3.0 ——RXD:串行口输入端; P3.1 ——TXD:串行口输出端; P3.2 ——INT0:外部中断0请求输入端; P3.3 ——INT1:外部中断1请求输入端; P3.4 ——T0:定时/计数器0外部信号输入端; P3.5 ——T1:定时/计数器1外部信号输入端; P3.6 ——WR:外RAM写选通信号输出端; P3.7 ——RD:外RAM读选通信号输出端。 §2-1 存储空间配置和功能 80C51的存储器组织结构可以分为三个不同的存储空间,分别是: ⑴64KB程序存储器(ROM),包括片内ROM和片外ROM; ⑵64KB外部数据存储器(外RAM); ⑶256B内部数据存储器(内RAM) (包括特殊功能寄存器)。 80C51存储空间配置图 一、程序存储器(ROM) 地址范围:0000H~FFFFH,共64KB。其中:

8051 单片机的结构和原理

8051 单片机的结构和原理 2.1 51 系列单片机的结构 51 单片机最初是由Intel 公司开发设计的,但后来Intel 公司把51 核的设计方案卖给了几家大的电子设计生产商,譬如SST、Philip、Atmel 等大公司。如是市面上出现了各式各样的但均以51 为内核的单片机,倒是Intel 公司自己的单片机却显得逊色了。这些各大电子生产商推出的单片机都兼容51 指令、并在51 的基础上扩展一些功能而内部结构是与51 一致的,在前一章我们已经提到51 单片机在今后很长一段时间内仍是主流,所以我们的教材将还是以51 核为例给大家进行详细的介绍。 2.1.1 51 系列单片机的结构框图 我们假设读者是已经学完了计算机的组成原理,所以下面出现的有关计算机的专有名词 就不做详细介绍了。 我们知道我们PC 机的CPU 是基于冯诺伊曼的体系结构,然而MCU(单片机)、Dsp(数字信号处理器)都是基于哈佛结构的体系结构。哈佛结构与冯诺伊曼结构有很大的不同,在冯诺伊曼体系结构下只有一个地址空间,ROM 和RAM 可以随意安排在这一地址范围内的不同空间,即ROM 和RAM 地址统一分配。CPU 访问存储器时,一个地址对应唯一的存储单元,可能是ROM,也可能是RAM。而哈佛结构下ROM 和RAM 是分开编址,即程序和数据分开保存,访问时用不同的指令加以区分,并可同时访问,在这样的体系结构下有利于提高指令的执行速度。在后面的章节我们将详细介绍单片机的存储器配置。 图2-1 所示为MCS-51 系列单片机的基本结构框图。 从结构框图我们可以看出在这一小块芯片上,集成了一个微型计算机的各个组成部分。这些部分包括:

51单片机存储器内部结构

MCS-51单片机在物理结构上有四个存储空间: 1、片内程序存储器 2、片外程序存储器 3、片内数据存储器 4、片外数据存储器 但在逻辑上,即从用户的角度上,8051单片机有三个存储空间: 1、片内外统一编址的64K的程序存储器地址空间(MOVC) 2、256B的片内数据存储器的地址空间(MOV) 3、以及64K片外数据存储器的地址空间(MOVX) 在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号。 程序内存ROM 寻址范围:0000H ~ FFFFH 容量64KB EA = 1,寻址内部ROM;EA = 0,寻址外部ROM 地址长度:16位 作用:存放程序及程序运行时所需的常数。 七个具有特殊含义的单元是: 0000H ——系统复位,PC指向此处; 0003H ——外部中断0入口 000BH —— T0溢出中断入口 0013H ——外中断1入口 001BH —— T1溢出中断入口 0023H ——串口中断入口 002BH —— T2溢出中断入口 内部数据存储器RAM 物理上分为两大区:00H ~ 7FH即128B内RAM 和 SFR区。 作用:作数据缓冲器用。 下图是8051单片机存储器的空间结构图

程序存储器 一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。 MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。强制CPU从外部程序存储器读取程序。对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 当=1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。 当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。 8051片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这在使用中应加以注意: 其中一组特殊是0000H—0002H单元,系统复位后,PC为0000H,单片机从

单片机io口工作原理及结构框图

单片机IO口工作原理及结构框图 8051单片机I/O引脚工作原理 一、P0端口的结构及工作原理 P0端口8位中的一位结构图见下图: 由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。 下面,我们先就组成P0口的每个单元部份跟大家介绍一下: 先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数

据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为‘读锁存器’端)有效。下面一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为‘读引脚’的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。 D锁存器:构成一个锁存器,通常要用一个时序电路,时序的单元电路在学数字电路时我们已知道,一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。大家看上图中的D锁存器,D端是数据输入端,CP是控制端(也就是时序控制信号输入端),Q是输出端,Q非是反向输出端。 对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP 没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。多路开关:在51单片机中,当内部的存储器够用(也就是不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器)时,P0 口可以作为通用的输入输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机或者编写的程序超过了单片机内部的存储器容量,需要外扩存储器时,P0口就作为‘地址/数据’总线使用。那么这个多路选

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. 中央处理器 1.单片机的中央处理器(CPU )是单片机的核心,完成运算和操作控制,主要包括运算器和控制器两部分。 振荡器和时钟电路 数据存储器 128字节 程序存储器 14KB CPU 两个16位定时器 计数器 中断 控制 总线扩展控制器 并行可编程 I/O 口 可编程 串行口 内部总线 外部中断 扩展控制 P0 P1 P2 P3 RXD TXD B 寄存AC 暂存器2 暂存器1 片内ROM 地址寄存器 PC 增量器 程序计数器 指令指令定时PSEN ALE

(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增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。AT89C51单片机中,PC是一个16位的计数器,可对64KB程序存储器进行寻址。复位时PC的内容是0000H. (3)存储器 单片机内部的存储器分为程序存储器和数据存储器。AT89C51单片机的程序存储器采用4KB的快速擦写存储器Flash Memory,编程和擦除完全是电器实现。 (4)外围接口电路 AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以及中断系统等。 AT89C51的工作原理: 1.引脚排列及功能 AT89C51的封装形式有PDIP,TQFP,PLCC等,现以PDIP为例。 (1)I/O口线 ·P0口 8位、漏极开路的双向I/O口。 当使用片外存储器及外扩I/O口时,P0口作为低字节地址/数据复用线。在编程时,P0口可用于接收指令代码字节;程序校验时,可输出指令字节。P0口也可做通用I/O口使用,但需加上拉电阻。作为普通输入时,应输出锁存器配置1。P0口可驱动8个TTL负载。 ·P1口 8位、准双向I/O口,具有内部上拉电阻。 P1口是为用户准备的I/O双向口。在编程和校验时,可用作输入低8位地址。用作输入时,应先将输出锁存器置1。P1口可驱动4个TTL负载。 ·P2 8位、准双向I/O口,具有内部上拉电阻。 当使用外存储器或外扩I/O口时,P2口输出高8位地址。在编程和校验时,P2口接收高字节地址和某些控制信号。 ·P3 8位、准双向I/O口,具有内部上拉电阻。 P3口可作为普通I/O口。用作输入时,应先将输出锁存器置1。在编程/校验时,P3口接收某些控制信号。它可驱动4个TTL负载。 (2)控制信号线

单片机内部结构详解

单片机内部结构详解 MCS-51单片机结构 MCS-51系列单片机产品有8051,8031,8751,80C51,80C31等型号(前三种为CMOS芯片,后两种为CHMOS芯片)。它们的结构基本相同,其主要差别反映在存储器的配置上。8051内部设有4K字节的掩模ROM程序存储器,8031片内没有程序存储器,而8751是将8051片内的ROM换成EPROM。由ATMEL公司生产的89C51将EPROM改成了4K的闪速存储器,他们的结构大同小异,本章将对8051单片机的结构作一介绍。 MCS-51单片机组成 MCS-51单片机是在一块芯片中集成了CPU,RAM,ROM、定时器/计数器和多种功能的I/O线等一台计算机所需要的基本功能部件。MCS-51单片机内包含下列几个部件: ◆ 一个8位CPU; ◆ 一个片内振荡器及时钟电路; ◆ 4K字节ROM程序存储器; ◆ 128字节RAM数据存储器; ◆ 两个16位定时器/计数器; ◆ 可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路; ◆ 32条可编程的I/O线(四个8位并行I/O端口); ◆ 一个可编程全双工串行口; ◆ 具有五个中断源、两个优先级嵌套中断结构。

8051单片机框图如图所示。各功能部件由内部总线联接在一起。图中4K(4096)字节的ROM存储器部分用EPROM替换就成为8751;图中去掉ROM部分就成为8031的结构图。 CPU CPU是单片机的核心部件。它由运算器和控制器等部件组成。 1. 运算器 运算器的功能是进行算术运算和逻辑运算。可以对半字节(4位)、单字节等数据进行操作。例如能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存器。 8051运算器还包含有一个布尔处理器,用来处理位操作。它是以进位标志位C为累加器的, 可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其 他可寻址的位之间进行数据传送等位操作。也能使进位标志位与其他可位寻址的位之间进行逻 辑与、或操作。 2. 程序计数器PC 程序计数器PC用来存放即将要执行的指令地址,共16位,可对64K程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。 ?指令寄存器 指令寄存器中存放指令代码。CPU执行指令时,由程序存储器中读取的指令代码送入指令 寄存器,经译码后由定时与控制电路发出相应的控制信号,完成指令功能。 ?定时与控制部件 ①时钟电路 8051片内设有一个由反向放大器所构成的振荡电路,X TAL1和 X TAL2分别为振荡电路的输入和输出端,时钟可以由内部方式产生或外部方式产生。内部方式时钟电路如图2-2所示。 在X TAL1和 X TAL2引脚上外接定时元件,内部振荡电路就产生自激振荡。定时元件通常采用 石英晶体和电容组成的并联谐振回路。晶振可以在1.2MH z到12MH z之间选择,电容值在5-30P F之间选择,电容的大小可起频率微调作用。

九:8051单片机的存储器结构

第九课:8051单片机的存储器结构 MCS-51单片机在物理结构上有四个存储空间: 1、片内程序存储器 2、片外程序存储器 3、片内数据存储器 4、片外数据存储器 但在逻辑上,即从用户的角度上,8051单片机有三个存储空间: 1、片内外统一编址的64K的程序存储器地址空间(MOVC) 2、256B的片内数据存储器的地址空间(MOV) 3、以及64K片外数据存储器的地址空间(MOVX) 在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号。 程序内存ROM 寻址范围:0000H ~ FFFFH 容量64KB EA = 1,寻址内部ROM;EA = 0,寻址外部ROM 地址长度:16位 作用:存放程序及程序运行时所需的常数。 七个具有特殊含义的单元是: 0000H ——系统复位,PC指向此处; 0003H ——外部中断0入口 000BH —— T0溢出中断入口 0013H ——外中断1入口 001BH —— T1溢出中断入口 0023H ——串口中断入口 002BH —— T2溢出中断入口 内部数据存储器RAM 物理上分为两大区:00H ~ 7FH即128B内RAM 和SFR区。

作用:作数据缓冲器用。 下图是8051单片机存储器的空间结构图 程序存储器 一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。 MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。强制CPU从外部程序存储器读取程序。对于内部有ROM 的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 当=1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。 当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。

单片机的基本组成

单片机的基本组成 在讲单片机的组成之前我们先来说一下大家都熟知的计算机 一、计算机的经典结构 在设计计算机时匈牙利籍数学家冯.诺依曼提出的“程序存储”和“二进制运算”的思想。 1、二进制运算决定了计算机的硬件结构。 二进制运算包括二进制算术运算和逻辑运算(逻辑运算的基础是逻辑代数,又称布尔代数)。逻辑量只表示两种不同的状态,可以对应电子线路中的电阻高低、二极管、三极管的通断等。因此,二进制运算决定了计算机可以由电子元器件,特别是集成电路组成。 2、程序存储决定了软件控制硬件工作。因此,计算机的基本结构包括硬件和软件两部分。计算机的工作原理:由输入设备将软件送入存储器,然后由控制器逐条取出存储器中的控制软件,并运行,再将运行结果送到输出设备。 3、计算机的经典结构 根据以上思路,计算机由运算器、控制器、存储器和输入设备、输出设备组成。 图1.1.1 计算机经典结构图 对经典结构中各部分有机组合,就构成了微型计算机。由于各部分的具体电路(元器件及元器件的组合方式)不同,又形成了各种应用形态。 二、微型计算机(Microcomputer)组成及应用形态 1、微型计算机组成 将经典结构中的运算器、控制器组合在一起,再增加一些寄存器等,集成为一个芯片,这个芯片称为微处理器(Microcontroller),即CPU(Center Processing Unit )。这样微型计算机就由CPU、存储器、输入/输出(I/O)接口组成。再配以输入/输出(I/O)设备和软件,就构成了微型计算机应用系统,简称微型计算机。 图1.1.2 微型计算机系统结构图

2、应用形态 (1)系统机(多版机) 微处理器CPU、存储器、I/O端口电路和总线接口等组装在一块主板上,再通过系统总线和外设适配卡连接键盘、显示器、打印机等,再配上系统软件就构成了一个完整的计算机系统。 图1.1.3 微型计算机结构图 这就是办公室、家庭使用的PC机的典型形态。由于较大的存储容量(存储器、硬盘、软盘、光盘等),输入、输出设备齐全,而且软件丰富(系统软件和应用软件),能够进行海量计算和应用系统开发。 (2)单板机 将CPU、存储器、I/O接口芯片和简单的I/O设备等装配在一块线路板上,再配上监控程序(固化在ROM中)就构成了单板机。 图1.1.4 单板机结构图 实验开发系统就是单板机的典型形态:由于有硬件和软件,能独立运行,但I/O设备简单,特别是软件资源少(只有监控程序),不能应用于海量计算和大型应用程序的开发,主要用于计算机原理教学和简单的测试(调试)系统。 三单片机 将CPU、存储器、I/O接口电路集成到一块芯片上,这个芯片称为单片机。

51单片机的CPU结构

51单片机内部有一个8位的CPU,同时知道了CPU内部包含了运算器,控制器及若干寄存器。在这节课,我们就与大家一起来讨论一下51单片机CPU的内部结构及工作原理。 从上图中我们可以看到,在虚线框内的就是CPU的内部结构了,8位的MCS-51单片机的CPU内部有数术逻辑单元ALU(Arithmetic Logic Unit)、累加器A(8位)、寄存器B(8位)、程序状态字PSW (8位)、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR(16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。 1、运算器(ALU)的主要功能 A)算术和逻辑运算,可对半字节(一个字节是8位,半个字节就是4位)和单字节数据进行操作。 B)加、减、乘、除、加1、减1、比较等算术运算。 C)与、或、异或、求补、循环等逻辑运算。 D)位处理功能(即布尔处理器)。 由于ALU内部没有寄存器,参加运算的操作数,必须放在累加器A中。累加器A也用于存放运算结果。例如:执行指令 ADD A,B 执行这条指令时,累加器A中的内容通过输入口In_1输入ALU,寄存器B通过内部数据总线经输入口 In_2输入ALU,A+B的结果通过ALU的输出口Out、内部数据总线,送回到累加器A。 2、程序计数器PC PC的作用是用来存放将要执行的指令地址,共16位,可对64K ROM直接寻址,PC低8位经P0口输出,高8位经P2口输出。也就是说,程序执行到什么地方,程序计数器PC就指到哪里,它始终是跟蹿着程序的执行。我们知道,用户程序是存放在内部的ROM中的,我们要执行程序就要从ROM中一个个字节的读出来,然后到CPU中去执行,那么ROM具体执行到哪一条呢?这就需要我们的程序计数器PC 来指示。

相关文档
最新文档