《一文教你快速全面掌握AT89C51单片机(含实际开发案例).doc》由会员分享,可在线阅读,更多相关《一文教你快速全面掌握AT89C51单片机(含实际开发案例).doc(4页珍藏版)》请在三一文库上搜索。
1、一文教你快速全面掌握AT89C51单片机(含实际开发案例)1.AT89C51简介AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控
2、制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示 。2.AT89C51的主要特性与MCS-51 兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路3.AT89C51,AT89C52和AT89S51的三种单片机外形4.AT89C51管脚说明 : VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路
3、双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个
4、TTL门电流,当P2口被写1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入1后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)
5、这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能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(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期
6、间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则
7、在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。图1 系统结构图详情参阅:基于AT89C51单片机的智能计步器设计2.用AT89C51单片机控制步进电机的汇编源程序下面程序完成的主要功能:实现步进电机的正反转,加速、减速;显示电机转速(转速级别)和工作状态(正转、反转、不转)。源程序SPEED EQU 10H ;SPE
8、ED为转速等级标志,共7级,即17FX EQU 11H ;FX 为方向标志COUNT EQU 12H ;COUNT中断次数标志ORG 0000HAJMP MAINORG 0003H ;外部中断0入口地址,加速子程序AJMP UPORG 0013H ;外部中断1入口地址,减速子程序详情参阅:用AT89C51单片机控制步进电机的汇编源程序3.at89c51电子时钟电路图和程序at89c51电子时钟电路图:1.功能:1 开机时,显示12:00:00的时间开始计时;2 P0.0/AD0控制秒的调整,每按一次加1秒;3 P0.1/AD1控制分的调整,每按一次加1分;4 P0.2/AD2控制时的调整,每按
9、一次加1个小时;源程序:3 系统板上硬件连线(1)把单片机系统区域中的P1.0P1.7端口用8芯排线连接到动态数码显示区域中的AH端口上;(2)把单片机系统:区域中的P3.0P3.7端口用8芯排线连接到动态数码显示区域中的S1S8端口上;(3)把单片机系统区域中的P0.0/AD0、P0.1/AD1、P0.2/AD2端口分别用导线连接到独立式键盘区域中的SP3、SP2、SP1端口上;详情参阅:at89c51电子时钟电路图和程序4.基于AT89C51的电动自行车快速充电器设计本文旨在研究开发一个根据电池饱和的程度智能改变充电模式,并可在较短时间(四小时)内将电池充好的电动自行车快速充电器(电池规格
10、36V、12A)。二、脉冲快速充电法脉冲充电方式即脉冲电流间歇对电池充电,充电脉冲使蓄电池充满电量,而间歇期使蓄电池经化学反应产生的氧气和氢气有时间重新化合而被吸收掉,消除极化从而减轻了蓄电池的内压,使下一脉冲的恒流充电能够顺利地进行,使蓄电池可以吸收更多的电量。间歇脉冲使蓄电池有较充分的反应时间,减少了析气量,提高了蓄电池的充电电流接受率。三、系统组成充电器主电路采用半桥变换式高频开关稳压电源,而控制电路由单片机实现。电网交流电在通过EMI滤波器除去共模信号后,进行桥式整流,再通过两电容分压后与两开关管V1、V2相联接,将正弦交流电压变换成约高于充电电压的脉冲电压。在经过半桥滤波和LC滤波电
11、路使电压达到一较稳定值。 控制电路由单片机AT89C51组成,电源由电网交流电经过变压器变压、全桥整流、稳压管稳压后提供。单片机通过检测温度传感器的电压信号,以软件的方式控制输出脉冲,从而控制开关管的通断。另外,通过检测充电电压和电流值,控制单片机输出脉冲宽度,以进入不同的充电阶段。详情参阅:基于AT89C51的电动自行车快速充电器设计5.基于AT89C51的智能稳压电源设计本文介绍了一种基于AT89C51的智能稳压电源的设计方案,其核心技术是通过AT89C51控制数模转换来改变其后稳压模块的输出。该系统由整流滤波初步稳压电路部分、AT89C51控制部分、DAC和显示部分组成,该稳压电源能连续步进可调,并可实时显示,弥补了传统稳压电源的不足。本系统研究的直流稳压电源主要是符合智能化、数字化及模块化的特点:智能化指系统有可编程模块能对系统进行智能控制;数字化指系统输出电压通过7段数码管显示,并可通过按键对输出电压进行连续步进数字化调节;模块化指系统由各个相关模块组成,提高了系统的可靠性。AT89C51智能型稳压电源设计原理1、设计系统框图系统由各模块组成,其模块构成的系统框图如图1所示。详情参考:基于AT89C51的智能稳压电源设计
链接地址:https://www.31doc.com/p-3362517.html