《51单片机教程PPT资料.ppt》由会员分享,可在线阅读,更多相关《51单片机教程PPT资料.ppt(117页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、江西环境工程职业学院机械与电子分院 张小波时 间:2011年9月51单片机原理及应用单片机原理及应用第一讲第一讲 单片机结构及原理单片机结构及原理第二讲第二讲 中断系统中断系统第三讲第三讲 定时定时/计数器计数器第四讲第四讲 串口通信串口通信第五讲第五讲 工具软件介绍、流水灯实验工具软件介绍、流水灯实验51单片机原理及应用单片机原理及应用什么是单片机什么是单片机单片机能做什么单片机能做什么单片机单片机 在一片集成电路芯片上集成微处理器、存在一片集成电路芯片上集成微处理器、存储器、储器、I/O接口电路,从而构成了接口电路,从而构成了单芯片微单芯片微型计算机,即单片机型计算机,即单片机。单片机能做
2、什么单片机能做什么 工工工工业业业业控制控制控制控制 用于各种物理量的采集与控制。电流、电压、温度、液位、流量用于各种物理量的采集与控制。电流、电压、温度、液位、流量用于各种物理量的采集与控制。电流、电压、温度、液位、流量用于各种物理量的采集与控制。电流、电压、温度、液位、流量等物理参数的采集和控制均可以利用单片机方便地实现。在这类等物理参数的采集和控制均可以利用单片机方便地实现。在这类等物理参数的采集和控制均可以利用单片机方便地实现。在这类等物理参数的采集和控制均可以利用单片机方便地实现。在这类系统中,利用单片机作为系统控制器,可以根据被控对象的不同系统中,利用单片机作为系统控制器,可以根据
3、被控对象的不同系统中,利用单片机作为系统控制器,可以根据被控对象的不同系统中,利用单片机作为系统控制器,可以根据被控对象的不同特征采用不同的智能算法,实现期望的控制指标,从而提高生产特征采用不同的智能算法,实现期望的控制指标,从而提高生产特征采用不同的智能算法,实现期望的控制指标,从而提高生产特征采用不同的智能算法,实现期望的控制指标,从而提高生产效率和产品质量。典型应用如效率和产品质量。典型应用如效率和产品质量。典型应用如效率和产品质量。典型应用如电电电电机机机机转转转转速控制、温度控制、自速控制、温度控制、自速控制、温度控制、自速控制、温度控制、自动动动动生生生生产线产线产线产线等等等等
4、。智能智能智能智能仪仪仪仪器器器器仪仪仪仪表表表表提高了提高了提高了提高了仪仪仪仪器器器器仪仪仪仪表的使用功能和精度,使表的使用功能和精度,使表的使用功能和精度,使表的使用功能和精度,使仪仪仪仪器器器器仪仪仪仪表智能化,同表智能化,同表智能化,同表智能化,同时还简时还简时还简时还简化了化了化了化了仪仪仪仪器器器器仪仪仪仪表的硬件表的硬件表的硬件表的硬件结结结结构。如各种构。如各种构。如各种构。如各种智能智能智能智能电电电电气气气气测测测测量量量量仪仪仪仪表、智表、智表、智表、智能能能能传传传传感器感器感器感器等。等。等。等。机机机机电电电电一体化一体化一体化一体化产产产产品品品品机电一体化产品
5、是集机械技术、微电子技术、自动化技术和计算机电一体化产品是集机械技术、微电子技术、自动化技术和计算机电一体化产品是集机械技术、微电子技术、自动化技术和计算机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。单片机在机电机技术于一体,具有智能化特征的各种机电产品。单片机在机电机技术于一体,具有智能化特征的各种机电产品。单片机在机电机技术于一体,具有智能化特征的各种机电产品。单片机在机电一体化产品的开发中可以发挥巨大的作用。典型产品如一体化产品的开发中可以发挥巨大的作用。典型产品如一体化产品的开发中可以发挥巨大的作用。典型产品如一体化产品的开发中可以
6、发挥巨大的作用。典型产品如机器人、机器人、机器人、机器人、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、复印机复印机复印机复印机等。等。等。等。分布式系统的前端模块分布式系统的前端模块分布式系统的前端模块分布式系统的前端模块 在较复杂的工业系统中,经常要采用分布式测控系统完成大量的在较复杂的工业系统中,经常要采用分布式测控系统完成大量的在较复杂的工业系统中,经常要采用分布式测控系统完成大量的在较复杂的工业系统中,经常要
7、采用分布式测控系统完成大量的分布参数的采集。在这类系统中,采用单片机作为分布式系统的分布参数的采集。在这类系统中,采用单片机作为分布式系统的分布参数的采集。在这类系统中,采用单片机作为分布式系统的分布参数的采集。在这类系统中,采用单片机作为分布式系统的前端采集模块,系统具有前端采集模块,系统具有前端采集模块,系统具有前端采集模块,系统具有运行可靠,数据采集方便灵活,成本低运行可靠,数据采集方便灵活,成本低运行可靠,数据采集方便灵活,成本低运行可靠,数据采集方便灵活,成本低廉廉廉廉等一系列优点。等一系列优点。等一系列优点。等一系列优点。家用电器家用电器家用电器家用电器家用电器是单片机的又一重要应
8、用领域,前景十分广阔。如家用电器是单片机的又一重要应用领域,前景十分广阔。如家用电器是单片机的又一重要应用领域,前景十分广阔。如家用电器是单片机的又一重要应用领域,前景十分广阔。如空调空调空调空调器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具等。等。等。等。1.2 单片机的发展概况1.2.1 1.2.1 单单片机的片机的发发展展过过程程 单单片机技片机技术发术发展展过过程可分程可分为为三个主要三个主要阶阶段:段:单单芯片微机形成芯片微机形成阶
9、阶段段 1976年,年,Intel公司推出了公司推出了MCS-48系列系列单单片机片机。8位位CPU、1K字字节节ROM、64字字节节RAM、27根根I/O线线和和1个个8位定位定时时/计计数器数器。特点是特点是:存:存储储器容量器容量较较小,小,寻寻址范址范围围小(不小(不大于大于4K),无串行接口,指令系),无串行接口,指令系统统功能不功能不强强。性能完善提高阶段性能完善提高阶段 1980年,年,Intel公司推出了公司推出了MCS-51系列单片系列单片机:机:8位位CPU、4K字节字节ROM、128字节字节RAM、4个个8位并口、位并口、1个全双工串行口、个全双工串行口、2个个16位定位
10、定时时/计数器。寻址范围计数器。寻址范围64K,并有控制功能较,并有控制功能较强的布尔处理器。强的布尔处理器。特点是特点是:结构体系完善,性能已大大提高,:结构体系完善,性能已大大提高,面向控制的特点进一步突出。现在,面向控制的特点进一步突出。现在,MCS-51已成为公认的单片机经典机种已成为公认的单片机经典机种。微控制器化阶段微控制器化阶段 特点是特点是:片内面向测控系统外围电路增强,:片内面向测控系统外围电路增强,使单片机可以方便灵活地用于复杂的自动测控使单片机可以方便灵活地用于复杂的自动测控系统及设备。系统及设备。“微控制器微控制器”的称谓更能反应单片机的本质的称谓更能反应单片机的本质。
11、1982年,年,Intel推出推出MCS-96系列单片机。系列单片机。芯片内集成:芯片内集成:16位位CPU、8K字节字节ROM、232字字节节RAM、5个个8位并口、位并口、1个全双工串行口、个全双工串行口、2个个16位定时位定时/计数器。寻址范围计数器。寻址范围64K。片上还有。片上还有8路路10位位ADC、1路路PWM输出及高速输出及高速I/O部件等。部件等。1.2.2 1.2.2 单单片机片机产产品近况品近况 ATMELATMELATMELATMEL公司融入公司融入公司融入公司融入FlashFlashFlashFlash存存存存储储储储器技器技器技器技术术术术的的的的AT89AT89A
12、T89AT89系列;系列;系列;系列;PhilipsPhilipsPhilipsPhilips公司的公司的公司的公司的80C5180C5180C5180C51、80C55280C55280C55280C552系列;系列;系列;系列;*深圳宏晶科技有限公司的深圳宏晶科技有限公司的深圳宏晶科技有限公司的深圳宏晶科技有限公司的 STC89C/SSTC89C/SSTC89C/SSTC89C/S系列系列系列系列;ADIADIADIADI公司的公司的公司的公司的ADC8xxADC8xxADC8xxADC8xx高精度高精度高精度高精度ADCADCADCADC系列;系列;系列;系列;MaximMaximMax
13、imMaxim公司的公司的公司的公司的DS89C420DS89C420DS89C420DS89C420高速(高速(高速(高速(50MIPS50MIPS50MIPS50MIPS)系列;系列;系列;系列;80C5180C51系列系列单单片机片机产产品繁多,品繁多,主流地位已主流地位已经经形成,形成,近年来推出的近年来推出的与与80C5180C51兼容兼容的主要的主要产产品有:品有:2-1MCS-51单片机的组成单片机的组成2-2MCS-51单片机的引脚及其功能单片机的引脚及其功能2-3MCS-51单片机的存储器配置单片机的存储器配置2-4振荡器与时钟电路及振荡器与时钟电路及CPU时序时序2-5并行
14、并行I/O端口端口2-6MCS-51单片机基本工作系统的组成单片机基本工作系统的组成MCS-51MCS-51单片机结构原理单片机结构原理2-1 MCS-512-1 MCS-51单片机的组成与结构单片机的组成与结构l8 8位中央处理单元位中央处理单元(CPU)(CPU)l128B/256B128B/256B的数据存储器的数据存储器RAMRAMl4KB/8KB4KB/8KB的片内的片内ROM/EPROMROM/EPROMl4 4个个8 8位并行位并行I/OI/O口口P0-P3P0-P3l2 2个定时器个定时器/计数器计数器l5 5个中断源个中断源l1 1个全双工的个全双工的UARTUART(通用异
15、步(通用异步接收、发送器)接收、发送器)l片内振荡与时钟产生电路片内振荡与时钟产生电路1 1、中央处理单元中央处理单元 CPUCPU(8 8位)位)用于数据处理、位操作(位测试、置位、复位)用于数据处理、位操作(位测试、置位、复位)2 2、只读存储器只读存储器 ROMROM(4KB4KB或或8KB8KB)用于永久性存储应用程序,掩膜用于永久性存储应用程序,掩膜ROM、EPROM、EEPROM3 3、随机存取存取器随机存取存取器 RAMRAM(128B/256B128B/256B)用于程序运行中存储工作变量和数据用于程序运行中存储工作变量和数据用作系统总线、扩展外存、用作系统总线、扩展外存、I/
16、OI/O接口芯片接口芯片4、并行输入并行输入/输出口输出口 I/OI/O(3232线)线)5 5、串行输入串行输入/输出口输出口 UARTUART(二线)(二线)串行通信、扩展串行通信、扩展I/OI/O接口芯片接口芯片6 6、定时定时/计数器计数器 T/C(16T/C(16位增量可编程)位增量可编程)它与它与CPUCPU之间各自独立工作,当它计数满时向之间各自独立工作,当它计数满时向CPUCPU中断中断7 7、时钟电路时钟电路分为内部振荡器、外接振荡电路分为内部振荡器、外接振荡电路五源中断、两级优先,可编程进行控制五源中断、两级优先,可编程进行控制8 8、中断系统中断系统P0.0-P0.7P2
17、.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1XTAL2PSENALEEARESET8051805180518051单片机单片机单片机单片机内部结构图内部结构图内部结构图内部结构图运算器运算器存储器存储器I/O接口接口控制器控制器中央处理器中央处理器(CPU)(CPU)包含包含运算器运算器和和控制器控制器两部分两部分(1 1 1 1)8 8 8 8位的位的位的位的ALUALUALUALU:(2 2)8 8位累加器位累加器ACCACC(A A):):(3 3)8位寄存器位寄存器B:(4 4)8 8位程序状态寄存器位程序状态寄存器PSWPSW:(5 5)布尔处理器:)布尔处理器:(6
18、 6)2 2个个8 8位暂存器:位暂存器:运算器 可对可对4 4位(半字节),位(半字节),8 8位(单字节)和位(单字节)和1616位位(双字节)数据进行操作,(双字节)数据进行操作,数据来自两个暂存器。数据来自两个暂存器。累加器,它是最繁忙的累加器,它是最繁忙的8 8位特殊功能寄存器,用位特殊功能寄存器,用A A表示,表示,ALUALU的运算结果存的运算结果存在此处。在此处。8 8位程序状态字寄存器,位程序状态字寄存器,用于存放指令执行后的状用于存放指令执行后的状态信息,供程序查询和判态信息,供程序查询和判别。别。布尔操作器布尔操作器8 8位寄存器,在乘除运算位寄存器,在乘除运算时,用来存
19、放另一个操作时,用来存放另一个操作数,并存放一部分结果。数,并存放一部分结果。(1 1 1 1)程)程)程)程序计数器序计数器序计数器序计数器(PC)(PC)(PC)(PC)(2 2)指令寄存器)指令寄存器(IR)(IR)(3 3)指令译码器指令译码器(ID)(ID)(4 4)振荡器及定时与控制电路)振荡器及定时与控制电路控制器中央处理器中央处理器(CPU)(CPU)控制器控制器 由由两两个个8位位的的计计数数器器(PCL,PCH)组组成成,PC存存储储将将要要执执行行的的下下一一条条指指令令的的地地址址,16位位可可容容纳纳的的最最大大数数值值为为65535,为为64KB,因因此此,MCS-
20、51可可寻寻址址64KB的的程程序序存存储储器。改变器。改变PC内的值,就可改变程序执行的方向。内的值,就可改变程序执行的方向。1616位程序计数器位程序计数器-PC-PC 由由PC内内容容指指定定的的ROM地地址址单单元元中中取取出出的的指指令令,经经指指令令寄寄存存器器送送至至指指令令译译码码器器进进行行译译码码,进进而而CPU产产生生相相应应的控制信号,执行指令所规定的操作。的控制信号,执行指令所规定的操作。指令存储器及指令译码器指令存储器及指令译码器 MCS-51片片 内内 有有 振振 荡荡 器器 OSC,通通 过过 单单 片片 机机 的的XTAL1,XTAL2连连接接片片外外的的石石
21、英英晶晶体体及及两两个个频频率率微微调调电电容容,产生单片机工作所需要的基本时钟产生单片机工作所需要的基本时钟节拍。节拍。振荡器及定时控制电路振荡器及定时控制电路 1、电源管脚:、电源管脚:Vcc,Vss2、时钟电路管脚:、时钟电路管脚:XTAL1,XTAL23、控制信号脚:、控制信号脚:RST/VPD,ALE/PROGPSEN及及Vpp/EA4、I/O管脚管脚P0,P1,P2,P32-2 MCS-512-2 MCS-512-2 MCS-512-2 MCS-51单片机的引脚及其功能单片机的引脚及其功能单片机的引脚及其功能单片机的引脚及其功能电源管脚电源管脚 Vcc:电源端,为电源端,为5V,允
22、许电源有偏差;,允许电源有偏差;GND(VSS):地。地。注注:为了防止电源脉冲对单片机的影响,一般在:为了防止电源脉冲对单片机的影响,一般在VCC和和GND之间接上一个之间接上一个1uF的电容。的电容。时钟电路管脚时钟电路管脚 XTAL1:芯片内部反相放大器输入端,使用外部振荡器时需接地。芯片内部反相放大器输入端,使用外部振荡器时需接地。XTAL2:芯片内部反相放大器输出端,使用外部振荡时接振荡器输芯片内部反相放大器输出端,使用外部振荡时接振荡器输入的信号。入的信号。XTAL2XTAL1内部振荡方式内部振荡方式XTAL2XTAL1外部振荡器外部振荡器外部振荡方式外部振荡方式控制线控制线 AL
23、E/PROGALE/PROG ALE:地地址址锁锁存存信信号号端端,频频率率为为晶晶体体振振荡荡器器的的1/6正正脉脉冲冲信信号号。当当CPU访访问问片片外外扩扩展展存存储储器器时时,该该信信号号作作为为锁锁存存低低8位地址的控制信号。位地址的控制信号。PROG:当当片片内内有有EPROM时时,该该管管脚脚提提供供编编程程写写入入时时的的编编程程脉冲信号输入端。脉冲信号输入端。控制管脚控制管脚 RST/VPDRST/VPD RST:复复位位信信号号输输入入端端,高高电电平平有有效效。保保持持两两个个机机器器周周期期以以上上,并并变变为为低低电电平平,单单片片机机开开始始从从0000地地址址执执
24、行行,即即可可完完成成单单片片机机复复位位。单单片机复位不改变片内片机复位不改变片内RAM的值的值。VPD:备用电源。备用电源。+5VRESET10uF控制管脚控制管脚 PSENPSEN PSEN:程程序序存存储储器器允允许许输输出出信信号号端端。在在访访问问片片外外程程序序存存储储器器时时,CPU控控制制该该端端输输出出负负脉脉冲冲作作为为外外部部存存储储器器的的选选通通信信号号,允允许许CPU读读出出EPROM中中被被选选中中单单元元中中的的指指令令码码。该管脚一般连程序存储器的选通信号端该管脚一般连程序存储器的选通信号端(OE)。控制管脚控制管脚 EA/EA/VppVpp EA:外外部部
25、程程序序存存储储器器地地址址允允许许输输入入端端/固固化化编编程程电电压压输输入入端端。程程序序存存储储器器允允许许输输出出信信号号端端。当当EA接接高高时时,前前4KB或或8KB程程序序在在单单片片机机内内,当当EA接接地地时时,所所有有程程序序均均在在外外存储器。存储器。Vpp:对单片机内程序存储器编程时施加的高电平输入端。对单片机内程序存储器编程时施加的高电平输入端。2-3 MCS-512-3 MCS-512-3 MCS-512-3 MCS-51单片机的存储器配置单片机的存储器配置单片机的存储器配置单片机的存储器配置计算机存储结构:计算机存储结构:哈佛结构:程序存储与数据存储分开哈佛结构
26、:程序存储与数据存储分开单片机单片机冯冯.诺诺依依曼曼结结构构:程程序序与与数数据据存存储储在在一一起起通通用用计计算算机机单片机的存储器结构(单片机的存储器结构(ROMRAM):):ROM:常常用用于于存存放放程程序序和和需需要要长长时时间间存存放放的的数数据据,掉掉电不丢失电不丢失;RAM:随时可读可写的存储器,掉电后数据立即丢失。:随时可读可写的存储器,掉电后数据立即丢失。00HFFH1 1、单片机的存储器结构、单片机的存储器结构 采用哈佛结构,存在采用哈佛结构,存在4个物理上相互独立的存储器空间:个物理上相互独立的存储器空间:l片内程序存储器片内程序存储器片外程序存储器片外程序存储器l
27、片内数据存储器片内数据存储器片外数据存储器片外数据存储器0FFFH0000H片内片内4K4KROMROM0000HFFFFH片外片外64KROM片外片外64KRAM(I/O)0000HFFFFHSFR片内片内RAMRAM7FH80H0FFFHEAEA引脚引脚=0=0访问片内与片外访问片内与片外RAM靠指令区分靠指令区分MOV与与MOVXEAEA引脚引脚=1=12 2、单片机的程序存储器、单片机的程序存储器 常用单片机的程序存储器容量:常用单片机的程序存储器容量:型号型号ROMROMRAMRAM8031/328031/320 0128B/256B128B/256B8051/528051/524K
28、B/8KB4KB/8KB128B/256B128B/256B8751/528751/524KB/8KB EPROM4KB/8KB EPROM128B/256B128B/256B89X51/5289X51/524KB/8KB FLASH4KB/8KB FLASH128B/256B128B/256B随着单片机制造技术的发展,现在内部随着单片机制造技术的发展,现在内部ROM有有64KB,RAM达几达几KB的都有。在进行单片机应用系统开发时,应注意选择,能不扩展的尽量的都有。在进行单片机应用系统开发时,应注意选择,能不扩展的尽量不扩展。不扩展。(片内(片内128B不包含不包含SFR区)区)单片机的程序
29、存储器单片机的程序存储器 单片机的程序存储器的应用:单片机的程序存储器的应用:l上电复位时,上电复位时,PC=0000;PC=0000;l程序存储器有保留单元:程序存储器有保留单元:入口单元地址入口单元地址入口单元地址入口单元地址预留目的预留目的预留目的预留目的存储单元范围存储单元范围存储单元范围存储单元范围0000H0000H复位后初始化引导程序复位后初始化引导程序复位后初始化引导程序复位后初始化引导程序00H-02H00H-02H0003H0003H外部中断外部中断外部中断外部中断0 0服务程序服务程序服务程序服务程序(INT0)(INT0)03H-0AH03H-0AH000BH000BH
30、定时器定时器定时器定时器/计数器计数器计数器计数器0 0溢出中断服务程序溢出中断服务程序溢出中断服务程序溢出中断服务程序0BH-12H0BH-12H0013H0013H外部中断外部中断外部中断外部中断1 1服务程序服务程序服务程序服务程序(INT0)(INT0)13H-1AH13H-1AH001BH001BH定时器定时器定时器定时器/计数器计数器计数器计数器1 1溢出中断服务程序溢出中断服务程序溢出中断服务程序溢出中断服务程序1BH-22H1BH-22H0023H0023H串行口中断服务程序串行口中断服务程序串行口中断服务程序串行口中断服务程序23H-2AH23H-2AH002BH002BH定
31、时器定时器定时器定时器/计数器计数器计数器计数器2 2溢出中断服务程序溢出中断服务程序溢出中断服务程序溢出中断服务程序2BH-2BH-3 3、单片机的数据存储器、单片机的数据存储器 单片机的数据存储器最大寻址为单片机的数据存储器最大寻址为64KB,地址为:,地址为:0000FFFFH片内为片内为128B的数据存储器,片外为的数据存储器,片外为64KB,地址有重叠,靠指令区分,地址有重叠,靠指令区分00H07H08H0FH10H17H18H1FH2FH30H20H7FH用户RAM区位寻址区3组2组1组0组通用工作寄存器通用工作寄存器R0R7低低128B的数据的数据RAM高高128B的特殊寄存器区
32、的特殊寄存器区SFR区区80HFFH单片机的数据存储器单片机的数据存储器 数据存储器中的堆栈:数据存储器中的堆栈:l堆栈用于保护中断时程序的断点地址,以便中断返回堆栈用于保护中断时程序的断点地址,以便中断返回时程序的继续执行;时程序的继续执行;l堆栈的特点是先进后出,后进先出;堆栈的特点是先进后出,后进先出;l堆栈的指令是:堆栈的指令是:PUSH(压入)和(压入)和POP(弹出)(弹出)l堆栈寄存器叫堆栈寄存器叫SP,其内部的数值叫栈底,初始值为,其内部的数值叫栈底,初始值为07H,一,一般应进行设置到般应进行设置到50H或或60H。MOV SP,#60HPUSH A.PUSH B07H60H
33、61H7FH07H07HSP60H60HSPA61H61HSPB单片机的数据存储器单片机的数据存储器低低128B的分区:的分区:l工作寄存器区,工作寄存器区,R0-R7,共四组,由,共四组,由PSW中的中的RS1,RS0决定;决定;l位寻址区位寻址区20H-2FH,位地址为:,位地址为:00H-7FH;l一般数据存储区;一般数据存储区;l堆栈区(由用户进行设置,初始值为堆栈区(由用户进行设置,初始值为07H)高高128B的分区:的分区:l特殊功能寄存器特殊功能寄存器(SFR):ACC,B,PSW,P0,P1,P2,P3,IP,IE,TCON,SCON可位寻址可位寻址(11个个)SP,DPTR,
34、TMOD,TH0,TL0,TH1,TL1,SBUF,PCON不可位寻址不可位寻址(共共9个个)特殊功能寄存器特殊功能寄存器(SFR)的初始值除的初始值除P0,P1,P2,P3为为FFH,SP为为07外,其外,其余均为余均为00H。单片机的特殊功能寄存器单片机的特殊功能寄存器(SFR)(SFR)D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0CYCYACACF0F0RS1RS1RS0RS0OVOV/P PPSWPSW(ProgramStateWord)程序状态字;)程序状态字;CY进位位标志位或借位位标志位;进位位标志位或借位位标志位;AC半字节进位位标志位或半字节借位标志位;半
35、字节进位位标志位或半字节借位标志位;F0用户标志位;用户标志位;RS1,RS0工作寄存器组选择位,工作寄存器组选择位,00-0区,区,01-1区,区,10-2区,区,11-3区;区;OV溢出标志位,当进行补码运算时,如有溢出,超出溢出标志位,当进行补码运算时,如有溢出,超出-128127范围时置位;范围时置位;/未定位位,在未定位位,在52中为中为F1,用户标志位;,用户标志位;P奇偶标志位,每条指令执行完后,跟踪指示奇偶标志位,每条指令执行完后,跟踪指示A内的内的1的个数,如为奇数,的个数,如为奇数,则则P=1,否则为否则为0,常用于校验串行通信中的数据传送是否出错。,常用于校验串行通信中的
36、数据传送是否出错。2-4 2-4 2-4 2-4 振荡器与时钟电路及振荡器与时钟电路及振荡器与时钟电路及振荡器与时钟电路及CPUCPUCPUCPU时序时序时序时序1.振荡器与时钟电路:振荡器与时钟电路:单片机内部的增益反向放大器通过单片机内部的增益反向放大器通过XTAL1、XTAL2两个引脚外接的反馈石英两个引脚外接的反馈石英晶体元件构成自激振荡器。时钟发生器把振荡器的信号进行二分频,向晶体元件构成自激振荡器。时钟发生器把振荡器的信号进行二分频,向CPU提供提供了两相时钟脉冲信号了两相时钟脉冲信号P1和和P2。时钟信号的周期称为。时钟信号的周期称为S,它是振荡周期的它是振荡周期的2倍,在每个倍
37、,在每个时钟周期时钟周期S的前半周期,的前半周期,P1有效,后半周期,有效,后半周期,P2有效。有效。2-4 2-4 2-4 2-4 振荡器与时钟电路及振荡器与时钟电路及振荡器与时钟电路及振荡器与时钟电路及CPUCPUCPUCPU时序时序时序时序(续续续续)2.机器周期和指令周期:机器周期和指令周期:单片机的一个机器周期由单片机的一个机器周期由6个个S状态周期组成,即状态周期组成,即S1-S6,每个状态又持续两个每个状态又持续两个振荡周期,即振荡周期,即P1和和P2两拍,故一个机器周期包含两拍,故一个机器周期包含12个振荡周期,即个振荡周期,即S1P1,S1P2,S2,P1,S2P2,S6P1
38、,S6P2共共12个状态拍。若采用个状态拍。若采用12MHz晶振,则每个机器周期为晶振,则每个机器周期为1us。单片机的指令长度分为单片机的指令长度分为1B、2B和和3B三种,按三种,按CPU执行每条指令的时间分为执行每条指令的时间分为单周期指令单周期指令、双周期指令双周期指令和和四周期指令四周期指令三种三种。每每一一条条指指令令的的执执行行包包括括取取指指、执执指指两两个个阶阶段段。在在每每个个机机器器周周期期内内ALE两两次次有有效效,第第一一次次出出现现在在S1P2和和S2P1之之期期间间,第第二二次次出出现现在在S4P2和和S5P1期期间。间。2-4 2-4 2-4 2-4 振荡器与时
39、钟电路及振荡器与时钟电路及振荡器与时钟电路及振荡器与时钟电路及CPUCPUCPUCPU时序时序时序时序(续续续续)3.取指、执指的时序:取指、执指的时序:2-5 2-5 2-5 2-5 并行输入并行输入并行输入并行输入/输出端口输出端口输出端口输出端口8051单片机有四个单片机有四个8位的位的I/O端口,分别称为端口,分别称为P0,P1,P2,P3,每,每个端口均为准双向口,共占个端口均为准双向口,共占32只引脚,每个端口可作为只引脚,每个端口可作为8位的总位的总线使用,也可作为单独的线使用,也可作为单独的I/O应用。每个端口都包含一个锁存器应用。每个端口都包含一个锁存器(即(即特殊寄存器特殊
40、寄存器P0-P3),一个输出驱动器和输入缓冲器。作输),一个输出驱动器和输入缓冲器。作输出线时数据可以锁存,作输入时可以缓冲。出线时数据可以锁存,作输入时可以缓冲。当有外部扩展的存储器时,当有外部扩展的存储器时,P0作为地址的作为地址的低低8位位,P2作为作为高高8位位组成组成16位位地址总线,而地址总线,而P0复用为复用为8位的数据总线。位的数据总线。P0P2P3P12-5 2-5 2-5 2-5 并行输入并行输入并行输入并行输入/输出端口输出端口输出端口输出端口1 1、P0P0口口 无无外外扩扩存存储储器器时时,P0P0可可作作为为I/OI/O应应用用。CPUCPU执执行行传传送送或或改改
41、写写位位内内容容的的指指令令时时,硬硬件件使使C=0,C=0,开开关关MUXMUX处处于于图图示示位位置置,P0P0作作为为通通用用I/OI/O口口。此此时时,T1T1处处于于截截止止状状态态,输输出出极极变变为为漏漏极极开路,此时需加上拉电阻。开路,此时需加上拉电阻。VCCP0P0口结构口结构 (1 1)P0P0用用作作输输出出口口时时,当当CPUCPU执执行行输输出出指指令令时时,写写脉脉冲冲加加在在D D锁锁存存器器的的CPCP上上,输输出出数数据据经经过过锁锁存存器器的的D D端端,反反相相输输出出在在Q Q非非,然然后后加加到到T2T2上上,到到数数据据为为1 1是是,T2T2导导通
42、通,P0.iP0.i输输出出为为0 0,当当数数据据为为0 0时时,T2T2截截止止,P0.iP0.i的的数数据经上拉电阻拉高,为据经上拉电阻拉高,为1 1。VCC 特特殊殊的的单单片片机机“读读运运算算(修修改改)写写”输输出出指指令令,其其执执行行过过程程为为先先读读出出锁锁存存器器的的数数据据,然然后后运运算算再再锁锁存存到到锁锁存存器器,然然后后输输出出到到引引脚脚,读读锁锁存存器器中中的的数数据据时时,Q Q端端数数据据经经过过控控制制开开通通的的三三态态缓缓冲冲器器1 1送送入入内内部部数数据据总线。总线。P0P0口结构口结构 (2 2)P0P0用用作作输输入入口口时时,读读引引脚
43、脚的的指指令令将将三三态态缓缓冲冲器器2 2打打开开,端端口口引引脚脚上的数据经上图蓝色的线输入内部数据总线。上的数据经上图蓝色的线输入内部数据总线。在在读读引引脚脚时时,由由于于T2T2并并接接在在引引脚脚上上,如如果果T2T2导导通通它它会会把把引引脚脚上上的的高高电电平平拉拉成成低低电电平平,从从而而产产生生误误读读。因因此此,在在读读端端口口之之前前,应应先先向向端端口口锁锁存器写存器写“1”1”,从而是,从而是Q Q非为非为“0”0”,使,使T2T2截止。截止。VCCP0P0口结构口结构 P0P0口用作数据口用作数据/地址总线使用时地址总线使用时,芯片外部有锁存器:,芯片外部有锁存器
44、:(1 1)P0P0口口先先送送出出低低8 8位位地地址址再再送送出出数数据据 此此时时C=1C=1,MUXMUX打打到到上上方方,地地址址/数数据据位位驱驱动动T1T1,其其反反相相驱驱动动T2T2,当当地地址址/数数据据位位为为“1”1”时时,T1T1导导通通,T2T2截截止止,P0.iP0.i输输出出为为“1”1”;当当地地址址/数数据据位位为为“0”0”时时,T1T1截截止止,T2T2导导通通,P0.iP0.i为为“0”0”。(2 2)P0P0口口先先送送出出低低8 8位位地地址址再再输输入入数数据据 送送出出地地址址与与上上相相同同,但但读读入数据时,打开缓冲器入数据时,打开缓冲器2
45、,2,引脚数据经缓冲器引脚数据经缓冲器2 2进入内部数据总线。进入内部数据总线。VCCP1P1口结构口结构 P1P1口口为为准准双双向向口口,用用作作通通用用I/OI/O口口(开开关关量量输输入入/输输出出),输输出出驱驱动动有有上上拉拉电电阻阻(实实质质为为由由两两个个场场效效应应管管构构成成的的),其其余余与与P0P0作作为为I/OI/O口相同。口相同。P2P2口结构口结构 P2P2口可作为地址高口可作为地址高8 8位,也可作为通用位,也可作为通用I/OI/O口。口。(1 1)作作为为高高8 8位位地地址址总总线线:MUXMUX打打向向上上方方,使使地地址址与与反反相相器器3 3连连接接,
46、由由P2.XP2.X输出输出地址信息;地址信息;(2 2)作为通用)作为通用I/OI/O口时:口时:MUXMUX打向下方,输入打向下方,输入/输出与输出与P0P0口相同。口相同。P3P3口结构口结构 (1)P3(1)P3口口作作为为通通用用I/OI/O口口:当当CPUCPU执执行行对对P3P3口口的的I/OI/O操操作作时时,W W被被置置1,P31,P3口变为通用口变为通用I/OI/O口,与口,与P0P0、P1P1、P2P2作为作为I/OI/O时的工作原理一致。时的工作原理一致。P3P3口口除除了了具具有有准准双双向向I/OI/O口口以以外外,各各引引脚脚还还具具有有另另外外一一项项功功能能
47、,即即第第二二功功能。能。P3P3口结构口结构P3P3口的第二功能:口的第二功能:口口口口 线线线线第二功能第二功能第二功能第二功能P3.0RXD(串行口通信数据输入线)P3.1TXD(串行口通信数据输出线)P3.2INT0(外部中断0信号输入)P3.3INT1(外部中断1信号输入)P3.4T0(计数器0的外部信号输入端)P3.5T1(计数器1的外部信号输入端)P3.6WR(CPU至片外数据存储器的“写选通控制”输出)P3.7RD(CPU至片外数据存储器的读写选通控制”输出)(2)P3口用作第二功能时,锁存器的输出口用作第二功能时,锁存器的输出Q由硬件设置为由硬件设置为1。P3口输出时,数据由
48、口输出时,数据由W线经反相器线经反相器3输出;输出;P3口输入时,经同相器口输入时,经同相器4输入至第二功能线。输入至第二功能线。端口的负载能力和接口要求端口的负载能力和接口要求 P0口:可驱动口:可驱动8个个LS型型TTL负载;负载;P1-P3:可驱动:可驱动4个个TTL型负载;型负载;ALE端:可驱动端:可驱动8个个LS型型TTL负载;负载;PSEN:可驱动:可驱动8个个LS型型TTL负载。负载。2 2 2 2、端口接口要求、端口接口要求、端口接口要求、端口接口要求1 1 1 1、端口的驱动能力、端口的驱动能力、端口的驱动能力、端口的驱动能力 作作为为输输入入口口时时,任任何何TTL或或N
49、MOS电电路路都都能能以以正正常常的的方方式式驱驱动动8051单单片片机机(HMOS)的的P1-P3口口,由由于于其其输输出出级级具具有有上上拉拉电电阻阻,故故可可被被OC门门的的电电路所驱动,无需上拉电阻;路所驱动,无需上拉电阻;注注意意:由由于于单单片片机机的的端端口口只只提提供供几几毫毫安安的的输输出出电电流流,因因而而,当当输输出出口口去去驱驱动动一一个个普普通通晶晶体体管管的的基基极极(或或TTL电电路路输输入入端端)时时,应应在在端端口口与与晶晶体体管的基极之间串联一个电阻,以限制高电平输出时的电流。管的基极之间串联一个电阻,以限制高电平输出时的电流。2-6 2-6 2-6 2-6
50、 单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成洗衣机控制电路板洗衣机控制电路板2-6 2-6 2-6 2-6 单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成复读机控制电路板复读机控制电路板2-6 2-6 2-6 2-6 单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成单片机的基本工作系统组成排队机控制电路板排队机控制电路板第二讲 80C51的中断系统 一、一、一、一、80C5180C51的中断系统结构的中断系统结构的中断系统结构的中断系统结构 中断的概念中断的概念中断的