收藏 分享(赏)

单片机控制流水灯.docx

上传人:HR专家 文档编号:12065626 上传时间:2021-08-26 格式:DOCX 页数:25 大小:530.42KB
下载 相关 举报
单片机控制流水灯.docx_第1页
第1页 / 共25页
单片机控制流水灯.docx_第2页
第2页 / 共25页
单片机控制流水灯.docx_第3页
第3页 / 共25页
单片机控制流水灯.docx_第4页
第4页 / 共25页
单片机控制流水灯.docx_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、郑州科技学院单片机课程设计任务书专业12级电气工程及其自动化班级 4班 学号 201247125 姓名 姜帅一、设计题目单片机控制流水灯二、设计任务与要求利用单片机实现对LED彩灯的控制,达到使彩灯按照程序实现不同顺序 的亮灭效果,具体要求以单片机为核心,设计和制作一个LED流水彩灯,当分别按下开关,单片机中的 LED全灭,全亮,从下至上亮,从上至下亮。三、主要参考文献1韩兵.光电控制系统技术与应用M.电子工业出版社,2009.77962姚福安.电子电路设计与实践M.山东科技技术出版社,2001.22243韩振振.数字电路逻辑设计M.大连理工大学出版社,2000.71784阎石.数字电子技术基

2、础M.高等教育出版社,2006.25265康华光.数字电子技术基础M.高等教育出版社,1999.49776杨春玲,王淑娟 数字电子技术M.高等教育出版社,2011.13 157王澄非.电路与数字逻辑设计实践M.东南大学出版社,1999.18208 陈永甫.常用电子元件及应用M.中国电力出版社,2004.3352四、设计时间2015年12月23日 至 2015年12月27日指导教师签名:郑州科技学院单片机课程设计题 目单片机控制流水灯学生姓名姜帅专业班级12级电动4班学 号201247125院(系)电气工程学院指导教师 杨瑞完成时间2015年11月27日1前言12课程设计目的与要求 1.2.1

3、设计目的1.2.2 设计要求1.3设计方案与论证2.3.1 系统框图2.3.2 循环移位法3.3.3 查表法.3.4元器件介绍3.5部分硬件电路设计6.5.1 单片机最小系统6.5.2 流水灯电路7.5.3 proteus 仿真8.6硬件的制作与调试 a.7总结仙参考文献11附录1 :总体电路原理图 1.2附录2:电路实物图1.3附录3:元器件清单4附录4:程序151前言随着电子技术的迅速发展,单片机得到了越来越多的运用。本设计 用单片机STC89C52结合一种新型的LED流水灯控制系统的设计,以 STC89C52作为主控核心,并结合其它电子元器件以及软件实现的流水 灯,利用软件实现对LED流

4、水灯进行控制,实现不同种类的流水现象。 LED彩灯由于其丰富的灯光色彩,发光效率远远大于其它灯,且其性能 比较稳定,发光效率还可以大幅度的提高,另外一点LED灯的价格较低、 体积小、耗电低使用寿命长、高亮度、低热量、环保、坚固耐用等优点 低廉的造价以及控制简单等特点而得到了广泛的应用。2课程设计目的与要求2.1 设计目的(1)进一步掌握单片机课程所学的理论知识。(2)熟悉几种常用集成芯片,并掌握其工作原理,进一步学会使用 其进行电路设计。(3)学会绘制电路图,掌握其原理并进行电路仿真。(4) 了解单片机设计的基本思想和方法,学会科学分析和解决问题。2.2 设计要求本设计任务是掌握STC89C5

5、2系列的最小电路及外围扩展电路的设 计方法;了解单片机数据转换功能及工作过程;设计 LED流水灯系统, 实现16个LED霓虹灯的花样显示。本设计要求利用STC89C52单片机的自动控制功能,并结合其它电 子元器件以及软件实现的流水灯,实现不同种类的流水现象。要求理论 与实践并重,把单片机流水灯设计作为一个课程设计,更深的去了解单 片机的很多功能,查找更多的资料,利用强大的理论体系做出尝试。本 课题将以发光二极管作为发光器件,用单片机自动控制,实现一个简易 的花样流水灯设计。通过本次课题设计,应用单片机原理及应用等所学相关知识及 查阅资料,完成此系统设计,以达到理论与实践更好的结合、进一步提 高

6、综合运用所学知识和设计的能力的目的。3设计方案与论证3.1 系统框图图3-1系统框图基于STC89C52单片机的彩灯控制方案,实现对 LED彩灯的控制本方案以于STC89C52单片机作为主控核心,与驱动等模块组成核心主控制模块。在主控模块上设有晶振电路和 16个LED显示二极管,根据 需要编写若干种亮灯模式,根据各种亮灯时间的不同需要,在不同时刻 输出灯亮或灯灭的控制信号。本设计能够实现的功能是:实现 16个LED灯依次亮;LED灯同时 亮,同时灭;LED灯再间隔亮;LED灯成对依次亮;LED灯三个一组依 次亮;LED灯从中间向两端依次亮的现象3.2 循环移位法本设计是逐个控制P0端口的每个位

