微机控制技术主讲:张勤工学博士副教授教材:单片机基础,航空航天大学出版第2章80C51单片机的硬件结构2.1单片机的概念及系列2.280C51单片机内部结构2.380C51系列单片机外引脚功能2.480C51单片机的内部存储器2.580C51单片机的并行I/O口2.680C51单片机的时钟与定时2.780C51单片机系统的复位2.1单片机的概念及系列1.单片机的概念2.MCS-51系列与80C51系列MCS-51系列:MCS只是Intel公司专用的,是Inter公司系列的符号。MCS-51系列单片机典型机包括51和52两个子系列。80C51系列:MCS-51系列的兼容产品,准确地说是与MCS-51指令系统兼容的单片机。因而常用80C51系列来命名所有具有MCS-51指令系统的单片机。对8051都做了一些补充。80C51系列的单片机包括Inter公司和其他公司的51和52子系列。内部资源超出52子系列的单片称为新一代80C51系列单片机MCS-51系列单片机分类表掩模ROM紫外线可擦除ROMHMOS工艺低功耗CHMOS2.280C51单片机内部结构控制器运算器PC加1寄存器中央处理器CPU1.运算器(1)累加器A(或ACC):8位寄存器功能:存放操作数,存放运算结果工作最繁忙的寄存器--中心交通路口,在指令系统中有一多半指令和A有关。(2)算术/逻辑部件ALU:对数据进行算术运算和逻辑操作的执行部件。由加法器和其他逻辑电路(移位电路和判断电路等)组成。完成算术加、减、乘、除和逻辑“与”、“或”、“异或”等运算以及循环移位操作、位操作等功能。(3)程序状态字寄存器PSW:是8位寄存器,用来存放运算结果的一些特征。(4)B寄存器:在进行乘法、除法运算时作为ALU的输入之一,与ACC配合完成运算和并存放运算结果。(5)暂存器:用以暂存进入运算器之前的数据。2.280C51单片机内部结构控制器运算器PC加1寄存器2.控制器(1)程序计数器PC:存放下一条要执行的指令的地址,16位程序地址寄存器(2)堆栈指针SP:“先进后出”原则存取数据的,开机复位后,单片机栈底地址为07H(3)指令寄存器IR:(4)数据指针DPTR:可用于寻址程序存储器或数据存储单元。16位存储器,可寻地址64KB。由DPH+DPL组成,可分别使用高位字节(DPH)和低位字节(DPL)(5)定时器/计数器:80C51有两个16位的定时器/计数器。表示为定时/计数器T0,T1。2.280C51单片机内部结构控制器运算器存储器1.内部数据存储器:80C51芯片256个RAM单元,其中后128个单元专用寄存器用,用户使用的只有前128个单元,简称内部“RAM”2.内部程序存储器:80C51有4KB掩模ROM,存放程序和原始数据。称为程序存储器,简称“内部ROM”2.280C51单片机内部结构控制器运算器输入输出端口(I/O)1.并行的I/O口:4个8位并行I/O口(P0,P1,P2,P3),实现数据的并行输入输出。2.一个串行口:实现单片机和其他数据设备之间的串行数据传送。2.280C51单片机内部结构控制器运算器2.380C51系列单片机外引脚功能1.封装:80C51系列单片机常用的两种封装为双列直插式DIP40,方形封装LCC442.80C51系列单片机外部引脚3.80C51单片机逻辑符号4.80C51系列单片机外部引脚说明重要性:引脚表现出单片机的外部特性或硬件特性,通过引脚连接和组建系统。共有40个引脚,分为端口线(32条),电源线(2条)和控制线(6条)端口:4个并行I/O端口,每个端口有8条端口线,用于传送数据或地址。每个端口结构各不相同,因此功能和用途上的差别也较大。80C51单片机逻辑符号(1)端口线P0.7~P0.0:为P0口专用,P0.7为高位,P0.0为低位。有两种不同的功能:通用I/O接口和地址/数据分时复用总线。通用I/O接口:输出,输入和端口操作三种工作方式。第一种情况,80C51不带片外存储器时。P0口作为通用I/O口使用,用于传送CPU的输入/输出数据。这时输出数据可以得到锁存,不需外接专用锁存器。输入数据可以得到缓冲,增加了数据的可靠性端口线第二种情况:80C51带片外存储器,P0.7~P0.0在CPU访问片外存储器时用于传送片外存储器的低8位地址。然后传送CPU对片外存储器的读写数据。端口线P1.7~P1.0:80C51单片机的P1口只有一种功能,通用输入/输出接口。对52子系列而言,P1.0和P1.1第二功能为定时器2输入。P2.7~P2.0:通用的I/O接口或8位地址总线。它的第二功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址。80C51单片机逻辑符号端口线P3.7~P3.0:第一功能和其余三个端口的第一功能相同。第二功能为控制功能。参阅P23,表2.1P3口的第二功能:实际使用中总是优先选用第二功能,剩下的才作为口线使用3.80C51单片机逻辑符号(2)电源线VCC(40)为+5V电源线,VSS(20)接地(3)控制线(6条)ALE(30):地址锁存控制信号。配合P0口引脚的第二功能使用。EA(31):片外存储器访问选择线。可以控制使用片内ROM或使用片外ROM。EA=1:允许使用片内ROMEA=0:只使用片外ROMPSEN(29):片外ROM读选通信号,在访问片外ROM时,80C51自动在PSEN线上产生一个负脉冲,作为片外ROM芯片的读选通信号。RST(9):复位线,使80C51处于复位工作状态。XTAL1(18)和XTAL2(19):片内振荡电路输入线,用来外接石英晶体和微调电容。80C51引脚功能4)80C51三总线结构总线:连接计算机各部件的一组公共信号线地址总线AB(AddressBus):地址总线宽度为16位,其外部存储器直接寻址范围为64k(216)。数据总线DB(DataBus):用于单片机与存储器之间或单片机与I/O端口之间数据传送。数据总线为8位,由P0口提供控制总线CB(ControllerBus):一组信号线,由单片机发出的,以及从其它部件传送给单片机的。由P3口部分引脚的第2功能和4根独立控制线RST,EA,ALE,PSEN组成1.端口线(4×8=32条)2.电源线(2条)3.控制线(6条)4.地址、数据和控制之三总线结构80C51单片机三总线构成5)80C51三总线的特点P0口的地址/数据复用:作8位地址线时,要有锁存器将地址锁存。两个并行的扩展空间。单片机中程序存储器和数据存储器是两个独立的空间。使用相同的16位地址线和8位数据线。分别为两个64K寻址空间。PSEN取指控制信号,数据存储器用WR,RD。外围扩展的统一编址单片机芯片并没有提供专用的地址线和数据线,而是采用I/O口线的复用技术,把I/O口线改造为总线。图4.29具有32K字节程序存储器的单片机最小系统2.480C51内部存储器的组织物理结构上:4个存储空间内部RAM+内部ROM+外部RAM+外部ROM逻辑上:即用户使用的角度上,80C51有3个存储空间①片内外统一编址的64KB程序存储器地址空间片内ROM和片外ROM之和不能超过64K,地址范围0000H--FFFFH②256B片内RAM地址空间,地址范围:00H--FFH③64KB片外数据存储器空间,地址范围是0000H—FFFFH。2.480C51内部存储器的组织物理结构上:4个存储空间内部RAM+内部ROM+外部RAM+外部ROM逻辑上:即用户使用的角度上,80C51有3个存储空间①片内外统一编址的64KB程序存储器地址空间片内ROM和片外ROM之和不能超过64K,地址范围0000H--FFFFH②256B片内RAM地址空间,地址范围:00H--FFH③64KB片外数据存储器空间,地址范围是0000H—FFFFH。1.程序存储器程序存储器中特殊功能单元①0000H:80C51复位后,PC=0000H,即程序从0000H开始执行指令。②0003H:外部中断入口③000BH:定时器0溢出中断入口④0013H:外部中断1入口⑤0023H:串行口中断入口⑥002BH:定时器2入口(仅52子系列有)内部程序存储器(保留的)80C51有4KBROM内部程序存储器0000H~0FFFH存放程序用系统复位(RST高电平)(PC)=0000H程序从此开始2.80C51内部数据存储器80C51系列单片机的片内数据存储器包括RAM块和特殊功能寄存器(SFR)块。51子系列RAM块:128B,编址为:00H~7FHSFR块:128B,编址为:80H~FFH用户使用P24图2.32.80C51内部数据存储器(RAM)⑴内部数据存储低128单元:分为通用(工作)寄存器区、位寻址区、数据缓冲区(用户区)00H—1FH:工作寄存器区。分为4组。每组有8个寄存器。在组中按R7-R0编号。32个单元供用户编程时使用。在任一时刻CPU只能使用其中一组。由程序状态字PSW选择。R0R1R2....R7(16单元)(80单元)工作寄存器区00HR0工作寄存器0组01HR1……07HR708HR0工作寄存器1组09HR1……0FHR710HR0工作寄存器2组11HR1……17HR718HR0工作寄存器3组19HR1……1FHR7位寻址区20H07H06H05H04H03H02H01H00H21H0FH0EH0DH0CH0BH0AH09H08H22H17H16H15H14H13H12H11H10H23H1FH1EH1DH1CH1BH1AH19H18H24H27H26H25H24H23H22H21H20H25H2FH2EH2DH2CH2BH2AH29H28H26H37H36H35H34H33H32H31H30H27H3FH3EH3DH3CH3BH3AH39H38H28H47H46H45H44H43H42H41H40H29H4FH4EH4DH4CH4BH4AH49H48H2AH57H56H55H54H53H52H51H50H2BH5FH5EH5DH5CH5BH5AH59H58H2CH67H66H65H64H63H62H61H60H2DH6FH6EH6DH6CH6BH6AH69H68H2EH77H76H75H74H73H72H71H70H2FH7FH7EH7DH7CH7BH7AH79H78H数据缓冲区30H……7FH80H仅52子系列有……FFH80C51单片机内RAM配置工作寄存区07HR7工作寄存器0组06HR605HR504HR403HR302HR201HR100HR0工作寄存器区00HR0工作寄存器0组01HR1……07HR708HR0工作寄存器1组09HR1……1FHR710HR0工作寄存器2组11HR1……17HR718HR0工作寄存器3组19HR1……1FHR7位寻址区20H07H06H05H04H03H02H01H00H21H0FH0EH0DH0CH0BH0AH09H08H22H17H16H15H14H13H12H11H10H23H1FH1EH1DH1CH1BH1AH19H18H24H27H26H25H24H23H22H21H20H25H2FH2EH2DH2CH2BH2AH29H28H26H37H36H35H34H33H32H31H30H27H3FH3EH3DH3CH3BH3AH39H38H28H47H46H45H44H43H42H41H40H29H4FH4EH4DH4CH4BH4AH49H48H2AH57H56H55H54H53H52H51H50H2BH5FH5EH5DH5CH5BH5AH59H58H2CH67H66H65H64H63H62H61H60H2DH6FH6EH6DH6CH6BH6AH69H68H2EH77H76H75H74H73H72H71H70H2FH7FH7EH7DH7CH7BH7AH79H78H数据缓冲区30H……7FH80H仅52子系列有……FFHP24图2.3位寻