单片机数字电子钟
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
结束语
这个学期即将结束,从刚开学,老师就说我们的课程设计从第一节课开始。在这个学期里,我学到了很多,对单片机有了更深刻的认识,也对自己的不足有了清醒的认识。虽然我在上课时,觉得理论很容易,但是当具体写程序时,发现还是有各种各样的问题出现。开学时画PCB图,一点都不熟练,出了不少错误。在焊接过程中,也出现了不少虚焊的情况。
1课程设计目的与要求
1.1设计目的
了解数字钟的原理,从而学会制作数字钟。通过数字钟的制作进一步的了解在制作中用到的各种中小规模集成电路的作用及使用方法。学习与掌握各种组合逻辑电路与时序电路的原理与使用方法。学习并掌握单片机的使用和编程方法。
1.2设计要求
可调整时间的数字时钟。只显示分、秒,采用动态显示模式。通过按键可对时钟进行选位和加减的时间调整,调整时选中位进行闪烁。可实现时间暂停和重新启动。计时精确。
(2)晶体振荡电路电容C1、C2与晶体构成一个谐振型网络,完成对振荡频率的控制功能,同时提供了一个180度相移,从而和非门构成一个正反馈网络,实现了震荡器的功能。由于晶体具有较高的频率稳定性及准确性,从而保证了输出频率的稳定和准确。
(3)单片机控制电路数字钟的核心原件为AT89S52,配合程序对整个电路进行控制。P1口输出时钟显示的数字,P0口对数码管进行片选,P0口时用需接上拉电阻和三极管,P2口接受按键信号,通过中断来实现对数字钟的时间的调整。复位按键可对单片机进行复位。
2.3原理图及PCB图
使用protel绘制全部电路的原理图和PCB图,网络标号的使用可以让图看起来简洁清楚,方便绘图人的操作。详图请见附录。
2.4制板
根据原理图在万用版上使用导线将各种器件连接成电路板。
2.5系统调试
使用万用表对制作好的电路板进行电气检查,确保没个引脚的连接都符合原理图的设计,没有出现虚焊、漏焊或者短路的情况。通电状态下检查各器件的工作电压是否正常。
(4)显示电路由数码管、电阻和三极管组成。
(5)复位电路为手动复位,由一个开关,电解电容,电阻组成。
(6)下载口电路下载模块:ISP下载功能,是通过单片机的SPI口实现的。89S系列的单片机都带ISP下载功能
各种功能电路相互结合组成实现设计功能要求的数字钟电路,配合根据电路编写的程序以实现设计要求的全部功能。
3.2程序清单
根据原理图,写出相应的程序,程序清单详见附录A
4设Biblioteka Baidu结果与调试
4.1软件调试
软件为老师所提供提供,其原理在上面以作说明。软件部分是先参考书上的例子,然后自己根据硬件电路写程序,本次编程采用的是C语言。刚刚开始,编写不会一次性通过,经过仔细分析修改最后编译成功。
4.2硬件调试
把程序烧入单片机,上电后,按下开始\停止按键,时钟便从000000开始每秒加1计时,再次按下开始\停止按键,时间暂停,进入调时状态。按秒按键,秒个位闪烁并加1;按下调分按键,分个为闪烁并加1;按下调时按键,分个为闪烁并加1。当再次按下开始\停止按键时,时钟又运行。当按下复位键时,时间显示消失。经以上调试所要求的功能均以实现。
3软件设计
3.1流程图
通过单片机来实现数字钟的功能。流程图2
图2数字钟总原理图
定时器中断时,先检测50ms脉冲是否计数20次,计数到20次,秒就加1;如果没计满60,就返回显示时间,如果秒计满60秒,就清零秒,给分加1;检测分钟,如果没计满60,继续计时,返回显示时间,如果满60,就清零分钟,给小时加1;检测小时,如果没计满24,就继续计时,返回显示时间,如果计满24,就清零,给秒加1,显示时间。
致
在整个课程射界的过程中,同学给予的帮助很重要,他们是我成功的关键,尤其在焊接时,一个人很容易疏忽大意,而我们一起时,轻松愉快也不容易出问题,再就是遇到困难时,首先自己会仔细考虑,实在想不出来,我们会在一起思考找问题,每次问题的解决都会充满成就感。
在设计过程中,老师给予了我们很多帮助,其实在每次单片机实验的时候,老师就是通过各种各样的问题,来让我们更加好的学习单片机。没有单片机实验带给我们扎实的基础,这次课程设计也不会这么顺利,取得成功。非常感老师的帮助!
2 硬件设计
2.1方案设计
数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。标准的频率时间信号必须做到准确稳定,通常使用石英晶体振荡电路构成数字钟。本次课程设计的容是设计一个数字钟,由单片机通过编辑的程序控制电路,实现显示秒、分的一个电子时钟。并且可以通过按键选择调整时钟时间,以及暂停的功能。电路原理图如图1
4.4教学建议
最开始学习单片机时,是对单片机不感兴趣的,上课也是一直只是抱着完成任务的心态,直到后来,上了第一次单片机实验课,王老师通过各种问题,让我们巩固上课所学知识,通过实际解决问题,才慢慢发现单片机是一门很有趣的课程,并且每当你解决一个问题时,你会充满成就感。希望王老师再接再厉,对我们之后的学弟学妹,也以同样的心态对待。相信,他们也会像我们一样,痛并快乐着!
通过这次的课程设计,使我注意到了以上几点,应在以后的学习中加以注意。通过这次机会不但练习了编程,而且还对AT89S52单片机又加深了一些认识,练习了定时器,中断等。
课程设计很快就这样过去了。我们每个人都学到了很多东西,同时也感觉到了自己的不足,它将对我们以后参加工作有很大的帮助,有利于我们以后走上工作岗位。
4.3 误差分析
在调试过程中,最初几次数码管显示有一定的问题,但最后发现是位控线和段控线的焊接存在问题。在运行中存在一定的误差,误差产生有三种可能,首先是采用的计时方案是软件计时的,计时优势利用中断来实现。而你开启定时器和开启LED灯顺序上是有先后的,这个过程需时间的,所以就产生了一定的误差,当然这个误差是避免不了的,其次还有硬件系统也有一定的影响。第三,设计用到12MHz的晶振,计算是满20次为一秒钟,但实际会慢很多。
图1 原理图
2.2电路设计
本次设计中使用的主要元器件有AT89S52、三极管、数码管、晶体振荡器、按键、LED指示灯等。本次数字钟电路用到的模块主要由电源电路、单片机控制电路、晶体振荡电路、显示电路等组成。
(1)电源电路采用外接5V直流电源驱动其运行。电源电路才用一个开关来打开\关闭电源。另外时用一个发光二极管来指示电源的通断。
这个学期即将结束,从刚开学,老师就说我们的课程设计从第一节课开始。在这个学期里,我学到了很多,对单片机有了更深刻的认识,也对自己的不足有了清醒的认识。虽然我在上课时,觉得理论很容易,但是当具体写程序时,发现还是有各种各样的问题出现。开学时画PCB图,一点都不熟练,出了不少错误。在焊接过程中,也出现了不少虚焊的情况。
1课程设计目的与要求
1.1设计目的
了解数字钟的原理,从而学会制作数字钟。通过数字钟的制作进一步的了解在制作中用到的各种中小规模集成电路的作用及使用方法。学习与掌握各种组合逻辑电路与时序电路的原理与使用方法。学习并掌握单片机的使用和编程方法。
1.2设计要求
可调整时间的数字时钟。只显示分、秒,采用动态显示模式。通过按键可对时钟进行选位和加减的时间调整,调整时选中位进行闪烁。可实现时间暂停和重新启动。计时精确。
(2)晶体振荡电路电容C1、C2与晶体构成一个谐振型网络,完成对振荡频率的控制功能,同时提供了一个180度相移,从而和非门构成一个正反馈网络,实现了震荡器的功能。由于晶体具有较高的频率稳定性及准确性,从而保证了输出频率的稳定和准确。
(3)单片机控制电路数字钟的核心原件为AT89S52,配合程序对整个电路进行控制。P1口输出时钟显示的数字,P0口对数码管进行片选,P0口时用需接上拉电阻和三极管,P2口接受按键信号,通过中断来实现对数字钟的时间的调整。复位按键可对单片机进行复位。
2.3原理图及PCB图
使用protel绘制全部电路的原理图和PCB图,网络标号的使用可以让图看起来简洁清楚,方便绘图人的操作。详图请见附录。
2.4制板
根据原理图在万用版上使用导线将各种器件连接成电路板。
2.5系统调试
使用万用表对制作好的电路板进行电气检查,确保没个引脚的连接都符合原理图的设计,没有出现虚焊、漏焊或者短路的情况。通电状态下检查各器件的工作电压是否正常。
(4)显示电路由数码管、电阻和三极管组成。
(5)复位电路为手动复位,由一个开关,电解电容,电阻组成。
(6)下载口电路下载模块:ISP下载功能,是通过单片机的SPI口实现的。89S系列的单片机都带ISP下载功能
各种功能电路相互结合组成实现设计功能要求的数字钟电路,配合根据电路编写的程序以实现设计要求的全部功能。
3.2程序清单
根据原理图,写出相应的程序,程序清单详见附录A
4设Biblioteka Baidu结果与调试
4.1软件调试
软件为老师所提供提供,其原理在上面以作说明。软件部分是先参考书上的例子,然后自己根据硬件电路写程序,本次编程采用的是C语言。刚刚开始,编写不会一次性通过,经过仔细分析修改最后编译成功。
4.2硬件调试
把程序烧入单片机,上电后,按下开始\停止按键,时钟便从000000开始每秒加1计时,再次按下开始\停止按键,时间暂停,进入调时状态。按秒按键,秒个位闪烁并加1;按下调分按键,分个为闪烁并加1;按下调时按键,分个为闪烁并加1。当再次按下开始\停止按键时,时钟又运行。当按下复位键时,时间显示消失。经以上调试所要求的功能均以实现。
3软件设计
3.1流程图
通过单片机来实现数字钟的功能。流程图2
图2数字钟总原理图
定时器中断时,先检测50ms脉冲是否计数20次,计数到20次,秒就加1;如果没计满60,就返回显示时间,如果秒计满60秒,就清零秒,给分加1;检测分钟,如果没计满60,继续计时,返回显示时间,如果满60,就清零分钟,给小时加1;检测小时,如果没计满24,就继续计时,返回显示时间,如果计满24,就清零,给秒加1,显示时间。
致
在整个课程射界的过程中,同学给予的帮助很重要,他们是我成功的关键,尤其在焊接时,一个人很容易疏忽大意,而我们一起时,轻松愉快也不容易出问题,再就是遇到困难时,首先自己会仔细考虑,实在想不出来,我们会在一起思考找问题,每次问题的解决都会充满成就感。
在设计过程中,老师给予了我们很多帮助,其实在每次单片机实验的时候,老师就是通过各种各样的问题,来让我们更加好的学习单片机。没有单片机实验带给我们扎实的基础,这次课程设计也不会这么顺利,取得成功。非常感老师的帮助!
2 硬件设计
2.1方案设计
数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。标准的频率时间信号必须做到准确稳定,通常使用石英晶体振荡电路构成数字钟。本次课程设计的容是设计一个数字钟,由单片机通过编辑的程序控制电路,实现显示秒、分的一个电子时钟。并且可以通过按键选择调整时钟时间,以及暂停的功能。电路原理图如图1
4.4教学建议
最开始学习单片机时,是对单片机不感兴趣的,上课也是一直只是抱着完成任务的心态,直到后来,上了第一次单片机实验课,王老师通过各种问题,让我们巩固上课所学知识,通过实际解决问题,才慢慢发现单片机是一门很有趣的课程,并且每当你解决一个问题时,你会充满成就感。希望王老师再接再厉,对我们之后的学弟学妹,也以同样的心态对待。相信,他们也会像我们一样,痛并快乐着!
通过这次的课程设计,使我注意到了以上几点,应在以后的学习中加以注意。通过这次机会不但练习了编程,而且还对AT89S52单片机又加深了一些认识,练习了定时器,中断等。
课程设计很快就这样过去了。我们每个人都学到了很多东西,同时也感觉到了自己的不足,它将对我们以后参加工作有很大的帮助,有利于我们以后走上工作岗位。
4.3 误差分析
在调试过程中,最初几次数码管显示有一定的问题,但最后发现是位控线和段控线的焊接存在问题。在运行中存在一定的误差,误差产生有三种可能,首先是采用的计时方案是软件计时的,计时优势利用中断来实现。而你开启定时器和开启LED灯顺序上是有先后的,这个过程需时间的,所以就产生了一定的误差,当然这个误差是避免不了的,其次还有硬件系统也有一定的影响。第三,设计用到12MHz的晶振,计算是满20次为一秒钟,但实际会慢很多。
图1 原理图
2.2电路设计
本次设计中使用的主要元器件有AT89S52、三极管、数码管、晶体振荡器、按键、LED指示灯等。本次数字钟电路用到的模块主要由电源电路、单片机控制电路、晶体振荡电路、显示电路等组成。
(1)电源电路采用外接5V直流电源驱动其运行。电源电路才用一个开关来打开\关闭电源。另外时用一个发光二极管来指示电源的通断。