7、来实现的,因此程序显得有点复 杂,下面我们利用循环移位指令,采用循环程序结构进行编程。我们在 程序一开始就给P0 口送一个数,这个数本身就让 P0.0先低,其他位为 高,然后延时一段时间,再让这个数据向高位移动,然后再输出至P0 口, 这样就实现“流水”效果啦。3.3 查表法运用查表法所编写的流水灯程序,能够实现任意方式流水,而且流 水花样无限,只要更改流水花样数据表的流水数据就可以随意添加或改 变流水花样,真正实现随心所欲的流水灯效果。4元器件介绍STC89C52是一种低功耗/低电压、高性能的八位CMOS单片机,片 内有一个8KB的FLASH可编程可擦除只读存储器,它采用了 CMOS工 艺和

8、ATMEL公司的高密度非易失性存储器技术,而且其输出引脚和指 令系统都与MSC-51兼容。因此,STC89C52是一种功能强、灵活性高 且价格合理的单片机,可方便的应用于各种控制领域。89C52单片机是整个系统的核心是控制彩灯循环闪烁等等一切功能的部件;片上 Flash 允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有 灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式 控制应用系统提供高灵活、超有效的解决方案。1PL.0VCCPl.1PO.OPt.2PQ.IPl.3P0.2PL.4F0 3PI.5PG.4PI.6P0,5Pl.7P0.6RSTP0.7P

9、3.0EAP3.1P3.2P3.3P2.7P3.4P2.6P3,5P25P3.6P2.4P3.7P2.3KTAL2P2.2XTAL1P2.LGNDP2.0402393_3843753663573483393210311L3Q1229B281427is2616251724182319222,021图4-1 STC89C52引脚图管脚说明VCC:供电电压。GND:接地。P0 口: P0 口为一个8位漏级开路双向I/O 口,每脚可吸收8个TTL 门电流。当P0 口的管脚第一次写“1时,被定义为高阻输入。P0能够用 于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH 编程时,P0 口

10、作为原码输入口,当FIASH进行校验时,P0输出原码, 此时P0外部必须被拉高。P1 口: P1 口是一个内部提供上拉电阻的 8位双向I/O 口,P1 口缓 冲器能接收输出4个TTL门电流。P1 口管脚写入“1后,被内部上拉为 高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于 内部上拉的缘故。在FLASH编程和校验时,P1 口作为第八位地址接收。P2 口: P2 口为一个内部上拉电阻的8位双向I/O 口,P2 口缓冲器 可接收,输出4个TTL门电流,当P2 口被写“1时,其管脚被内部上拉 电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内

11、部上拉的缘故。P2 口当用于外部程序存储器或416位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出 地址“1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读 写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验 时接收高八位地址信号和控制信号。P3 口: P3 口管脚是8个带内部上拉电阻的双向I/O 口,可接收输出 4个TTL门电流。当P3 口写入“1后,它们被内部上拉为高电平,并用 作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口作为AT89C51的一些特殊功能口,管脚备 选功能P3.0 RXD (串

12、行输入口)P3.1 TXD (用行输出口)P3.2 /INTO (外部中断0)P3.3 /INT1 (外部中断1)P3.4 T0 (计时器0外部输入)P3.5 T1 (计时器1外部输入)P3.6 /WR (外部数据存储器写选通)P3.7 /RD (外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持 RST脚两个机器周 期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于 锁存地址的底位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号, 此频率为振荡器频率的1/6。因此它 可用作对外部输出的脉冲或用于定

13、时目的。然而要注意的是:每当用作 外部数据存储器时,将跳过一个 ALE脉冲。如想禁止ALE的输出可在 SFR8EH地址上置00此时, ALE只有在执行 MOVX , MOVC指令是 5ALE才起用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE禁止,置位无效。XTAL1 :反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 :来自反向振荡器的输出。5部分硬件电路设计5.1 单片机最小系统单片机本身如同一个复杂的同步时序电路,时钟电路就用于产生单 片机工作所需要的时钟信号。时钟电路是计算机的心脏,它控制着计算 机的工作节奏,CPU就是通过复杂的时序电路完成不同的指令功能的, S

14、TC89C52的时钟信号可以由两种方式产生:一种是内部方式,利用芯 片内部的振荡电路,产生时钟信号;另一种为外部方式、时钟信号由外 部引入。图5-1时钟电路图本设计应用的是STC89C52的内部时钟方式,其内部有一个用于构 成振荡器的高增益反相放大器,引脚 XTL1和XTL2分别为此放大器的 输入端和输出端,该放大器与作为反馈元件的晶振共同构成自激振荡器。 如图所示图5-2单片机最小系统本电路采用的定时元件为石英晶体和电容组成的并联谐振回路。晶 振频率选择12MHZ,电容选择33pu,电容的大小起频率微调的作用,5.2 流水灯电路利用单片机的P0和P2 口控制LED的发光闪烁,再利用编程实现流

15、 水灯的电路,用软件来实现对LED的控制,每个LED接一个限流电阻, 来控制流入LED发光管的电流。LED发光二极管,是一种能够将电能转 化为可见光的固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另 一端连接电源的正极,使整个晶片被环氧树脂封装起来。本设计能够实 现16个LED灯依次亮;LED灯同时亮,同时灭;LED灯再间隔亮;LED 灯成对依次亮;LED灯三个一组依次亮;LED灯从中间向两端依次亮的 现象,如图所示:图5-3 LED灯连接图5.3 proteus 仿真Proteus仿真步骤:1) 打开Proteus软件,新建一

