Arduino·四脚RGB实现三种颜色渐亮渐暗


前言

上一篇文章我们介绍了Blink的使用和简易交通信号灯的制作,这篇文章我们来说说如何使四脚RGB实现三种颜色渐亮渐暗。


一、简单了解RGB和PWM

1.共阴极型RGB LED

RGB LED分为共阳极型和共阴极型,今天我们要用到的是共阴极型。
下图是一张共阴极型RGB LED的参考图片。图中最长的那个引脚(2)为共阴极,其余三个是阳极(1-Red;3-Green;4-Blue)。连接时引脚2接GND,其余三个接数字引脚。
当向这三个引脚输出不同大小的电压时,就能产生不同的颜色。
共阴RGB LED型

2.PWM及其使用

(本人对其了解不多,如有错误,欢迎指正)

2.1.PWM

因为要实现的是LED渐亮渐暗,简单的“HIGH”和“LOW”在此处就不适用了,所以我们要引入一个新东西——PWM。PWM的中文名是脉冲宽度调制,它是一种模拟控制方式。我对它的理解是在一个脉冲周期内把0-1(0V和5V)之间分了255块,输入10时就输出其中10块,输入150时就输出其中150块,以此类推。

2.2.取值

arduino UNO模拟电压是5V,对应产生模拟信号的脉冲宽度的取值范围是0到255,所以想要输出特定信号值时可以参考这个公式:

产生模拟信号的脉冲宽度的取值 = 51 x 模拟电压

如:需要输出3V的模拟电压时用153(51x3)。

2.3.代码

使用方式如下:

void loop() // 循环函数永远重复运行
{
analogWrite(Pin,PWM); // Pin为对应引脚,PWM范围为0-255
}

2.4.引脚的选用

关于引脚的选用,使用PWM时必须选用旁边带有“~”的引脚,也就是3、5、6、9、10、11号
另:如果有想要进一步理解PWM的话可以点击这里:

这样理解PWM,想不懂都难!!! - 知乎

二、操作

1.连接电路图

1.1.所需硬件

  • arduino UNO × 1
  • 共阴极型RGB LED × 1
  • 220Ω电阻 × 3
  • 杜邦线 若干
  • 数据线 × 1
  • 面包板 × 1

1.2.电路图及原理图

四脚RGB使用电路图
四脚RGB使用电路原理图

2.代码

代码如下(示例):

int i,j;

void setup() // 当您按下重置或给电路板通电时,设置功能运行一次
{
pinMode(9, OUTPUT);		// 将数字引脚9初始化为输出
pinMode(10, OUTPUT);	// 将数字引脚10初始化为输出
pinMode(11, OUTPUT);	// 将数字引脚11初始化为输出
}

void loop() // 循环函数永远重复运行
{
for(i=9;i<=11;i++)	// 对9-11从小到大循环遍历
{
  for(j=0;j<=255;j++)	// 使i号引脚渐亮
  {
    analogWrite(i,j);
    delay(5);
  }
  for(j=255;j>=0;j--)	// 使i号引脚渐暗
  {
    analogWrite(i,j);
    delay(5);
  }
}
}

总结

以上就是今天要讲的内容,本文简单介绍了如何通过代码使RGB LED完成三种颜色的渐亮渐暗。除此之外,它还有许多运用,大家可以自行探索。
另:本人是初学者。如有不足,望各路大神指正!

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要通过手机控制Arduino控制RGB LED的颜色和亮度,我们需要搭建以下物品和步骤。 所需物品: 1. Arduino开发板 2. RGB LED灯 3. HC-06蓝牙模块 4. 面包板和跳线等必要配件 步骤如下: 1. 首先,将HC-06蓝牙模块连接到Arduino开发板上,使用跳线将模块的TX(发送)引脚连接到Arduino的RX(接收)引脚,RX引脚连接到TX引脚,并将HC-06的GND引脚接地。 2. 将RGB LED连接到Arduino上,将红色引脚连接到Arduino的数字引脚9,绿色引脚连接到数字引脚10,蓝色引脚连接到数字引脚11。此外,LED的公共引脚(通常代表地线)需要连接到Arduino的GND引脚。 3. 接下来,编写Arduino代码。首先,需要导入“SoftwareSerial”库,并初始化串口对象,以读取蓝牙模块的命令。然后,设置RGB LED灯的引脚为输出模式。最后,在主循环中,读取蓝牙模块的数据,并根据接收到的命令设置RGB LED的颜色和亮度。 4. 使用手机下载蓝牙串口控制APP,例如“Arduino Bluetooth Controller”。打开APP,搜索并连接到HC-06蓝牙模块。 5. 在蓝牙控制APP中,设置发送指令的格式和内容,例如“R255G0B0”表示只点亮红色,而“R127G127B127”表示点亮白色。你可以探索不同的命令和颜色组合。 这样,当你在蓝牙控制APP中发送指令时,Arduino将接收到命令并相应地控制RGB LED的颜色和亮度。通过改变发送的指令,你可以实现不同颜色和亮度的控制。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值