设计与开发

走马灯 单片机 一个不需要专业知识和单片机就可以轮流交替闪烁的跑马灯设计

小编 2025-06-08 设计与开发 23 0

一个不需要专业知识和单片机就可以轮流交替闪烁的跑马灯设计

接触过单片机的朋友都会对流水灯有了解,那时我们是用单片机来制作的,但是你如果单纯做个流水灯,选择使用单片机来做的话未免有些资源的浪费,今天就教给大家一个不用单片机就可以交替闪烁的跑马灯。

单片机流水灯(图片来源于网络,若侵权请联系删除)

单片机流水灯(图片来源于网络,若侵权请联系删除)

怎么制作的呢?来看一下原理图

流水灯原理图

由这个原理图可以看出我们使用的元件有电阻、电容、LED灯、三极管就这些常用的元件就可以了。

至于能够闪烁的原理呢也不难理解,三极管在电路中充当开关的作用,通上电后最左边的LED由于三极管最先被导通,从而最先被点亮,集电极串联一个电容连接到下一个三极管,当电容充电后把后一个三极管导通,导致后一个LED灯点亮,而由于后一个三极管导通又会引起前一个三极管截止,造成前一个LED熄灭,以次类推循环,这样就形成了这三类LED灯轮流被点亮,通过改变电容的大小还可以改变跑马灯闪烁的时间。

讲完原理后就准备下材料吧,来看下图片

制作材料

找到材料之后接下来就是按照原理图把应该连接的部分进行电气连接,大家在焊接的时候,最好把这些元件焊接到洞洞板上或者说在面包板上进行连接也行,如果单纯进行连接的话,会很乱,故障也难排查,而且容易失败,这几天给大家介绍几个小制作基本上都用到了洞洞板,也把我仅有的几个洞洞板给消耗完了,如果不用洞洞板直接焊接是很乱的,看下焊接图你就知道了

制作图

是不是看起来非常乱,确实是这样,再来看一张以前打印的PCB

PCB跑马灯

打成PCB板的看起来是不是好多了,把它设计成心形就更好看了。

可能有人不理解了为什么原理图中的跑马灯的制作是三个LED灯,而到变成那么多了,其实不管LED灯再多原理都是一样的,那个原理图可以说是单位电路,我们需要多加LED无外乎在原先有LED的地方再多并联几个LED,这样就能做成上图中的心形。

这种制作方法,简单,材料好找又不需要单片机基础,可以说只要你想做就能做出来,还不赶快制作一个。

注:流水灯和跑马灯是指一种东西,所以文章中没有区分,不同的人有不同的叫法!

零成本学习之单片机开发之(3)跑马灯原来可以这么玩

从今天开始给大家逐步讲解单片机编程,有兴趣的小伙伴们,可以关注本课程,完全免费。

本人从事从2004年大学毕业开始从事开发工作,先后做过单片机开发、ucOSII开发、手机开发、android APP开发、PHP开发、微信小程序开发,目前从事物联网开发。我本人并非学计算机的,除了学校上课之外,基本上这些开发都是自学的。边学习边工作,基本上以学以致用为目的,用到什么学习什么。

深深体会到自学的艰辛,尤其是最初入门的时候,那道砍迈过去后面再学习基本上就简单多了,所谓触类旁通,举一反三。但是前面打基础的时候是非常费力的,看到很多评论说C语言指针太难了,后来就放弃了。其实那是没有找到好的学习方法,没有人指导。只要有人带一带指点一下,问题很快就能解决。

相比于国外的开源学习氛围,我认为我们做的还远远不够,我们的编程大师还非常少,像ucLinux、ucOSII、FreeRtos等等非常有名的嵌入式操作系统,商业的更不用说了,太多了。我们在软件方面一直都是落后的状态,当然近几年我们自己也有不少好的作品。比如,Huawei LiteOS、Alios Things、djyos、RT-Thread、SylixOS等。一直想为学习单片机的同学做点什么,今年相对来说会轻松一些,利用闲暇时间,给大家分享一些案例、学习方法和心得。本课系列课程主要针对初学者、单片机学习爱好者、学习中遇到困难者,有什么不清楚的地方可以留言讨论。

首先、课程目标

使用一个按键和8个LED指示灯实现跑马灯效果,总共4中显示效果使用按键按下事件切换显示模式