16、个工程并新建文件;2) 在软件库的搜索栏中输入“STC89C52”,并放到新建文件中;3) 依照上述方法依次找到电阻、电容、晶振和 16LED;4) 按照设计思路排布好各元件的位置,并用导线连接起来;5) 把用Keil编写好的程序下载到Proteus仿真图中,效果显示如下图所示CRYSTAL;XTALiiLEU*pjannpF-1WT Fi.in a3内仃pcnx! 21ma PC2ih.!上口“心 21rgM POUSAtSrznra F2.1MTSifl PZAH FI.M12 PZJiI|Yk II一一一IHTkit I,IBY图5-4硬件仿真图6硬件的制作与调试(1)由于仿真软件的使用

17、的不够熟练,导致的一些操作错误,所用 的元器件选择不够合理。(2)由于电路较复杂,所以在连线这一块上常常会有所忽略,导致 整个电路无法实现要求的彩灯切换花样的变换。这时,就需要根据调试 结果的推断哪里接线出了问题并且仔细检查改正。(3)焊接时,由于操作不熟练,焊接的不够好而导致的短路或开路(4)调试过程中,几处正负极没接,其次也有虚焊的地方而导致调 试不成功。在调试中,有时还会出现灯的亮暗不正常的情况,原因可能 是线路接触不良。(5)线路断路;问题的产生除了接线错误原因外,还有导线多次使用 导致外表无损而实际已经断损的缘故。7总结为期一周的课程设计结束了,像每一次的实训一样,我一样收获了 很多

18、。虽然有关于单片机的知识,但更重要的是团队合作。刚开始时, 我们有点迷茫,我懂得知识理论的知识但要实际操作,总是有差距的, 虽然对于我们来说有一定的难度,但是我们经研究从最简单的编程开始, 对于STC89C52单片机的编程,结合自己所学及寻找大量资料,我们拟 定了初步的程序,然后进行修改及用 Keil软件进行调试, 然后进一步 修改,最终在我们努力下,完成了程序。然后我们用Proteus软件进行绘图和仿真,与此同时,我们从中也学会了许多关于软件方面的知识。 在仿真过程中,我们遇到一些问题,但在我们小团队的努力学习、查询 问题缘由以及在老师的帮助下,这些问题都一一得到解答。在做电路仿真时,画好电

19、路原理图,修改好参数后,在仿真过程中, 无论我怎样修改,LED都是常亮,就是说一直产生高电平。经过研究, 请教同学老师,最后电路仿真也就成功了。接下来,开始实物焊接。要 求对焊板上元件进行布置和焊接电路元件连线,增加了很大的难度。由 于采用了电路板,并且电路的接线比较多,为了使步线美观、简洁,还 真是费了我们不少精力。实物最终做出来了,但这并不是我一个人做出 来的。通过这次课程设计,我明白了一个团队精神的重要性,因为从头 到尾,都是大家集体出主意,来解决中间出现的各种问题。最后整个课 程设计也完成了,其实就我自己对这门课的认识是:态度决定一切,有 一个决心就能做好事情。这次的单片机课程设计不仅

20、是对我们所学习的 单片机知识的一次检验,更重要的是培养了我们想问题,做事情严谨的 态度和实事求是,认真负责的为事观也让我们对我们的专业更感兴趣。参考文献1韩兵.光电控制系统技术与应用M.电子工业出版社,2009.77962姚福安.电子电路设计与实践M.山东科技技术出版社,2001.22243韩振振.数字电路逻辑设计M.大连理工大学出版社,2000.71784阎石.数字电子技术基础M.高等教育出版社,2006.25265康华光.数字电子技术基础M.高等教育出版社,1999.49776杨春玲,王淑娟 数字电子技术M.高等教育出版社,2011.13 157夏路易.石宗义.电路原理图与电路板设计教程p

