|
|
下面这个程序是实现RGB彩灯的程序,我想做成智能灯但是亮度不可调,不知道怎么改程序可以实现亮度调节。。。请大神指教
int redPin =11; // 红
int greenPin = 10; // 绿
int bluePin = 9; // 蓝
// Program variables
int redVal = 255;
int greenVal = 1;
int blueVal = 1;
int i = 0;
int wait = 50;
int DEBUG = 0;
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
i += 1;
if (i < 255)
{
redVal -= 1;
greenVal += 1;
blueVal = 1;
}
else if (i < 509)
{
redVal = 1;
greenVal -= 1;
blueVal += 1;
}
else if (i < 763)
{
redVal += 1;
greenVal = 1;
blueVal -= 1;
}
else
{
i = 1;
}
analogWrite(redPin, redVal);
analogWrite(greenPin, greenVal);
analogWrite(bluePin, blueVal);
Serial.println(redVal);
Serial.println(greenVal);
Serial.println(blueVal);
if (DEBUG) {
DEBUG += 1;
if (DEBUG > 10)
{
DEBUG = 1;
Serial.print(i);
Serial.print("\t");
Serial.print("R:");
Serial.print(redVal);
Serial.print("\t");
Serial.print("G:");
Serial.print(greenVal);
Serial.print("\t");
Serial.print("B:");
Serial.println(blueVal);
}
}
delay(wait);
}
怎么编写一个程序,读出上面redVal,greenVal,blueVal的值.提取出来我要在PC端加以控制。下面这个程序不知道能不能实现??、
#include<stdio.h>
#include<math.h>
void main()
{
int redVal,greenVal,blueVal;
printf("%d,%d,%d\n",redVal,greenVal,blueVal);
} |
|