第二、原理图设计

添加8个LED指示灯,也可以利用上节课的原理图直接用右键复制出7个LED元器件添加8个限流电阻,并调整布线,直接上结果。

第三、编码设计

软硬件接口

端口P0 第一个管脚P00z作为按键输入端口端口P2作为LED的输出端口

软件流程

1.串口初始化

2.主循环处入口

检测按键事件 根据按键事件切换显示模式 根据模式更新显示数据 根据显示模式显示显示数据

3.考虑到排版整洁性,只上了主函数代码,其他模块代码见源代码文件

void main(void)

{

initUart();//串口初始化

while(1)//主循环

{

handleKey();//检测按键

checkMode();//根据按键事件切换显示模式

handleMode();//根据显示模式更新显示数据

if(ledmode%2==0)//根据显示模式把数据显示到LED上

displayDriver1(cnt);

else

displayDriver2(cnt);

delay(100); //延时100ms

}

}

最后、知识点总结

1.跑马灯也是IO操作的进一步巩固,只不过加入了时序上的小算法,看起来更具有动态感

2.注意如何通过按键事件切换模式的

3.注意如何模式和更新的数据进行换算的

4.注意显示驱动的技巧

5.本次课程所用的工程文件私信20002,系统自动给出下载链接。

本次课程到此结束,如果有什么疑问欢迎留言。

相关问答

单片机 中的流水灯,花样灯,跑马灯?

没什么实质的区别只是各人说法不一样,像流水灯程序也有人叫跑马灯,说个简单的例子,比方说一个亮点不断的左循环就叫流水灯。从中间亮两个点,从左右两边流动就...

求STC89C52的 单片机 跑马灯C语言程序?

STC89C52是常用的单片机芯片,以下是该型号单片机跑马灯的C语言程序示例,希望能对您有帮助:```c#includeSTC89C52是常用的单片机芯片,以下是该型号单片机跑...

,有谁能回答一下吗!51 单片机 最小系统(跑马灯)不工作?,视频...

[回答]1.能看懂电路图。2.认识并知道芯片和电子元件的引脚及功能。3.可以熟练的使用电烙铁、松香助焊剂。强烈推荐你去找深圳品阔信息技术有限公司,这家...

帮个忙盆友们 楼主请问!51 单片机 最小系统(跑马灯)不工作?,...

[回答]usb有四根线,四种颜色,印像中是红色是+5V黑色是0,具体的你可以用电压表测一下。实力摆在这里,但是我还是要去看看,哈哈自主研发的多个软件通过g家...

51 单片机 最小系统(跑马灯)不工作?,视频跑马灯系统专不专业??

1。51单片机现在多用AT89S51,不用晶振,晶体加两个电容就可以了2。复位电路中的电容是虑波稳定作用,并联在一个电阻上,一端接地,一端通过开关接高电...

单片机 求汇编语言设计一个彩灯控制系统,有4个控制开关,8盏LED灯?

对于这个问题处理起来是不难的,这是学习单片机常用的一个练习程序,比如我们用MCS-51来设计一个彩灯控制器,也俗称“跑马灯”。在硬件方面我们要焊接出一个单...

pcr扩增的原理和步骤顺口溜?

通过定时器定时一定时间使跑马灯依次点亮!在单片机编程时直接在定时中断程序中通过标志给端口置高电平即可!通过定时器定时一定时间使跑马灯依次点亮!在单片...

C语言编写年历显示程序20分- 汇财吧专业问答test

[回答]一、设计题目万年历的设计二、设计要求1、能够显示星期;2、能够显示年月日;3、能够修改;4、当系统时间变动时,能自动跳到相应的时间。三...C语言设...

关于ARM嵌入式系统的跑马灯代码- 一起装修网

躲避猫腻,避开增项陷阱,3秒算出报价明细北京上海石家庄天津哈尔滨西安武汉成都大连济南其它今日已有368位网友计算2分钟前上海95平米的房子计算报价5分钟前...

请回答! 单片机 开发板怎么使用?仪器仪表 单片机 开发排名好不好...

[回答]掌握51单片机开发板的使用步骤;掌握51单片机开发板所需软件的安装过程;以LED灯闪烁为例子,掌握软件KEIL3的使用方法。这是单片机GPIO控制实验报告,...

猜你喜欢