电子时钟程序设计

上传人:ag****7 文档编号:193094310 上传时间:2023-03-08 格式:DOC 页数:9 大小:293.50KB
返回 下载 相关 举报
电子时钟程序设计_第1页
第1页 / 共9页
电子时钟程序设计_第2页
第2页 / 共9页
电子时钟程序设计_第3页
第3页 / 共9页
点击查看更多>>
资源描述
1设计目的电子时钟是采用数字电路实现对日期、时、分、秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。电子时钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便。不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的.而且是控制的核心部分.因此,研究电子时钟及扩大其应用,有着非常现实的意义.2设计内容2。1 设计思想针对要实现的功能,拟采用AT89C51单片机进行设计,AT89C51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS 51指令系统及80C51引脚结构.这样,既能做到经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。程序可分为闹钟的声音程序、显示程序、闹钟显示程序、调时显示、定时程序.运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误.准备器件、搭接电路熟悉硬件 了解各引脚功能分块设计各部分电路将分块的电路组合认真学习单片机汇编语言完成整体电路图确定变成结构和思路综合各程序完成整体程序编辑各个程序模块用Proteus画出电路图调试程序,进行修改对仿真中出现的问题进行改正画出仿真图进行仿真仿真成功软硬件结合,完成任务书要求验证硬件电路成功进行扩展2.2设计元件元件规格数量单片机AT89C511晶振12MHz1晶振电容30pF2按键4电阻10K,1K,220欧,各1,1,15电容10uF(+)1七段数码管共阳极四位、两位各1,1USB接口1USB延长线1/2底座40脚12。3设计图调节分钟中断ss+mm+;ss=0调节小时中断一分到一小时到hh+;mm=0数码显示mm+;ss=0hh+装入计数值192一秒到继续计数开始计数单元清零2.4设计程序#includereg51.hincludeincludeintrins.hchar data time6;void delay(unsigned char k);sbit check=P00;sbit inter0=P32;sbit inter1=P33;char data which=0;char data count=0; void smadd(unsigned char k);void smsub(unsigned char n);char code buf= 0x00,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0xff,0x6f ;char code sel= 0x01,0x02,0x04,0x08;void main()char i; for(i=0;i500;i+); time0=0; time1=1; time2=8; time3=0; time4=2; time5=1; TMOD=0X01; TH0=(655355000)/256; TL0=(65535-5000)%256; IP=0x07; IE=0X87; TR0=1; while(1)for(i=0;i6;i+) P1=seli;P2=buftimei ; delay(10);if(check=0)delay(8);TR0=0; which=(which+1)3;while(check=0); TR0=1; void delay(unsigned char k)char i; for (;k0;k-) for(i=0;i80;i+) ; void time_tr0() interrupt 1 using 2 TH0=(65535-5000)/256; TL0=(65535-5000)256; count+; if(count=100) smadd(0); void int0_i() interrupt 0 using 3TR0=0; smadd(which2); TR0=1; while(inter0=0);void int1_i() interrupt 2 using 1TR0=0;delay(20); smsub(which*2);;TR0=1; while(inter1=0);void smsub(unsigned char n) delay(80); if(timen0) timen=timen-1;else if(timen=0&(n=3|n=1)timen=5;smsub(n+1);else if(timen=0&(n=4n=2|n=0) timen=23;smsub(n+1);else if(timen=0&(n=5)timen=0;void smadd(unsigned char n) char flag=0; delay(80); if(n=0)|(n=2)|(n=4) if(n=4&time5=2&time4=3) time4=0; time5=0; flag=1; if(timen=9) timen=0;smadd(n+1); elseif(timen9flag=0) timen=timen+1; else if((n=1)(n=3) if(timen=5) timen=0;smadd(n+1); else timen=timen+1; else if(n=5)if(timen=2&(timen-1=3))time5=0;time4=0;else timen=timen+1; 2.5伟福系统仿真如图所示:3。设计总结通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。在大学的课堂的学习只是在给我们灌输理论知识,而我们应把所学的用到我们现实的生活中去,此次的电子时钟设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 建筑环境 > 建筑资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!