物联网实验四-----点亮RGB全彩LED灯的实现

@物联网实验四-----点亮RGB全彩LED灯的实现

RGB Led灯是什么?
RGB灯是以三原色共同交集成像,此外,也有蓝光LED配合黄色荧光 粉,以及紫外LED配合RGB荧光粉,整体来说,这两种都有其成像原理。

某些LED背光板出现的颜色特别清楚而鲜艳,甚至有高画质电视的程度,这种情形,正是RGB的特色,标榜红就是红、 绿就是绿、蓝就是蓝的特性,在光的混色上,具备更多元的特性。
白光LED 与 RGB LED 两者殊途同归,都是希望达到白光的效果, 只不过一个是直接以白光呈现,另一个则是以红绿蓝三色混光而成。
本篇文章所需的组件如下所示:

● RGB LED灯

● 3个220欧电阻

● Arduino面包板

● 面包板和跳线
电路图
电路原理图
实验成果:

在这里插入图片描述
![](https://img-blog.csdnimg.cn/20190619191338375.
源代码

现在让我们看看Arduino草图。我将使用引脚7、6和5,分别将它们命名为redPin、greenPin和bluePin。在setup部分,我们需要将它们定义为输出。在草图的底部,我们有一个名为setColor()的自定义函数,它接受3个不同的参数redValue、greenValue和blueValue。这些参数表示LED的亮度或使用analogWrite()函数创建的PWM信号的占空比。这些值可以在0到255之间变化,表示PWM信号的100%占空比或最大LED亮度。

int redPin= 7;
int greenPin = 6;
int bluePin = 5;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop() {
setColor(255, 0, 0); // Red Color
delay(1000);
setColor(0, 255, 0); // Green Color
delay(1000);
setColor(0, 0, 255); // Blue Color
delay(1000);
setColor(255, 255, 255); // White Color
delay(1000);
setColor(170, 0, 255); // Purple Color
delay(1000);
}
void setColor(int redValue, int greenValue, int blueValue) {
analogWrite(redPin, redValue);
analogWrite(greenPin, greenValue);
analogWrite(bluePin, blueValue);
}
所以现在在loop函数中我们将制作程序,它将每秒改变LED的颜色。 为了在LED获得红光,我们将调用setColor()函数,并为redValue参数设置值255,另外两个参数设置0。 我们分别可以得到另外两种基本颜色,绿色和蓝色。 为了获得其他颜色,我们需要混合参数值。 因此,例如,如果将所有3个LED设置为最大亮度,我们将获得白光,如果我们将以下值设置为参数:170 redValue、0 greenValue和255 blueValue,我们将获得紫色光。

原帖地址
https://www.yiboard.com/thread-1013-1-1.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值