基于单片机的电子时钟设计与实现样本_第1页
基于单片机的电子时钟设计与实现样本_第2页
基于单片机的电子时钟设计与实现样本_第3页
基于单片机的电子时钟设计与实现样本_第4页
基于单片机的电子时钟设计与实现样本_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要单片机自20世纪70年代问世以来,以其极高性能价格比,受到人们注重和关注,应用很广、发展不久。单片机体积小、重量轻、抗干扰能力强、环境规定不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具备上述长处,在国内,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性一种。这次毕业设计通过对它学习、应用,以AT89S51芯片为核心,辅以必要电路,设计了一种简易电子时钟,它由4.5V直流电源供电,通过数码管可以精确显示时间,调节时间,从而到达学习、设计、开发软、硬件能力。电子时钟是采用数字电路实现对“时”、“分”、“秒”数字显示计时装置。电子时钟精度、稳定度远远超过老式机械钟。在这次设计中,咱们采用LED数码管显示时、分、秒,以24小时计时方式,依照数码管动态显示原理来进行显示,用12MHz晶振产生振荡脉冲,定期器计数。在本次设计中,电路具备显示时间其本功能,还可以实现对时间调节。电子时钟是其小巧,价格低廉,走时精度高,使用以便,功能多,便于集成化而受广大消费爱慕,因而得到了广泛使用。核心词:单片机;AT89S51

ABSTRACTSincethe1970schipsincetheadvent,withitshighcostperformanceandattentionbypeopleandattention,itiswidelyusedandfastdevelopment.SCMsmallvolume,lightweight,stronganti-jammingcapability,environmentaldemandisnothigh,lowcost,highreliability,flexibilityisgood,developmentmoreeasy.Becauseoftheabovefeatures,inourcountry,themicrocontrolleriswidelyusedinindustrialautomationcontrol,automaticdetection,intelligentinstrumentandapparatus,householdappliances,powerelectronics,mechanicalandelectricalequipment,andotheraspects,and51SCMisthemosttypicalchipandmostrepresentativeone.Thegraduationdesignthroughtoitsstudy,applicationtoAT89S51chipsasthecore,withthenecessarycircuit,designofasimpleelectronicclock,itby4.5Vdcpowersupply,throughtheelectronictubecanshowtime,adjustthetime,thustolearning,thedesign,thedevelopmentofsoftwareandhardwareintheability.ElectronicClockisaelectroniccircuitimplementationofthe"when","sub","seconds"Thefiguresshowthetimingdevice.Electronicclockprecision,stability,farmorethantheoldmechanicalclock.Inthisdesign,weuseLEDelectronicdisplayhours,minutes,seconds,to24-hourtimemode,accordingtoelectroniccontroltheorytodynamicdisplaytodisplay,usethe12MHzcrystaloscillationpulse,thetimercount.Inthisdesign,thecircuithasadisplaytimeofthethisfunction,youcanalsorealizethetimeadjustment.Electronicclockisitscompact,lowcost,traveltimeandhighprecision,easytouse,featuresandmore,easyintegrationandlovedbythegeneralconsumer,sowidelyused.Keywords:Single-chipmicrocomputer;AT89S51

