#define R1 2
#define G1 5
#define B1 19
#define R2 22
#define G2 13
#define B2 14
#define R3 26
#define G3 33
#define B3 32
int r[]={R1,G1,B1,R2,G2,B2,R3,G3,B3};
void pattern00(){
for (int m=0; m<=8; m++){
analogWrite(r[m], 255); // turn the LED on
delay(100); // wait for a second
}
for (int m=8; m>=0; m--){
analogWrite(r[m], 0);
delay(100); // wait for a second
}
for (int m=8; m>=0; m--){
analogWrite(r[m], 255); // turn the LED on
delay(100); // wait for a second
}
for (int m=0; m<=8; m++){
analogWrite(r[m], 0);
delay(100); // wait for a second
}
}
void pattern01(){
for (int m=0; m<=8; m++){
analogWrite(r[m], 255);
delay(300);
}
for (int m=8; m>=0; m--){
analogWrite(r[m], 0);
delay(300);
}
for (int m=8; m>=0; m--){
analogWrite(r[m], 255);
delay(300);
}
for (int m=0; m<=8; m++){
analogWrite(r[m], 0);
delay(300);
}
}
void pattern02(){
for (int m=0; m<=2; m++){
analogWrite(r[m], 255);
delay(300);
}
for (int m=8; m>=6; m--){
analogWrite(r[m], 255);
delay(300);
}
for (int m=0; m<=2; m++){
analogWrite(r[m], 0);
delay(300);
}
for (int m=8; m>=6; m--){
analogWrite(r[m], 0);
delay(300);
}
}
void pattern03(){
delay(4);
for (int m=0; m<=2; m++){
for (int n=0; n<=255; n++){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=8; m>=6; m--){
for (int n=0; n<=255; n++){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=0; m<=2; m++){
for (int n=255; n>=0; n--){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=8; m>=6; m--){
for (int n=255; n>=0; n--){
analogWrite(r[m], n);
delay(3);
}
delay(15);
}
delay(4);
for (int n=0; n<=255; n++){
analogWrite(R2, n);
analogWrite(G2, n);
analogWrite(B2, n);
delay(10);
}
for (int m=0; m<=2; m++){
for (int n=0; n<=255; n++){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=8; m>=6; m--){
for (int n=0; n<=255; n++){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=0; m<=2; m++){
for (int n=255; n>=0; n--){
analogWrite(r[m], n);
delay(3);
}
}
for (int m=8; m>=6; m--){
for (int n=255; n>=0; n--){
analogWrite(r[m], n);
delay(3);
}
}
delay(7);
for (int n=255; n>=0; n--){
analogWrite(R2, n);
analogWrite(G2, n);
analogWrite(B2, n);
delay(7);
}
delay(100);
}
void pattern04(){
int d[]={R1,R2,R3,G1,G2,G3,B1,B2,B3};
for (int pin=0; pin<=8; pin++){
for (int n=0; n<=255; n++){
analogWrite(d[pin], n);
delay(5);
}
for (int n=255; n>=0; n--){
analogWrite(d[pin], n);
delay(5);
}
}
for (int pin=7; pin>=0; pin--){
for (int n=0; n<=255; n++){
analogWrite(d[pin], n);
delay(5);
}
for (int n=255; n>=0; n--){
analogWrite(d[pin], n);
delay(5);
}
}
}
void setup() {
for(int i=0; i<=8; i++){
pinMode(r[i], OUTPUT);
}
}
void loop() {
delay(100);
pattern00();
pattern01();
pattern00();
pattern01();
delay(100);
pattern02();
pattern02();
pattern03();
delay(100);
pattern04();
delay(100);
}