基于单片机的电子时钟课程设计.doc_第1页
基于单片机的电子时钟课程设计.doc_第2页
基于单片机的电子时钟课程设计.doc_第3页
基于单片机的电子时钟课程设计.doc_第4页
基于单片机的电子时钟课程设计.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的电子时钟一、 系统设计要求1.1 基本功能(1)能够显示时分秒(2)能够调整时分秒 1.2 扩展功能(1)能够任意设置定时时间(2)定时时间到闹铃能够报警(3)实现了秒表功能二 、硬件总体设计方案本次设计时钟电路,使用了stc89c51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用c语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、显示屏即可满足设计要求。2.1系统功能实现总体设计思路此设计原理框图如图2-1所示,此电路包括以下四个部分:单片机,键盘,闹铃电路及显示电路。闹铃电路51单片机独立键盘数码管显示 图2-1 设计原理框图 详细元器件列表:stc89c51 1片八位共阴极数码管 1片100p电容 6个22uf 电容 1个30p电容 2个10k电阻 6个1k电阻560欧姆电阻 8个200欧姆电阻 1个100欧姆电阻 7个按键 7个蜂鸣器 1个12mhz晶振 1个stc89c51插座 1个usb接头1个2.2各部分功能实现(1) 单片机发送的信号通过程序控制最终在数码管上显示出来。(2) 单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。(3) 为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正数码管上显示的时间。(4) 单片机通过控制闹铃电路来完成 定时闹钟的功能。2.3系统工作原理设计的电路主要由四模块构成:单片机控制电路,显示电路、闹铃电路以及校正电路。详细电路功能图下图所示: 详细电路功能图本设计采用c语言程序设计,使单片机控制数码管显示时、分、秒,当秒计数计满60时就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。当计时发生误差的时候可以用校时电路进行校正。设计采用的是时、分、秒显示,单片机对数据进行处理同时在数码管上显示。2.4电路功能使用说明(1) 各个控制键的功能:可对时间进行校准调节(只能加);按下设置键数字时钟进入闹钟设置状态,设置闹钟的时间;时加、分加键是在校准时间时或设置闹钟时间对小时数或分钟数调节而设置的;按下秒切换键就可以进入秒表模式,同时秒表也开始计时,按下秒表暂停、复位键就暂停、归零,如果要重新对秒计时则可以按秒表开始、复位;清零键可以对闹钟清零。(2) stc89c51单片机,通过编写程序对数码显示进行控制。(3) 八个7段数码管显示时钟和秒表信号。三、软件总体设计方案控制电路的c语言源程序根据流程图,经过认真分析得出控制电路的源程序如下:#include#define uchar unsigned char#define uint unsigned int#define delay_time 3/*宏定义*/uchar k,dat=0,0,0,0,0,0,0,0;uint tcount,t,u;uchar dat1=0,0,0,0,0,0,2,1;uchar dat2=0,0,0,0,0,0,0,0;uchar alarms=0,0,0,0,0,0,0,0;uchar dis_bit=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;unsigned char code seg711=0x3f,/*0*/ 0x06,/*1*/ 0x5b,/*2*/ 0x4f,/*3*/ 0x66,/*4*/ 0x6d,/*5*/ 0x7d,/*6*/ 0x07,/*7*/ 0x7f,/*8*/ 0x6f,/*9*/ 0x40,/*-*/ ;/*数字显示数组*/sbit miaobiao1=p10;sbit tminute=p11;sbit thour=p12;sbit miaobiao2=p13;sbit alarm=p14;sbit p0_0=p00;sbit p1_5=p15;sbit p1_6=p16;sbit p1_7=p17;/*端口定义*/uchar ms=0;uchar flag=0;s=0;w=0;uchar sec=0;uchar minit=0;struct timeuchar second;uchar minute;uchar hour;time1; uchar n,i;void delay(n) while(n-)for(i=120;i0;i-); /*延时子程序*/ void modify(void) ea=0; if(thour=0) if(flag=0) dat16+;delay(280); if(dat169) dat16=0;dat17+;else if(dat171)&(dat163) dat17=0; dat16=0; if(flag=1) alarms6+;delay(300); if(alarms69) alarms6=0;alarms7+; else if(alarms71)&(alarms63) alarms7=0;alarms6=0; dat6=alarms6; dat7=alarms7; if(tminute=0) if(flag=0) dat13+;delay(280); if(dat13=9) dat14+;dat13=0;if(dat145) dat14=0; if(flag=1) alarms3+;delay(300); if(alarms39) alarms4+;alarms3=0; if(alarms45) alarms4=0; dat3=alarms3;dat4=alarms4; if(miaobiao1=0)tr0=1;et0=1;tr1=1;et1=1;w=1; if(miaobiao2=0) tr0=1;et0=1;tr1=0;et1=0;w=0;s=0; dat20=0; dat21=0; dat23=0; dat24=0; dat26=0; dat27=0; ms=0; sec=0; minit=0; if(p1_5=0) tr0=0;et0=0;tr1=0;et1=0; if(alarm=0)tr0=0;et0=0;tr1=0;et1=0;flag=1;s=1; dat0=0; dat1=0;dat2=10; dat3=0;dat4=0;dat5=10;dat6=0;dat7=0; if(s=1) dat5=10; dat2=10; dat0=0; dat1=0; dat3=alarms3; dat4=alarms4; dat6=alarms6; dat7=alarms7;else if(w=1) dat5=10; dat2=10; dat0=dat20; dat1=dat21; dat3=dat23; dat4=dat24; dat6=dat26; dat7=dat27;else dat5=10; dat2=10; dat0=dat10; dat1=dat11; dat3=dat13; dat4=dat14; dat6=dat16; dat7=dat17;time1.minute=dat4*10+dat3;time1.hour=dat7*10+dat6; ea=1;/*按键扫描*/void init(void) tmod = 0x11; th0 = 0xdb;tl0 =0xff;th1=0xdb;tl1=0xff; et0 = 1; /10mset1=1;tr1=1; tr0=1; tcount=0;ms=0;sec=0;minit=0;ea = 1;/*初始化*/void test(void)for(k=0;k23) time1.hour=0; flag=0; p0=0x01;if(alarms7=dat17)&(alarms6=dat16)&(alarms4=dat14)&(alarms3=dat13)&(dat11=100) ms=0; sec+; dat23=sec%10; dat24=sec/10; if(sec=60) sec=0; minit+; dat26=minit%10; dat27=minit/10; et1=1; /秒表中断服务程序四、课程设计结果分析硬件部分设置了的六个按键。当按键一按下时,进入秒表显示状态,秒表开始计时,当按键六按下时,秒表暂停;当按键四按下时恢复到时间显示功能;当按键二按下时,进入调分状态,按一次,分加一,60一循环;按键三按下时,进入调时状态,按一次,时加一,60一循环;按键五按下时,进入闹铃设置功能,紧接着按下按键二和按键三进行时和分的设置,再按下按键4恢复显示时间,当显示的时间和定时设置的时间一致时,蜂鸣器发出蜂鸣声,蜂鸣时间我们设置为10秒。另外,闹铃电路有音乐闹钟的扩展的功能(可以将蜂鸣器换成扬声器再加一段音乐程序即可实现)。调试阶段,出现一些问题。比如,实际小时显示到

温馨提示

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

评论

0/150

提交评论