目录1绪论 11.1电子时钟背景 11.2电子时钟意义 21.3电子时钟应用 22整体设计方案 32.1单片机选取 32.1.1多功能 32.1.2高效率和高性能 42.1.3低电压和低功耗 42.1.4低价格 52.2单片机电子时钟功能拟定 52.3LED显示模块 72.4按键模块 73PCB原理图与仿真图 93.1PCB原理图 93.2仿真图 104程序设计 115结论 286参照文献 307道谢 311绪论1.1电子时钟背景20世纪末,电子技术获得了飞速发展,在其推动下,当代电子产品几乎渗入了社会各个领域,有力地推动了社会生产力发展和社会信息化限度提高,同步也使当代电子产品性能进一步提高,产品更新换代节奏也越来越快。时间对人们来说总是那么宝贵,工作忙碌性和繁杂性容易使人忘掉当前时间。忘掉了要做事情,当事情不是很重要时候,这种遗忘无伤大雅。但是,一旦重要事情,一时耽误也许酿成大祸。当前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几种方面发展。下面是单片机重要发展趋势。单片机应用重要意义还在于,它从主线上变化了老式控制系统设计思想和设计办法。从前必要由模仿电路或数字电路实现大某些功能,当前已能用单片机通过软件办法来实现了。这种软件代替硬件控制技术也称为微控制技术,是老式控制技术一次革命。单片机模块中最常用是电子时钟,电子时钟是一种用数字电路技术实现时、分、秒计时装置,与机械式时钟相比具备更高精确性和直观性,且无机械装置,具备更更长使用寿命,因而得到了广泛使用。1.2电子时钟意义电子时钟是采用数字电路实现对.时,分,秒.数字显示计时装置,广泛用于个人家庭,车站,码头办公室等公共场合,成为人们寻常生活中不可少必须品,由于数字集成电路发展和石英晶体振荡器广泛应用,使得电子时钟精度,远远超过老式钟表,钟表数字化给人们生产生活带来了极大以便,并且大大地扩展了钟表原先报时功能。诸如定期自动报警、准时自动打铃、时间程序自动控制、定期广播、自动起闭路灯、定期开关烘箱、通断动力设备、甚至各种定期电气自动启用等,所有这些,都是以钟表数字化为基本。因而,研究电子时钟及扩大其应用,有着非常现实意义。1.3电子时钟应用电子时钟已成为人们寻常生活中:必不可少必须品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场合,给人们生活、学习、工作、娱乐带来极大以便。由于数字集成电路技术发展和采用了先进石英技术,使电子时钟具备走时精确、性能稳定、携带以便等长处,它还用于计时、自动报时及自动控制等各个领域。

2整体设计方案2.1单片机选取单片机微型计算机是微型计算机一种重要分支,也是颇具生命力机种。单片机微型计算机简称单片机,特别合用于控制领域,故又称为微控制器。普通,单片机由单块集成电路芯片构成,内部包具有计算机基本功能部件:中央解决器、存储器和I/O接口电路等。因而,单片机只需要和恰当软件及外部设备相结合,便可成为一种单片机控制系统。单片机通过1、2、3、3代发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好构造兼容性方向发展。其发展趋势不外乎如下几种方面:2.1.1多功能单片机中尽量地把所需要存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多功能。例如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定期器看家狗)、高速I/O口及计数器捕获/比较逻辑等。有单片机针对某一种应用领域,集成了有关控制设备,以减少应用系统芯片数量。例如,有芯片以51内核为核心,集成了USB控制器、SMARTCARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2.1.2高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP设计技术,使单片机性能有了明显提高,体现为:单片机时钟频率得到提高;同样频率单片机运营效率也有了很大提高;由于集成度提高,单片机寻址能力、片内ROM(FLASH)和RAM容量都突破了以往数量和限制。由于系统资源和系统复杂限度增长,开始使用高档语言(如C语言)来开发单片机程序。使用高档语言可以减少开发难度,缩短开发周期,增强软件可读性和可移植性,便于改进和扩充功能。2.1.3低电压和低功耗单片机嵌入式应用决定了低电压和低功耗特性十分重要。由于CMOS等工艺大量采用,诸多单片机可以在更低电压下工作(1.2V或0.9V),功耗已经减少到uA级。这些特性使得单片机系统可以在更小电源支持下工作更长时间。2.1.4低价格单片机应用面广,使用数量大,带来直接好处就是成本减少。当前世界各大公司为了提高竞争力,在提高单片机性能同步,十分注意减少其产品价格。2.2单片机电子时钟功能拟定单片机电子时钟计时功能单片机电子时钟计时功能计时调整定时显示定时调整定时闹铃计时显示

