您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 电气技术 > 80C51 单片机的硬件结构
李广弟等编著北京航空航天大学出版社2015年9月教师:李娜电话:15603747485邮箱:lee.jingling@163.com第2章80C51单片机的硬件结构2.1单片机的概念2.280C51单片机的逻辑结构及信号引脚2.380C51单片机的内部存储器2.480C51单片机的并行I/O口2.580C51单片机的时钟与定时2.680C51单片机的系统复位2.7单片机低功耗工作模式重点80C51内部逻辑、存储器,引脚难点80C51内部存储器其他单片机的发展第2章80C51单片机的硬件结构2.1单片机的概念单片微型计算机SCMC(SingleChipMicro-Computer),是计算机、自动控制和大规模集成电路相结合的产物。还有其他的称呼,如:微控制器(MCU),嵌入式微控制器(EMCU),嵌入式微处理器(EMP)等。目前使用最多的仍是8位单片机。在8位单片机中80C51的使用更为广泛。本教材也是以80C51为基础。1.单片机的特点:(1)小巧灵活、成本低、易于产品化。(2)可靠性好,应用范围广。(3)易扩展,很容易构成各种规模的应用系统,控制功能强。(4)具有通讯功能,可以很方便地实现多机和分布式控制,形成控制网络和远程控制。2.单片机的应用(1)工业方面:各种测控系统,数据采集系统,工业机器人,智能化仪器,机、电一体化产品。(2)智能仪器仪表方面。(3)通讯方面:调制解调器、程控交换技术等。(4)消费产品方面:电动玩具、录像机、激光唱机。(5)导弹与控制方面:导弹控制、鱼雷制导控制、智能武器装备、飞机导航系统。(6)计算机外部设备及电器方面:打印机、硬盘驱动器、彩色与黑白复印机、磁带机等。(7)多机分布式系统:可用单片机构成分布式测控系统,它使单片机应用进入了一个全新的阶段。2.280C51单片机的逻辑结构及信号引脚2.2.180C51单片机的内部逻辑结构1.中央处理器CPU(1)运算电路(2)控制电路2.内部数据存储器3.内部程序存储器4.定时器/计数器5.并行I/O口6.串行口7.中断控制电路8.时钟电路9.位处理器10.内部总线1.CPUCPU即中央处理器,完成各种运算和控制操作,由运算器和控制器两部分电路组成。(1)运算器电路运算器的功能是进行算术运算和逻辑运算。(2)控制器电路控制电路完成指挥控制工作,协调单片机各部分正常工作。80C51芯片逻辑结构图CPU运算电路控制电路2.存储器80C51单片机的存储器包括数据存储器和程序存储器,其主要特点是程序存储器和数据存储器的寻址空间是相互独立的,物理结构也不相同。内部数据存储器包括RAM和RAM地址寄存器,内部数据存储器一般指前128个单元,高128个用于专用寄存器。内部程序存储器包括ROM和ROM地址寄存器,80C51有4kROM存放程序。3.定时器/计数器MCS-51单片机片内有两个16位的定时/计数器,即定时器0和定时器1。它们可以用于定时控制、延时以及对外部事件的计数和检测等。4.并行I/O口80C51单片机共有4个8位的I/O口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。5.串行I/O口80C51单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。6.中断控制系统80C51共有5个中断源,即外中断2个,定时/计数中断2个,串行中断1个。7.时钟电路80C51芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列,振荡器的频率范围为1.2MHz~33MHz,典型取值为6MHz。8.总线以上所有组成部分都是通过总线连接起来,从而构成一个完整的单片机。系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可靠性。2.2.280C51单片机的封装与信号引脚1.芯片封装形式:40脚DIP封装1输入/输出口线P0口(P0.0~P0.7):P1口(P1.0~P1.7):P2口(P2.0~P2.7):P3口(P3.0~P3.7):8位双向口线2.芯片引脚介绍地址锁存允许信号ALE系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的复用。外部程序存储器读选通信号/PSEN是读外部程序存储器的选通信号,低电平有效。PSEN访问程序存储器控制信号•为低电平时,CPU只执行片外程序存储器指令;•为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令。复位信号RST高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。EA时钟电路引脚XTAL1和XTAL2用于接外部晶振和微调电容。XTAL1:片内振荡器倒相放大器的输入端,若用外部时钟时,作为外部时钟的输入端。XTAL2:片内振荡器倒相放大器的输出,若使用外部时钟时,该引脚必须悬空。电源引脚Vcc和VssVcc:电源端,接+5V。Vss:接地端。“复用”即给一些信号引脚赋予双重功能。EPROM存储器程序固化所需要的信号编程脉冲:30脚(ALE/PROG)编程电压(25V):31脚(EA/Vpp)备用电源引入:9脚(RST/VPD)当电源发生故障,电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。P3口线主要是第二功能。3.芯片引脚的第二功能表2.1P3口线的第二功能口线特殊功能信号名称P3.0RXD串行输入口P3.1TXD串行输出口P3.2外部中断0输入口P3.3外部中断1输入口P3.4T0定时器0外部输入口P3.5T1定时器1外部输入口P3.6WR写选通输出口P3.7RD读选通输出口1INT0INT(2)引脚复用不会引起混乱第一功能与第二功能是不同工作方式下的信号,不会发生使用上的矛盾。说明:P3口线先按需要优先选用它的第二功能,剩下不用的才作为I/O口线使用。2.380C51单片机的内部存储器ROM:存放程序或者始终要保留的数据(表格数据)。RAM:用来存放程序运行中所需要的常数和变量。80C51单片机的数据存储器共256个单元,划分为两部分:低128单元区和高128单元区。2.3.1内部数据存储器低128单元区80C51的内部数据存储器低128单元区,称为内部RAM,地址为00H-7FH.按用途划分为三个区。图2.380C51内部数据存储器配置图1、寄存器区内部RAM的前32个单元作为通用(工作)寄存器使用。分为4组,组号依次为0、1、2、3,每组8个寄存器:R7~R0。•任一时刻,cpu只能使用其中的一组寄存器,称为当前工作寄存器组,由程序状态字寄存器PSW中的RS1,RS0位的组合来决定。•没有选中的单元也可作为一般的数据缓存使用。•系统上电复位时,默认选中第0组寄存器。寄存器:1、可用8位地址直接寻址;2、在指令中既可用名称表示,也可以使用单元地址表示。2、位寻址区16个数据单元(20H~2FH),既可以作为一般的数据单元使用,又可以按位对每个单元进行操作,因此这16个数据单元又称作位寻址区。位寻址区共计128位,其位地址为00H~7FH。位地址的表示方式:1位地址的形式;2存储单元地址加位的形式。3.用户RAM区在内部RAM的低128个单元中,剩余的80个数据单元即30H~7FH为真正的用户RAM区,对于这些区域,用户只能以存储单元的形式来使用,通常在应用中也把堆栈开辟在这段区域。2.3.2内部数据存储器高128单元区内部数据存储器的高128个单元是为专用寄存器提供的,因此该区也称作特殊功能寄存器区(SFR),它们主要用于存放控制命令、状态或数据。21个特殊功能寄存器,其地址空间为80H~FFH。其中,有11个特殊功能寄存器具有位寻址能力,它们的字节地址刚好能被8整除。(1)累加器A(或ACC----ACCumulator)累加器为8位寄存器,是程序中最常用的专用寄存器,在指令系统中累加器的助记符为A。存放操作数;运算结果的暂存单元;数据传送的中转站;在变址寻址方式中累加器被作为变址寄存器使用。在MCS-51中由于只有一个累加器,而单片机中的大部分数据操作都是通过累加器进行的,故累加器的使用是十分频繁的。1.专用寄存器简介(2)B寄存器(Bregister)B寄存器为8位寄存器,主要用于乘除指令中。在其它指令中,B寄存器也可作为一般的数据单元来使用。(3)程序状态字(PSW----ProgramStatusWord)程序状态字是一个8位寄存器,用于寄存指令执行的状态信息。在状态字中,有些位状态是根据指令执行结果,由硬件自动完成设置的,而有些状态位则必须通过软件方法设定。PSW中的每个状态位都可由软件读出,PSW的各位定义如下。位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PCY(PSW.7)-进位标志位在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志(加法进位,减法借位,在位操作(在位传送、位与、位或等)中作累加器使用,移位操作中用于构成循环移位通路)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PAC(PSW.6)-辅助进位标志位(半进位标志位)进行加法或减法操作时,当发生低四位向高四位进位或借位时,AC由硬件置位,否则AC位被置“0”。在进行十进制调整指令时,将借助AC状态进行判断。位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PF0(PSW.6)-用户标志位该位为用户定义的状态标记,用户根据需要用软件对其置位或清零,也可以用软件测试F0来控制程序的跳转。位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PRS1和RS0(PSW.4和PSW.3)-寄存器组选择位该两位通过软件置“0”或“1”来选择当前工作寄存器组。表2.3寄存器组选择位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/POV(PSW.2)-溢出标志位当执行算术指令,由硬件置位或清零来指示溢出状态。加减运算(有无符号数均可)中,OV=1表示加减运算结果超出符号数有效范围(-128~+127;反之,OV=0表示运算正确,即无溢出产生。无符号数乘法指令执行结果也会影响溢出标志,若乘积超过了255,则OV=1,反之OV=0。由于乘积的高8位存放于B中,低8位存放于A中,OV=0则意味着只要从A中取得乘积即可,否则要从BA寄存器中取得乘积结果。在除法运算中,OV=1表示除数为0,除法不能进行;反之,OV=0,除数不为0,除法可正常进行。位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PP(PSW.0)-奇偶标志位每个指令周期由硬件来置位或清零用以表示累加器A中1的个数的奇偶性,若累加器中1的个数为奇数则P=1,否则P=0。(4)数据指针DPTR数据指针DPTR为一个16位的专用寄存器,其高位用DPH表示,其低位用DPL表示。既可以作为一个16位的寄存器来使用,也可作为两个8位的寄存器DPH和DPL使用。DPTR在访问外部数据存储器时既可用来存放16位地址,也可作地址指针使用。如MOVX@DPTR,A。(5)I/O端口P0~P3P0~P3为四个8位的特殊功能寄存器,分别是四个并行I/O端口的锁存器,当I/O端口的某一位用作输入时,对应的锁存器必须先置“1”。(6)定时器/计数器两个16位定时器/计数器T0和T1,它们由两个相互独立的8位寄存器组成TH和TL,共有四个独立的寄存器TH0、TL0、TH1和TL1。只可对这四个寄存器独立寻址,而不能作为一个16位寄存器来寻址。(7)串行数据缓冲寄存器串行数据缓
本文标题:80C51 单片机的硬件结构
链接地址:https://www.777doc.com/doc-3977523 .html