文档库 最新最全的文档下载
当前位置:文档库 › 89C51单片机硬件结构和原理

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

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

第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位地址,作间址寄存器用,可寻址外部数据存储器,也可寻址程序存储器。

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

AT89C51单片机的主要工作特性: ·内含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增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。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)控制信号线

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 单片机需外置振荡电容。

第二章 80C51的结构和原理习题及答案

第二章80C51的结构和原理习题及答案 1、80C514单片机在功能上、工艺上、程序存储器的配置上有哪些种类? 答:80C51单片机在功能上有两种大类:(1)、基本型;(2)、增强型; 80C51单片机在生产工艺上有两种:(1)、HMOS工艺(即高密度短沟道MOS 工艺);(2)、CHMOS工艺(即互补金属氧化物的HMOS工艺); 80C51单片机在程序存储器的配置上有三种形式:(1)、掩膜ROM;(2)、EPROM;(3)、ROMLess(无片内程序存储器)。 2、80C51单片机存储器的组织采用何种结构?存储器地址空间如何划分?各地址空间的地址范围和容量如何?在使用上有何特点? 答:80C51单片机存储器的组织采用哈佛结构:存储器在物理上设计成程序存储器和数据存储器两个独立的空间。 基本型单片机片内程序存储器容量为4KB,地址范围是0000H~0FFFH。增强型单片机片内程序存储器容量为8KB,地址范围是0000H~0FFFH。 基本型单片机片内数据存储器均为128字节,地址范围是00H~7FH,用于存放运算的中间结果、暂存数据和数据缓冲。这128字节的低32个单元用作工作寄存器,在20H~2FH共16个单元是位寻址区,然后是80个单元的他通用数据缓冲区。 增强型单片机片内数据存储器为256字节,地址范围是00H~FFH。低128字节的配置情况与基本型单片机相同,高128字节为一般RAM,仅能采用寄存器间接寻址方式访问(而与该地址范围重叠的SFR空间采用直接寻址方式访问)。 3、80C51单片机的P0~P3口在结构上有何不同?在使用上有何特点? 答:80C51单片机各口均由接口锁存器、输出驱动器和输入缓冲器组成,但是结构存在差异:P0、P1口有转换开关MUX,P2、P3口没有;P1~P3口都有上来电阻,但是P0没有。 4个I/O口的使用特点: (1)、P0:P0口是一个多功能的8位口,可按字节访问也可以按位访问。用做通用的I/O口,相当于一个真正的双向口:输出锁存,输入缓冲,但输入是须先将口置1;每根口线可以独立定义输入或输出。用作地址/数据复用总线:作数据总线用时,输入/输出8位数据D0~D7;作地址总线用时,输出低8位地址A0~A7。 (2)、P1:P1口惟一的单功能口,仅能用作通用的I/O口。可按字节访问也可以按位访问,输入时需先输出1,将该口设为输入状态。 (3)、P2:P2口是一个多功能8位口,可按字节访问也可以按位访问。在单片机采用并行扩展方式时,P2口作为地址总线的高8位D8~D15。 (4)、P3:P3口是一个双功能8位口,可按字节访问也可以按位访问。除作I/O口使用(位准双向口)外,每一条接口线还具有不同的第二功能:P3.0:RXD(串行口输入); P3.1:TXD(串行口的输出); P3.2:INT0’(外部中断0输入); P3.3:INT1’(外部中断0输入);

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

第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组

80C51 单片机的硬件结构 思考题及答案

