第3章80C51系列单片机的硬件基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

14:341各个子系列所含有的芯片型号及其硬件资源的区别如表3-1所示。MCS-51系列型号片内ROM片内RAM定时器/计数器中断源数量51子序列(基本型)8031无128B2×16位580514KB掩膜ROM128B2×16位587514KBEPROM128B2×16位552子序列(增强型)8032无256B3×16位680528KB掩膜ROM256B3×16位6在不同型号的MCS-51系列单片机中,除片内存储器(ROM、RAM)容量与种类、定时器/计数器的个数、中断源的数量有所不同外,指令系统和芯片引脚是完全兼容的。14:34280C51单片机引脚主要分为主电源引脚、外接晶体引脚、输入/输出引脚与控制引脚四类,以PDIP封装的单片机为例,引脚介绍如下:1.主电源引脚(2条)2.外接晶体引脚(2条)3.输入/输出(I/O)引脚(32条)4.控制引脚(4条)14:3431.主电源引脚(2条)VCC(40脚)和GND(20脚):分别接电源的正端和地端。不同型号单片机接入对应电压的电源,常压为+5V、低压为+3.3V。2.外接晶体引脚(2条)XTAL1(19脚)、XTAL2(18脚):XTAL1为片内振荡电路的输入端,XTAL2为片内振荡电路的输出端。80C51单片机的时钟有两种方式,一种是片内时钟振荡方式,需在这两个脚外接石英晶体和振荡电容;另一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。14:3443.输入/输出(I/O)引脚(32条)输入/输出(I/O)引脚共有P0口、P1口、P2口、P3口四组,每组8条引脚。(1)P0口(39脚~32脚):分别为P0.0~P0.7,其中P0.7为最高位,P0.0为最低位。这8条引脚有两种不同的功能:1)作为通用输入/输出(I/O口)使用。2)作为低8位的地址/数据复用总线。14:345(2)P1口(1脚~8脚):分别为P1.0~P1.7,其中P1.7为最高位,P1.0为最低位。P1口引脚也有两种不同的功能:1)作为准双向I/O口使用。2)对52子序列单片机,P1.0引脚的第二功能为T2定时器/计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2的外部控制端。14:346(3)P2口(21脚~28脚):P2口的8条引脚也有两种不同的功能:1)准双向输入/输出接口,每一位也可独立控制。2)在接有片外存储器或扩展I/O接口时,P2口作为高8位地址总线。14:347(4)P3口(10脚~17脚):P3口的8条引脚也有两种不同的功能:1)准双向输入/输出接口,每一位同样可独立控制。2)P3口的每一条引脚都有第二功能,如表3-4所示。14:3484.控制引脚(4条)(1)RST(Reset,9引脚):复位信号输入端。(2)ALE/(AddressLatchEnable/Programming,30引脚):ALE为地址锁存允许信号,配合P0口引脚的第二功能使用。为本引脚的第二功能,表示编程脉冲输入端。(3)/VPP(EnableAddress/VoltagePulseofPrograming,31引脚):片内片外程序存储器选择控制端。(4)(ProgramStrobeEnable,29引脚):片外程序存储器(ROM)选通线。PROGPROGPSENEA14:34980C51单片机引脚功能总结:1)单片机功能多,引脚数少,致使许多引脚具有第二功能。2)单片机对外三总线的构成:80C51单片机对外三总线构成如图3-8所示。由P2、P0组成16位地址总线,P2作为高8位地址总线A8~A15,P0作为低8位地址总线A0~A7。因是16位地址线,所以片外存储器的寻址范围达到64K字节。由P0分时复用为数据总线。由ALE、RST、、与P3口中引脚组成控制总线。PSENEA14:3410图3-880C51单片机对外三总线构成14:3411四个I/O端口P0、P1、P2、P3的作用总结:P2口负责输出高8位地址,P0口以分时方式承担输出低8位地址信息和数据输入/输出的双重任务。P3口则作为和外设沟通的控制线,P1口可随意用作I/O口。51系列单片机的对外三总线总结:AB(地址总线):P2口负责高8位地址,P0口输出低8位地址。DB(地址总线):P0口作为8位数据输入/输出口。CB(地址总线):P3口作为和外设沟通的控制线。14:34123.380C51系列单片机的编程结构80C51系列单片机的编程结构包括中央处理器(CPU)、内部存储器(ROM、RAM)、并行I/O接口、片内外设(定时器/计数器、中断系统、串行口)、振荡器等部分,各部分之间通过片内总线进行连接。80C51系列单片机内部采用单总线结构,地址、数据与控制信息都通过一组总线流通。编程结构,即是从编程人员角度所看到的单片机内部结构,该结构便于人们从软件编程的角度去了解单片机系统的操作和运行。14:34131.中央处理器(CPU)80C51系列单片机是8位CPU,它是整个单片机的核心部件,主要完成运算和控制功能,由运算器和控制器组成。(1)运算器运算器由算术逻辑单元(ALU)、累加器A(Accumulator)、暂存器TMP以及程序状态字PSW组成,用于算术运算和逻辑运算。(2)控制器控制器由程序计数器PC(ProgramCounter)、指令寄存器IR(InstructionRegister)、指令译码器ID(InstructionDecoder)、定时与控制电路等部分组成使单片机各部分协调工作,从而完成指令规定的操作。14:34142.内部存储器80C51系列单片机的存储器有片内和片外之分。片内存储器集成在芯片内部;片外存储器(外部存储器)是专用的存储器芯片,需要通过单片机引脚提供的三总线(即AB、DB和CB)与80C51连接。无论片内还是片外存储器,都可分为程序存储器和数据存储器。由于80C51单片机采用哈佛结构,因此程序存储器和数据存储器相互独立,有各自的寻址空间。14:3415片内数据存储器为随机存取存储器,用于存放可读写的数据,常称为片内RAM。80C51系列单片机的片内RAM共有128/256B。片内程序存储器为只读存储器,用于存放程序指令、常数及数据表格,常称为片内ROM。80C51系列单片机内部有0/4/8KB的ROM。用于存放程序,也可以存放一些原始数据和表格等。14:34163.并行输入/输出端口(I/O口)80C51片内有4个8位的I/O接口:P0、P1、P2和P3,每个I/O接口内部都有一个8位锁存器和一个8位驱动器,既可用作输出口,也可用作输入口。80C51单片机没有专门的I/O口操作指令,而是把I/O口当作寄存器使用,通过传送指令实现数据的输入和输出操作。14:34174.片内外设(1)定时器/计数器51子序列单片机中有两个16位的定时器/计数器,用于实现定时或外部计数的功能。(2)中断系统中断系统的主要作用是对来自单片机内部或外部的中断请求进行处理,完成中断源所要求的任务。51子系列共有5个中断源,其中外部中断源有2个,内部中断源有3个:2个定时器/计数器中断源和1个串行口中断源。全部中断可分为高级和低级两个优先级别。(3)串行口80C51单片机有一个全双工可编程串行口,用于实现单片机与外部设备之间的串行数据传送。5.振荡器振荡器用于产生单片机工作时所需的时钟脉冲。14:3418根据使用功能不同,片内数据存储器可进一步细分为工作寄存器区、位寻址区、堆栈及数据缓冲区、特殊功能寄存器SFR(SpecialFunctionRegister)区。14:3419(1)工作寄存器区内部RAM块的00H~1FH区,共分4个组,每组有8个工作寄存器R0~R7,共32个内部RAM单元。14:3420同一时刻只有一个组工作,CPU根据程序状态字寄存器PSW中的RS0和RS1的值(由用户设定)来选择当前的工作组,如表3-8所示。表3-8工作寄存器地址表14:3421(2)位寻址区(20H~2FH)位寻址区共有16字节,128位,位地址为00H~7FH。CPU能直接寻址这些位,进行置1、清0、求“反”、传送和逻辑运算等位操作,这就是我们常说的80C51单片机所具有的布尔处理功能。在程序设计时,还常常将这些位用作软件标志位。14:3422注意:①位寻址区的存储单元既有字节地址又有位地址,因此既可作为一般存储单元进行字节寻址,也可对它们进行位寻址。②位寻址区的位地址范围为00H~7FH,字节地址范围是20H~2FH,有地址重叠现象,进一步观察还可发现,内部RAM低128个单元的字节地址范围也为00H~7FH,整个存储区的地址都是重叠的,但80C51单片机专门为位操作设置了一类指令,因此在实际应用中可以通过指令的类型来区分字节地址和位地址。14:3423(3)堆栈及数据缓冲区(30H~7FH)51子系列的内部RAM的堆栈及数据缓冲区共有80个单元,字节地址范围为30H~7FH,52子系列的内部RAM的堆栈及数据缓冲区共有208个单元,字节地址范围为30H~FFH,用于存放用户数据或作为堆栈区使用。堆栈区是存储器中一个特殊的存储区,数据按照“先进后出”或“后进先出”的方式进行存取操作。14:3424(4)特殊功能寄存器特殊功能寄存器SFR(SpecialFunctionRegister)也称专用寄存器(不包括PC),主要用于管理片内和片外的功能部件,如定时器/计数器、中断系统、I/O接口等。SFR的编址从80H~FFH,但是并没有128个,只有21个(51子系列)或26个(52子系列),在80H-FFH之间离散分布。每个SFR都分配有符号名和字节地址,可对其进行直接寻址。表3-10是特殊功能寄存器一览表,其中字节地址能够被8整除的SFR(字节地址的末位是0或8H)每一位都具有位名称和位地址,能够进行位寻址。14:34251)累加器A(Accumulator)A是8位寄存器,是最常用的寄存器。2)寄存器B寄存器B是8位寄存器,是专门为乘除法指令设计的。3)程序状态字PSW(ProgramStatusWord)程序状态字PSW是8位寄存器,用于存放程序运行的状态信息。PSW.7PSW.0CyACF0RS1RS0OV—P14:3426(1)进位标志位Cy(PSW.7):8位加法(减法)运算时,如果运算结果的最高位D7有进位(借位),则C=1,否则C=0C也为位累加器(2)辅助进位标志位Ac(PSW.6):8位加法运算时,如果低半字节的最高位D3有进位,则AC=1,否则AC=0;8位减法运算时,如果D3有借位,则AC=1,否则AC=0。Ac在作BCD码运算时有用CyACF0RS1RS0OV—PPSW.7PSW.0(3)软件标志F0(PSW.5):是用户定义的一个状态标志。14:3427(4)工作寄存器组选择位RS1、RS0(PSW.4、PSW.3):作用:用软件置位或清零,以确定四组工作寄存器中的哪一组工作。(5)溢出标志OV(PSW.2):当执行算术运算时,由硬件置位或清零,以指示溢出状态。(6)奇偶标志P(PSW.0):每执行一条指令,单片机都能根据A中1的个数的奇偶自动令P置位或清零:奇为1,偶为0。CACF0RS1RS0OV—PPSW.7PSW.0RS1RS0000组(地址从00-07H)011组(地址从08-0FH)102组(地址从10-17H)113组(地址从18-1FH)14:3428例分析执行指令MOVA,#6EHADDA,#58H后,A、C、Ac、OV、P的内容是什么?执行第l条指令后立即数6EH进入A,执行第2条指令将使58H与A中的6EH相加。011011100101100001101100(A)=C6H,C=0、Ac=1;次高位有进位、最高位无进位,OV=1(和>128),执行第1条指令后P=1,执行第2条指令后P=0。14:34293.680C51系列单片机的时序时序是CPU在执行指令时各控制信号之间的时间顺序关系。为了保证各部件间协调一致地同步工作,单片机内部的电路应在唯一的时

1 / 32
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功