Hi all, this is my first day at coding, and my first post here. Hope it is OK.
Uno board and IDE ver 1.8.5
Very simple bit of code - the state machine works as expected, and the serial.print "FSM tester" is fine, but as soon as I try to serial print from with the state machine, the compiler has an error ('serial' was not declared in this scope).
I have spent several hours looking around this forum and Google, and tried lots of things, all to no avail!
Any help would be greatly appreciated. Thanks.
My code
// modified state machine 29 Mar 2018
int LED1 = 12;
int LED2 = 11;
int LED3 = 10;
int SW1 = 2;
int cnt = 0;
int state = 0;
void setup()
{
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(SW1, INPUT);
digitalWrite(SW1, HIGH);
Serial.begin(9600);
Serial.println("FSM tester");
}
void loop()
{
if (!digitalRead(SW1))
{
delay(50);
if (!digitalRead(SW1))
{
while (!digitalRead(SW1));
Statemachine();
}
}
delay(10);
}
void Statemachine()
{
switch (state)
{
case 0:
digitalWrite(LED1, HIGH);
delay (1000);
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
digitalWrite(LED3, LOW);
serial.print("state 0");
state++;
break;
case 1:
digitalWrite(LED1, HIGH);
digitalWrite(LED2, LOW);
digitalWrite(LED3, LOW);
// serial.print("state 1");
state++;
break;
case 2:
digitalWrite(LED1, LOW);
digitalWrite(LED2, HIGH);
digitalWrite(LED3, LOW);
// serial.print("state 2");
state++;
break;
case 3:
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
digitalWrite(LED3, HIGH);
// serial.print("state 3");
state = 0;
break;
}
}