1 、如何理解51单片机存储空间在物理结构上可分为4个,而逻辑上又可划分为3个 答: MCS-51在物理上有四个存储空间: 1、片内程序存储器 2、片外程序存储器、 3、片内数据存储器 4、片外数据存储器。从逻辑上划分有三个存储器地址空间: 1、片内外统一编址的64K字节程序存储器(0000H~0FFFFH) 2、内部256字节数据存储器地址空间(包括128字节片内RAM和128字节的SFR) 3、外部64K字节数据存储器地址空间(0000H~0FFFFH) ) 2 、MCS-51片内RAM的容量8051最大可配置的RAM/ROM容量答: 1)MCS-51片内RAM的容量: 51子系列:128B 52子系列:256B 2)其ROM最大可扩展到64KB 注:片内数据存储区=片内RAM+SFR,51和52子系列的SFR容量都是128B 3 、8051的/PSEN、/RD、/WR的作用 答: 1)/PSEN(外部程序存储器读选通信号): CPU访问片外ROM时,使/PSEN低电平有效,可实现片外ROM的读操作,其他情况下此引脚为高电平封锁状态。 · 2)/RD:外部RAM读信号 3)/WR:外部RAM写信号 4 、ALE线的作用当8051不和RAM/ROM相连时,ALE线的输出频率是多少 答: 1)ALE(地址锁存控制信号): 访问片外ROM,RAM时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存,实现低位地址和数据的分时传送。 不访问片外存储器时,可做为外部时钟使用。 2)当8051不和RAM/ROM相连时,ALE线的输出频率等于时钟周期的倒数

< 5 、MCS-51的工作寄存区包含几个通用工作寄存器组每组的地址是什么如何选用开机复位后,CPU使用的是哪组工作寄存器 答: 1)MCS-51的工作寄存区包含4个通用工作寄存器组 2)第0组通用寄存器区地址:00H~07H 第1组通用寄存器区地址:08H~0FH 第2组通用寄存器区地址:10H~17H 第3组通用寄存器区地址:18H~1FH 3)选择哪个工作寄存器组是通过软件对程序状态字寄存器PSW的第 4、3位进行设置实现的 4 ( 6、MCS-51的内部RAM地址空间是如何安排的共有多少个单元可以位寻址位地址又是如何排列的 答: 1)MCS-51的内部RAM地址的空间安排: 00H~1FH 寄存器区 20H~2FH 位寻址区 30H~7FH 数据缓冲区 80H~FFH 专用寄存器区 2)位寻址的单元个数:16B*8位/B=128位 3)位地址排列方式: | 位地址为:00H~7FH 字节地址:20H~2FH 7 、MCS-51的程序计数器PC是几位寄存器它是否为专用寄存器PC 的内容是什么信息

MCS-51单片机的结构与原理

第1章MCS-51单片机的结构与原理主要内容:典型单片机( MCS-51, MSP430, EM78, PIC, Motorola, AVR )的性能,MCS-51内部结构、特点、工作方式、时序和最小应用系统。为学生后续学习单片机应用系统设计、利用单片机解决工程实际问题打下坚实的基础。重点在于基本概念、组成原理、特点及MCS-51的最小应用系统,难点在于时序。 1.1 典型单片机性能概览 典型单片机有MCS-51、MSP430、EM78、PIC、Motorola、AVR等。MSP430为低功耗产品,功能较强。EM78为低功耗产品,价格较低。PIC为低电压、低功耗、大电流LCD驱动、低价格产品。Motorola是世界上最大的单片机生产厂家之一,品种全、选择余地大、新产品多。其特点是噪声低,抗干扰能力强,比较适合于工控领域及恶劣的环境。AVR为高速、低功耗产品,支持ISP、IAP,I/O口驱动能力较强。 1.2 MCS-51单片机硬件结构及引脚 MCS-51系列单片机都是以Intel公司最早的典型产品8051为核心,增加了一定的功能部件后构成的,因此,本章以8051为主介绍MCS-51系列单片机。 1.2.1 MCS-51单片机的内部结构 MCS-51单片机的组成: CPU(进行运算、控制)、RAM(数据存储器)、ROM(程序存储器)、I/O口(串口、并口)、内部总线和中断系统等。组成框图如下: 内部结构如下:

