




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河南理工大学万方科技学院单片机大作业题 目:数字钟的proteus仿真电路及C语言程序设计 院系名称: 电气与自动化工程系 专业班级: 网络工程一班 学生姓名: 王一帆 学 号: 0926305007 指导教师: 李泉溪 教师职称: 教授 2011 年 月 日一:概述1.1数字钟的简介数字钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许多场合都用到电子时钟。数字钟的设计方法有许多种,例如可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟,还可以利用单片机来实现电子钟等等。这些方法都各有其特点,其中利用单片机实现的电子钟具有编程灵活,以便于功能的扩展。这里要求实现一个具有实时时钟显示和闹钟控制功能的数字钟。通过数字钟的设计与制作,将前面所学的单片机内部定时资源、I/O端口、键盘和显示接口等知识融会贯通,锻炼独立设计、制作和调试应用系统的能力,深入领会单片机应用系统的硬件设计、模块化程序设计及软硬件调试方法等,并掌握单片机应用系统的开发过程。1.2数字钟设计要求设计并制作具有如下功能的数字钟:(1) 自动计时,由6位LED先四起显示时、分、秒。(2) 具备校准功能,可以设置当前时间。(3) 具备定时启动功能,可以设置闹钟时间。1.3数字钟设计方案(1)采用实时时钟芯片。针对应用系统对实时功能的普遍需求,各大芯片生产厂家陆续推出了一系列实时时钟集成电路,如DS1287、DS12887、DS1302、PCF8563、S35190等。这些实时时钟芯片具备年、月、日、时、分、秒、计时功能和多点定时功能,计时数据每秒自动更新一次,不需程序干预。单片机可通过中断或查询方式读取计时数据。实时时钟芯片的计时功能无须占用CPU时间,功能完善,精度高,软件程序设计相对简单,在实时工业测控系统中多采用这一类专用芯片来实现。(2)利用单片机并行I/O端口,实现LED动态显示。该方案直接使用单片机并行口作为显示接口,无须外扩接口芯片,但占用资源较多,且动态扫描显示方式需占用CPU时间。在非实时测控或单片机具有足够并行口资源的情况下可以采用。二:硬件设计2.1 数字钟系统硬件描述1 控制器用AT89S51 , 12M晶振2 数码管动态扫描驱动P2口3 数码管段码驱动P1口4 闹铃驱动P1.05 调整键K1P3.2(外部中断0, 正常、调时、调分、调秒)6 定时/正常切换键K2P3.37 时间参数低位加1键K3P3.48 时间参数高位加1键K4P3.52.2单片机的介绍单片机也被称为微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!2.3数字钟系统设计构思1主流程是取时间参数,显示时间参数。2利用T0中断来完成计时、比较定时时间、驱动闹铃。3利用T1中断完成动态显示中,调整时间闪烁效果的定时。4利用外部中断0来完成调整选择功能。5利用外部中断1完成定时显示,当前时间显示的切换6K3、K4键完成时间参数的循环加1操作2.4数字钟硬件电路图显示三:软件设计3.1数字钟主程序设计流程图3.2 数字钟系统C语言程序代码设计本系统的软件系统主要可分为显示数字程序、定时计数中断程序、时间调整程序、闹钟设置程序四大模块。1:显示数字函数void display(uchar *p) uchar buffer6=0,0,0,0,0,0;uchar k,i,j,m,temp;uchar led=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;buffer0=p0/10;buffer1=p0%10;buffer2=p1/10;buffer3=p1%10;buffer4=p2/10;buffer5=p2%10;for(k=0;k2;k+)temp=0x01;for(i=0;i6;i+)j=bufferi;P0=temp;P1=ledj; /P1送断码temp=1;for(m=0;m100;m+);/每一位显示延时P1=0x00; /关显示2:修改时钟函数void cum() if(secbit=1) /时钟秒修改标志为1,秒单元内容加1if(clockbuf2=59) clockbuf2=0;else clockbuf2+;else if(minbit=1)/时钟分修改标志为1,分单元内容加1if(clockbuf1=59) clockbuf1=0;else clockbuf1+;else if(hourbit=1) /时钟小时修改标志为1,小时单元内容加1if(clockbuf0=23) clockbuf0=0;else clockbuf0+;else if(rminbit=1) /闹钟分修改标志为1,分单元内容加1if(bellbuf1=59) bellbuf1=0;else bellbuf1+;else if(rhourbit=1) /闹钟小时修改标志为1,小时单元内容加1if(bellbuf0=23) bellbuf0=0;else bellbuf0+;3:闹钟设置函数void ftion1()if(secbit=1|minbit=1|hourbit=1|timdata=1)rhourbit=0;rtimbit=0;rtimdata=0;elsedis_p=bellbuf;/设置闹钟显示标志rtimdata+;/将闹钟修改记录值加1switch(rtimdata)case 0x01:rminbit=1;break;/记录值为1,将闹钟分修改标志置1case 0x02:rminbit=0;rhourbit=1;break; /记录值为2,将时钟分修改标志置1case 0x03:rtimdata=0;rhourbit=0;/按3次则清闹钟单元修改位置记录armbit=1; /设置闹钟已设置标志位dis_p=clockbuf;/恢复时钟显示标志break;default:break;4:定时器中断函数void clock() interrupt 1EA=0; /关中断if(msec1!=40) msec1+;else msec1=0; /到10ms否,不到则msec1加1if(msec2!=10)msec2+;/到1s否,不到则msec2加1elseif(rtimbit=1)count+;msec2=0;if(clockbuf2!=59)clockbuf2+;/到1min否,不到则clockbuf2加1elseclockbuf2=0;if(clockbuf1!=59)clockbuf1+;/到1h否,不到则clockbuf1加1elseclockbuf1=0;if(clockbuf0!=23)clockbuf0+; /到24h否,不到则clockbuf0加1else clockbuf0=0;EA=1; /开中断3.3数字钟仿真结果显示电子钟正常显示仿真:启动闹钟:设置定时数值:(如图设置为10分钟)四:设计总计电子制作不一定一次就能成功,总有个反复过程。因此碰到电路不正常工作的情况时,千万要冷静,不要慌乱。此时既不要埋怨自己,也不要责怪电路,应该集中精力去检查电路。首先应该检查电路的连线。电路越复杂,连线出现错误的几率也就越高,要按照电路图反复检查每一根连线和连接点,每检查一根连线和一个连接点,都在电路图上作一个记录,特别要注意检查接触不好等情况。其次,要检查元件的极性,注意极性方向。经过努力终于找到了电路不正常工作的原因,此时我们的知识技能也一定有了很大的提高。通过这次实训使我更深刻地感受到Proteus的魅力,完成对数字电子钟的设计与制作调试,使我对单片机应用系统的设计过程进行了掌握。单片机应用系统开发的一般工作流程包括:项目任务的需求分析,制作系统软、硬件方案,系统硬件设计与制作,系统软件模块划分与设计,系统软、硬件联调,程序固化,脱机运行等。当我们接手一个课题或项目的时候,不是马上就动手做,而是先进行可行性论证。首先提出几套方案,然后对各个方案进行对比,最后找出最适合的设计方案。对于芯片的使用,我们应该在了解它的各项功能的前提条件下,灵活巧妙地运用。具体的芯片资料和图片我们通过查阅相关的书籍,在网上能够很方便的查找。这次大型作业虽然时间很短,但是从中学到很多东西,是自己对以前学的知识有了进一步得了解。并增强了对数字电子技术这门课程的兴趣。同时也发现自对数电知识和电子设计软件掌握得不够。 这次设计仿真我们用到了仿真软件Proteus和编译软件keil,从软件的安装到使用,从网上查阅资料学到了很多课堂之外的专业知识。这次的设计最主要是单片机的应用,从控制到接口。技术是一个多学科的综合,要做到灵活应用需要自我学习各种辅助技术的应用。 这次明显体会到自己知识的匮乏,思考问题不全面,这激励我要学好基础
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- cad技术与实践考试试题及答案
- 交通银行2025鸡西市秋招笔试EPI能力测试题专练及答案
- 农业银行2025七台河市秋招群面案例总结模板
- 交通银行2025固原市金融科技岗笔试题及答案
- 农业银行2025枣庄市秋招无领导模拟题角色攻略
- 农业银行2025承德市结构化面试15问及话术
- 建设银行2025秋招笔试专业知识题专练及答案广西地区
- 建设银行2025长春市笔试英文行测高频题含答案
- 2025行业商业模式创新案例研究
- 农业银行2025淄博市金融科技岗笔试题及答案
- (正式版)DB15∕T 2590.1-2022 《毛茛科草种质资源描述和数据采集规范 第1部分:金莲花》
- 依法服兵役课件
- 电商客服理论考试复习题库(含答案)
- 特种设备安全监察员考试试题及答案
- 心电图监护中患者护理查房
- 2025低压电工国家全套题库完整版和答案
- 耳石症的诊断与治疗
- 2025届广东省佛山市南海区石门实验学校数学七上期末检测试题含解析
- 中国热射病诊断与治疗指南(2025版)解读
- 专项训练:除法数字谜(除数是两位数的除法)(含解析)人教版小学数学四年级上册
- 儿童跑步教学课件
评论
0/150
提交评论