博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ardunio控制RGB的LED灯显示彩虹渐变色.
阅读量:5332 次
发布时间:2019-06-14

本文共 1230 字,大约阅读时间需要 4 分钟。

由于我使用的是共阴极的RGB LED,如果你的是共阳极的,接线的时候要注意一下.

其他没什么不同

//定义RGB色彩的输出I/Oint redPin = 11;int greenPin = 10;int bluePin = 9;//标记颜色变化的方式,增加值还是减小值bool redBool =false;bool greenBool=true;bool blueBool=false;//颜色值,初始化为0,127,255int redVal =0;int greenVal=127;int blueVal=255;void setup(){  pinMode(redPin, OUTPUT);  pinMode(greenPin, OUTPUT);  pinMode(bluePin, OUTPUT);}/** * 改变颜色的增减顺序 */void changeStatus(){   if (redVal==0)  {    redBool=true;  }  else if (redVal==255)  {    redBool=false;  }  if (greenVal==0)  {    greenBool=true;  }  else if (greenVal==255)  {    greenBool=false;  }  if (blueVal==0)  {    blueBool=true;  }  else if (blueVal==255)  {    blueBool=false;  }  }/** * 改变颜色的变化量,增加还是减少 */void changeColorVal(){    if (redBool)  {    redVal++;  }  else  {    redVal--;  }  if (greenBool)  {    greenVal++;  }  else  {    greenVal--;  }  if (blueBool)  {    blueVal++;  }  else  {    blueVal--;  }}/** * 设置led灯颜色 */void setColor(int red, int green, int blue){  analogWrite(redPin, red);  analogWrite(greenPin, green);  analogWrite(bluePin, blue);}void loop(){  //更新颜色变化状态  changeStatus();  //更新颜色值  changeColorVal();  //设置颜色  setColor(redVal, greenVal, blueVal);  delay(50);}

 

转载于:https://www.cnblogs.com/sun_catboy/p/5889691.html

你可能感兴趣的文章
HDU 2063 过山车
查看>>
高精度1--加法
查看>>
String比较
查看>>
Django之Models
查看>>
CSS 透明度级别 及 背景透明
查看>>
Linux 的 date 日期的使用
查看>>
PHP zip压缩文件及解压
查看>>
SOAP web service用AFNetWorking实现请求
查看>>
Java变量类型,实例变量 与局部变量 静态变量
查看>>
mysql操作命令梳理(4)-中文乱码问题
查看>>
Python环境搭建(安装、验证与卸载)
查看>>
一个.NET通用JSON解析/构建类的实现(c#)
查看>>
Windows Phone开发(5):室内装修 转:http://blog.csdn.net/tcjiaan/article/details/7269014
查看>>
详谈js面向对象 javascript oop,持续更新
查看>>
关于这次软件以及pda终端的培训
查看>>
jQuery上传插件Uploadify 3.2在.NET下的详细例子
查看>>
如何辨别一个程序员的水平高低?是靠发量吗?
查看>>
新手村之循环!循环!循环!
查看>>
正则表达式的用法
查看>>
线程安全问题
查看>>