21、rotel 99seM. 北京希望电子出版社,2006.21308王澄非.电路与数字逻辑设计实践M.东南大学出版社,1999.182011附录1 :总体电路原理图12XII.laHTT仃TT伯后仃eeJes 31= EBTOEWAJLJE 日+5UFD.WUkl FDJFAK 2 Ho丽 FOL3MhFDifrAK. FDJMlffPZ PZWB PZZA.1D FZ3M.fi FZ.tfAfZ FZSMEIF3HlXi F3VT piauriB psaWTTFl:5m 利jrF3TWLED1BirrLED,PIBY和FTLED IDLED1ZLED 13LEDLI=L 上LED121LEDB

22、ZZL或1口Z3Lhl 112+LEtilZ25-retiii翡LEtU77pLftlSA工妙ii附录3 :元器件清单序号名称规格型号数量1发光二极管白发蓝162单片机STC89C5213电容22 Pf24电容10 uF15晶振12Hz16电阻220167电阻10K114附录4 :程序ORG 0000HAJMP MAINORG 0030HMAIN:MOV P0,#00H;全亮MOV P2,#00HLCALL DELAYMOV R0,#8MOV A,#0FEHLOOP: MOV P0,ALCALL DELAYRL A;P0左移DJNZ R0,LOOPAJMP L1L1:MOV R1,#8MOV

23、A,#0FEHLOOP1: MOV P2,A ;P2 左移LCALL DELAYRL ADJNZ R1,LOOP1AJMP L2L2:MOV R2,#8MOV A,#0EFHLOOP2: MOV P0,ALCALL DELAY15RR A;P0右移DJNZ R2,LOOP2AJMP L3L3:MOV R3,#8MOV A,#0EFHLOOP3: MOV P2,ALCALL DELAYRR A;P2右移DJNZ R3,LOOP3AJMP L4L4:MOV R4,#8;闪烁八次LOOP4: MOV P0,#00HLCALL DELAYMOV P2,#00HLCALL DELAYMOV P0,#0F

24、FHLCALL DELAYMOV P2,#0FFHLCALL DELAYDJNZ R4,LOOP4AJMP L5L5:MOV P0,#3FH;从P0往下依次点亮2个LCALL DELAYMOV P0,#9FHLCALL DELAYMOV P0,#0CFHLCALL DELAYMOV P0,#0E7HLCALL DELAYMOV P0,#0F3HLCALL DELAYMOV P0,#0F9HLCALL DELAYMOV P0,#0FCHLCALL DELAYLCALL DELAY17MOV P2,#3FH;从P2往下依次点亮2个LCALL DELAYMOV P2,#9FHLCALL DELAYM

25、OV P2,#0CFHLCALL DELAYMOV P2,#0E7HLCALL DELAYMOV P2,#0F3HLCALL DELAYMOV P2,#0F9HLCALL DELAYMOV P2,#0FCHMOV P2,#7EHMOV P0,#0E7H;以P0.4为轴上下移动LCALL DELAYMOV P0,#0DBHLCALL DELAYMOV P0,#0BDHLCALL DELAYMOV P0,#7EHLCALL DELAYMOV P0,#7EHLCALL DELAYMOV P0,#0BDHLCALL DELAYMOV P0,#0DBHLCALL DELAYMOV P0,#0E7HLCA

26、LL DELAYMOV P0,#0F7H19MOV P2,#0E7H;以P2.4为轴上下移动LCALL DELAYMOV P2,#0DBHLCALL DELAYMOV P2,#0BDHLCALL DELAYLCALL DELAYMOV P2,#0BDHLCALL DELAYMOV P2,#0DBHLCALL DELAYMOV P2,#0E7HLCALL DELAYMOV P0,#0FEH ;P0先奇数亮后偶数亮LCALL DELAYMOV P0,#0FBHLCALL DELAYMOV P0,#0EFHLCALL DELAYMOV P0,#0BFHLCALL DELAYMOV P0,#0BFHL

27、CALL DELAYMOV P0,#7FHLCALL DELAYMOV P0,#0DFHLCALL DELAYLCALL DELAYMOV P0,#0FDHLCALL DELAYMOV P2,#0FEH ;P2先奇数亮后偶数亮LCALL DELAYMOV P2,#0FBHLCALL DELAYMOV P2,#0EFHLCALL DELAYMOV P2,#0BFHLCALL DELAYMOV P2,#0BFHLCALL DELAYMOV P2,#7FHLCALL DELAYMOV P2,#0DFHLCALL DELAYMOV P2,#0F7HLCALL DELAYMOV P2,#0FDHLCALL DELAYAJMP MAIN21DELAY: MOV R7,#6;延时3秒D1:MOV R6,#100D0:MOV R5,#250DJNZ R5,$DJNZ R6,D0DJNZ R7,D1RETEND

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 计算机原理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报