家用电器按时器设计刘小伟.docx
《家用电器按时器设计刘小伟.docx》由会员分享,可在线阅读,更多相关《家用电器按时器设计刘小伟.docx(18页珍藏版)》请在冰豆网上搜索。
![家用电器按时器设计刘小伟.docx](https://file1.bdocx.com/fileroot1/2023-2/1/ccd1de3d-495b-4418-ba59-5da38e3b7363/ccd1de3d-495b-4418-ba59-5da38e3b73631.gif)
家用电器按时器设计刘小伟
毕业设计(论文)任务书
家用电器按时器的设计
---基于AT89C51单片机的家用按时器设计
学生姓名:
刘小伟
专业:
电子信息工程技
班级:
08电信
(2)班
指导老师:
蒋静瑚
摘要
本文详细介绍了对基于AT89C51单片机的家用按时器按时功能的设计。
家用按时器在日常生活中有较为普遍的应用,因此对于这一课题的研究有必然得实际应用价值。
对这一硬件电路的设计上主要将其分为三个模块:
按时器、键盘和数码管显示。
显示部份采用的是五位LED数码管串行静态显示和六位LED数码管动态扫描显示。
键盘部份采用4×4的阵列式键盘,向P1口的高四位逐个输出低电平,若是有键按下则相应输出为低,若是没有键按下,则输出为高。
按下1~3号键设按时刻,4号设置键,5号肯定键,控制动态LED来实现按时器的按时功能。
这大体实现了电器按时的效果,结果超级令人满意。
其特点:
体积小、价钱低廉、性能稳固、实现方便、功能齐全。
关键词:
按时器,单片机AT89C51,数码管显示,键盘
Abstract
ThispaperintroducesindetailthehouseholdofbasedonAT89C51timertimingfunctiondesign.Householdtimerindailylifehasawiderangeofapplicationssoforthistopicresearchhascertainpracticalvalue.
Forthehardwarecircuitdesignmajorwhichisdividedintothreemodules:
timer,keyboardanddigitalpipedisplay.DisplaysectionUSESisfiveLEDdigitaldisplayandsixtubeserialstaticdynamicscanningLEDdigitaldisplaytube.Keyboardpartadoptsof4*4arraytypekeyboard,highfourmouthtoP1outputlowlevel,iftherearekeypressiscorrespondingoutputislow,ifnokeypress,theoutputishigh.
Press1~3keysettingtime,4Settingsbutton,the5thdeterminekey,LEDtorealizedynamictimercontroloftimefunction.Thisbasicallyachievedelectrictimingeffect,theresultissatisfactory.Itscharacteristic:
thesmallvolume,pricecheapandstableperformanceandachieveconvenient,completefunction.
Keywords:
timer,microcontrollerAT89C51,digitalpipedisplay,thekeyboard
第1章绪论
家用按时器的概述
所谓单片机,即把组成微型运算机的各个功能部件,如中央处置器CPU、随机存储器RAM、只读存储器ROM、输入/输出接口电路、按时器/计数器和串行通信接口等集成在一块芯片中,组成一个完整的微型运算机。
因此单片机初期的含义为单片微型运算机(singlechipmicrocomputer),直接译为单片机,并一直沿用至今。
随着单片微型运算机八十年代以来的迅速进展,单片机具有高集成度、高靠得住性、控制功能强、体积小巧、扩展灵活、低电压、低功耗和优良的性能价钱比等长处,因此在国民经济各个领域取得了普遍的应用,有力地推动了各行业的技术改造和产品的更新换代。
因此目前这种基于单片机的技术在国内外的研究已经日趋成熟,而且已经制成了一种成品——家用按时器,能够如此说,此刻的家用电器大体上都采用了单片机控制,从电饭褒、台灯、电扇、洗衣机、电冰箱、空调机、彩电,五花八门,无所不在,令人类的生活加倍方便舒适,丰硕多彩
主要研究工作
家用按时器主要由静态显示电路,动态显示电路,键盘,最小系统电路,和执行电路组成。
静态电路是由单片机89C51,74LS164芯片和LED数码管组成。
动态电路是由单片机89C5一、74LS06芯片、74LS245芯片组成。
最小系统是由98C51和复位电路组成。
执行电路是由光耦元件和继电器组成。
主要实现的功能就是控制开关和工作时刻。
主要的研究工作为以AT89C51单片机为核心,通过1至3键盘设按时刻,别离按顺序控制秒分时,由五位LED数码管进行静态显示,从左往右,第一名显示小时,第二,三位两位显示分,最后两位显示秒,由六位LED数码管进行动态显示,用来显示工作状态。
当工作前,数码管显示GOODBABY,工作中数码管显示HELP,工作结束数码管显示HELPYOU。
如此就可以实现家用按时器对电器有了完善的控制。
电路原理图由画图工具Protel99SE绘制出,并转换成PCB图,制作成PCB板,选择所需电子元器件进行焊接,然后进行软硬件的调试,最后将整个完整的程序写入单片机中,取得一个符合本课题所要实现的功能的PCB板。
第2章硬件电路设计
整体方案设计
本课题为基于AT89C51单片机的家用按时器的设计,所以要充分利用单片机的各类功能完成这一设计。
按时器是通过按键肯定静态显示时刻,动态显示工作状态,来实现按时的效果的。
整体方案如图2-1。
图2-1整体设计方案
AT89C51的简介
本课题所研究的按时器主如果以AT89C51单片机的为核心的,因此可否掌握好这一系列单片机的相关功能及应用是这一课题的研究的关键所在。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处置器,俗称单片机。
单片机的可擦除只读存储器能够反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
外形及引脚排列如图2-2所示。
图2-2AT89C51单片机引脚图
主要特性:
(1)与MCS-51兼容;
(2)4K字节可编程闪烁存储器;
(3)寿命:
1000次擦写周期;
(4)数据保留时刻:
10年;
(5)全静态工作:
0Hz-24MHz;
(6)三级加密程序存储器;
(7)128×8位内部RAM;
(8)32可编程I/O线;
(9)2个16位按时器/计数器;
(10)6个中断源;
(11)可编程串行通道;
(12)低功耗的闲置和掉电模式;
(13)片内振荡器和时钟电路。
管脚说明:
(1)VCC:
供电电压;
(2)GND:
接地;
(3)P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被概念为高阻输入。
P0能够用于外部程序数据存储器,它能够被概念为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,现在P0外部必需被拉高。
(4)P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外手下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
(5)P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且
作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄放器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
(6)P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外手下拉为低电平,P3口将输出电流(ILL),这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下所示:
1)RXD(串行输入口);
2)TXD(串行输出口);
3)/INT0(外部中断0);
4)/INT1(外部中断1);
5)T0(记时器0外部输入);
6)T1(记时器1外部输入);
7)/WR(外部数据存储器写选通);
8)/RD(外部数据存储器读选通);
9)P3口同时为闪烁编程和编程校验接收一些控制信号。
(7)RST:
复位输入。
当振荡器复位器件时,要维持RST脚两个机械周期的高电平时刻。
(8)ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于按时目的。
但是要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
现在,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
若是微处置器在外部执行状态ALE禁止,置位无效。
(9)/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每一个机械周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
(10)/EA/VPP:
当/EA维持低电平时,则在此期间外部程序存储器(0000H-FFFFH),无论是不是有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端维持高电平时,其间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
(11)XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
(12)XTAL2:
来自反向振荡器的输出。
振荡器特性:
XTAL1和XTAL2别离为反向放大器的输入和输出。
该反向放大器能够配置为片内振荡器。
石晶振荡和陶瓷振荡都可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必需保证脉冲的高低电平要求的宽度。
单元电路的设计
2.3.1单片机最小系统
当单片机利用芯片内部时钟时,单片机的XTAL一、XTAL2外接石英晶体和微调电容,这就组成了单片机的最小系统。
图2-3晶振电路原理图
如图2-3所示,晶振电路采用12M的石英晶体,两个微调电容均为30pF。
微调电容的一端相连后接地,另一端别离接石英晶体的两头,然后接XTAL1和XTAL2。
复位时单片机的初始化操作,其主要功能是使CPU和系统中其他部件都处于一个肯定的初始状态,并从那个初始状态开始工作。
除进入系统的正常初始化之外,当程序运行犯错或操作错误使系统处于死循环时,也需按复位键以从头启动机械。
RST引脚是复位信号的输入端,复位信号是高电平有效,高电平有效时刻应持续24个振荡脉冲周期(即二个机械周期)以上,本课题中利用的是频率为12MHz的晶振,则复位信号如图2-4所示。
整个复位电路包括芯片内外两部份。
外部电路产生的复位信号(RST)送斯密特触发器,再由片内复位电路在每一个机械周期对斯密特触发器进行采样,然后取得内部复位操作所需要的信号。
复位操作有上电自动复位和按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现:
只要电源的上升时刻不超过1ms,电容视为短路,电源被加到RST(脉宽>24T),单片机即可自动复位,如图2-4所示。
按键手动复位有电平方式和脉冲方式两种。
其中,按键电平复位时通过使复位端经电阻与电源接通而实现的,而按键脉冲复位则是利用微分电路产生的正脉冲来实现的。
我选择的是按键电平复位,出现故障时,按复位键就可以够恢复初始状态。
图2-4按键电平复位
2.3.2键盘
本课题的静态串行LED数码管要显示时刻,就需要键盘来设定,键盘有阵列式键盘、查询式键盘等。
对于一个8位I/O口,阵列式键盘能够接16个按键,而查询式键盘只可接8个按键。
以P1口为例,若是有键按下,则相应读入的位为低,若是没有键按下,则相应读入的位为高。
通过如此能够判断按下什么键。
在有键按下后,要有必然得延时,避免键盘抖动。
利用静态串行显示模块显示键值,RXD()接74LS164AD两头
键盘由若干行若干列的按键开关组成的矩阵叫做阵列式键盘,它的行和列由I/O接口来控制。
本课题所用到的是由16个键所组成的阵列式键盘。
16个按键开关设置在行列线交点处,开关两头别离连到行列线上。
每根列线上端通过上接电阻接+5V电源,行线接一个行并行输出接口,列线接一个并行输入接口。
第一使所有行线位低电平,当键盘上没有键按下时,则所有列线位高电平,
即读到全数为“1”的数据:
当有任意按键闭合时,总有一根列线位低电平,即读到得数据部全为
“1”。
而判断具体是哪个键按下时,则一次给每一根行线送低电平,然后读所有列线状态,若全为“1”,则按键不在次低电平上;若列线状态有一根位“0”,则按键就在现有低电平行于低电平列的交叉处。
阵列式键盘的电路原理图如图2-5所示。
图2-5阵列式键盘电路原理图
键盘上的每一个按键都对应一个键值,按照键盘的行列结构不同能够有不同的编码方式,对于4×4的键盘,能够简单地将扫描到被按键时的行列数据组合成一个8位数作为该键的键值。
由于键的按下和释放时利用机械触点的闭合和断开来实现的,因此机械触点的弹性作用,器闭合及断开刹时均有抖动进程,按键的稳固闭合期由按键动作决定,抖动时刻长短一般为5ms~10ms。
为保证CPU对一次按键仅作一次键入处置,必需消除抖动的影响。
消除抖动的方式是:
在检测到有键按下时,延时10ms后再肯定此按键是不是仍维持闭合状态,若仍维持闭合状态便确认它为被按键,不然忽略这次按键。
在单片机应用系统中,任何I/O口或扩展I/O口都能够用作键盘接口。
在本课题的设计中是用P1口与键盘系统相连的。
2.3.3显示
单片机应用系统中,最常常利用的显示器是LED(发光二极管显示器),它结构简单、本钱低、配置灵活,与单片机的接口也特别方便,因此在单片机系统中取得普遍应用。
LED显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线段发光,控制不同组合的二极管导通,就可以显示出不同的字形。
单片机应用系统中通常利用的八段LED显示器,这种显示块又可分为共阴极和共阳极两种,我利用的是共阴极的
数码LED显示。
一般的八段LED显示块上有8个发光二极管,故也叫八段显示器,它们组成一个“8”字型和一个小数点。
LED显示器有静态显示和动态显示两种显示方式。
静态显示就是当LED显示器要显示某一字型是相应的发光二极管恒定在亮或暗的状态。
这种显示要求列位显示块的公共端连接在一路,然后接+5V或地,而每一名的8端选线接一个并行输出口,每一个并行输出口中可写入不同的现实数据,所以同一时刻多位能够显示不同的字形,由于每位均要配备一个并行输出口,所以静态显示要占用过量的I/O口资源。
动态显示则是在多为LED显示时,为降低本钱所采用的。
将所有为的段选线并联在一路,由一个8位并行口控制,而共阴极点或共阳极点由另一个并行口的某一名控制,如此只要两个8位I/O口就可控制显示。
可是同一时刻列位不能显示不同字形,只能采用动态扫描显示方式。
第一显示最左(或最右)边的一个字符并延时1ms~5ms,其余列位不显示,即相应的位选线关闭,保证同一时刻只有一名显示,然后循环右(或左)移一名显示该位字符,也延时一样的时刻,循环到最后一名再从头开始,如此循环反复显示,实际上每位亮1ms~5ms,暗(1~5)Nms,只要循环时刻足够短,利用人们的视觉暂留效应,令人们看起来像是一直在发光,达到一种稳固显示的视觉效果。
本课题在设计时采用的别离是串行静态显示和动态扫描显示。
串行静态显示为了在LED显示器上显示时刻,在它的8位段选线上加上相应的电平组合,即一个8位数据,使得显示出要求的数字。
那个数据就叫做该字符的段选码。
静态显示由5个LED数码管组成,采用的是串行显示,输入只有两个信号,它们是串行数据线DIN和移位信号CLK。
5个串/并移位寄放器芯片74LS164首尾相连。
每片的并行输出作为LED数码管的段码。
74LS164位8位串入并出移位寄放器,一、2位串行输入端,Q0~Q7位并行输出端,CLK位移位时钟脉冲,上升沿移入一名:
MR位清零端,低电平时并行输出为零。
74LS164的引脚图如图2-6所示。
LED静态显示部份的电路原理图如图2-7所示。
图2-674LS164的引脚图
图2-7LED静态串行的电路原理图
动态显示,也称扫描显示,单片机P0输出显示断码,经由一片三态总线收发两用电路74LS245输出给LED数码管,由P2口输出位码,经由反相器74LS06输出给LED数码管。
LED动态显示部份的电路原理图如图2-8所示。
图2-8LED动态显示部份的电路原理图
2.3.4执行电路
执行电路中主要元件由光耦元件和继电器组成,形成了一个执行电路,如图3-11所示光耦合器(opticalcoupler,英文缩写为OC)亦称光电隔离器,简称光耦。
光耦合器以光为媒介传输电信号。
它对输入、输出电信号有良好的隔离作用,所以,它在各类电路中取得普遍的应用。
目前它已成为种类最多、用途最广的光电器件之一。
在执行电路中,通过调节控制端电流来改变占空比,达到精密稳压目的。
我选用的继电器是一种常开常闭继电器,起到开关的作用,为电子线路的电气线路提供良好的电气隔离,以保护电子电路和人身的安全。
继电器便能完成这一桥梁作用。
继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,避免干扰。
执行电路的原理:
高电平通过电阻分压以后使得三极管基极取得信号将信号放大,放大后通过三极管的发射极驱动发光二极管,光耦元件感应到发光二极管的信号后,通过发射极给下一级三极管发出信号,下级三极管接到信号后放大信号并驱动继电器,使
继电器开关闭合,接通220V,驱动台灯,使台灯工作。
执行电路的电路图如图2-9所示。
图2-9执行电路电路原理图
第3章软件程序设计
Prote99SE画图工具的利用
在本课题研究中,需要做成PCB电路板,所以就会用到Prote99SE画图工具。
它是一种电子线路CAD画图工具,通过运算机来完成电路图。
然后自动转换成PCB图,完成后就可以够去刻制电路板了。
在画原理图之前要求先设置Protel99SE原理图编辑器的工作环境,图纸尺寸,然后才画电路原理图。
画原理图第一就是从元件电气图形库文件中找出所需的电气图形符号,并把它们一一放到原理编辑区内。
而那些在库中没有的元器件需要自己来画,如继电器。
若是放置的元器件的位置、方向不合理,能够移动或按空格键改变位置和方向。
当放置结束吼,就可以够开始连线、放置电气节点、电源及地线符号等操作,其中标注的颜色字体必需相同。
在画好原理图后,可利用Protel99SE提供的电气法测试(ERC)功能来迅速找出电路画错的地方,如没有连好的线,电源线和地线没有画好等等,如此就可以够立刻更正过来。
对于每一个元器件的封装形式很多,不可能每一个都有,有些必需自己来制作封装图。
原理图画好以后,先把电路原理图生成网络表文件。
网络表文件是文本文件,它记录了原理图中元件类型、序号、封装形式和各元器件之间的连接关系等信息。
如此能够验证原理图中连线游没有错误。
通过执行“Design”菜单下的“CreateNetlist”命令从原理图中抽取网络表文件(),这是取得网络表文件最大体的方式。
执行“File”菜单下的“New…”命令,在新文档选择窗口内选择“PCBDocument”(印制板文件)类型,单击“OK”按钮生成新的PCB文件。
在“设计文件管理器”窗口内,单击生成的PCB文件,进入PCB编辑状态,装入网络表文件。
在网络宏列表窗口内,检查网络表文件装入后有无错误,有错误要及时修改。
装入网络表文件后,要进行元件布局操作,第一进行手工预布局,肯定并固定了关键元件位置后,即可进行“自动布局”:
执行“Tools”菜单“AutoPlace”(自动放置)命令,选择自动布局方式和自动布局选项,单击“OK”按钮,即可启动元件自动布局进程。
完成元件布局,设定布线去大小和印制板机械边框、定位对准孔后,就可以够进入布线操作。
在布线进程中,主要依托手工或自动与手工相结合方式实现PCB板的连线操作。
自动布线进程包括设置自动布线参数(即布线条件)、自动布线前的预处置、自动布线、手工修改四个环节。
等自动布线以后对PCB图进行修改。
有些布线会太密,需要自己手动排线,在修改良程中会出现动一处其他地方也需改善的情形,所以修改的时候要特别小心。
尽可能做到美观合理。
完成布线以后,可通过“更新”原理图、成立网络表文件比较等方式进行验证。
完成PCB图以后能够去进行加工,制作PCB板了。
软件程序汇编
本课题是关于家用按时器的设计,当静态LED显示为初始状态的时候,通过键盘设定静态LED显示的时刻,现在动态LED显示为GOODBABY,静态LED显示进行倒序计时,现在动态LED显示HELP,当静态显示为00000的时候,家用按时器工作,动态LED显示HELPYOU,整体设计流程图框图如图3-1所示。
程序设计完成以后,就要开始进行编译、调试。
图3-1整体流程图设计思路
第4章调试
电路焊接与检查
当完成电路板以后,就是去购买所需的元器件对电路板进行焊接,第一焊接指针底座,如此能够避免元器件焊坏,还能够避免焊身后不容易把芯片拿下来。
在焊的进程中常常会出现虚焊,接线的时候把电阻直接和电源线接上了,在沈老师和同窗的帮忙下,及时的发觉了这些问题,而且纠正了这些错误。
在焊接键盘的时候发觉最小的键盘的四个角太大了完全插不进焊盘里面,通过仔细的考虑后,用钳子把四个角弯成和四个焊盘大小相对应的角,焊接键盘的时候此方案完全可行。
下一步就是对底座隔壁的电阻、执行电路和复位电路的元器件进行焊接,等全数焊好以后,然后就可以够进行硬件调试了。
显示部份的调试
第一在实验室里采用伟福集成调试软件对硬件进行调试,先用实验台里面的89C51单片机与连接到电路板上,打开伟福集成调试软件,输入了LED静态显示程序,然后运行。
在实验台上的显示应该是98C51的,可是运行后显示的是乱码,无法正常工作,把每一个芯片检测以后发觉都是好的,后来拿出电路图检查。
发觉数码管的断码排乱了,有两种方案,一个是割线从头排线,还有