Bonjour à tous , je suis électronicien et je débute dans l'arduino .
Mon projet est basé sur un ATtiny85 Digispark .
J'ai réussi à le programmer donc l'IDE fonctionne !
Maintenant je ne sais pas comment générer 2 impulsions de 15 secondes sur la sortie (P3) si sur l'entrée ( P2) j'ai un front montant qui est plus long que les sorties.
voir chronogramme joint
PS c'est mon premier post soyez indulgents et pédagogues
admettons P2 est de 45 secondes, soit 3x 15secondes, que se passe t'il?
admettons P2 est de 50 secondes, que se passe t'il?
admettons P2 est de 25secondes que se passe t'il?
donc si P2 passe à HIGH vous êtes sûr que ça va durer 1 minute ?
dans ce cas si un truc bloquant est OK, vous pouvez simplement faire:
void loop() {
digitalWrite(p3, HIGH); // par défaut p3 est HIGH
while (digitalRead(p2) == HIGH); // attente de passage à LOW pour bien se caler
while (digitalRead(p2) == LOW); // attente du front
digitalWrite(p3, LOW);
delay(15000);
digitalWrite(p3, HIGH);
delay(15000);
digitalWrite(p3, LOW);
delay(15000);
}
si le code doit rester interactif pendant les signaux, il faudra une programmation par machine à états par exemple (cf mon tuto éventuellement)
gregelec:
je ne sais pas comment générer 2 impulsions de 15 secondes sur la sortie (P3) si sur l'entrée ( P2) j'ai un front montant qui est plus long que les sorties.
Donc l'énoncé est faux.
La demande c'est:
Je ne sais pas comment générer 2 impulsions de 15 secondes espacées de 15 secondes sur la sortie (P3) si j'ai un front montant sur l'entrée ( P2)
Grand merci cela fonctionne impeccable !!!
Juste ce que je voulais à un détail près j'ai réduit la durée de la tempo de 15000 à 1500 car en fait pour mon système j'avais mal lu la notice 15 secondes c'était le max donc cela faisait 45 de délais et cela n'était pas confortable Maintenant avec moins de 5 secondes c'est super réactif .
Autre modif j'ai inverser la sortie car il faut plus d'une seconde au démarrage pour que la sortie passe à HIGH mais c'est pas grave pour moi un petit mosfet en SOT23 (grain de riz) pour inverser le signal et hop
Je ne sais pas marqué résolu
int p3=2; // sortie
int p2=4; // entrée
void setup() {
//
pinMode(p3,OUTPUT);
digitalWrite(p3,HIGH);
pinMode(p2,INPUT);
}
void loop() {
digitalWrite(p3, LOW); // par défaut p3 est LOW
while (digitalRead(p2) == HIGH); // attente de passage à LOW pour bien se caler
while (digitalRead(p2) == LOW); // attente du front
digitalWrite(p3, HIGH);
delay(1500);
digitalWrite(p3, LOW);
delay(1500);
digitalWrite(p3, HIGH);
delay(1500);
}
fdufnews:
Donc l'énoncé est faux.
La demande c'est:
Je ne sais pas comment générer 2 impulsions de 15 secondes espacées de 15 secondes sur la sortie (P3) si j'ai un front montant sur l'entrée ( P2)
Je pense que la remarque de fdufnews est limpide : si le titre est faux il faut le rectifier.
La REGLE est que les renseignements donnés ne sont pas destinés à une seule personne mais à tous.
Les titres sont les mots clés du moteur de recherche, oui il y a des demandeurs qui se servent du moteur de recherche et qui ne postent que s'ils n'ont pas trouvé de réponse.
Merci de modifier le titre du PREMIER message comme c'est indiqué dans les messages épinglés.
Si cela continue il faudra appliquer la menace du modérateur (message #2 de Règles du forum francophone")
Durcissement de la surveillance du forum.... sans sommation
Les titres à la con style "aidez moi" "urgent" ou autre >>> poubelle
code pas entre les balises >> poubelle
UP >>> poubelle (même si le sujet à plein de réponses, désolé pour ceux qui ont contribué)
Les demandes déguisées n'indiquant pas sujet bac avec texte au kilomètre=>poubelle
Certains sujets passent entre les gouttes, mais s’ils remontent et que je vois que ça ne correspond pas à la charte >>> poubelle (même si le sujet à plein de réponses, désolé pour ceux qui ont contribué).
le titre est correct, il s'agit bien de créer 2 impulsions à la réception du front montant.
La seule chose qui est "fausse" ou plutôt ambigüe c'est
si sur l'entrée ( P2) j'ai un front montant qui est plus long que les sorties.
il s'agit d'une affirmation sur la caractérisation du front montant (en fait même pas du front mais de l'état suite au front) et non pas une contrainte à prendre en compte.
il aurait juste pu écrire
lorsque sur l'entrée ( P2) j'ai un front montant (p2 restera HIGH toujours plus longuement que les sorties).