所需元器件如表2.1所示。表2.1电子元件列表序号名称数量序号名称数量1AT89S511片92.7K电阻7只212M晶振1个10104瓷片电容4只3共阳数码管4只1130P瓷片电容2只4PN管85507只12200Ω电阻1只574LS2441片13560Ω电阻8只6蜂鸣器1个1410K电阻12只7微动按键5个15100Ω电阻4只810UF电容1只单片机电子时钟,是运用单片机技术实现计时、时间显示、时间调节、定期调节、闹铃等功能。项目完毕过程中使用了外部中断技术、定期器中断技术、键盘查询及动态显示技术。2.3LED显示模块图2.2七段共阳极数码管七段共阳极数码管及功能如图1所示:如图1所示数码管为共阳极数码管,其3脚和8脚均接电源正极,而共阴极数码管3脚和8脚均接电源负极。其端口所标数据与数码管显示条处所标相应,当端口接入高电平时,相应共阳极数码管显示条即点亮。2.4按键模块矩阵式键盘(也称行列式键盘)合用于按键数目较多场合,它由行线和列线构成。按键位于行列交点上。一种3*3行列构造可以构成一种有9个按键键盘。同理,一种4*4行列构造构造可以构成一种16键键盘。独立式按键就是各按键互相独立,每个按键各接入一根输入线,一根输入线上案件工作状态不会影响其她输入线上工作状态。因而,通过检测输入线电平状态可以很容易判断哪个按键按下了。独立式按键电路配备灵活,软件简朴。但每个按键需要占用一种输入口线,在按键数量较多时,需要较多输入口线且电路构造复杂,故此种键盘合用于按键较少或操作速度较高场合。由于此种系统中共有启动两条生产线“启动1”键和“启动2”键、分选取键、秒选取键、时间设立加、时间设立减、时间设立键、拟定键。只有这8个就键,比较简朴。因此就采用独立式按键接口电路。