1. 中央处理器(CPU) 组成:运算器、控制器。8051的CPU包含以下功能部件: (1)8位CPU。 (2)布尔代数处理器,具有位寻址能力。 (3)128B内部RAM数据存储器,21个专用寄存器。 (4)4KB内部掩膜ROM程序存储器。 (5)2个16位可编程定时器/计数器。 (6)32个(4×8位)双向可独立寻址的I/O口。 (7)1个全双工UART(异步串行通信口)。 (8)5个中断源、两级中断优先级的中断控制器。 (9)时钟电路,外接晶振和电容可产生1.2MHz~12 MHz的时钟频率。 (10)外部程序/数据存储器寻址空间均为64KB。 (11)111条指令,大部分为单字节指令。 (12)单一+5V电源供电,双列直插40引脚DIP封装。 (1)运算器 组成:8位算术逻辑运算单元ALU(Arithmetic Logic Unit)、8位累加器A(Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status Word)、8位暂存寄存器TMP1和TMP2 等。

单片机硬件电路设计

单片机应用设计

概述 单片机是一种大规模的具有计算机基本功能的单片 单片机是一种大规模的具有计算机基本功能的单片集成电路。可以与少量外围电路构成一个小而完善的计算机系统。芯片内置和外围的电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 单片机具有体积小、功耗低、控制功能强、扩 单片机具有体积小、功耗低、控制功能强、扩展灵活、使用方便等优点,广泛应用于仪器仪表、家用电器、医用设备、航空航天、通信产品、智能玩具、汽车电子、专用设备的智能化管理及过程控制等领域。 制等领域。

单片机类型 集中指令集(CISC)和精简指令集(RISC)–采用CISC结构的单片机数据线和指令线分时复 用,即所谓冯.诺伊曼结构。它的指令丰富,功 能较强,但取指令和取数据不能同时进行,速度 受限,价格亦高。 –采用RISC结构的单片机,数据线和指令线分离 ,即所谓哈佛结构。这使得取指令和取数据可同 时进行,且由于一般指令线宽于数据线,使其指 令较同类CISC单片机指令包含更多的处理信息 ,执行效率更高,速度亦更快。同时,这种单片 机指令多为单字节,程序存储器的空间利用率大 大提高,有利于实现超小型化。

常用的几个系列单片机 MCS-51及其兼容系列: –英特尔公司的MCS-51系列单片机是目前应 用最广泛的8位单片机之一,并且ATMEL、 PHILIPS、ADI、MAXIM、LG、 SIEMENS等公司都有其兼容型号的芯片。 这个系列的单片机具有运算与寻址能力强, 存储空间大,片内集成外设丰富,功耗低等 优点,其中大部分兼容芯片都含有片内 FLASH程序存储器,价格便宜。适合应用于 仪器仪表、测控系统、嵌入系统等开发。

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。其中:

51单片机IO口工作原理

51单片机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口就作为…地址/数据?总线使用。那么这个多路选择开关就是用于选择是做为普通I/O口使用还是作为…数据/地址?总线使用的选择开关了。大家看上图,当多路开关与下面接通时,P0口是作为普通的I/O口使用的,当多路开关是与上面接通时,P0口是作为…地址/数据?总线使用的。 输出驱动部份:从上图中我们已看出,P0口的输出是由两个MOS管组成的推拉式结构,也就是说,这两个MOS管一次只能导通一个,当V1导通时,V2就截止,当V2导通时,V1截止。 与门、与非门:这两个单元电路的逻辑原理我们在第四课数字及常用逻辑电路时已做过介绍,不明白的同学请回到第四节去看看。 前面我们已将P0口的各单元部件进行了一个详细的讲解,下面我们就来研究一下P0口做为I/O口及地址/数据总线使用时的具体工作过程。 1、作为I/O端口使用时的工作原理 P0口作为I/O端口使用时,多路开关的控制信号为0(低电平),看上图中的线线部份,多路开关的控制信号同时与与门的一个输入端是相接的,我们知道与门的逻辑特点是“全1出1,有0出0”那么控制信号是0的话,这时与门输出的也是一个0(低电平),与让的输出是0,V1管就截止,在多路控制开关的控制信号是0(低电平)时,多路开关是与锁存器的Q非端相接的(即P0口作为I/O口线使用)。 P0口用作I/O口线,其由数据总线向引脚输出(即输出状态Output)的工作过程:当写锁存器信号CP 有效,数据总线的信号→锁存器的输入端D→锁存器的反向输出Q非端→多路开关→V2管的栅极→V2的漏极到输出端P0.X。前面我们已讲了,当多路开关的控制信号为低电平0时,与门输出为低电平,V1管是截止的,所以作为输出口时,P0是漏极开路输出,类似于OC门,当驱动上接电流负载时,需要外接上拉

