Hi,
I'm trying to set up an 8-way relay board to randomly switch on lights (and off again). The code is below. However, I keep getting an error stating: "expected constructor, destructor, or type conversion before '(' token". I think I've checked all the bracket pairs but still can't get this error cleared. Can anyone help with this code error, please?
void setup() {
int i;
Serial.begin(9600);
int arr[] = {3, 4, 5, 6, 7, 8, 9, 10};
int n = sizeof(arr) / sizeof(arr[0]);
}
randomize (arr, n);
for (i - 0; i < n; i++)
Serial.print(arr*);*
- Serial.print(" ");*
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
delay(1000);
digitalWrite(arr[0], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(" "); //prints new line
Serial.println(arr[0]); //prints pin-number
delay(10000);
digitalWrite(arr[0], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for a second
digitalWrite(arr[1], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[1]); //prints pin-number
delay(10000);
digitalWrite(arr[1], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[2], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[2]); //prints pin-number
delay(10000);
digitalWrite(arr[2], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[3], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[3]); //prints pin-number
delay(10000);
digitalWrite(arr[3], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[4], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[4]); //prints pin-number
digitalWrite(arr[4], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[5], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[5]); //prints pin-number
delay(10000);
digitalWrite(arr[5], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[6], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[6]); //prints pin-number
delay(10000);
digitalWrite(arr[6], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[7], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[6]); //prints pin-number
delay(10000);
digitalWrite(arr[7], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
digitalWrite(arr[8], LOW); // turn the LED off (LOW is the voltage level)
Serial.println(arr[8]); //prints pin-number
delay(10000);
digitalWrite(arr[8], HIGH); // turn the LED on again
delay(random(5000, 7000)); // wait for 5-15 seconds
void swap (int *a, int *b)
_ int temp = *a;_
_ *a = *b;_
_ *b = temp;_
}}
void randomize ( int arr[], int n )
{ - // Use a different seed value so that we don't get same*
- // result each time we run this program*
- randomSeed(analogRead(A0));*
- // Start from the last element and swap one by one. We don't*
- // need to run for the first element that's why i > 0*
- for (int i = n - 1; i > 0; i--)*
- {*
- long j = random(0, n);*
_ swap(&arr*, &arr[j]);_
_ }_
_}*_