Question a propos d'allumer une LED dans une durée de temps donnée

Bonjour tout le monde,
Je suis débutante en Arduino,
S'il vous plait je voudrais allumer un tube fluo pendant une durée ( de 7h du matin jusqu'à 19h )
parmi les solution que j'ai trouvé c'étais un relais temporisé
j'ai écrit ce programme mais je ne suis pas sur si ça va marcher ou pas
int led=8;
int relais=9;
int x=0; // la variable du relais
int a=7;
int b=19;
void setup ()
{
pinmode(8,output);
pinmode(9,output);
}
void loop
{
if ( x > 7 && x<19 )
digitialWrite(led,high );
else
digitalWrite(led,low);
}


S'il vous plait comment je peux résoudre ce problème juste à l'aide d'une horloge
Mercii d'avance

didyi:
S'il vous plait comment je peux résoudre ce problème juste à l'aide d'une horloge
Mercii d'avance

Bien justement, il te faudrait une horloge. Or là dans ton programme il n'y a rien de ce genre.
Donc 2 possibilités:

oui exactement mr fdufnews le problème c'est que c'est la première fois que j'utilise l'arduino ou les microcontroleurs en général
c'est tout a fais différent de mon cursus scolaire .
si vous pouviez m'aider je serai reconnaissant à vie
Merci encore pour votre participation

bonjour,
ca sent le projet bac

si vous pouviez m'aider je serai reconnaissant à vie

tu essaye de comparer quelque chose avec rien.
donc trouve le moyen de récupérer l'heure pour être comparée avec quelque chose.
soit par la lib timer, soit par un module RTC.

Vous vous rappelez encore de moi :smiley:

Voilà ce que j'ai écrit :
#include <Wire.h>
#include <RTClib.h>
#define RELAY1 5

RTC_DS1307 RTC;

void setup()
{
Serial.begin(57600);
Wire.begin();
RTC.begin();

pinmode(8,output);

}

void loop()
{
DateTime now = RTC.now();

if (now.hour() == 07 && now.minute() < 01) // Led off
{
digitalWrite(RELAY1,1); // Turns off Relays 1
}

if (now.hour() == 19 && now.minute() < 01 ) // Led on
{
digitalWrite(RELAY1,0); // Turns ON Relays 1


la sortie 1 du relais commande le tube fluo
je n'est pas de quoi testé le programme

vous le trouves bien ?

et la balise code?

le truc simple
si heure > 7 et heure <19 => relais on
sinon relais off

#include <Wire.h>
#include <RTClib.h>
#define RELAY1 5

RTC_DS1307 RTC;

void setup()
{
Serial.begin(57600);
Wire.begin();
RTC.begin();

pinmode(8,output);

}

void loop()
{
DateTime now = RTC.now();

if (now.hour() <= 07 && now.hour() <= 19) // Led on
{
digitalWrite(RELAY1,0); // Turns on Relays 1
}

Else
{
digitalWrite(RELAY1,1); // Turns Off Relays 1
}


c'est comme ça que vous me disiez
svp je comprends pas cette ligne :

RTC_DS1307 RTC;
je le mets dans le programme d'arduino et il la considère comme erreur
Vous pensez quoi ?

la boule de cristal est cassée à cette heure ci.
quelle erreur?
et le code entre balise, 2eme remarque