- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子时钟技术文档
科协技术文档
题目:电子时钟
学院:自动化与信息工程学院
组员:何明杰
目录
摘要 3
1.系统方案选择和论证 4
1.1 系统基本方案 4
1.2 各模块方案选择和论证 4
1.2.1控制器选择方案 4
1.2.2电源方案 4
1.2.3闹钟方案 5
1.2.4显示模块方案 5
2.系统的电路设计与实现 5
2.1系统硬件的基本组成部分 5
2.2主要单元电路的设计 6
1.2.1最小系统设计 6
1.2.2数码管显示设计 6
1.2.3键盘控制设计 7
2.3系统电路总设计 8
3.程序源代码 9
参考文献 12
电子时钟
作者:何 明 杰
摘要
该作品是基于stc89c52设计的有按键调节时间、设置或取消闹钟的多功能电子时钟。显示模块通过数码管实现;调时功能通过按键开关实现;闹钟通过蜂鸣器的鸣响实现;另有复位按键和4.5v干电池供电。所有功能基于c语言程序对c52单片机进行控制。
关键字: 电子闹钟 89c52 蜂鸣器 数码管
系统方案选择和论证
1.1系统基本方案
该作品以89c52单片机为控制芯片,通过对芯片外部中断定时的控制:给中断寄存器赋初值,当中断溢出时进行计时操作,将时间值通过8位数码管动态显示出来。
1.2各模块方案选择和论证
1.21控制器选择方案
本系统的核心问题是通过何种芯片、什么程序控制硬件的各种功能。
方案一
采用ATmage16芯片,通过程序启用该芯片的中断功能,给中断寄存器赋初值,当中断溢出时进行计时操作,将时间值通过8位数码管动态显示出来从而实现。
方案二
采用STC89C52芯片,通过程序启用该芯片的外部中断功能,给中断寄存器赋初值,当中断溢出时进行计时操作,60秒进1分,60分进1时,将时间值通过8位数码管动态显示出来从而实现。
考虑到方案二程序易于编写,故采用方案二。
1.22电源选择方案
工作电压3-6v,本作品对电压稳定性要求不高,故用三节5号电池或usb接口供电皆可。
1.23闹钟模块方案
方案一
采用喇叭作为闹钟的鸣响器。
方案二
采用蜂鸣器作为闹钟的鸣响器。
考虑到功耗问题和硬件体积大小,采用方案二。
1.24显示模块方案
方案一
采用1602液晶显示时间。
方案二
采用8位共阴数码管显示时间。
考虑到1602程序复杂、功耗大、价格高,故采用8位共阴数码管显示时间。
系统的电路设计与实现
2.1系统硬件的基本组成部分
2.2主要单元电路的设计
2.21最小系统设计
单片机的最小系统是由电源、复位、晶振、/EA=1组成。
电源引脚 Vcc 40 电源端 GND 20 接地端
2.22数码管显示电路
数码管显示器是现在最常用的显示器之一,如下图所示。
显示电路显示模块需要实时显示当前的时间,即时、分、秒,因此需要6个数码管,采用动态显示方式显示时间,硬件连接如下图所示,时的十位和个位分别显示在第一个和第二个数码管,分的十位和个位分别显示在第三个和第四个数码管,秒的十位和个位分别显示在第五个和第六个数码管,采用动态扫描的方法进行显示,其硬件连接方式如下图所示。
数码管的硬件连接示意图
数码管使用条件:
2.23 键盘控制电路
该设计需要校对时间,所以用三个按键来实现。按khour来调节小时的时间,按 kmin来调节分针的时间,按 ksec来调节秒的时间。下图是按键硬件连接图。
2.3系统总设计电路
程序源代码
#includereg52.h
#includemath.h
sbit feng=P1^0;
sbit ksec=P3^7;//调节秒的按键3.7
sbit kmin=P3^6;//调分
sbit khour=P3^5;//调时
sbit nao=P3^4;//闹钟设置键
int p,q,m;
char z;
void naozhong1();
unsigned char secshi=0,secge=0,minshi=0,minge=0,hourshi=0,hourge=0;
unsigned int num=0,sec=0,min=0,hour=12;
unsigned char
code table
文档评论(0)