一个不需要专业知识和单片机就可以轮流交替闪烁的跑马灯设计
接触过单片机的朋友都会对流水灯有了解,那时我们是用单片机来制作的,但是你如果单纯做个流水灯,选择使用单片机来做的话未免有些资源的浪费,今天就教给大家一个不用单片机就可以交替闪烁的跑马灯。
单片机流水灯(图片来源于网络,若侵权请联系删除)
单片机流水灯(图片来源于网络,若侵权请联系删除)
怎么制作的呢?来看一下原理图
流水灯原理图
由这个原理图可以看出我们使用的元件有电阻、电容、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,系统自动给出下载链接。
本次课程到此结束,如果有什么疑问欢迎留言。
相关问答
单片机走马灯 是什么灯?在MCS一51单片机的控制系统中,它的四个并行8位输入输出端口P0一P3是我们经常使用的。在并行端口的编程学习中,“跑马灯”是单片机并行端口输出控制的典型实例...
单片机 板子显示跑马灯该怎么连线啊?8个LED负极接单片机IO口,正极分别接8个1K的电阻,电阻另一端接到一起然后接到+5V的直流电源上就是了,到时给IO口一个低电平LED即可以点亮了,如果电阻的公共端...
51 单片机 最小系统(跑马灯)不工作?,视频跑马灯系统专不专业??1。51单片机现在多用AT89S51,不用晶振,晶体加两个电容就可以了2。复位电路中的电容是虑波稳定作用,并联在一个电阻上,一端接地,一端通过开关接高电...
51 单片机 最小系统(跑马灯)不工作?,视频跑马灯系统哪家质量...[回答]微信直播云课堂.叮叮开课微信生态优势:随时随地在微信内管理网校,绑定微信公众号,朋友圈便捷分享、自发社群传播、多重裂变营销自主研发的多个软件...
烦大神们!咨询一下 51 单片机 最小系统(跑马灯)不工作?,视频...[回答]下载部分要接串口通信电路。直接接max232就可以了10年经验开发技术团队-支从事软件开发10余年、反应迅速、讲求团队合作的技术团队,奠定了开发实力...
如何做才能精通 单片机 ?1、熟悉单片机的原理,结构;2、学好数电,模电,为设计电路打好基础;3、熟练使用C语言,多学习别人的程序;4、对操作系统原理有一定的了解;5...学习单片机很...
怎么样学好51 单片机 ?单片机的学习绝不仅仅是对一项知识的掌握。想要学好单片机,需要从硬件结构、内部资源、外设应用等几个方面多方位入手。而要想成为一名嵌入式工程师,就要对单片...
家里一个房间的灯忽然不亮了,是为什么?怀疑是某个元件...这种流水灯是通过三极管先后点亮的,看这个灯灭的情形应该是有一个三极管的电路出了问题,用个万用表的短路测试去测一下各元件的焊接情况,怀...
关于max485与 单片机 连接的问题?传统的单片机实验系统因其购买成本高、系统使用烦琐,已经越来越不适合当前以培养学生实际能力为主要方向的高等教育,本系统可以帮助学校轻松组建单...
老铁们麻烦回答一下!!阶新科技运用汇编语言怎么编写跑马灯...[回答]项目时间:2014-09-2013-11项目名称:C语言在单片机上的应用项目描述:项目介绍设计一个数字时钟的电路,然后用汇编语言或者C语言编写数字时钟时钟的...