单片机的硬件结构

第2章单片机的硬件结构 (一)填空题 1.通过堆栈实现子程序调用,首先要把(PC)的内容入栈,以进行断点保护。调用返回时 再进行出栈操作,把保护的断点送回(PC)。 2.80C51单片机的时钟电路包括两部分内容,即芯片内的(高增益反相放大器)和芯片外 跨接的(晶振)与(微调电容)。若调高单片机的晶振频率,则单片机的机器周期会变(低)。 3.通常单片机有两种复位操作,即(上电自动复位)和(按键手动复位)。复位后,PC值 为(0000H),SP值为(07H),通用寄存器的当前寄存器组为(第0)组,该组寄存器的地址范围是从(00H)到(07H)。 4.80C51单片机中,一个机器周期包含(6)个状态周期,一个状态周期又可划分为(2) 个拍节,一个拍节为(1)个振荡脉冲周期。因此,一个机器周期应包含(12)个振荡脉冲周期。 5.单片机程序存储器的寻址范围由PC的位数决定。80C51的PC为16位,因此程序存储 器地址空间是(64KB)。 6.MCS-51单片机由(8位CPU)、(程序存储器)、(数据存储器)、(并行I/O口)、(串行I/O 口)、(定时器/计数器)、(中断系统)、振荡器和时钟电路组成,各部分通过(内部总线(地址总线、数据总线和控制总线))相连。 (二)单项选择题 1. 下列概念叙述正确的是(D) (A)80C51中共有5个中断源,因此在芯片上相应地有5个中断请求输入引脚 (B)特殊的存取规则使得堆栈已不是数据存储区的一部分 (C)可以把PC看成是数据存储空间的地址指针 (D)CPU中反映程序运行状态和运算结果特征的寄存器是PSW 2. 取址操作后,PC的值是(C) (A)当前指令前一条指令的地址(B)当前正在执行指令的地址 (C)下一条指令的地址(D)控制寄存器中指令寄存器的地址 3. 80C51单片机中,设置堆栈指针SP为37H后就发生子程序调用,这时SP的值变为(C) (A)37H (B)38H (C)39H (D)3AH 4. 设置堆栈指针SP = 30H后,进行一系列的堆栈操作。当进栈数据全部弹出后,SP应指 向(A)

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级的优先级别选择。

AT89S51 单片机的硬件结构

