版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE18《单品机原理及应用》课程设计宁夏大学基于单片机的电子钟设计院系:物理电气信息工程学院学生姓名:指导教师:专业:通信工程班级:通信(2)学号:完成时间:基于单片机的电子钟设计一、设计任务1)、巩固《单片机原理及应用》课程所学的有关知识。2)、通过硬件设计、软件设计,使学生掌握用单片机组成应用系统的方法,提高软件设计能力。3)、掌握单片机的定时/计数器的编程和使用方法。进一步熟悉单片机功能部件的应用。二、设计要求及工作原理说明要求自己做出原理图设计。并且要扩展一片8255芯片作显示接口,分别输出段码和位码;用P1口中的两根口线作功能键。可利用四个LED分时显示当前时间和日历。两个按键的功能:A键用于调时,范围0~23,0为24点,每按一次时加1;B键用于调分,范围0~59,0为60分,每按一次分加1。单片机程序设计、调试。本课题采用单片机内部定时器,用软件对其进行秒、分、时的计数,单片机无法产生1s的定时时间,但是可以用硬件定时和软件计数相结合的方法实现,采用中断方式,即通过中断服务程序进行计数器溢出次数的累计,把定时器/计数器设定为62.5ms,计数溢出16次就可以得到1s,计60次为1分,60分计60次则为1小时,然后通过数码管动态刷新显示出来,再设四个按键进行时间的调整,一个键用作启动/调整键,其余三个分别用于时、分、秒的调整。三、数字电子钟硬件系统的设计3.1硬件总体设计硬件系统总体设计如图1所示。图1硬件系统总体设计3.2数字电子钟硬件系统主要模块功能简要介绍(1)功能芯片:本次设计采用AT89C51芯片,低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。256字节RAM,32位I/O口线,与工业80C51产品指令和引脚完全兼容。价格较低,能满足本次设计的要求。(2)电源和复位模块:AT89C51需5V电压,所以可以采用USB接口的5V电源对其供电,复位电路可采用上电复位、按键电平复位、按键脉冲复位3种,本次采用按键电平复位。如电路原理图中的电源和复位模块。(3)显示模块:该模块由8位8段共阳极数码管组成,由8个PNP型三极管分别驱动其发光,从左至右位控分别接于单片机的P2.7-P2.0中上,段控a-dP接于单片机的P0.0-P0.7口上,使用动态显示从右向左循环点亮每一位数码管。如电路原理图中的数码管电路。(4)键盘模块:键盘由8个独立式按键组成,S0-S7键分别接在单片机的P1.0-P1.7口,并由上拉电阻上拉使其成为电位为高。如电路原理图中的独立键盘模块。(5)时钟模块:为了保证同步工作方式的思想,单片机必须有时钟信号,以使其系统在时钟信号的控制下按时序协调工作。如电路原理图中的晶振电路。3.3数字电子钟电路原理图2.31数字电子钟电路原理图3.4数字电子钟元器件清单元器件名称规格数量AT89c52182551晶振12MHz1发光二极管9单排插40脚1三极管90129蜂鸣器1小按键9下载口座子十芯118b20温度传感器1六脚开关1USB电源线加接口1电阻2001电阻4.7K1电阻1K3电阻47024电解电容220μF1瓷片电容33pF2排阻10K2短路帽3杜邦线8p1PCB板子1底座3数字电子钟元器件清单四、数字电子钟软件系统的设计4.1数字电子钟软件系统主要模块功能简要介绍(1)主程序:主程序的主要功能是进行定时器/计数器,显示缓冲区的初始化,显示,以及判断是否有功能键按下,判断按下的键并调相应的键功能程序。(2)键功能程序:键功能程序的主要功能是执行对应的功能,Menu键为启动/调整键,第一次按下则由待机状态进入运行状态启动时钟,从00-00-00开始显示,然后按下为奇数则暂停,进入调时状态,按下Sec键则秒加1,按下Min键则分加1,按下Hour键则时加1;若按下为偶数则进入时钟运行状态。(3)中断服务程序:中断服务程序的主要功能是进行计时操作,程序开始先判断计数溢出是否满了16次,若不满16次则表明没有达到最小计时单位秒,则中断返回;若满16次表明已达到最小计时单位秒,则程序断续向下执行,进行分和时的计时。(4)显示子程序:显示程序的主要功能是将显示缓冲区的段控码正确的显示在数码管上,采用动态显示,从右向左循环点亮每一位数码管。(5)键扫子程序:键扫子程序的主要功能是判断是否有键按下,是哪个键按下,并将键值保存在20H中。4.2数字电子钟软件系统原理流程框图图4.1计时1秒子程序流程框图图4.2显示子程序流程框图4.3软件流程图4.3.1控制地址列表4.4数字电子钟软件系统程序清单#include<reg52.h>#include<intrins.h>#defineuintunsignedint#defineucharunsignedcharucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,//数码管为共阳0x92,0x82,0xf8,0x80,0x90,0xbf}; //P2口为低则选通uchardatakey_temp=0xff;//关中断和定时器uchardatakey_save=0xff,c=0;ucharhour=0,min=0,sec=0,t,num,temp;//使程序初始化,时间清零uchardatadis[8];voidinit();voiddelay(uint);voidkey_scan();voidmain(){init(); TR0=1;//启动定时器0,开始定时TR1=1;//启动定时器1,temp=0x7f;//给temp赋值在送给P2口P2=temp;num=7;while(1){ key_temp=P3;//键值在P3口 if(key_temp==0xfe) {c++; TR0=0; if(c==2) { TR0=1; c=0; } } if(c==1) { if(key_temp!=key_save) { key_save=key_temp;key_scan(); }} }}voidtime1()interrupt3//主函数,利用定时器1,初值为1000{TH1=(65536-1000)/256;TL1=(65536-1000)%256;dis[0]=hour/10;dis[1]=hour%10; dis[2]=10;dis[3]=min/10;dis[4]=min%10; dis[5]=10;dis[6]=sec/10;dis[7]=sec%10; P0=0xff; //消隐temp=_crol_(temp,1);P2=temp;P0=table[dis[num]]; if(num==0)num=8;num--;}voidtime0()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;t++;if(t==20){sec++;t=0;if(sec==60){sec=0;min++;if(min==60){min=0;hour++; if(hour==24){ hour=0;}}}}}voidkey_scan(){if(key_save==0xfd){if(hour==23)hour=0;elsehour++;}if(key_save==0xfb){if(min==59)min=0;elsemin++;}if(key_save==0xf7)//秒的计时口,判断秒若不为59则加1,为59时转为零{if(sec==59)sec=0;elsesec++;}}voidinit(){hour=0;//时,分,秒为零 min=0;sec=0;EA=1;//开中断,允许T0,T1中断ET0=1;ET1=1;TMOD=0x11;//使定时器1,0都工作在方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-1000)/256;TL1=(65536-1000)%256;}五、设计结论、仿真结果、误差分析5.1数字电子钟的仿真结果本次设计的数字电子钟有三种状态:开始状态,时钟运行状态,时钟调整状态。它们分别如图4.1、图4.2、图4.3所示。图5.1开始状态仿真结果图5.2时钟运行状态仿真结果图5.3时钟调整状态仿真结果5.2数字电子钟的误差分析虽说采用软件方式来产生1s的基本时间,然而定时器/计数器本身不能产生标准的1s定时,产生一个标准时间之后进行循环计数得到1s,但CPU执行代码需要1-2μs的时间,因此产生的1s,1分,1小时,都会略大于标准的时间。此外,单片机也易受外界环境的影响,比如温度、湿度等干扰。故应该让单片机工作在适宜的环境下,同时采用实时时钟芯片,这样能将误差降低到最小。5.3设计心得现在来回想单片机的课程设计,有许多感触,从最开始接触单片机和C语言,到现在能独立完成一个课程设计,我必须得感谢老师的谆谆教导和辛勤付出,是老师给了我动力。在汇编编程时,书本上的很多知识又学的很不扎实,程序基本语句理解不够透彻,导致编一个简单程序都需要大量时间且过于复杂,真是耗时耗力耗单片机内存。也深刻理解了只有踏实讲课本上的每一句程序读懂,多读程序,多看程序,才能更好的编程序。虽然本程序不是我自己编写的,但还是给了我很多知识,应用到的计时,中断都是我们上课时讲的重点。应用protues将实际结果运行出来,由于数字电子钟的设计由于采用的是用硬件定时和软件计数的方式产生的1s,而忽略了CPU执行指令所需的时间,故时钟显示不是很精确。本次的课程设计让我学到了很多知识,相信以后自己有能力编写一个更加准确的电子钟。参考文献:[1]单品机原理及应用,西安电子科技大学出版社[2]单片机的C语言应用程序设计,华中科技大学出版社[3]模拟电子技术.高等教育出版社[4]电路分析基础.清华大学出版社
致谢本次单片机的C语言应用程序课程设计能够顺利的完成,是小组各组员团结努力和廖代文老师的指导下完成的。正是因为廖老师那一丝不苟、刚正不阿的态度才使我们有了做课程设计的动力。感谢老师的助我们开拓解决问题思路,精心点拨、热忱鼓励。老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,是授以终生受益无穷之道。对廖老师的感激之情是无法用言语表达的。还有感谢学校对我们此次课程设计的大力支持,在学校的教学设备相对紧张的情况下,依然为我们安排了充分的时间使用学校的机房。感谢我的同学在这个时间段对我完成课程设计的支持。是你们在我遇到困难时,及时的帮助了我,使得程序等进展顺利。
附录在Protel99SE软件中电路图
社会实践报告系别:班级:学号:姓名:作为祖国未来的事业的继承人,我们这些大学生应该及早树立自己的历史责任感,提高自己的社会适应能力。假期的社会实践就是很好的锻炼自己的机会。当下,挣钱早已不是打工的唯一目的,更多的人将其视为参加社会实践、提高自身能力的机会。许多学校也积极鼓励大学生多接触社会、了解社会,一方面可以把学到的理论知识应用到实践中去,提高各方面的能力;另一方面可以积累工作经验对日后的就业大有裨益。进行社会实践,最理想的就是找到与本专业对口单位进行实习,从而提高自己的实战水平,同时可以将课本知识在实践中得到运用,从而更好的指导自己今后的学习。但是作为一名尚未毕业的大学生,由于本身具备的专业知识还十分的有限,所以我选择了打散工作为第一次社会实践的方式。目的在于熟悉社会。就职业本身而言,并无高低贵贱之分,存在即为合理。通过短短几天的打工经历可以让长期处于校园的我们对社会有一种更直观的认识。实践过程:自从走进了大学,就业问题就似乎总是围绕在我们的身边,成了说不完的话题。在现今社会,招聘会上的大字报都总写着“有经验者优先”,可还在校园里面的我们这班学子社会经验又会拥有多少呢?为了拓展自身的知识面,扩大与社会的接触面,增加个人在社会竞争中的经验,锻炼和提高自己的能力,以便在以后毕业后能真正真正走入社会,能够适应国内外的经济形势的变化,并且能够在生活和工作中很好地处理各方面的问题,我开始了我这个假期的社会实践-走进天源休闲餐厅。实践,就是把我们在学校所学的理论知识,运用到客观实际中去,使自己所学的理论知识有用武之地。只学不实践,那么所学的就等于零。理论应该与实践相结合。另一方面,实践可为以后找工作打基础。通过这段时间的实习,学到一些在学校里学不到的东西。因为环境的不同,接触的人与事不同,从中所学的东西自然就不一样了。要学会从实践中学习,从学习中实践。而且在中国的经济飞速发展,又加入了世贸,国内外经济日趋变化,每天都不断有新的东西涌现,在拥有了越来越多的机会的同时,也有了更多的挑战,前天才刚学到的知识可能在今天就已经被淘汰掉了,中国的经济越和外面接轨,对于人才的要求就会越来越高,我们不只要学好学校里所学到的知识,还要不断从生活中,实践中学其他知识,不断地从各方面武装自已,才能在竞争中突出自已,表现自已。在餐厅里,别人一眼就能把我人出是一名正在读书的学生,我问他们为什么,他们总说从我的脸上就能看出来,也许没有经历过社会的人都有我这种不知名遭遇吧!我并没有因为我在他们面前没有经验而退后,我相信我也能做的像他们一样好.我的工作是在那做传菜生,每天9点钟-下午2点再从下午的4点-晚上8:30分上班,虽然时间长了点但,热情而年轻的我并没有丝毫的感到过累,我觉得这是一种激励,明白了人生,感悟了生活,接触了社会,了解了未来.在餐厅里虽然我是以传菜为主,但我不时还要做一些工作以外的事情,有时要做一些清洁的工作,在学校里也许有老师分配说今天做些什么,明天做些什么,但在这里,不一定有人会告诉你这些,你必须自觉地去做,而且要尽自已的努力做到最好,一件工作的效率就会得到别人不同的评价。在学校,只有学习的氛围,毕竟学校是学习的场所,每一个学生都在为取得更高的成绩而努力。而这里是工作的场所,每个人都会为了获得更多的报酬而努力,无论是学习还是工作,都存在着竞争,在竞争中就要不断学习别人先进的地方,也要不断学习别人怎样做人,以提高自已的能力!记得老师曾经说过大学是一个小社会,但我总觉得校园里总少不了那份纯真,那份真诚,尽管是大学高校,学生还终归保持着学生的身份。而走进企业,接触各种各样的客户、同事、上司等等,关系复杂,但我得去面对我从未面对过的一切。记得在我校举行的招聘会上所反映出来的其中一个问题是,学生的实际操作能力与在校理论学习有一定的差距。在这次实践中,这一点我感受很深。在学校,理论的学习很多,而且是多方面的,几乎是面面俱到;而在实际工作中,可能会遇到书本上没学到的,又可能是书本上的知识一点都用不上的情况。或许工作中运用到的只是很简单的问题,只要套公式似的就能完成一项任务。有时候我会埋怨,实际操作这么简单,但为什么书本上的知识让人学得这么吃力呢?这是社会与学校脱轨了吗?也许老师是正确的,虽然大学生生活不像踏入社会,但是总算是社会的一个部分,这是不可否认的事实。但是有时也要感谢老师孜孜不倦地教导,有些问题有了有课堂上地认真消化,有平时作业作补充,我比一部人具有更高的起点,有了更多的知识层面去应付各种工作上的问题,作为一名大学生,应该懂得与社会上各方面的人交往,处理社会上所发生的各方面的事情,这就意味着大学生要注意到社会实践,社会实践必不可少。毕竟,很快我就不再是一名大学生,而是社会中的一分子,要与社会交流,为社会做贡献。只懂得纸上谈兵是远远不及的,以后的人生旅途是漫长的,为了锻炼自己成为一名合格的、对社会有用的人才.很多在学校读书的人都说宁愿出去工作,不愿在校读书;而已在社会的人都宁愿回校读书。我们上学,学习先进的科学知识,为的都是将来走进社会,献出自己的一份力量,我们应该在今天努力掌握专业知识,明天才能更好地为社会服务。实践心得:虽然这次的实践只有短短的几天,而且从事的是比较简单的服务工作,但是通过与各种各样的人接触,还是让我学会了很多道理。首先是明白了守时的重要性。工作和上学是两种完全不同的概念,上学是不迟到很多时候是因为惧怕老师的责怪,而当你走上了工作岗位,这里更多的是由于自己内心的一种责任。这种责任是我学会客服自己的惰性,准时走上自己的岗位。这对我以后的学习生活也是一种鞭策,时刻牢记自己的责任,并努力加强自己的时间观念。其次让我真实的体会到了合作的重要性。虽然我工作的只是小小的一家餐厅,但是从点单到制作到递送到结帐这一环环的工作都是有分工的,只有这样才能使整家店的工作效率都大大的提高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国医用高分子材料市场供需研究投资评估规计划划分析研究发展报告
- 企业合规管理体系认证制度建设困境与标准化-基于企业合规管理体系认证案例的实证分析
- 2026中国G小基站芯片组集成度提升与OpenRAN市场机会研判
- 2026中国智能穿戴设备行业市场竞争格局分析应用场景发展分析投资评估报告
- 2026中国食品保鲜技术行业创新现状及投资机会评估
- 2026台账管理面试题及答案
- 2026及未来5年中国双八烷基二甲基氯化铵数据监测研究报告
- 2026及未来5年中国卧室空气净化器数据监测研究报告
- 2026及未来5年中国半管式反应釜数据监测研究报告
- 2026事业单位工勤技能-广西-广西图书资料员二级(技师)历年参考题库含答案详解3套试卷
- 急诊科转诊制度
- 中建二测题库及答案
- GB/T 44709-2024旅游景区雷电灾害防御技术规范
- 架空乘人装置司机培训考试题库及答案
- DL∕T 5776-2018 水平定向钻敷设电力管线技术规定
- (正式版)SH∕T 3548-2024 石油化工涂料防腐蚀工程施工及验收规范
- 高度近视眼底疾病知识讲座
- 第一章 护理礼仪与美学课件
- 手术前后病人的护理
- 宠物医院动物医疗价目表
- 作业治疗技术复习试题含答案
评论
0/150
提交评论