- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子时钟设计报告
(项目编号:CLK02)
一、设计思路
1.要达到的目的
利用51单片机及数码管实现时钟的基本功能。
在4个数码管上显示时分,秒不显示。
利用3个按键,实现分秒的调整。
能设置一组闹钟。
2.关键问题的解决
4个数码管的动态扫描。
走时需要使用定时中断,以确保精度。
闹钟功能模块需要重复利用4个数码管来显示,需要组织好复杂的逻辑。
部分程序关键源代码及注释
/*------------------------------------------------------------------------
按钮扫描
------------------------------------------------------------------------*/
uchar KeyCode=0; //按键码缓冲区,定义为字节型
uint KeyTick=0; //按键按下计数,达到指定时长才有效,防止干扰。
uchar PreKey=0; //前一次按下的是哪个键,用来判断是否一直按住某个键。
void KeyScan(void) //按键扫描子程序
{
uchar tmpKey=0; //定义临时实时按下键的缓存
if (K1==0 K2==0) //按下的是3号键,注意3号键在电路中是由两个二极管引入IO的。
tmpKey=3;
else if (K1==0) //按下的是1号键
tmpKey=1;
else if (K2==0) //按下的是2号键
tmpKey=2;
if (tmpKey!=0) //当有键按下时,进时以下处理
{ if (tmpKey==PreKey) //如果是和前一次扫描相同的按键,时
{ KeyTick++; //用来进行抗抖动计数
if (KeyTick==20) //单次按键,即短按
KeyCode=tmpKey; //将完成了检测的按键值传入变量KeyCode中以备调用。
if (KeyTick=700) //接收长按
{ KeyCode=tmpKey; //将完成了检测的按键值传入变量KeyCode中以备调用。
KeyTick=600;
}
}else
KeyTick=0; //按下的键和前一次扫描的不相同时,计数清0
}else
KeyTick=0; //无键按下时,计数清0
PreKey=tmpKey;
}
四、使用说明
【模式】键切换,按模式键会切换各功能设置。
当处于设置时间的小时,小时位置数码管会闪烁,此时可利用上下键改变时间。
当处于设置时间的分钟,分钟位置数码管会闪烁,此时可利用上下键改变时间。
当处于设置闹钟的小时,小时位置数码管和闹钟指示灯会闪烁,此时可利用上下键改变闹钟时间。
当处于设置闹钟的分钟,分钟位置数码管和闹钟指示灯会闪烁,此时可利用上下键改变闹钟时间。
设置闹钟开关:ALon或AL--,利用上下调节键实现开启或关闭闹钟功能。
ALon 为开启了闹钟
AL-- 为关闭了闹钟
五、电路的组成:
电路的核实采用AT89C2051单片机,这个单片机具有20个管脚,2K的ROM空间可以完成本程序的设计。电路分为四部分:
核实部分,即由AT89C2051单机片、晶振、电源组成了逻辑处理核实;
按键部分,由3个按键组成,功能为模式设置切换、上调、下调。可以完成时间及闹钟的设置操作。
显示部分,由三极管驱动共阳数码,共4个“8”字,用来显示时和分。另有中间冒号指示灯及闹钟指示灯,用同一个电路来驱动。
闹钟的Beep声音采用三极管来驱动蜂鸣器实现。
四、设计方案的完善及目前存在的问题
1.设计方案要完善的地方
现在的程序只有单组闹钟,可考虑增加多组闹钟。
硬件只有4个数码管,从实用角度考虑,可改为更多数码管,以便显示时间和日期等更多信息。
2. 目前存在的问题
掉电不能记忆,可考虑改用DS1302来作为时基
五、本次设计的收获及心得体会
1.对51单片机编程综合运用能力实践,初步掌握编程应用方法思路。
2.熟悉了线路板从原理图设计到PCB制作的EDA PCB Layout(布板)的整个过程。为正式设计打好基础 。
3.熟悉了零件的基本认知,零件的极性标识,零件的安装注意事项。
4.熟悉了电烙铁焊接工艺,正常2秒一个焊点,可以确保焊接可靠,同时又不致焊接过热损坏零件或线路板基板。
六、对该题目设计的意见和建议
1. 对该题目的意见和建议
2.对本次设计的意见和建议
您可能关注的文档
最近下载
- 专题04 阅读理解(含答案析)(中考英语考试题分项汇编(四川专用)).docx VIP
- 2025河北高速燕赵驿行集团有限公司社会招聘笔试参考题库附答案解析.docx VIP
- 雨课堂 科研伦理与学术规范-期末考试答案及各章节答案.docx VIP
- 2025河北高速燕赵驿行集团有限公司社会招聘笔试备考试题及答案解析.docx VIP
- 美的集团的ESG报告:2022ESG Report.pdf VIP
- 最简单的个人股权转让协议5篇.docx VIP
- 《全国医疗服务价格项目规范》(2021版).docx VIP
- 华南理工大学《信号与系统》历年多套期末考试试卷(含答案).pdf VIP
- 夏季防暑降温指南预防中暑健康教育讲座主题班会PPT课件.pptx VIP
- 2025年广东省春季高考英语语法填空专项复习试题三(含答案解析).pdf VIP
原创力文档


文档评论(0)