第二章 AT89S51 单片机的硬件结构 第二章 AT89S51 单片机的硬件结构 本章“从内到外”主要讲述关于AT89S51单片机的一些基础知识。首先介绍AT89S51单片机的组成、CPU 、存储器组织以及特殊功能寄存器(SFR),然后,详细讲解了AT89S51的引脚分布及其功能;最后,讨论了使用AT89S51单片机时的时钟和复位电路。 2.1 AT89S51 单片机的组成 如前所述,AT89S51单片机与MCS-51完全兼容,内部的结构如图2.1所示: 从功能上分,它包括如下部件:一个8位中央处理器(CPU);4K可在线编程Flash ;128字节RAM与特殊功能寄存器;2个16位定时/计数器;中断逻辑控制电路;一个全双工串行接口(UART);32 条可编程的I/O口线;另外,还包括一些寄存器如程序计数器PC 、程序状态寄存器PSW 、堆栈指针寄存器SP 、数据指针寄存器DPTR等部件。 2.2 AT89S51 单片机 CPU 的结构 CPU是单片机的核心,它主要由运算器(ALU)、时序控制逻辑电路(控制器)以及各种寄存器等部件组成。 ( 1 )运算器的功能是进行算术和逻辑运算。它主要由算术逻辑单元ALU(Arithmetic Logic Unit)和寄存器组成,实现“加、减、乘、除、比较”等算术运算和“与、或、异或、求补、循环”等逻辑操作。运算器中还包含一个布尔处理器,可以执行置位、清零、求补、取反、测试、逻辑与、逻辑或等操作,为单片机的应用提供了极大的便利。 ( 2 )控制器的主要功能是产生各种控制信号和时序。在CPU内部协调各寄存器之间的数据传送,

完成ALU的各种算术或逻辑运算操作;在CPU访问外部存储器或端口时,提供地址锁存信号ALE、外部程序存贮器选通信号PSEN以及读(/RD)、写(/WR)等控制信号。 ( 3 )寄存器。CPU中还有一些寄存器,如累加器(ACC)、程序状态字(PSW)、B寄存器、程序计数器PC 、堆栈指针(SP)、指令寄存器(IR)等,这些寄存器有的在片内特殊功能寄存器空间有地址映像,它们既可看作CPU的寄存器,也可看作具有确定单元的存储单元。 ?累加器ACC(Accumulator)。ACC是一个8位的寄存器,也是CPU中最重要、最繁忙的寄存器,许多运算中的数据和结果都要经过累加器。 ?程序状态字PSW(Program Status Word)。PSW是一个8位的寄存器,用于存放程序运行结果的一些特征,本书拟在特殊功能寄存器一节详细介绍。 ? B寄存器。B寄存器主要是和ACC配合完成乖法和除法运算,存放运算结果,不进行乖、除运算时,B寄存器可作为RAM使用。 ?程序计数器PC。程序计数器PC用来存放即将执行的指令地址。它是一个独立的16位寄存器,没有内存映射单元,总是指向将要执行的指令的地址,并具有内容自动加l功能。 ?堆栈指针SP(Stack Pointer)。为一个指向堆栈顶部的指针,当执行子程序调用或中断服务程序时,需要将下一条要执行的指令地址即PC值压入堆栈保存起来,当子程序或中断返回时,再将SP 指向单元的内容回送到程序计数器PC中。这是一个很重要的指针。 ?指令寄存器IR(Instruction Register)。指令寄存器的功能是存放指令代码,CPU执行指令时,由程序存储器中读取指令代码送入指令寄存器,经译码器译码后,由定时与控制部分发出相应的控制信号,以完成指令功能,它也没有内存映射单元。 ( 4 )布尔(位)处理器。除对字节(Byte)进行操作外,AT89S51单片机借用PSW中的C可以直接对位(Bit)进行操作,在进行位操作时,C就类似进行字节操作的ACC用作数据源或存放结果。通过位操作指令可以实现置位、清零、取反以及位逻辑运算等操作。 2.3 AT89S51 单片机系统的存贮器组织 单片机系统中,存放程序的存储器称为程序存储器,类似与通用计算机系统中的ROM,只能进行读操作,存放数据的存储器称为数据存储器,相当于通用计算机系统中的RAM。与通用计算机系统不同,单片机系统中的程序存储器和数据存储器都有各自的读信号(PSEN 、/RD ),换言之,单片机系统的存储器可以分成两个物理存储器,即程序存储器和数据存储器,它们的范围都是64KB 。

相关文档
相关文档 最新文档