三色灯可以表示三种颜色 , 但是又不仅仅能表示三种颜色 . RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是运用最广的颜色系统之一。
三色灯颜色表格接线图- 用16针脚控制blue蓝色
- 用18针脚控制green绿色
- 用22针脚控制r红色
- -接负极
let rpio = require('rpio');
LED({index: 1}); // 蓝色灯
LED({index: 2}); // 绿色灯
// 根据上面的颜色表格写出控制各个颜色的函数
function LED({redPin=22, greenPin=18, bluePin=16, index}) {
// 1-蓝 2-绿 3-青 4-红 5-亮紫 6-黄 7-白
switch (index) {
case 1:
// 蓝
rpio.write(22, rpio.LOW); // 红
rpio.write(18, rpio.LOW); // 绿
rpio.write(16, rpio.HIGH); // 蓝
break;
case 2:
// 绿
rpio.write(22, rpio.LOW); // 红
rpio.write(18, rpio.HIGH); // 绿
rpio.write(16, rpio.LOW); // 蓝
break;
case 3:
// 青
rpio.write(22, rpio.LOW); // 红
rpio.write(18, rpio.HIGH); // 绿
rpio.write(16, rpio.HIGH); // 蓝
break;
case 4:
// 红
rpio.write(22, rpio.HIGH); // 红
rpio.write(18, rpio.LOW); // 绿
rpio.write(16, rpio.LOW); // 蓝
break;
case 5:
// 亮紫
rpio.write(22, rpio.HIGH); // 红
rpio.write(18, rpio.LOW); // 绿
rpio.write(16, rpio.HIGH); // 蓝
break;
case 6:
// 黄
rpio.write(22, rpio.HIGH); // 红
rpio.write(18, rpio.HIGH); // 绿
rpio.write(16, rpio.LOW); // 蓝
break;
case 7:
// 白
rpio.write(22, rpio.HIGH); // 红
rpio.write(18, rpio.HIGH); // 绿
rpio.write(16, rpio.HIGH); // 蓝
break;
default:
rpio.write(22, rpio.LOW); // 红
rpio.write(18, rpio.LOW); // 绿
rpio.write(16, rpio.LOW); // 蓝
break;
};
};
最终效果