如何使用Adafruit NeoPixel库潜入色彩混合,将RGB LED控制提升到一个新的水平
扫描二维码
随时随地手机看文章
在基本RGB教程的基础上,让我们通过使用Adafruit NeoPixel库和Mercury Board潜入颜色混合,将RGB LED控制提升到一个新的水平。而不是显示静态的红色,绿色和蓝色的光,我们将混合这些基本色以不同的比例来创建广泛的自定义颜色。
通过调整红、绿、蓝成分的强度,你可以创造出美丽的色调,比如紫色、青色、黄色甚至白色。这个概念不仅有趣,而且是屏幕、智能灯和数字显示器工作的基础。
让我们把你的水银板变成一个数字调色板!
在本教程结束时,您将学习:如何控制和使用Adafruit NeoPixel库在水星上进行WS2812 -板载RGBLED的混色。
我们开始吧
•设置环境-如果您还没有在Arduino®上添加水星板,现在是这样做的好时机。
•插入USB电缆水星板和连接它您的笔记本电脑。
•当Arduino终端显示“Connecting…”时,长按FLASH按钮启动上传过程。
这里到底发生了什么?
速成班:RGB光的颜色混合
RGB led的混色是基于加色混合的原理,其中不同强度的红、绿、蓝光组合在一起,产生广泛的颜色光谱。这些颜色中的每一种都可以从0(关闭)到255(完全打开)独立调整,为您提供超过1600万种可能的颜色组合!
RGB颜色模型
三原色是这样混合的:
•红色(255,0,0)
•绿色(0,255,0)
•蓝色(0,0,255)
当你把它们结合起来:
•红+绿=黄(255,255,0)
•红+蓝=品红(255,0,255)
•绿色+蓝色=青色(0,255,255)
•红+绿+蓝=白(255,255,255)
当然还有:
All Off = Black (0,0,0)
让我们考虑一下黄色,在混合100%强度的红光和100%强度的绿光,理论上你应该得到黄色光。但是,每种硬件在产生的光线上都有一些可变性。因此,在我们的例子中,我们使用以下百分比的红色和绿色光来产生黄色/琥珀色光:
更深入地研究代码…
为了模拟交通信号,我们将重新创建熟悉的序列:
•绿灯亮2秒-表示车辆可以移动。
•黄灯点亮1秒,警告信号即将改变。
•红灯亮2秒,指示车辆停车,等待下一个绿灯。
这个简单的基于时间的模式模拟了现实世界的交通行为,是练习控制RGB led延迟和逻辑的好方法!
为什么这很重要
理解RGB混合的关键是:
•设计定制LED动画
•创建视觉通知
•建立互动艺术或环境光系统
•为可穿戴设备或物联网项目编程智能照明
它是数字显示和照明的基础-现在,你正在学习在硬件层面掌握它。
本文编译自hackster.io