J'ai aussi essayer de faire le programme avec delay, mais je me suis rendu compte que j'ai besoin que la LED reste à clignoter pendant que le programme dit au buzzer de sonner selon l'état de la LED.
Avez vous des idées pour me mettre sur la bonne voie?
Pour la fréquence de 65535Hz, j'ai mis ça pour être sur d'entrendre le son émis.
Mais je peux aussi utiliser la fonction digitalWrite( buzzer, HIGH ) après avoir "int" mon buzzer
Tu veux que ta led clignote et que pendant ce clignotement quand la led est allumée ton buzzer fonctionne et quand elle est éteinte le buzzer s’arrête.
En résumé tu veux que le buzzer fasse 'bip bip' en synchronisation avec la led qui clignote?
Tu veux que ta led clignote et que pendant ce clignotement quand la led est allumée ton buzzer fonctionne et quand elle est éteinte le buzzer s’arrête.
En résumé tu veux que le buzzer fasse 'bip bip' en synchronisation avec la led qui clignote?
Oui Kamill c'est ça.
Je laisse clignoter ma LED, et pendant ce temps mon programme vérifie l'état de la LED.
Si la LED est allumé le buzzer sonne. Si la LED est éteinte le buzzer ne fait rien.
Un peu comme un témoin sonore pour dire quand la LED est allumé.
kamill:
C'est fait pour les chiens qui entendent les ultrasons
Abon? XD
Ba pourtant j'ai fais attention d'utiliser une fréquence audible par l'homme.
Pour la fréquence de 65535Hz, j'ai mis ça pour être sur d'entrendre le son émis.
Mais je peux aussi utiliser la fonction digitalWrite( buzzer, HIGH ) après avoir "int" mon buzzer
?????
Concernant le buzzer : (quel modèle au fait ?)
Essayer le buzzer seul avec dans loop() { delay(500);tone(pin,fréquence);delay(100);}
suggestions:
- réviser comment on test une égalité versus une affectation de valeur à une variable
- réviser comment on lit la valeur de l'état d'une PIN
- donnez des nom cohérents à vos variables, définissez les comme constantes si c'est le cas et donc au lieu de faire
comme ça quand vous serez tenté d'écrire `if ( numeroDePinDelaLed1 = HIGH )` l'incohérence vous sautera aux yeux...
il y a aussi un problème de logique quand vous forcez l'affectation de ` tempDepart = 1 ;` pour tester juste après
Je fais un petit UP parce que je n'arrive toujours pas à résoudre mon problème. Du coup je me permet de continuer à solliciter votre aide.
Après un certain nombre de tentative je n'y arrive toujours pas.
Je n'arrive pas à faire clignoter ma LED, soit elle reste éteinte (ce qui est le cas pour ce programme), soit elle reste allumer. Il me reste plus que ça à régler.
Dans la loop vous faitesunsigned long tempoActive = millis() ;
==> pourquoi recréez (re-définissez) vous cette variable globale en local ? elle va "cacher" la globale au sein de la loop (lire des infos sur la portée/visibilité des variables - scope en anglais)
De plus il ne faut pas utiliser un int pour millis()
Dans votre code de la loop tempoActive - tempDepart vaudra toujours 0 (ou 1 au pire), lisez les 2 lignes d'initialisations juste au dessus du test