|
|
我要用80个全彩灯拼出一个图。一个arduino板子只有六个pwn口,也就是我只能控制两只灯。我要用尽量少的板子和线路怎么实现???线路怎么设计??
下面是我控制一只全彩灯的程序:
int redPin = 9; // 红
int greenPin = 10; // 绿
int bluePin = 11; // 蓝
// 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);
if (DEBUG) {
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);
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);
} |
|