Error compilación en tarjeta Arduino/Genuino uno.

Hola buenas soy nuevo en esto de arduino y mañana tengo un examen para el instituto.
Resulta que voy intentar hacer algun sketch para ver si soy capaz y me sale este error :

Arduino:1.6.13 (Windows 10), Tarjeta:"Arduino/Genuino Uno"

In file included from sketch\sketch_feb05a.ino.cpp:1:0:

C:\Users\ALVARO\AppData\Local\Temp\arduino_modified_sketch_633772\sketch_feb05a.ino: In function 'void loop()':

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:40:14: error: expected ')' before numeric constant

 #define HIGH 0x1

              ^

C:\Users\ALVARO\AppData\Local\Temp\arduino_modified_sketch_633772\sketch_feb05a.ino:9:19: note: in expansion of macro 'HIGH'

 if(digitalRead(7) HIGH){

                   ^

exit status 1
Error compilación en tarjeta Arduino/Genuino Uno.

Este reporte podría tener más información con
"Mostrar salida detallada durante la compilación"
opción habilitada en Archivo -> Preferencias.

Espero que alguien pueda ayudarme , gracias por adelantado.
Álvaro.

Lo que estoy intentando hacer es un semáforo, lo digo por si sirve de ayuda :

void setup() {
pinMode (13 , OUTPUT);
pinMode (11 , OUTPUT);
pinMode (9 , OUTPUT) ;
pinMode (7 , INPUT) ;
}

void loop() {
if(digitalRead(7) HIGH){
digitalWrite (9 , HIGH);
delay(5000);
digitalWrite (9 , LOW); 
for (int i = 0 ; i < 6; i++) {
digitalWrite (11 , HIGH);
delay(500);
digitalWrite (11 , LOW);  
delay(500);
}
digitalWrite (13 , HIGH);
delay(10000);
digitalWrite (13 , LOW);
digitalWrite (9 , HIGH);
delay(20000);
}
else {
 digitalWrite (9 , HIGH);
}
}

Buenas Álvaro el fallo que te esta dando es un el Loop, ya que te faltan parentesis que no has puesto o están mal puestos.

Saludos.

Tygrecor

Perdóname, pero no encuentro donde debo de poner los paréntesis , ¿podrías indicarme donde necesito ponerlos?
Gracias por adelantado.

En primer lugar para que funcione el comando necesitas conocer su sintaxis, que en las Referencias de arduino lo puedes ver. En tu caso sería así:

void loop () {
  if (digitalRead(7) == HIGH) {
     digitalWrite (9, HIGH);
     delay (5000);
     digitalWrite (9, LOW);
     delay(5000);
}
}

Este es tu error aunque ya te lo marcaron

 if (digitalRead(7)==HIGH) {

Bueno, tras leer esto me dió por hacer uno sobre la marcha. Son 5 minutos (o menos)
Espero que te sirva de ayuda.

Este ejemplo enciende el rojo durante 7 seg, amarillo en 1 y azul en 5.

Código: (De maníatico no haría esto así y acortaría aún más líneas, no usaría delay() y obtendría la longitud del array con sizeof(...) / sizeof(...) por si quisiera cambiar el número de leds... Pero es un ejemplo "express").

//Arrays con: pin || tiempo encendido
int leds_Matrix[3][2] = {
  {7, 7000}, // Led Rojo (0)
  {5, 2000}, // "" Amarillo (1)
  {3, 5000}  // "" Azul [en mi caso] (2)
};

void setup() {
  for(byte i = 0; i < 3; i++){            // número de leds
    for(byte j = 0; j < 2; j++){          // elementos de cada led 
      pinMode(leds_Matrix[i][0], OUTPUT); // clavijas output
  }}
}

void loop() {
  for(byte i = 0; i < 3; i++){             // número de leds
    digitalWrite(leds_Matrix[i][0], HIGH); // encender;
    delay(leds_Matrix[i][1]);              // pausa
    digitalWrite(leds_Matrix[i][0], LOW);  // apagar; 
  }
}

Por si necesitas verlo visualmente sin diagrama.
Resistencias de 220 ohmios, 3 leds, y cada cátodo a tierra.

:grin: Suerte con el examen !!!