基于51单片机的数字电子时钟设计课程设计.docx
- 文档编号:18885397
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:16
- 大小:1.09MB
基于51单片机的数字电子时钟设计课程设计.docx
《基于51单片机的数字电子时钟设计课程设计.docx》由会员分享,可在线阅读,更多相关《基于51单片机的数字电子时钟设计课程设计.docx(16页珍藏版)》请在冰豆网上搜索。
基于51单片机的数字电子时钟设计课程设计
课程设计任务书
学院
专业
学生姓名
班级学号
课程设计题目
实践教学要求与任务:
通过本课程设计使学生进一步巩固《智能仪表综合设计》的基本概念、理论、分析方法和实现方法;增强学生软件编程实现能力和解决实际问题的能力。
1、熟悉所确定的题目从问题需求,数据结构,程序结构,难点及关键技术等方面进行分析,形成系统的设计方案;
2、根据方案设计硬件电路;
3、软件编程并调试;
4、完成文档整理,按照软件工程的要求完成设计论文;
5、通过答辩的形式对程序的功能进行评价与验收。
工作计划与进度安排:
第12周-第13周:
布置设计任务,查资料,完成总体设计框架,完善设计内容,系统调试,验收答辩。
指导教师:
年月日
专业负责人:
年月日
学院教学副院长:
年月日
摘要
数字钟因其小巧,价钱低廉,走时精度高,利用方便,功能多,便于集成化而受广大消费的喜爱,因此取得了普遍的利用。
单片机为基础上设计出来的数字时钟数字钟,在日常生活中最多见,应用也最普遍。
本次课程设计的时钟就是以STC89C52单片机为核心,配备LED显示模块、时钟模块、等功能模块的数字电子钟。
采纳24小时制方式显示时刻。
文章要紧从硬件设计和软件编程两个大的方面。
硬件电路设计要紧包括中央处置模块、时钟模块,显示模块等几部份。
时钟电路采纳DS1302芯片,并选用LED显示器。
软件方面用keilC语言来实现。
软硬件配合,达到电子时钟精准的显示。
关键字:
单片机,时钟模块,精准
1绪论
设计概述
在单片机技术日趋成熟的今天,其灵活的硬件电路和软件程序的设计,使单片机取得普遍的应用,从小的电子产品,到大的工业操纵,单片机都起到了举足轻重的作用。
数字电子时钟是基于单片机和DS1302时钟芯片的一种计时工具。
通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零,从而达到精准地计时的功能
数字电子时钟是人民日常生活补课缺少的工具。
具有体积小、功耗低、功能强、性价比高、易于推行应用的优势,在自动扮装置、智能仪器表、进程操纵、通信、家用电器等许多领域取得日趋普遍的应用。
技术简述
数字电子时钟系统顶用到的单片机是一种集成。
在电路芯片,是采纳超大规模集成电路技术把具有数据处置能力的中央处置器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、按时器/计时器等功能集成到一块硅片上组成的一个小而完善的运算机系统。
STC89C52单片机采取的半导体工艺,具有很多显著的特点,集成度高,体积小。
内部采纳总线结构,减少了各芯片之间的连线,提高了单片机的靠得住性与抗干扰能力。
同时操纵功能强、功耗小、电压低。
外部总线采纳串行总线连接,缩小了体积。
而且其系统扩展和系统配置典型、标准,容易组成各类规模的应用系统。
时钟模块选取的DS1302芯片是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实不时钟电路,它能够对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能。
DS1302芯片工作电压为~。
同时采纳三线接口与CPU进行同步通信,并可采纳突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×8的用于临时性寄存数据的RAM寄放器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。
具有效于高速数据暂存的31×8RAM,2引脚的串行I/O,满度工作范围,用于时钟或RAM数据读写的单字节和多字节数据传送,双电源引脚,可选慢速充电至VCC1等特性。
本课题的背景
1957年,Ventura发明了世界上第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速进展起来。
本次课程设计是基于单片机的一种计时工具,采纳延时程序产生必然的时刻中断,用于一秒的概念,通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零。
从而达到计时的功能,是人民日常生活补课缺少的工具。
本课题的意义
随着现代人类生活节拍的加速,人们愈来愈重视起了时刻观念,能够说是时刻和金钱划上了等号。
关于那些对时刻把握超级严格和准确的人或事来讲,时刻的不准确会带来超级大的麻烦,因此用液晶屏为显示器的时钟比指针式的时钟表现出了专门大的优势。
DS1302时钟芯片肯按时刻准确性更高,而且其本钱相对更低。
此刻高精度的计时工具大多数都利用了石英晶体振荡器,由于电子钟、石英钟、石英表都采纳了石英技术,因此走时精度高,稳固性好,利用方便,不需要常常调试,数字式电子钟用集成电路计不时,译码代替机械式传动,用液晶显示器代替指针显示进而显示时刻,减小了计时误差,这种表具有时、分、秒显示时刻的功能,还能够进行时和分的校对,片选的灵活性好。
同时在本次课程设计中,将再次熟悉和练习proteus工具软件的利用,温习KEILC语言编程。
对智能仪器仪表课程理论知识提供实践基础,并完善智能仪器仪表课程的知识结构,形成智能仪器仪表的全方位知识贯通。
达到理论知识与动手实践相结合。
2系统设计
设计目的
1、把握电子时钟的大体工作方式。
2、熟悉DS1302芯片的特性。
3、通过利用各大体指令,进一步熟练把握单片机的编程和程序调试。
4、制作一款廉价精准的电子时钟。
设计功能及要求
1、液晶显示器能够精准显示动态时刻。
2、单片机发送的信号通进程序操纵液晶上显示。
3、单片机通过输出各类电脉冲信号来驱动操纵各部份正常工作。
4、时钟走时与标准时刻一致,可校对时刻。
设计思路
利用AT89C52单片机及DS1302时钟芯片的特点,设计一种基于DS1302单片机操纵,再利用液晶显示的数字钟。
本系统利用AT89S52作为CPU进行整体操纵,采纳晶振电路作为驱动电路,由延时程序和循环程序产生的一秒按时,达到时分秒的计时,通过DS1302时钟芯片获取准确详细的年、月、日、周、日、时、分、秒准确时刻,对时钟信号进行操纵,同时利用液晶显示芯片LCD1602对时刻进行准确显示年、月、日、周、日、时、分、秒。
硬件方案
硬件系统要紧分为操纵模块,时钟模块,显示模块三个部份。
其中操纵imokuai由STC89C52做为核心操纵器,包括复位电路和晶振电路。
时钟模块采纳低功耗,高精准的DS1302芯片做为时钟芯片,辅以3V电池保证断电后时钟芯片继续计时。
显示模块液晶显示器采纳具有微功耗、体积小、显示内容丰硕、超薄轻巧等诸多优势的1602液晶显示器做为时刻显示屏,通过总线与操纵模块连接。
时钟芯片的选择
由于利用单片机来实现电子万年历设计,无外接其他芯片,存在精度不够高,误差较大,掉电后丢失所有数据,软件编程较复杂的问题。
因此决定采纳一个实时的时钟和日历的时钟芯片,以便对一些实时发生事件记录时给予时标。
DS1302时钟芯片具有功耗低、精准度高、软件程较简单,芯片的体积小、芯片本钱低等,诸多优势,因此本设计采纳DS1302作为实不时钟芯片。
显示屏的选择
LCD1602具有微功耗、体积小、显示内容丰硕、超薄轻巧,对照度可调、内含复位电路、提供各类操纵命令等特点,完全知足本次设计的需要,因此选择用LCD1602作为显示器利用。
单片机的选择
STC89C52单片机具有性价比高、集成度高、体积小、靠得住性强、电压低、功耗小的特点。
其把各功能部件集成在一块芯片上,内部采纳总线结构,减少了各芯片之间的连线,大大提高了单片机的靠得住性与抗干扰能力,适合在恶劣环境下工作。
外部总线采纳串行总线连接,系统扩展和系统配置典型、标准,容易组成各类规模的应用系统。
因此本设计采纳STC89C52做为操纵核心单片机。
软件方案
软件程序采纳KEILC语言编程,程序设置在单片机内部存储器设三个字节别离寄存时钟的时、分、秒信息。
利用按时器与软件结合实现1秒按时中断,每产生一次中断,存储器内相应的秒值加1;假设秒值达到60,那么将其清零,并将相应的分字节值加1;假设分值达到60,那么清零分字节,并将时字节值加1;假设时值达到24,那么将十字节清零。
当单片机不上电,单片机程序不执行,由3V电池继续为DS1302芯片供电,使时钟断电不断时。
整体方案
系统设计利用单片机进行操纵,采纳DS1302作为实不时钟芯片,其三线接口SCLK、I/O、/RST与单片机进行同步通信,P1口用作触发开关的通信接口。
利用单片机的P0口作为液晶显示屏的显示端口,液晶显示屏所显示的数据全都通过P0口接收与发送。
系统结构框图如图1。
图1系统结构框图
元器件清单
系统需要SCT89C52单片机、DS1302时钟芯片等电子元器件,具体名称和型号如表1。
表1.元器件清单
序号
名称
型号
数量
1
单片机
STC89C52
1
2
时钟模块
DS1302模块
1
3
显示屏
LCD1602
1
4
排阻
1K
1
5
按键
4*4
2
6
瓷片电容
22pf
2
7
电解电容
20uf
1
3硬件设计
单片机最小系统
51单片机是片内有程序存储器的单片机,要组成最小应用系统时只要将单片机接上外部的晶体或时钟电路和复位电路即可。
如图2所示。
如此组成的最小系统简单靠得住,其特点是没有外部扩展,有可供用户利用的大量的I∕O线。
图2单片机最小系统
时钟电路
STC89C51单片机内部的振荡电路是一个高增益反向放大器,引线X1和X2别离是放大器的输入端和输出端。
单片机内部尽管有振荡电路,但要形成时钟,外部还需附加电路。
AT89C51的时钟产生方式有两种:
内部时钟电方式和外部时钟方式。
由于外部时钟方式用于多片单片机组成的系统中,因此本系统选用内部时钟方式,如图3所示.
图3片内振荡电路的时钟电路
内部时钟方式:
利用其内部的振荡电路在X1和X2引线上外接按时元件,内部振荡电路产生自激振荡。
最经常使用的是在X1和X2之间接晶体振荡器与电路组成稳固的自激振荡器,其中晶振选用振荡频率为12MHz的石英晶体,电容器采纳30PF。
复位电路
单片机的REST引脚持续两个周期以上高电平那么单片机所有的I/O口都将复位到“1”状态,编程地址计数器复位到000H,针对这一特点在按钮两头并联一10μf的电解电容,正极接电源,如此在按钮按下又释放后由于电容的充电能够在电阻两头维持至少两个时钟周期以上的高电平,电路如图4所示。
图4复位电路
时钟电路
时钟电路DS1302与单片机的连接需要3条线:
CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。
电路图如图5所示。
图5时钟电路
电源电路
外接电源电路用于连接外部5V电源与电子时钟电路,通过自锁开关操纵电路的导通与断开,当开关闭合时,电路导通,外部电源给电路正常供电,电子时钟正常工作。
当开关断开时,电路停止工作。
而二极管的亮灭与否确实是看电路是不是能正常的工作。
电路图如图6所示。
图6电源电路
系统整体电路
复位电路,晶振电路与单片机一路组成了操纵电路。
将显示屏顺顺序连接到单片机上,其他各部份电路按结构连接到一路,组成完整系统电路图,电路图如图7所示。
图7整体电路图
系统仿真
利用proteus软件成立相应工程,加入各部原件并按系统电路图进行连接,制作系统仿真。
系统仿真图如图8所示。
图8系统仿真图
硬件制作
.依照硬件电路设计的电路图,结合仿真进行硬件电路实物的搭建,在搭建进程中充分利用可活动的杜邦线进行电路的连接。
硬件实物如图9所示。
图9硬件实物
4软件设计
程序设计步骤
软件设计要紧包括执行软件的设计和监控软件的设计。
设计步骤如下所示。
1、采纳模块化程序结构设计软件,将整个软件分成假设干功能模块。
2、绘制程序流程图。
3、依照流程图,编写源程序。
4、上机调试各模块程序。
系统主程序
开始时,先对变量进行初始化,然后对DS1302进行处置,使其不具有写爱惜,如此才能给DS1302通信,使其能与单片机互换数据。
给DS1302持续的脉冲,接着向1302内部写入地址,直至写完。
最后由单片机与DS1302通信,读取DS1302内部的地址,直至读取完毕,然后单片机把所读到的数据传送给1602,使数据呈此刻液晶屏上,如此,整个主程序流程图就完成了。
主程序流程图如图10所示。
图10主程序流程图
时钟模块子程序
时钟模块子程序运行时程序先对DS1302时钟芯片进行初始化,使DS1302时钟芯片不受写爱惜,方便单片机对DS1302时钟芯片进行数据写入。
在持续的脉冲作用下,单片机不断地将数据写入1302时钟芯片的地址中,直至需要调时时,这时改变后的数据会贮存在1302时钟芯片新的地址上,读取时直接把新的数据传输到1602液晶显示屏上,即完成了调时。
时钟模块子程序流程图如图11所示。
图11时钟模块子程序
显示模块子程序
显示模块子程序启动时,程序第一对1602液晶显示屏进行初始化,然后检测单片机对1602液晶显示屏有无进行数据写入。
当单片机对1602液晶显示屏有
数据写入时,1602液晶显示屏便读出数据并进行显示;当单片机对1602液晶显示屏没有数据写入时,则维持1602液晶显示屏一直处于等待的状态,直至单片机对其有数据写入。
显示模块子程序流程图如图12所示。
图12显示子模块流程图
主程序
时钟采纳KEILC语言进行编程,按程序流程进行程序编写,时钟程序的主体部份如下:
main()
{
{DS1302_GetTime(&CurrentTime);
DateToStr(&CurrentTime);
TimeToStr(&CurrentTime);
GotoXY(6,0);
Print(CurrentTime.DateString);
GotoXY(6,1);
Print(CurrentTime.TimeString);
Delay1ms(300);}
}
5联机调试
将写好的程序生成HEX文件,打开绘制好的proteus仿真图,将HEX文件下载到单片机中,点击运行按钮,程序正常运行,LCD1602准确的显示。
Proteus仿真正确的显示动态时刻,如图13所示。
图12调试结果
仿真运行正常后,将程序下载到单片机中,运行实物作品。
结果显现液晶显示无法正常显示的问题。
通过检查发觉AT89C52的P0在进高电平常没有接上拉电阻致使LCD1602无法正常显示时刻。
于是进行修改电路,P0口接上拉电阻,再次运行程序后,液晶屏幕正常显示系统时刻,如图13所示。
图13硬件调试结果
6总结
在这一次数字电子钟的设计进程中,很是收成颇丰。
这为自己尔后进一步深化学习,积存了必然宝贵的体会。
撰写论文的进程也是专业知识的学习进程,它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。
培育了我运用所学知识解决实际问题的能力。
通过这次课程设计我发觉,只有理论水平提高了,才能够将讲义知识与实践相整合,理论知识效劳于教学实践,以增强自己的动手能力。
那个实验十分成心义我取得很深刻的体会,也明白了理论和实际的距离,也明白了理论和实际想结合的重要性,也从中得知了很多书本上无法得知的知识。
咱们的学习不但要立足于书本,以解决理论和实际教学中的实际问题为目的,还要以实践相结合,理论问题即实践课题,解决问题即课程研究,学生自己确实是一个专家,通过自己的手来解决问题比用头脑解决问题加倍深刻。
学习就应该采取理论与实践结合的方式,理论的问题,也确实是实践性的课题。
这种做法既有助于完成理论知识的巩固,又有助于带动实践,解决实际问题,增强咱们的动手能力和解决问题的能力。
7参考文献
[1]姜志海,陈艳雷,陈松。
单片机的C语言程序设计与应用—基于PROTEUS仿真。
电子工业出版社。
2021。
[2]黄仁新,张琴。
单片机原理与应用技术。
清华大学出版社。
2020。
[3]赵新民,王祁。
智能仪器合计基础。
哈尔滨工业大学出版社。
2021。
[4]马秀丽,刘志李骏。
C语言程序设计。
清华大学出版社。
2020。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 数字 电子 时钟 设计 课程设计