您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 基于单片机的流水灯系统设计与实现
1摘要本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。本系统就是充分利用了G2452芯片的I/O引脚。系统以采用MSP430系列单片机G2452为中心器件来设计花样LED流水灯系统,通过按键实现8个LED灯不同花样式的闪烁。关键词:流水灯;单片机;按键;闪烁2目录1项目要求.......................................................................................................................................32项目分析和系统设计...................................................................................................................33硬件设计.......................................................................................................................................33.1单片机选型模块.................................................................................................................33.2LED流水灯模块..................................................................................................................43.3功能模式选择模块.............................................................................................................54软件设计.......................................................................................................................................64.1主程序.................................................................................................................................64.2子程序.................................................................................................................................75系统调试.......................................................................................................................................85.1硬件调试.............................................................................................................................85.2程序调试.............................................................................................................................85.3联合调试.............................................................................................................................96外延............................................................................................................................................117项目演练.....................................................................................................................................148项目总结.....................................................................................................................................14附录1电路设计原理图(参考).................................................................................................15附录2PCB设计原理图(参考)..............................................................................................15附录3关键程序(参考)............................................................................................................163基于单片机的流水灯系统设计与实现1项目要求本项目花样流水灯采用MSP430单片机为控制器件,用于各方面的装饰,此花样流水灯有8个LED灯,六种花样灯光效果。(1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0.2s亮一个LED灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环;(2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐一亮灭,直到点亮最左边一个灯后再从左至右每隔0.2s逐一亮灭,以此循环;2项目分析和系统设计本系统分为硬件和软件模块。硬件上我们打算在单片机的不同的i/o中装上一个流水灯来进行对流水灯进行控制。在程序方面,首先对msp430的i/o口进行的定义和设置,然后在去定义了一个delay进行延时功能,在用一个switch循环来使得流水灯不断的循环亮灭。花样流水灯采用MSP430单片机为控制器件,用于各方面的装饰,此花样流水灯有8个LED灯,两种花样灯光效果。3硬件设计本系统采用MSP430单片机为控制核心进行设计,该流水灯系统共可分为两个模块:单片机选型模块和LED流水灯模块。PowerMCUMSP430G2553LED花样流水灯图1系统框图3.1单片机选型模块MSP430单片机是16位的单片机,采用了精简指令集(RISC)结构,只有简洁的27条内核指令,大量的指令则是模拟指令;众多的寄存器以及片内数据存储器都可参加多种运算。这些内核指令均为单周期指令,功能强,运行的速度快。4图2单片机选型模块3.2LED流水灯模块要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。且每一个LED灯于一个电阻串联。电阻的作用就是对通过LED灯的电流进行一定的限制起到去LED灯进行的保护作用。使得其在高电压的时候使得LED在电阻的保护下不会烧坏。此图为共阴极接法,因此当LED_RED给高电平“1”时LED_RED亮;当LED_RED给低电平“0”时,LED_RED灭。5图3LED流水灯模块图如图3可知此原理图的LED灯为共阴极的接法,因此我们只要给它一个高电平就能点亮此LED灯。3.3功能模式选择模块此设计有6种功能模式可以选择:(1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0.2s亮一个LED灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环;(2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐一亮灭,直到点亮最左边一个灯后再从左至右每隔0.2s逐一亮灭,以此循环;功能(1):○○○○○○○●○○○○○○●●○○○○○●●●○○○○●●●●○○○○○○●●○○○●●●●●○○○○○●●●○○●●●●●●○○○○●●●●○●●●●●●●○○○●●●●●○○●●●●●●○●●●●●●●●●●●●●●●6功能(2):○○○○○○○●○○○○○○●○○○○○○●○○○○○○●○○○○○○○○○●○○○○●○○○○○○○○○●○○○○●○○○○○○○○○●○○○○●○○○○○○○○○●○○○○○○●○○○○○○●○○○○○○●○○○○○○○图4流水灯的功能示意图4软件设计4.1主程序本系统整体工作主要由单片机程序控制实现,其工作过程为:对端口进行初始化,在主程序中用不同的端口定义分别来点亮流水灯。再用switch语句来对不同的LED灯进行不同类型的流水灯效果。在用延时程序来实现每一个LED的亮灭。程序整体框架如下图5所示。开始返回端口初始化主程序点亮LED延时程序图5程序流程图7开始开始使LED灯右移一位熄灭最右边LED灯是否熄灭使被点亮的LED灯右移一位延时延时4.2子程序一个完整的程序是由一个主程序和若干个子程序组成。在一个加工程序中,如果其中有些加工内容完全相同或相似,为了简化程序,可以把这些重复的程序段单独列出,并按一定的格式编写成子程序。主程序在执行过程中如果需要某一子程序,通过调用指令来调用该子程序,子程序执行完后又返回到主程序,继续执行后面的程序段。本系统中所使用的子程序都是比较简单的,用for语句实现循环之后再使用延时函数进行延时。子函数的功能流程图如下:功能1流程图:功能2流程图:图6功能程序流程框架图使LED灯左移一位点亮8个LED灯是否全灭延时使被点亮的LED灯左移一位8个LED灯是否全亮延时最左边LED灯是否点亮亮85系统调试本单片机的流水灯系统的设计分为硬件电路设计和软件设计两个部分,因此调试也分成两部分进行调试。5.1硬件调试主要根据系统框图和硬件原理设计进行原理的绘制、各参数的设置、电路板的制作,以及元器件的焊接等。具体如下:5.1.1各单元电路,确认各单元电路链接无误,尤其是关键元器件,一定要接保护电阻。(1)选择合适规格的元器件,在放置期间前一定要检查规格;(2)关键器件放置:在器件布置方面与其它逻辑电路一样,应把相互有关的器件尽量放靠近些,这样可以减少材料,更加美观。5.1.2PCB设计原则:在进行PCB设计时,必须遵守PCB设计的一般原则,并应符合要实现的效果设计的要求。(1)尽量采用印制电路板,印制电路板不像万用板一样会有一定的接触不好或者焊盘不稳和线路连接有问题的情况,印制电路板的制作可防止产生地电位差和元件之间的耦合。(2)元件面和焊接面应采用相互垂直、斜交、或者弯曲走线,避免相互平导线尽量短,使用45°或者圆弧折线布线,不要使用90°折线,以减小高频信号的发射。5.2程序调试在本系统中,主要分为主
本文标题:基于单片机的流水灯系统设计与实现
链接地址:https://www.777doc.com/doc-2536170 .html