This sketch has been edited a dozen different ways with the same result; sounds 1~5 fire as they should but the random buzzer emits only a single beep. The sounds are salvaged from children't toys triggered by a photocell. In a separate sketch, the buzzer is functional but not here. I assume this is a software error. Appreciate any suggestions.
int drummer = 12;
int siren = A3;
long randOn =0;
long randOff =0;
int snd1 = 5;
int snd2 = 6;
int snd3 = 7;
int snd4 = 8;
int snd5 = 9;
int sensorPin = A0;
int sensorValue = 0;
void setup(){
pinMode(drummer, OUTPUT);
pinMode(siren, OUTPUT);
randomSeed (analogRead (0));
pinMode(snd1, OUTPUT);
pinMode(snd2, OUTPUT);
pinMode(snd3, OUTPUT);
pinMode(snd4, OUTPUT);
pinMode(snd5, OUTPUT);
digitalWrite(snd1,LOW);
digitalWrite(snd2,LOW);
digitalWrite(snd3,LOW);
digitalWrite(snd4,LOW);
digitalWrite(snd5,LOW);
Serial.begin(9600);
delay(500);
}
void loop()
{
sensorValue = analogRead(sensorPin);
Serial.println(sensorValue);
delay(500);
if (sensorValue > 15)
{
digitalWrite(snd1,HIGH);
delay(5000);
digitalWrite(snd1,LOW);
//delay(3000);
digitalWrite(snd2,HIGH);
delay(5000);
digitalWrite(snd2,LOW);
// delay(3000);
digitalWrite(snd3,HIGH);
delay(5000);
digitalWrite(snd3,LOW);
digitalWrite(snd4,HIGH);
delay(5000);
digitalWrite(snd4,LOW);
digitalWrite(snd5,HIGH);
delay(5000);
digitalWrite(snd5,LOW);
delay(1000);
randOn = random (50, 500);
randOff = random (1, 900);
analogWrite(siren,50);
delay(randOn);
analogWrite(siren,200);
delay(randOn);
analogWrite (siren, LOW);
delay(randOff);
}
}