基于单片机的流水灯系统设计与实现样本

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要

本设计着重在于分析计算器软件和开发过程中环节和环节,并从实践经验出发对计算器设计做了详细分析和研究。本系统就是充分运用了G2452芯片I/O引脚。系统以采用MSP430系列单片机G2452为中心器件来设计花样LED流水灯系统,通过按键实现8个LED灯不同花样式闪烁。

核心词:流水灯;单片机;按键;闪烁

目录

1 项目规定 (3)

2 项目分析和系统设计 (3)

3 硬件设计 (3)

3.1单片机选型模块 (4)

3.2 LED流水灯模块 (4)

3.3功能模式选取模块 (5)

4 软件设计 (7)

4.1主程序 (7)

4.2子程序 (7)

5 系统调试 (8)

5.1硬件调试 (9)

5.2程序调试 (9)

5.3联合调试 (11)

6 外延 (13)

7 项目演习 (16)

8 项目总结 (16)

附录1电路设计原理图(参照) (18)

附录2 PCB设计原理图(参照) (18)

附录3 核心程序(参照) (19)

基于单片机流水灯系统设计与实现

1 项目规定

本项目花样流水灯采用MSP430单片机为控制器件,用于各方面装饰,此花样流水灯有8个LED灯,六种花样灯光效果。

(1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0.2s亮一种LED 灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环;

(2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐个亮灭,直到点亮最左边一种灯后再从左至右每隔0.2s逐个亮灭,以此循环;

2 项目分析和系统设计

本系统分为硬件和软件模块。硬件上咱们打算在单片机不同i/o中装上一种流水灯来进行对流水灯进行控制。

在程序方面,一方面对msp430i/o口进行定义和设立,然后在去定义了一种delay进行延时功能,在用一种switch循环来使得流水灯不断循环亮灭。

花样流水灯采用MSP430单片机为控制器件,用于各方面装饰,此花样流水灯有8个LED灯,两种花样灯光效果。

3 硬件设计

本系统采用MSP430单片机为控制核心进行设计,该流水灯系统共可分为两个模块:单片机选型模块和LED流水灯模块。

Power MCU

MSP430G2553

LED

花样流水灯

图1 系统框图

3.1单片机选型模块

MSP430单片机是16位单片机,采用了精简指令集(RISC)构造,只有简洁27条内核指令,大量指令则是模仿指令;众多寄存器以及片内数据存储器都可参加各种运算。这些内核指令均为单周期指令,功能强,运营速度快。

图2单片机选型模块

3.2 LED流水灯模块

要实现流水灯功能,咱们只要将发光二极管LED1~LED8 依次点亮、熄灭,8只LED灯便会一亮一暗做流水灯了。在此咱们还应注意一点,由于人眼视觉暂留效应以及单片机执行每条指令时间很短,咱们在控制二极管亮灭时候应当延时一段时间,否则咱们就看不到“流水”效果了。且每一种LED灯于一种电阻串联。电阻作用就是对通过LED灯电流进行一定限制起到去LED灯进行保护作用。使得其在高电压时候使得LED在电阻保护下不会烧坏。

此图为共阴极接法,因而当LED_RED给高电平“1”时LED_RED亮;当LED_RED 给低电平“0”时,LED_RED灭。

图3 LED流水灯模块图

如图3可知此原理图LED灯为共阴极接法,因而咱们只要给它一种高电平就能点亮此LED灯。

3.3功能模式选取模块

此设计有6种功能模式可以选取:

(1)初始化后,执行8个LED灯从右至左逐次点亮,每隔0.2s亮一种LED 灯,直到8个LED灯全亮,再从左至右依次熄灭直到全灭,以此循环;

(2)当按下按键后,执行8个LED灯从右至左每隔0.2s逐个亮灭,直到点亮最左边一种灯后再从左至右每隔0.2s逐个亮灭,以此循环;

功能(1):

○○○○○○○●○○○○○○●●○○○○○●●●○○○○●●●●

○○○○○○●●○○○●●●●●

○○○○○●●●○○●●●●●●

○○○○●●●●○●●●●●●●

○○○●●●●●○○●●●●●●○●●●●●●●●●●●●●●●

功能(2):

○○○○○○○●○○○○○○●○○○○○○●○○○○○○●○○○

○○○○○○●○○○○●○○○○

○○○○○●○○○○●○○○○○

○○○○●○○○○●○○○○○○

○○○●○○○○○○●○○○○○○●○○○○○○●○○○○○○○

图4 流水灯功能示意图

4 软件设计

4.1主程序

本系统整体工作重要由单片机程序控制实现,其工作过程为:对端口进行初始化,在主程序中用不同端口定义分别来点亮流水灯。再用switch语句来对不同LED灯进行不同类型流水灯效果。在用延时程序来实现每一种LED亮灭。

程序整体框架如下图5所示。

开始

端口初始化

主程序

点亮LED

延时程序

返回

4.2子程序

一种完整程序是由一种主程序和若干个子程序构成。在一种加工程序中,如果其中有些加工内容完全相似或相似,为了简化程序,可以把这些重复程序段单独列出,并按一定格式编写成子程序。主程序在执行过程中如果需要某一子程序,通过调用指令来调用该子程序,子程序执行完后又返回到主程序,继续执行背面程序段。

开始

开始

使LED灯右移一

最右边LED灯

使被点亮LED灯

延时延时

本系统中所使用子程序都是比较简朴,用for语句实现循环之后再使用延时函数进行延时。

子函数功能流程图如下:

功能1流程图:功能2流程图:

图6 功能程序流程框架图

5 系统调试

本单片机流水灯系统设计分为硬件电路设计和软件设计两个某些,因而调试也提成两某些进行调试。

使LED灯左移一

8个LED灯与

延时

使被点亮LED灯

8个LED灯与

延时

最左边LED灯

相关文档
最新文档