Light random LEDs

slipstick:

  randomNumber1 = random(1,4);

randomNumber2 = random(1,4);
  analogWrite(randomNumber1, brightness);
  analogWrite(randomNumber2, brightness);



What do you think these statements will do? random(1,4) generates numbers 1,2 or 3. analogWrite needs a pin number. How do you think the two randomNumber variables are related to LED pin numbers?

Steve
const byte Button = 13;

byte ButtonState;
byte lastState = LOW;
byte count = 0;
int L1 = 2;
int L2 = 3;
int L3 = 4;
int L4 = 5;
int L5 = 9;
int L6 = 10;
int L7 = 11;
int L8 = 12;
int LED[] ={
  2, 3, 4, 5, 9, 10, 11, 12
};
int pinCount = 8;
int brightness = 0;
int fadeAmount = 5;
int fadeAmountRandom = 7;
long randomNumber1;
long randomNumber2;

void setup() {
  
  Serial.begin(9600);

  pinMode(L1, OUTPUT);
  pinMode(L2, OUTPUT);
  pinMode(L3, OUTPUT);
  pinMode(L4, OUTPUT);
  pinMode(L5, OUTPUT);
  pinMode(L6, OUTPUT);
  pinMode(L7, OUTPUT);
  pinMode(L8, OUTPUT);
  pinMode(Button, INPUT);
  randomSeed(analogRead (A3));
}

void loop() {
  ButtonState = digitalRead(Button);

  if(ButtonState && ButtonState != lastState)  
  {
    if(count < 2) 
      count += 1;
    else
      count = 0;
  } 
  lastState = ButtonState;

  if    (count == 0)
{ 
  
  delay(50);
  digitalWrite (L1, LOW);
  digitalWrite (L2, LOW);
  digitalWrite (L3, LOW);
  digitalWrite (L4, LOW);
  digitalWrite (L5, LOW);
  digitalWrite (L6, LOW);
  digitalWrite (L7, LOW);
  digitalWrite (L8, LOW);
  digitalWrite (L1, HIGH);
  digitalWrite (L2, HIGH);
  digitalWrite (L3, HIGH);
  digitalWrite (L4, HIGH);
  digitalWrite (L5, HIGH);
  digitalWrite (L6, HIGH);
  digitalWrite (L7, HIGH);
  digitalWrite (L8, HIGH);

}
else if(count == 1)
{ 
  delay(50);
  digitalWrite (L1, LOW);
  digitalWrite (L2, LOW);
  digitalWrite (L3, LOW);
  digitalWrite (L4, LOW);
  digitalWrite (L5, LOW);
  digitalWrite (L6, LOW);
  digitalWrite (L7, LOW);
  digitalWrite (L8, LOW);
  analogWrite(L1, brightness);
  analogWrite(L2, brightness);
  analogWrite(L3, brightness);
  analogWrite(L4, brightness);
  analogWrite(L5, brightness);
  analogWrite(L6, brightness);
  analogWrite(L7, brightness);
  analogWrite(L8, brightness);
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 250) {
    fadeAmount = -fadeAmount;
  }
  delay(30);
}
else if(count == 2)
{
  delay(50);
  digitalWrite(L1, LOW);
  digitalWrite(L2, LOW);
  digitalWrite(L3, LOW);
  digitalWrite(L4, LOW);
  digitalWrite(L5, LOW);
  digitalWrite(L6, LOW);
  digitalWrite(L7, LOW);
  digitalWrite(L8, LOW);
  randomNumber1 = random(1,4);
  randomNumber2 = random(9,12);
  analogWrite(randomNumber1, brightness);
  analogWrite(randomNumber2, brightness);
  for(int i = 0; i < 10; i++)
  {
     brightness = brightness + fadeAmountRandom;
      if (brightness <= 0 || brightness >= 250) {
        fadeAmountRandom = -fadeAmountRandom;
      }
     delay (30);
   }
 }
}

This was my original code, with leds plugged in to pins 1-4 and 9-12. I realized that to make the fade on/fade off effect i needed my leds plugged to a pwm or analog pin. So I moved my leds to pwm pins 3,5,6,9,10,11 and analog pins 0 and 1, so my issue now is that I wanna generate a random number that will turn on these leds.