Arduino开发(二)_基于Arduino UNO开发板的RGB灯光控制方法
首先,我们来看一下Arduino UNO开发板的具体引脚排列,如下图所示,
再了解一下三色RGB LED模块,如下图所示,
三原色为红、绿、蓝,所以我们可以通过对这三种颜色进行组合,实现不同颜色的显示,由下图可知:红色(255,0,0),绿色(0,255,0),蓝色(0,0,255)
编程可参考如下代码: |
//控制RGB LED的灯光显示
//三原色为红、绿、蓝,所以我们定义三个变量来代表这三种颜色,可以对这三种颜色进行组合,实现不同颜色的显示
int pinRed =9; //输出引脚使用 9,10,11三个
int pinGreen=10;
int pinBlue=11;
int redPWM; //定义3个变量用于存储三原色的具体数值,这里采用随机数
int greenPWM;
int bluePWM;
void setup() {
pinMode(pinRed,OUTPUT); //定义这3个引脚为输出
pinMode(pinGreen,OUTPUT);
pinMode(pinBlue,OUTPUT);
}
void colorDisplay(int red ,int green, int blue )//声明一个函数,用于三种颜色的组合显示输出
{
analogWrite(pinRed,red); //模拟量输出值范围:0-255
analogWrite(pinGreen,green);
analogWrite(pinBlue,blue);
}
void loop() {
redPWM=random(0,255); //三原色的数值每个循环随机生成
greenPWM=random(0,255);
bluePWM=random(0,255);
colorDisplay(redPWM,greenPWM,bluePWM); //调用colorDisplay()方法控制LED最终的显示
delay(1000); //延时1S
}
接线: |
将三色RGB LED模块的RED、GREEN、BLUE三个引脚分别连接到UNO 开发板的9、10、11三个引脚,GND引脚与UNO 开发板的GND连接,实现共地。
编译并下载程序到开发板中,
最终实现效果: |
上电运行后,每隔1S,三色RGB LED模块的灯光颜色随机变化一次。