Hi again forum
I'm back with another problem, i have two sketches which work perfectly individually, but when i try to combine them, i get this error:
Skab:39: error: expected unqualified-id before '{' token
I know it has something to do with my braces, but i can't figure out what's wrong.
sketch 1:
char val; // Variabel, modtager data fra serielport
int statusled = 13; // Satus LED
int solenoid = 2; // kraftfelt
void setup()
{
pinMode(statusled, OUTPUT); // pin 13 (status LED) defineret som output
pinMode(solenoid, OUTPUT); // pin 2 (kraftfelt) defineret som output
Serial.begin(9600); // start serial kommunikation med baudrate på 9600bps
}
void loop() {
if( Serial.available() ) // Hvis der er data at læse
{;}
val = Serial.read(); // Læs det, og gem det i variablen 'val'
if( val == 's' ) // hvis 's' modtages, sluk status LED og kraftfelt
{
digitalWrite(statusled, LOW); // sluk status LED
digitalWrite(solenoid, LOW); // sluk kraftfelt
delay(1000); // vent et sekund
Serial.println("Skab låst ");
}
if( val == 't' ) // hvis 't' modtages, tænd status LED og kraftfelt
{
digitalWrite(statusled, HIGH); // tænd status LED
digitalWrite(solenoid, HIGH); // tænd Kraftfelt
delay(1000); // vent et sekund
Serial.println("Skab åbnet ");
}
}
Sketch 2:
const int buttonPin = 2; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status
void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}
void loop(){
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}
Last but not least, my try to combine them:
char val; // Variabel, modtager data fra serielport
int statusled = 13; // Satus LED
int solenoid = 2; // kraftfelt
const int buttonPin = 3; // the number of the pushbutton pin
int buttonState = 0; // variable for reading the pushbutton status
void setup()
{
pinMode(statusled, OUTPUT); // pin 13 (status LED) defineret som output
pinMode(solenoid, OUTPUT); // pin 2 (kraftfelt) defineret som output
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
Serial.begin(9600); // start serial kommunikation med baudrate på 9600bps
}
void loop()
{
if( Serial.available() ) // Hvis der er data at læse
{;}
val = Serial.read(); // Læs det, og gem det i variablen 'val'
if( val == 's' ) // hvis 's' modtages, sluk status LED og kraftfelt
{
digitalWrite(statusled, LOW); // sluk status LED
digitalWrite(solenoid, LOW); // sluk kraftfelt
delay(1000); // vent et sekund
Serial.println("Skab låst ");
}
if( val == 't' ) // hvis 't' modtages, tænd status LED og kraftfelt
{
digitalWrite(statusled, HIGH); // tænd status LED
digitalWrite(solenoid, HIGH); // tænd Kraftfelt
delay(1000); // vent et sekund
Serial.println("Skab åbnet ");
}
}
{
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(statusled, HIGH);
}
else {
// turn LED off:
digitalWrite(statusled, LOW);
}
}
I think my problem is to find, somewhere here:
{
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(statusled, HIGH);
}
else {
// turn LED off:
digitalWrite(statusled, LOW);
}
}
I hope someone can point out the problem with the combined sketch, because i can't do it myself. Thank you very much, I appreciate your help
best regards
Johannes