3PCB原理图与仿真图3.1PCB原理图图3.1时钟PCB图284253.2仿真图图3.2时钟仿真图4程序设计#include"reg51.h"#defineucharunsignedchar#defineuintunsignedint #definesmplayP2sbitsm1out=P0^0;sbitsm2out=P0^1;sbitsm3out=P0^2;sbitsm4out=P0^3;sbitspeak=P0^4;sbitaddtime=P3^4;sbitsubtime=P3^5;sbitsled1=P1^3;sbitsled2=P1^4;ucharcodetabsm[]={0x03,0x9F,0x25,0x0D,0x99,0x49,0x41,0x1F,0x01,0x09};ucharcodetabds[]={0x02,0x9E,0x24,0x0C,0x98,0x48,0x40,0x1E,0x00,0x08};uchardatamd,datamg,datahd,datahg;ucharddatamd,ddatamg,ddatahd,ddatahg;uchargethour,getmin;ucharsecdata=0x00;uchart1num=10;uchart0num1=10;uchart0num2=2;ucharfselect=0;bitflagplay;bitflagflash;bitflagspk=0;voiddlysys(){uchari,j,k;for(i=0;i<50;i++)for(j=0;j<100;j++) for(k=0;k<100;k++); }voiddlyplay(){uchari,j;for(i=0;i<10;i++)for(j=0;j<100;j++); }voiddlyint(){uchari,j;for(i=0;i<200;i++)for(j=0;j<200;j++); }voidmain(){ucharchgi=0;ucharchkkey=10;P0=P1=P2=P3=0xff;dlysys();datamd=9;datamg=5;datahd=3;datahg=2;ddatamd=0;ddatamg=0;ddatahd=0;ddatahg=0;flagplay=0;flagflash=0;EA=EX0=EX1=ET0=ES=IT0=IT1=1;TMOD=0x21;SCON=0x50;TH1=0xe6;TL1=0xe6;TH0=0x3c;TL0=0xb0;TR0=1;TR1=1;sled1=sled2=0;while(1){chgi=0;while(flagplay==0){sm1out=sm2out=sm3out=sm4out=1; smplay=tabsm[datamd];if(fselect==2) sm1out=flagflash; else sm1out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabsm[datamg]; if(fselect==2) sm2out=flagflash; else sm2out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabsm[datahd]; if(fselect==1) sm3out=flagflash; else sm3out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabsm[datahg]; if(fselect==1) sm4out=flagflash; else sm4out=0; dlyplay();if(fselect==2) { TR0=0; chkkey--; if(chkkey==0) { chkkey=10; if(addtime==0) { datamd++; if(datamd==10) { datamd=0; datamg++; if(datamg==6) datamg=0; }} if(subtime==0) { datamd--; if(datamd==255) { datamd=9; datamg--; if(datamg==255) datamg=5;}} } } if(fselect==1) { TR0=0; chkkey--; if(chkkey==0) { chkkey=10; if(addtime==0) { datahd++; if((datahg!=2)&&(datahd==10)) {datahd=0; datahg++; } if((datahg==2)&&(datahd==4)) {datahd=0; datahg=0; } } if(subtime==0) { datahd--; if(datahd==255) {datahd=9; datahg--; if(datahg==255) {datahg=2; datahd=3;}}} } }if(flagspk==1){ if((addtime==0)||(subtime==0)) flagspk=0; speak=~speak;} else speak=1; } while(flagplay){sm1out=sm2out=sm3out=sm4out=1; smplay=tabds[ddatamd]; if(fselect==2) sm1out=flagflash; else sm1out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabds[ddatamg]; if(fselect==2) sm2out=flagflash; else sm2out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabds[ddatahd]; if(fselect==1) sm3out=flagflash; else sm3out=0; dlyplay(); sm1out=sm2out=sm3out=sm4out=1; smplay=tabds[ddatahg]; if(fselect==1) sm4out=flagflash; else sm4out=0; dlyplay(); if(fselect==2) { chkkey--; if(chkkey==0) { chkkey=10; if(addtime==0) { ddatamd++; if(ddatamd==10) { ddatamd=0; ddatamg++; if(ddatamg==6) ddatamg=0; }} if(subtime==0) { ddatamd--; if(ddatamd==255) { ddatamd=9; ddatamg--; if(ddatamg==255) ddatamg=5;}} } } if(fselect==1) { chkkey--; if(chkkey==0) { chkkey=10; if(addtime==0) { ddatahd++; if((ddatahg!=2)&&(ddatahd==10)) {ddatahd=0; ddatahg++; } if((ddatahg==2)&&(ddatahd==4)) {ddatahd=0; ddatahg=0; } } if(subtime==0) { ddatahd--; if(ddatahd==255) {ddatahd=9; ddatahg--; if(ddatahg==255) {ddatahg=2; ddatahd=3;}}} } } if(fselect==0) { chgi++; if(chgi==255) { flagplay=0; chgi=0; } }if(flagspk==1){ if((addtime==0)||(subtime==0)) flagspk=0; speak=~speak;} else speak=1; } }}voidint0zd()interrupt0{if(flagspk==1)flagspk=0; else {flagplay=~flagplay;fselect=0;dlyint();IE0=0; }}voidint1zd()interrupt2{if(flagspk==1)flagspk=0; else {fselect++;fselect%=3;if(fselect!=0){TMOD=0x11;TH1=0x3c;TL1=0xb0;ET1=1;ES=0;TR1=1;}else{TMOD=0x21;TH1=0xe6;TL1=0xe6;ET1=0;ES=1;TR1=1; TR0=1;}dlyint();IE1=0; }}voidt0zd()interrupt1{TH0=0x3c;TL0=0xb0;t0num1--;if(t0num1==0){t0num1=10; sled1=~sled1; sled2=~sled2; t0num2--; if(t0num2==0) { t0num2=2; secdata++; if(secdata==60) { secdata=0; datamd++; if(datamd==10) { datamd=0; datamg++; if(datamg==6) { datamg=0; datahd++; if((datahg!=2)&&(datahd==10)) { datahd=0; datahg++;} if((datahg==2)&&(datahd==4)) {datahd=0; datahg=0; } }}if((ddatahg!=0)||(ddatahd!=0)||(ddatamg!=0)||(ddatamd!=0)) { if((datahg==ddatahg)&&(datahd==ddatahd)&&(datamg==ddatamg)&&(datamd==ddatamd)) flagspk=1;else flagspk=0; } }} } }

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论