单片机数字电子时钟设计zhp.doc

上传人:飞****2 文档编号:56201104 上传时间:2022-11-01 格式:DOC 页数:21 大小:254.50KB
返回 下载 相关 举报
单片机数字电子时钟设计zhp.doc_第1页
第1页 / 共21页
单片机数字电子时钟设计zhp.doc_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《单片机数字电子时钟设计zhp.doc》由会员分享,可在线阅读,更多相关《单片机数字电子时钟设计zhp.doc(21页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、等级:湖南工程学院课 程 设 计课程名称 单片机课程设计 课题名称 数字电子时钟设计 专 业 电子科学与技术 班 级 1101 班 学 号 5 姓 名 曾海平 指导教师 龚军辉 2014 年 5 月 16 日湖南工程学院课程设计任务书 课程名称: 单片机课程设计 题 目:单片机数字电子时钟设计 专业班级:电科1101班 学生姓名: 曾海平 学号:15 指导老师: 龚军辉 审 批:任务书下达日期 2014年5月5日星期一设计完成日期 2014年5月16日星期五 设计内容与设计要求一 设计内容:1.设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动进入时钟准备状态;2.第一次按电子钟启动

2、/调整键,LCD显示时间日期星期,时钟从0时0分0秒开始运行,进入时钟运行状态;3.再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间和日期,调整结束后可按启动/调整键再次进入时钟运行状态。4、设计闹钟功能(可选)5.要求画出电路原理图,绘制元件封装,并打印出pcb图二、设计要求:1、思路清晰,给出整体设计框图和总电路图以及程序清单;2、单元电路设计,给出具体设计思路和电路;3、写出设计报告; 主要设计条件1 提供系统电路所需元件及芯片;2 所用设备及元件需在设计后归还。 说明书格式1 课程设计封面;2 任务书;3 说明书目录;4 设计总体思路,基本原理和框图(总电

3、路图);5 单元电路设计,程序设计6 安装、调试步骤;7 故障分析与电路改进;8 总结与体会;9 附录(元器件清单);10 参考文献11、课程设计成绩评分表 进 度 安 排 第一周星期一:课题内容介绍和查找资料; 星期二:总体电路设计和分电路设计; 星期三:电路仿真,修改方案星期四 :确定设计方案,拟订调试方案,画出调试电路图,安装电路; 星期五:安装、调试电路;第二周星期一二 :安装、调试电路; 星期三 :验收电路;星期四五:写设计报告,打印相关图纸; 星期五下午:带调试电路板及设计报告书进行答辩; 整理实验室及其它事情。 参 考 文 献1、8051系列单片机C程序设计完全手册 人民邮电出版

4、社 求是科技 主编2、新概念51单片机C语言教程:入门、提高、开发、拓展全攻略电子工业出版社 郭天祥 编 华中理工大学出版社 谢自美 主编3、单片机C语言轻松入门北京航空航天大学出版社 周坚 主编目录一 单片机简介2二 设计的任务及基本要求3三 课程设计目的4四 系统的软件设计51 整体的设计思路52 程序总流程图62 软件仿真图7五 设计源程序8六 总结与体会14七 调试15一 单片机简介单片机以其高可靠性、高性价比、低电压、低功耗等一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。并且已经深入到工业生产的各

5、个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器(冰箱、空调、彩电)等。管脚图如图1.1所示。 图1.1 AT89C51单片机引脚图(1) 电源地组Vcc和Vss;VCC(40)脚接+5V电压;VSS(20)脚接地(2) 时钟电路组XTAL1和XTAL2(3) 控制信号组RST/ALE/PSEN和EA(4) I/O端口P0, P1, P2和P3二 设计的任务及基本要求数字电子钟是一块独立构成的时钟集成电路专用芯片,它集成了计数器,比较器,振荡器,译码器和驱动等电路,能直接驱动显示时、分、秒,具有定时,整点报时等功能,被广泛应用于自动化控制,智能化仪表等领域。数字电子

6、钟的原理方框图如图1所示,干电路系统由秒信号发生器,“时、分、秒”计数器,译码器,显示器,校时电路,整点报时电路组成。要求:1、显示时、分、秒。2、具有校时功能,可以对小时和分单独校时,对分校对时停止向小时进位。校时时钟源可以手动输入或借用电路中的时钟。3、为了保证计时准确、稳定,由晶体振荡器提供标准时间的基准信号。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发

7、出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计数器,可实现对一天24小时的累计。译码显示电路将“时”、“分”、“秒”计数器的输出状态用七段显示译码器译码,通过六个LED七段显示器显示出来。校时电路用来对“时”、“分”、“秒”显示数字进行校对调整的。图一:校时控制晶体振荡器分频器校时校分校秒24进制计数器60进制计数器60进制计数器译码显示译码显示译码显示三 课程设计目的(1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力; (2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力;

8、(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。四 系统的软件设计1 整体的设计思路将程序模块化与功能,含有多个子程序的调用与嵌套。通过对按键的是否按下来对时间进行操作,按键功能在设计目标的具体操作中已经展现。本设计中的AT89C51单片机是整个工作过程的核心,是整个设计灵魂,它控制了脉冲时序的产生,显示信号的发送控制显示LED的选择。同时也考虑到AT89C51单片机来制作电子时钟其最大的好处就是可最大的调整时钟使其准确度更高。2 程序总流程图2 软件仿真图五 设计源程序#include#define uchar unsigned ch

9、ar#define uint unsigned intsbit lcdrs=P11;/1602显示器器rs端口sbit lcded=P10;/1602显示器E势能端sbit but1=P20;/选择按键sbit but2=P21;/调节按键加sbit but3=P22;/调节按键减uchar num,tt;/循环语句全局变量num 计时器计数变量ttuchar keycount;/按键but1按下次数char shi,fen,miao; /时分秒 三变量uchar code table=*FENG-ZHENG*;/液晶第一行显示字符/uchar code table1=00:00:00;voi

10、d delay(uint s)/延迟函数uchar a, b;for(a=0;as;a+)for(b=0;b110;b+);/*向液晶1602写命令函数*/void write_com(uchar com)lcdrs=0;P0=com;delay(44); lcded=1;delay(44);lcded=0;/*向液晶1602写字符函数*/void write_date(uchar date)lcdrs=1;P0=date;delay(44);lcded=1;delay(44);lcded=0;/*在液晶第二行写指定位置写时分秒三位加冒号*/void write_sfm(uchar shi,u

11、char fen,uchar miao)write_com(0x80+0x40+4);/从第二行第四位开始写时冒号分冒号秒write_date(shi/10+0x30);/时 的十位 数字的代码为代码加0X30write_date(shi%10+0x30);/时个位write_date(0x3a);/冒号 冒号的字符代码为3awrite_date(fen/10+0x30);write_date(fen%10+0x30);write_date(0x3a);write_date(miao/10+0x30);write_date(miao%10+0x30);/*出示化函数*/void init()s

12、hi=0;fen=0;miao=0;/起始时间为00:00:00keycount=0;/按键标志清零P2=0xff;/按键接口高电平TMOD=0x01;/计时器初始化 tt=0;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TR0=1;/开定时器EA=1;/开中断ET0=1;/开定时器中断lcded=0;write_com(0x38);/显示器初始化write_com(0x0c);/开显示,关光标,关光标闪烁write_com(0x06);/读写字符后地址加一write_com(0x01);/清屏write_com(0x80+2);/起始地址for(n

13、um=0;num12;num+)/显示字符串table write_date(tablenum);write_sfm(shi,fen,miao);/显示起始时间00:00:00/*键盘扫描函数 实现时间的调节*/void keysanf() if(but1=0)delay(5);if(but1=0)/按键1被按下 while(!but1);keycount+;if(keycount=1)TR0=0;/计时器关 时间停止走动write_com(0x80+0x40+11);/光标移到秒位上write_com(0x0d);/光标闪烁if(but2=0)delay(5);if(but2=0)/按键2按

14、下实现时间调节的加while(!but2);miao+;if(miao=60)miao=0;/*一下四句实现在调节过程中光标闪烁位置不变*/write_com(0x0c);/光标停止闪烁write_sfm(shi,fen,miao);/将调解后是时间显示write_com(0x80+0x40+11);/光标再次移到秒位write_com(0x0d);/光标继续闪烁if(but3=0)delay(5);if(but3=0)/按键3 减while(!but3);miao-;if(miao=-1)miao=59;write_com(0x0c);write_sfm(shi,fen,miao);writ

15、e_com(0x80+0x40+11);write_com(0x0d);if(keycount=2)/调节分write_com(0x80+0x40+8);if(but2=0)delay(5);if(but2=0)while(!but2); fen+;if(fen=60)fen=0;write_com(0x0c);write_sfm(shi,fen,miao);write_com(0x80+0x40+8);write_com(0x0d);if(but3=0)delay(5);if(but3=0)while(!but3);fen-;if(fen=-1)fen=59;write_com(0x0c);

16、write_sfm(shi,fen,miao);write_com(0x80+0x40+8);write_com(0x0d);if(keycount=3)/调节时write_com(0x80+0x40+5);if(but2=0)delay(5);if(but2=0)while(!but2); shi+;if(shi=24)shi=0;write_com(0x0c);write_sfm(shi,fen,miao);write_com(0x80+0x40+5);write_com(0x0d);if(but3=0)delay(5);if(but3=0)while(!but3);shi-;if(shi

17、=-1)shi=23;write_com(0x0c);write_sfm(shi,fen,miao);write_com(0x80+0x40+5);write_com(0x0d);if(keycount=4)/退出调节时间阶段 按键标志清零光标消失 计时器开启继续计时keycount=0;write_com(0x0c);TR0=1;main()/主函数 init();/初始化while(1)keysanf();void time0() interrupt 1/计时器中断函数TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt+;/*以下实现数字时钟的的显

18、示和走动*/if(tt=20) tt=0;miao+;if(miao=60)miao=0;fen+;if(fen=60)fen=0;shi+;if(shi=24)shi=0;write_sfm(shi,fen,miao);六 总结与体会 此次为期两星期的实训即将结束了,我对自己在此期间的表现还是比较满意的。现在是我刚开始接触51单片机,对单片机可谓是一窍不通。通过对本次的课程设计,渐渐的不再觉得它那么的难懂,自己对单片机也有了点认知。同时也使自己深刻的认识到自己的很多不足之处。通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识

19、在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去,此次的电子时钟设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。七 调试 1、打开软件后,在Project菜单中选择New Project命令,打开一个新项目。保存此项目,输入工程文件名后,并保存工程文件的目录。2、为项目文件选择一个目标器件,即选择8051的类型。在Data base 列表框中选择“AT

20、ML 89C52”,确定。3、上述设置好后,创建源程序文件并输入程序代码。输入好代码后点击“文件/保存”。4、把源文件添加到项目中,用鼠标指在目标工作区的目标1,点击右键在弹出的菜单中选择添加文件到源代码组,在弹出的添加文件框中,选择需要添加到项目中的文件。电气信息学院课程设计评分表项 目评 价优良中及格差设计方案合理性与创造性(10%)开发板焊接及其调试完成情况*(10%)硬件设计或软件编程完成情况(20%)硬件测试或软件调试结果*(10%)设计说明书质量(20%)答辩情况(10%)完成任务情况(10%)独立工作能力(10%)出勤情况(10%)综 合 评 分 指导教师签名:_ 日 期:_注:表中标*号项目是硬件制作或软件编程类课题必填内容; 此表装订在课程设计说明书的最后一页。课程设计说明书装订顺序:封面、任务书、目录、正文、评分表、附件(非16K大小的图纸及程序清单)。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com