• 3.89 MB
  • 2022-04-22 13:55:03 发布

LED旋转时钟的设计毕业论文.doc

  • 28页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'LED旋转时钟的设计毕业论文目录引言11.毕业设计内容介绍11.1毕业设计题目11.2本课题研究的内容11.3设计要求11.4本课题研究目的及意义11.5本课题设计准备22.原理介绍32.1单片机介绍32.2芯片的选择32.3单片机STC15F2K08S2介绍32.4贴片发光二极管原理介绍42.5红外对管原理介绍52.6稳压管原理介绍52.7视觉暂留介绍52.8旋转时钟的实现63.毕业设计总体框架63.1毕业设计框架图63.2总体设计思路73.3关于计时和电机转速监测的实现74.实验步骤84.1详细具体步骤84.2硬件设计84.2.1电路原理图8 4.2.2电路各部分功能以及焊接9 4.3程序设计104.3.1程序设计104.3.2旋转时钟程序下载125.调试过程136.总结16谢辞18参考文献19附录20 引言现如今大多数人们的家庭使用的时钟主要还是传统意义上的时钟,传统意义上的时钟就是固定的表盘还有时针、分针、秒针,其显示效果非常的单一,不美观并且功能单一。然而对于科技发展迅速的如今,层出不穷的各种物品越来越多,单一传统的时钟根本不能满足当代人的要求,现如今很多的人就得时钟不但用来看时间还应该是一件很好的装饰品的。LED旋转时钟,就是基于51单片机的LED旋转时钟,它的工作原理是利用电机带动LED灯所在的电路板高速旋转,单片机控制LED灯的亮灭,再依靠人眼的视觉暂留现象而形成的一种时钟。它外型独特,样式新奇,它不同于我们平时使用的时钟,没有传统时钟的单一,新颖的设计很有其吸引力。1.毕业设计内容介绍1.1毕业设计题目LED旋转时钟1.2本课题研究的内容本课题设计的主要内容是基于单片机的LED旋转时钟。旋转显示屏是利用电机机械转动动态扫描的方式代替传统逐行扫描的方式,其实它的实质就是机械转动与动态扫描的方式配合起来显示技术。当电路板电源正常供电开始工作时,这时电机就带动一整排高亮的LED灯围绕着电机轴旋转起来,这时LED灯在单片机STC15K2F08S2的控制下进行一定规则的显示,从而形成旋转的时钟,并显示出时、分、秒,模拟出一个炫彩的电子LED旋转时钟,并且本次的设计对硬件的制作还有对程序时序的控制有很大的挑战性。1.3设计要求本课题设计要求:能够进行时间显示;时间精确度高;提高部分:要求能进行实时语音报时;性价比较高。1.4本课题研究目的及意义20世纪末电子科学技术获得了飞速的发展,在电子科学技术发展的推动下,现代电子产品几乎渗透了世界的各个角落,并且还渗透了社会的各个领域。它有力地推动了社会生产力的发展,还有力的推动了社会信息化程度的提高,再此同时也使现代电子产品的性能进一步的得到了提高,这让电子产品更新换代的节奏变得越来越快。现代科学技术越来越发达,人们对于生活也有了更多的要求,现代生活的人们在时间观念上也越来越重视,对于那些想对时间把握非常精准以及非常严格的人或事来说,如果时间的不精准,这样将会带来非常大的麻烦。所以这次LED旋转时钟这个毕业设计课题的研究很有意义。 现在市场上时钟的种类越来越多,但是这些繁多的种类也脱离不开传统时钟的影子,而这次我毕设课题研究的LED旋转时钟和传统时钟的区别是巨大的。LED旋转时钟和我们平时使用的时钟有很大的不同,它不是一般概念的电子数字钟,它的表盘和三个表针都是通过LED灯显示出来的,是一种利用人类眼睛的视觉暂留而形成的时钟。目前,单片机的发展趋势,正朝着高性能和多品种方向的趋势发展着,就是进一步地向着CMOS化的、小体积的、高性能的、大容量的、低功耗的、低价格的和外围电路内装化等几个方面发展着。基于51单片机设计的时钟与机械式的时钟相比起来,LED旋转时钟具有更高的美观性还有精准性,并且它能拥有更长的寿命,并且还无机械装置,因此导致基于51单片机时钟的设计越来越多,层出不穷。因此,研究电子时钟并且扩大它的应用范围,具有着非常大的现实意义。1.5本课题设计准备本次毕业设计课题主要设计的是基于51单片机的LED旋转时钟,这次设计任务看似很容易,其实并不容易,它需要硬件设计以及软件程序设计相配合。在设计之前,我在因特网上和学校图书馆中查找课题有关的资料,以及相关内容的英语文献,仔细审阅和筛选,并询问导师,查找出有用的资料,最后总结起来设计我的电路原理图,以及PCB图。再根据原理图设计程序,单片机程序讲控制LED灯的亮灭,这是非常重要的一个步骤。再之后根据原理图列出元器件清单,到实体店或者网上购买元器件,为以防元器件损坏或者丢失,会适当的多购买一些元器件。元器件购买完成就可进行电路板的焊接。如下表1-1为元器件列表。表1-1元器件列表原件名称规格或型号数量单片机STC15F2K08S21电机1200rmp1万用板3cm*7cm14cm*6cm1LED指针模块34个LED灯、34个电阻、1单片机1电容470uF3时钟模块11稳压管5.1v1 电阻10k31R1下载器STC下载器1整流管414842.原理介绍2.1单片机介绍单片机是单片微型计算机的简称,单片机是一块集成了很多模块和功能的芯片,它在一块芯片是集成了程序存储器、数据存储器、中央处理部件、定时/计数器和多种输入、输出(I/O)接口等功能部件,它是片内各个功能的部件通过内部的总线相互连接起来的微型计算机。单片机它具有很多优点,它具有控制能力强、性价比高、体积小、易扩展、高集成度、低电压、高可靠性、低功耗等等优点。现在单片机的发展已经渗透到人们的生活中,并且渗透到了各个领域,单片机在家用电器、智能仪表、军事装置、工业控制等等方面,都得到了非常广泛的应用,单片机现在已经无处不在了,现在几乎很难找到哪个领域是没有它的痕迹的。2.2芯片的选择一开始本次设计选择的是STC15F2K08S2单片机,选用的是贴片式芯片,因为由于此次设计的电路板是要随着电机高速旋转,所以不宜选择太大的芯片,如果选择太大的芯片会导致电路板制作的比较大,为以防电路板高速旋转时不稳定,所以选择了贴片式的芯片。之后在制作过程中,由于是手工制作,贴片式的芯片管脚较小又多,不易焊接,很容易连接错误,所以,上网选购了已经焊接好的芯片模块,避免了很多的麻烦。2.3单片机STC15F2K08S2介绍单片机STC15F2K08S,它具有很多超强的优点,例如它具有超强的抗干扰性以及采用了STC第八代加密技术。STC15F2K08S单片机是不需要外部晶振和外部复位的单片机,它还可以省掉外部的EEPROM,利用了IAP技术。并且它的编程方便容易,它不需要编程器和仿真器,可在线编程。这个单片机具有很大的容量,其有2K字节的SRAM,具有两个独立的串口。STC15F2K08S单片机还具有高速,高可靠性的特点,非常的功耗,并且价格低廉。对于这次应用于这次课题设计,非常的合适。STC15F2K08S单片机引脚如图2-1所示。芯片14脚:VCC:电源电压。芯片16脚:GND:接地。 图2-1STC15F2K08S2管脚图2.4贴片发光二极管原理介绍发光二极管是一种可以直接将电信号转换成为光信号的特殊二极管。发光二极管的基本结构是由一个PN结构成的,它也具有单向导电性。所以它的伏安特性曲线和普通二极管非常的相似,但它的死区电压为0.9V-1.1V,它的正常工作电压为1.5V-2.5V,它的工作电流为10mA-20mA。并且它的反向击穿电压较低,一般小于10V。贴片式发光二极管如下面的图2-2片所示。图2-2贴片LED灯图发光二极管之所以能够发出光,主要是因为它的PN结的结构,这个是由磷化镓、磷砷化镓等等半导体的材料制作而成的。当对它加入正向偏置电压的时候,多子的扩散运动就会增强,这样使得多子大量地复合然后以光的形式释放出能量。然后LED灯的发光的颜色主要由所用的材料来决定的,它可以发出红、黄、绿等等可见光,也可以发出看不见的红外光还有紫外光。其次LED灯的发光亮度与流过管子的电流成正比,电流为几个毫安时便可以明显发光。由于电机带动LED电路板快速旋转,选用贴片式的LED 灯比较美观,除了美观以外,它相比普通的发光二极管还有很多的优点,例如:它的体积比较小,并且耗电量比普通二极管更低,所以使用的寿命也比较长,灯光的亮度也相比比较高。另外它有坚固的外壳,耐用又牢靠;反应速度快速,并且可以防止震动,节约能源,具有很高的解析度。贴片式的发光二极管还很环保。2.5红外对管原理介绍红外对管是红外线发射管与光敏接收管,或者红外线接收管,或者红外线接收头配合在一起使用时候的统称。红外发射管是从红外发光二极管构成发光体,用红外线辐射工作效率比较高的材料制成PN结,常用磷化镓作为材料。正方向的偏置电压向PN结上加入电流触发的红外光线,它的光谱工作效率主要为中心波长830nm~950nm。显示的是正温度指标。其中电流流动的值值越大,那么它的自身温度就会升的越高。当温度不断的升高,它的电流也会不断的增大。发光二极管的红外线灯的工作效率的高低,是和电流的大小息息相关的。但是,这也是有个局限的,当正方向的电流超出了最大限制的时候,红外灯发射的功率就会在预料中下降。光敏接收管是一个具有光敏特征的PN结。是光敏二极管的一种,它具有单向导电性,所以在工作的时候需要加上反向电压的击穿电压。没有光线照耀的时候,有很小的饱和反向漏电流也成为暗电流。此时光敏管不导通。在光线照耀的时候,饱和了的反方向的漏电流会立即加大,构成光电流,在范围内它会随着入射光线的强度的变化,来不断增大。2.6稳压管原理介绍稳压二极管是一种晶体二极管。它是由材料硅做成的,是一种面接触型的晶体二极管,简单的叫做稳压管。稳压二极管也被叫做齐纳二极管。这个稳压二极管是一种半导体器件。它在面临反方向的击穿电压面前,还拥有很高的电阻。稳压管在加入反方向的电压击穿的时候,在规定的电流限制范围内,它两端电压差不多是不会改变的。显示出出稳压的特殊性质,这就是它为什么非常大范围的运用在稳压电源还有限幅电路上。稳压二极管是根据击穿电压来规定档次的,由于这个特殊的优点,稳压管被当为稳压器还有一些电压基础的元器件来实用。稳压二极管还能够串联起来,为了更加方便的在很高的电压上实用。通过串连就能够获得比较多的稳定电压,这样它被称为双向稳压二极管。2.7视觉暂留介绍视觉暂留现象即视觉暂停现象又称“余晖效应”,最先提出的是在1824年由英国伦敦大学教授皮特‘马克’罗葛特在他的研究报告《移动物体的视觉暂留现象》中。当人眼在观察景物还有事物的时候,这时候光信号被传入到大脑的神经,这个过程需要经过一段短暂的时间,当光的作用结束以后,视觉形象并并不会立即的消失,这种残留的视觉被称为“后像”。视觉的这一钟神奇的现象则被称为 “视觉暂留”。当物体在快速运动的时候,当人眼所看到的影像消失以后。人的眼睛任然能够继续保留这个影像0.1秒-0.4秒左右的图像。这种现象就被称为“视觉暂留”现象。视觉暂留呢,是人的眼睛具有的一种非常独特的性质,相信很多人都在生活中感受到过。人的眼睛观看物体的时候,物体是成像在人眼的视网膜上的,并且由视觉神经输入到人的大脑中,这样就感受到物体的图像。但是当物体移去的时候,视觉神经经对物体的印象不会马上就消失,它会而持续0.1秒-0.4秒的时间,“视觉暂留”指的就是人的眼睛的这种特殊的性质。此次毕业设计课题,就是利用人眼的这种“视觉暂留”而形成的LED旋转时钟。视觉,实际上是依靠人的眼睛的晶状体形成图像,感光细胞用来感受光的存在,并且将光信号转换成为神经的电流,然后传回到大脑引起人体的视觉。感光细胞的感光,它是靠一些感光色素,但是感光色素的形成也是需要一些时间的,这就是形成“视觉暂留”的主要原因。首先是中国人发现的“视觉暂留”现象,据历史记载,其中出现的最早的视觉暂留就是宋时的走马灯。当时记载的宋时的走马灯,在当时被称为“马骑灯”。在之后法国人保罗·罗盖便在1828年发明了留影盘。留影盘它是一个被绳子在两面穿过的圆形的盘子,盘子的其中一个面画了一只鸟,另一个面画了一个空笼子。当圆盘旋转起来的时候,鸟就在笼子里出现了,就像是鸟被关在了笼子里。这就是很早以前的视觉暂留现象,这就证明了当人的眼睛看到一系列图像的时候,人的眼睛会一次保留一个图像。这次毕业设计课题其中的成像原理,用的就是以上所介绍的视觉暂留的现象,让我们可以在电机带动LED灯电路板旋转的时候,通过LED灯的亮灭,看到动态显示的LED旋转时钟。其功能多样可以改变,还美观,还能计时。2.8旋转时钟的实现LED旋转时钟,利用了人的眼睛的视觉暂留的性质,这里用许多只发光二极管排成其一列,并与一排的电阻相连接,另外再与单片机STC15F2K08S相连接。然后再通过时序的控制来控制发光二极管的亮灭,当电机带动LED灯模块旋转起来,显示出动态扫描出来的显示屏,然而形成旋转的LED旋转时钟。3.毕业设计总体框架3.1毕业设计框架图 稳压电源接入STC15F2K08S2控制核心LED时钟显示单片机程序并口程序下载模块电机转动5V电源接入图3-1总体框架图3.2总体设计思路LED旋转时钟主要由两个部分组成:电机部分和单片机控制发光二极管显示部分。在单片机控制发光二极管显示部分,为了制作的方便,把单片机以及发光二极管等器件焊接到一个电路板上,这样可以使旋转的电路板制作成为一个独立的系统,再将电机插入电路板的中间,这样电机轴插入其中并带动电路板旋转旋转。因为电机将带动电路板高速旋转,如果使用线连接上下板的电源,那么旋转的时候就会导致线缠绕起来而无法继续正常运行,所以在这里我使用了线圈感应。在上下板利用电感线圈相连接,用无线的方式将上下班的电源连接好,这样就能使两个电路板正常的工作。此外这里选用的电路板越小越好,越轻越好,器件也可以及尽量使用贴片式的,但是由于贴片式在手工制作时焊接有困难,所以这里我在网上寻找到连接好的贴片式的LED灯和贴片式单片机相连接好的模块,这样节省了很大的工作量,并且使电路板美观又高性能。人的眼睛具有视觉暂留的错觉,无法区分间隔小于0.1s的图像。因此,我们所要设计的LED旋转时钟主要由两大部分组成:单片机STC15F2K08S核心系统控制部分和电机转动部分。单片机控制部分由一整排的发光二极管及单片机组成,单片机主要用来控制所有二极管的亮和灭、计时等。电机机械转动部分是一个转速约为1200rpm的电机,带上负载后,转速有所下降,电机机械转动然后带动LED邓电路板转动起来。这样,LED旋转时钟的基本框架就已经构成了,总的来说,就是通过单片机控制二极管的亮灭,利用电机的转动,使人眼产生视觉暂留的错觉,呈现出时钟的走动的图像。3.3关于计时和电机转速监测的实现 直流电机的控制比较简单,比较适合用在LED旋转时钟中带动电路板旋转。计算出了周期T=60ms,即是电机转轴每60ms旋转一圈,得到的每秒转动的圈数f=1/T=16.7,所以可选用转速约为1000rmp左右的电机,可以通过与电位器串联来进行具体电机转速的调整。4.实验步骤设计好整体框架;设计原理图;编写程序;根据原理图购买器件;根据原理图连接并焊接器件;检查元器件的焊接;烧录程序;连接上下层板;调试电路板至功能实现。4.1详细具体步骤首先利用Protel99SE画出原理图。打开软件后,在文件夹的根目录下创建mydesign.ddb文件并命名为其命名,打开Documents,在此目录下新建sheet1.sch;打开sheet1,根据查找资料总结所设计的LED旋转时钟画出原理图。由于购买的电路板是万用板,所以为了方便起见,可以不画PCB图,最后将设计好的原理图保存好。之后进行焊接,焊接器件之前,准备好电烙铁、螺丝刀、尖嘴钳、剪刀、镊子、焊锡等工作用品,检查元器件是否齐全。然后根据原理图将元器件焊接到万用板上,并将线用电线或者焊锡将各元器件连接起来。再根据设计要求和原理图、根据设计方案等,编写单片机程序,通过编译调试完成单片机程序的编写。最后将单片机程序烧录到单片机中,就完成了电路板的制作。完成电路板的制作后,并不代表这个设计就完成了。最重要的一步就是调试,首先调试过程中,要熟悉电路原理图,再对照原理图检查电路板,是否有接错、短接、短开或者正负两级接反的情况。否则,在接入电源时,很有可能电路板无法正常运行,或者出现元器件烧坏的情况。完成调试后,就可以连接电源,看电路板是否已经成功的实现其功能。4.2硬件设计4.2.1电路原理图首先设计上层板外围电路,电路原理图如图4-1所示: 图4-1外围电路原理图其次是单片机最小系统以及LED灯的电路板设计,设计原理图如图4-2所示。图4-2LED灯模块原理图4.2.2电路各部分功能以及焊接单片机核心控制部分,此部分采用STC15F2K08S2单片机,下载程序控制电机的转动来实现LED灯的亮灭,以至产生视觉停留,实现此设计的时钟功能。LED显示部分,这个部分我在网上购买了已经焊接好的贴片式的发光二极管,如下图所示这里采用的是蓝色的高亮的贴片式发光二极管,在这里LED灯的亮灭由单片机STC15F2K08S控制,电机带动LED灯旋转,人眼睛的视觉暂留就能够看见LED旋转数字时钟。 DS1302时间模块,芯片DS1302是DALLAS公司推出的一种含有时钟的涓流充电时钟芯片。它芯片内不仅含有实时时钟,其中还包挂了日历。芯片DS1302还具有31字节的静态RAM。这个芯片通过简单的串行接口和单片机之间进行交流通信。实时时钟为电路准备秒、分、时的信息。而日历为电路准备年月日的有关消息。并且这个芯片还具备了闰年的调节功能。构成如下面的图4-3所示。图4-3DS1302模块图设计好电路,将所有元器件焊接到万用板上,并根据原理图进行元器件的连接,线的连接等。因为我购买了部分模块,可以省掉一些焊接的麻烦,但依然要检查各个元器件是否都连接正常,首先检查LED灯的正负是否焊接正确,并检查电路板是否有短接、断接,检查各功能模块是否正常供电并且正常运行。整流稳压电路的焊接,要将四个4148整流管正确连接,并且有正负极,得正确的连接正负极,黑色的一端是负极,则相反的另一端就是正极。所有元器件的焊接都要注意它们的正负极,如果正负极连接不正确,元器件就不能正常工作,整个电路板就无法正常运行。LED灯的焊接很困难,因为是贴片式的,很小,很难拿捏那个力度,很容易就会将旁边的管脚连接在一起,并且正负极也要正确的区分,但是由于我购买了这一模块,所以省掉这些麻烦,但是正负极还是得认真的检查一次。并且检查灯的好坏。上下层板都焊接完成后,将两个板连接起来,注意上下层板连接点的时候,要注意将次级线圈还有初级线圈两个线圈要齐平连接。焊接完成后就可下载单片机程序,最后连接电源,调试电路板。4.3程序设计4.3.1程序设计这里是主程序段,使能中断,中断优先级,装载计数初始值:MAIN:MOVIE,#86H;使能Timer0中断和外部中断1SETBTCON.2;设置MOVIP,#02H;设置Timer0优先级较高 MOVTMOD,#01H;使用Timer0工作在模式1下MOVTH0,#3CH;装载计数初始值,50ms延时MOVTL0,#0B0HMOVR0,#00H;Timer0的50ms延时计数器MOVR1,#00H;秒的计数器MOVR2,#00H;分的计数器MOVR3,#00H;时的计数器MOV32H,#0FFH;旋转时钟的指针显示数据SETBTR0;启动Timer0中断JMP$;循环本行,等待中断发生这里是Timer0中断服务子程序,用于分,时计时:TIM0:INCR0;50ms延时计数器加1CJNER0,#20,NEXT;如果不等于20,说明不到1秒,跳到NEXTINCR1;如果R0=20,计时1秒,R1加1CJNER1,#60,INC_SEC;如果R1不等于60,说明不到1分钟,跳到INC_SECINCR2;如果R1=60,计时1分钟,R2加1MOV30H,R2;将分钟存储在30HCJNER2,#60,INC_MIN;如果R2≠60,说明不到一分钟,跳到INC_MININCR3;如果R2=60,计时1小时,R3加1MOV31H,R3;将小时存储在31HCJNER3,#12,INC_HR;如果R3不等于12,说明不到12个小时MOVR0,#00H;如果R3=12,将R0~R3计数器清0MOVR1,#00HMOVR2,#00HMOVR3,#00H NEXT:MOVTH0,#3CH;装载计数初始值,50ms延时MOVTL0,#0B0HRETI;返回主程序INC_SEC:MOVR0,#00H;50ms计数器清0JMPNEXT;跳至NEXTINC_MIN:MOVR0,#00H;50ms计数器清0MOVR1,#00H;秒钟计数器清0JMPNEXT;跳至NEXTINC_HR:MOVR0,#00H;50ms计数器清0MOVR1,#00H;秒钟计数器清0MOVR2,#00H;分钟计数器清0JMPNEXT;跳至NEXT4.3.2旋转时钟程序下载在网上购买一条STC芯片的下载器,并在电脑上安装程序下载软件。首先,将下载器连接上电脑,下载器提示灯显示正常,接着右键点击我的电脑,选择点击进入管理,进入管理界面,选择设备管理器,看串口是否连接正常,看到串口连接正常后,点击进入下载程序的软件。按照芯片的以及程序选择要求,选择串口,以及单片机型号,设置好,如下图4-4所示: 图4-4程序软件下载图设置完成,打开程序文件,选择已经编译好的程序文件,加载完成后,点击下载/编程,这个时候程序就下载到了单片机里。5.调试过程在整个设计的过程中,我都个人并且独立的完成了这些过程,从设计、采购、组装、焊接、调试、改进,这每一个小小的步骤都倾注了我的力量,一开始本来以为这个课题是很简单的,但是在逐渐研究的过程中,发现了很多没有学习过没有面临过的问题,在一开始的初衷可能只是想完成任务,完成设计,后来慢慢发现在这个过程中,我遇到了很多问题,同时也真正的学习到很多的知识,这并不是一次单纯的设计,这是毕业最后一次学习的机会,从中学到的不止是专业知识,还能从中锻炼许多的品质,要坚持到底、要不懈努力、要积极进取、要独立动手等等,所有的这些,我相信在未来的生活中,对我会有无比大的帮助。在这次设计中,我遇到了很多的困难,一开始的使用的是AT89S52贴片式的单片机,然后腐蚀了两块电路板,但是由于贴片式的单片机的管脚太近,太小,焊接有一定的难度,后来在焊接过程中浪费了两块板。最后我重新上网查找资料,更改了我的原理图,并且重新选择了芯片,并把之前贴片式的LED灯也更改了,但是后来焊接好所有器件以后,结果并没有达到预期的效果,不美观也不精准,后来上网查找以后,发现有已经焊接好的单片机系统以及贴片式LED 灯的模块,我就购买了这个模块的集成板,并购买了部分模块,还有新的元器件,重新设计了原理图,又一次做了大的更改。虽然做了很多次电路板,但是这次毕业设计,我尝试了很多次失败,但是失败的同时,我并没有气馁,也没有放弃,我一次次认真的查找资料,一次次认真的更改原理图,最后还是像我预期的一样使得电路板能够实现了它的功能。很遗憾的是在这次程序设计中,我没有加入提高部分,难度对于我有些高,我只是实现了其基本功能。在原理图设计的过程中,还遇到了一个曾经从来没有用过的元器件,红外对管,然后我百度查找资料,了解了它的特性和用法,准确的用到了电路中。由于电路板需要高速旋转,并且LED灯的亮灭和电机的旋转的转速得契合,才能实现其准确的计时功能,所以在调试电机的转速时,遇到了很大的困难,后来在网上购买的一个电机速度控制的模块很好的解决了这个问题,我将其加入电路后,能够准确的控制电机的转速,在这个过程中还得到了老师和同学的帮助,最后将它完成了,调至了合适的转速,心里有很大成就感,也很感谢同学和老师的帮助。一开始,焊接完所有的元器件以后,上层板的供电让我伤透了脑经。上层板如图5-1所示。由于上层板需要随着电机高速的旋转,如果将电源线连接到上层板,当电机开始工作的时候,带动电路板旋转,就会导致电源线缠绕起来,结果使得电路板不能够正常的旋转,后来通过查找资料,选用了电感线圈的方法,将上层板和下层板连接的地方连接上电感线圈,就能够无线供电,这样上下层能够轻易的连接起来,并且能够两个电路板都供电正常。但是当我第一次尝试连接的时候,连接好电源,上层板的发光二极管并没有显示正常,我查找了所有的地方也没有发现虚焊或者短焊等问题,后来发现是红外发射二极管跟红外接收二极管的问题,因为红外对管以前从来没接触过,并不知道它的原理和连接方法,通过查找资料以后,知道了如何更正,将红外发射管与旋转的LED板上的红外接收管上下对齐,这样才能够使他们正常工作,连接确切后,这时候连接下层板的电源线,能够正常供电,并且LED灯显示正常。上下板连接侧面如图5-2所示。这个办法让旋转的时候就会避免连接线太多的问题。能够有效的工作,并且也可以提高美观性。 图5-1上层板焊接图图5-2毕业设计作品侧面图如果在这个过程中,最后连接电源还是无法正常工作,就连接好电源以后,将电机的转动速度调慢,用万用表测试两个板的VCC和GND是否都有5V左右的电压,如果没有,说明电路板供电还有不正常的地方,认真检查各个器件的连接,还有电源是否连接正确,如果有,检查是否还有元器件的虚焊以及错焊的地方。 在焊接的过程中,难免会遇到虚焊等问题,在过程中我使用万用表在电路板上一点点的测试,检测电路板的虚焊问题。最后查找出的虚焊问题,都一一用焊锡补充完成。最后,总的来说,调试过程是个非常重要的过程,也是个复杂的过程,在这个过程中,需要我非常细致的工作,得一步一步来,不能着急,只有认认真真的完成好每一步,才能做好。在这个过程中,学到了很多。6.总结紧张而又繁忙的毕业设计过去了,通过这一个学期的毕业设计使我受益匪浅。这次课题设计,使我真正的了解到自己对单片机以及C语言知识的缺乏。做毕设其实和做实训是一样的,最重要的一个方面就是要认真,其次是要有耐心;再次是要有清晰的思维,能够理清各个器件之间的关系,明确各个器件的功能;最后还要和同学多交流合作,多参考书籍。通过这次课题设计,我对我的专业知识的理论知识有了实际的运用和操作,对其知识的掌握程度也有了提高,动手能力也有了很大的提高,而且懂得了如何处理错误的方法。拥有足够的耐力和信心,对设计每一步的顺利进行极其重要。通过这次学习,我再次感受到理论应用于实际中的难度,认识论联系实际的重要性。再做设计的过程中发现,很多知识点都是课本上的基本知识,从而让我再次了解到自己对课本知识的掌握程度,因此这次机会也让我对课本知识有了进一步的理解,意识到自己知识面不够广,分析电路不够认真和准确,我想这对我以后的学习有很大的促进作用。今后,我们会更加地努力学好专业知识,让我的理论知识和动手能力能够一样的好。现如今大多数人们的家庭使用的时钟主要还是传统意义上的时钟,固定的表盘与表针,显示效果非常的单一,对于科技发展迅速的如今,层出不穷的各种物品越来越多,单一传统的时钟根本不能满足当代人的要求,现如今很多的人就得时钟不但用来看时间还应该是一件很好的装饰品的。所以便选了此课题。对于这次毕业设计的选题,一开始我对这个题目并不是十分的感兴趣,设计过程也不积极,拖慢了很多的时间和进程。之后再设计的过程中,由于它的新奇和独特,让我对它产生了浓厚的兴趣,也积极的参与,查找了很多的资料,更改了很多次的原理图,最后做出了成品,非常的开心。这次实验过程中,我在硬件及软件的多方面都遇到了很多的问题,首先在开题初期,对课题的不理解,很茫然,并不知道这次的毕业设计究竟要做什么,没有接触过视觉暂留,不知道课题难度到底如何,其次对于自己的能力水平也并了解,不清楚自己到底能做到多少。在编程过程中,由于对编程这方面我的水平很差,是上网寻找了多个程序,对比参考,最后才完成的,编写过程中出现了多处错误,很难找出,在这个过程中花费了很多的时间,拖慢了不少的进度。在元器件的购买过程中没有遇到太多的问题,基本上在学校里的元器件实体店都能够购买得到。但是在单片机烧录的过程中,遇到了不少的问题,这次选择的单片机我并不熟悉,它的烧录也不是很熟悉。后来将单片机程序下载软件下载到电脑上后,打开软件后,发现操作非常的简单,后来并没有出现很大的问题,很轻松的就将程序下载完成了。 在整个设计的过程中,我都个人并且独立的完成了这些过程,从设计、采购、组装、焊接、调试、改进,这每一个小小的步骤都倾注了我的力量,一开始本来以为这个课题是很简单的,但是在逐渐研究的过程中,发现了很多没有学习过没有面临过的问题,在一开始的初衷可能只是想完成任务,完成设计,后来慢慢发现在这个过程中,我遇到了很多问题,同时也真正的学习到很多的知识,这并不是一次单纯的设计,这是毕业最后一次学习的机会,从中学到的不止是专业知识,还能从中锻炼许多的品质,要坚持到底、要不懈努力、要积极进取、要独立动手等等,所有的这些,我相信在未来的生活中,对我会有无比大的帮助。经过这些困难与问题,我们收获的了很多很多,在动手能力上也有了很大的提高。作为理科女生的我们,虽然不及男生们的大胆,但是我们有我们女生的细腻和认真,我们注重细节,我们在每一个细节上都很认真,我们不怕遇到困难,怕的是遇到困难不去解决。我们的学习就是为了实践,实践是为了验证真理,实践更是为了遇到困难解决困难,并从中不断的学习,不断的进步,我相信一次次的历练,我会越来越好。 谢辞回首四年的大学时光,时间飞逝,还来不及感叹,大学生活就已接近尾声,四年多的努力与付出,随着这次毕业论文的撰写完成,将要划下完美的句号。本次毕业设计在杨海燕导师的耐心指导和严格要求下顺利地完成,从课题选择到具体的撰写过程,这里面凝聚了老师们太多的汗水,还有努力,在我的毕业设计期间,杨海燕导师为我提供了许多专业的知识上的指导,还有不少的建议。没有导师的指导和督促,我是完全不能顺利的完成此次毕业设计还有论文的撰写的。在此对老师的帮助我表示万分的感谢。在这次毕业设计中,我在真正意义上做了次实训,这和以往的实训过程是不一样的,这是一个难忘又特别的回忆。在这个回忆中,我吸取了许多的经验还有教训。首先,我得感谢导师杨海燕对我的帮助,在设计过程中,她给了我许多宝贵的意见,并时时监督着我的进展,让我不拖慢进度,在规定的时间内完成毕业设计。其次,还得感谢学校给我这次机会,这次设计的机会,这次学习的机会,还要感谢学校老师这四年来,在学习上对我的帮助还有照顾。这次毕业设计中,我遇到了很多的困难,同学们也给予了我很多的帮助,很谢谢你们。谢谢所有人对我的照顾还有支持,是因为老师和同学们的支持,才让我的毕业设计能够顺利的完成。在这临近毕业的时候,我还想借此机会对我四年在学校的学习还有生活有重重帮助的老师们和同学们表示感谢,感谢你们四年来的辛勤栽培,感谢你们四年来在我生活中对我的帮助,感谢你们对我的包容和理解,感谢你们让我在大学里面结识了你们,让我学到了那么多的知识。我还要感谢同组的各位同学以及我的各位室友,在毕业设计的这段时间里,你们给了我很多的启发,提出了很多宝贵的意见,对于你们帮助和支持,在此我表示深深地感谢!再此,对所有帮助我的老师和同学们,送上最真挚的感谢。 参考文献[1]陈忠平.51单片机C语言程序设计经典实例[J].电子工业出版社,2012,5:1~13.[2]居敏花.POVLED时钟的设计.科学出版社,2011,6.[3]LightningWheels,QualcommMems.RotatingLEDdisplaydevicereceivingdataviainfraredtransmission.US20040102223A1,2007,9.[4]张立霞,周立余,冯新.基于AVR的LED旋转屏设计[D].天津:天津大学,1997.[5]李朝青.单片机原理及接口技术[P].电子工业出版社,2005,10.[6]邵淑华.单片机汇编语言编程100例[S].北京出版社,2013,12.[7]杨欣,王玉凤,刘湘黔.51单片机应用从零开始.北京:清华大学出版社,2008.1.[8]周正华.51单片机POV趣味制作详解.北京:北京航空航天大学出版社,2011.3.[9]刘瑞新等.单片机原理及应用教程.机械工业出版社,2003.7.[10]吴国经等.单片机应用技术.中国电力出版社,2004.1.[11]李全利,迟荣强.单片机原理及接口技术.高等教育出版社,2004.1. 桂林电子科技大学信息科技学院毕业设计(论文)说明书附录电路原理图:时钟程序:ORG00H;起始地址00HJMPMAIN;跳转到MAINORG0BH;Timer0中断向量地址JMPTIM0;跳转到TIM0ORG13H;外部中断1向量地址JMPEXT1;跳转到EXT1MAIN: 桂林电子科技大学信息科技学院毕业设计(论文)说明书MOVIE,#86H;使能Timer0中断和外部中断1SETBTCON.2;设置MOVIP,#02H;设置Timer0优先级较高MOVTMOD,#01H;使用Timer0工作在模式1下MOVTH0,#3CH;装载计数初始值,50ms延时MOVTL0,#0B0HMOVR0,#00H;Timer0的50ms延时计数器MOVR1,#00H;秒的计数器MOVR2,#00H;分的计数器MOVR3,#00H;时的计数器MOV32H,#0FFH;旋转时钟的指针显示数据SETBTR0;启动Timer0中断JMP$;循环本行,等待中断发生TIM0:INCR0;50ms延时计数器加1CJNER0,#20,NEXT;如果不等于20,说明不到1秒,跳到NEXTINCR1;如果R0=20,计时1秒,R1加1CJNER1,#60,INC_SEC;如果R1不等于60,说明不到1分钟,跳到INC_SECINCR2;如果R1=60,计时1分钟,R2加1MOV30H,R2;将分钟存储在30HCJNER2,#60,INC_MIN;如果R2≠60,说明不到一分钟,跳到INC_MININCR3;如果R2=60,计时1小时,R3加1MOV31H,R3;将小时存储在31HCJNER3,#12,INC_HR;如果R3不等于12,说明不到12个小时MOVR0,#00H;如果R3=12,将R0~R3计数器清0MOVR1,#00H 桂林电子科技大学信息科技学院毕业设计(论文)说明书MOVR2,#00HMOVR3,#00HNEXT:MOVTH0,#3CH;装载计数初始值,50ms延时MOVTL0,#0B0HRETI;返回主程序INC_SEC:MOVR0,#00H;50ms计数器清0JMPNEXT;跳至NEXTINC_MIN:MOVR0,#00H;50ms计数器清0MOVR1,#00H;秒钟计数器清0JMPNEXT;跳至NEXTINC_HR:MOVR0,#00H;50ms计数器清0MOVR1,#00H;秒钟计数器清0MOVR2,#00H;分钟计数器清0JMPNEXT;跳至NEXTEXT1:MOVR4,#00H;显示位置计数器,记录旋转过程中的位置DISPLAY:MOVA,R4;位置数据载入ACCCJNEA,#60,CONTINUE;如果位置不等于60,表示没有显示完一圈RETI;如果60,说明显示完一圈,返回主程序CONTINUE:PUSHACC;ACC压栈MOVB,#5;刻度的位置是5的倍数DIVAB;将位置除以5MOVA,B;将余数载入ACC中CJNEA,#0,DIS_MIN;余数与0比较,不相等表示不是刻度位置 桂林电子科技大学信息科技学院毕业设计(论文)说明书ANL32H,#0FEH;如果是刻度位置,将显示数据的最低位清0DIS_MIN:POPACC;ACC弹栈,位置数据CJNEA,30H,DIS_HR;如果位置数据与30H的分钟不相等,跳转ANL32H,#01H;如果相等,说明是分针的显示位置,将显示数据中得分针位清0DIS_HR:PUSHACC;ACC压栈MOVA,31H;小时计数器载入ACCMOVB,#5;B=5MULAB;做AⅹB=时针的位置,积存回ACCMOV31H,A;位置载入31HPOPACC;ACC弹栈,位置数据CJNEA,31H,NXT;如果位置数据与31H中内容不相等,跳转ANL32H,#07H;如果相等,说明是时针的显示位置,将显示数据中的时针位清0NXT:MOVP1,32H;32H中的显示数据从P1输出MOVR6,#174;延时700usCALLDELAYMOV32H,#0FFH;熄灭MOVP1,32H;延时300usMOVR6,#74CALLDELAYINCR4;位置计数器加1JMPDISPLAY;循环DELAY:MOVR5,#2D1:DJNZR6,$DJNZAR5,D1 桂林电子科技大学信息科技学院毕业设计(论文)说明书RETEND;程序结束'