Avec Lampe Poser Lampes Cinema Pin Ebor But Chrome Lampadaire 8wvOmnyN0
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Go Down
Pages: [1]

Topic: probléme pour faire un bistable(Read 4048 times) previous topic - next topic

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Bonjour à tous!

je vient juste de me mettre à la programmation de l'arduino (je commence donc par des choses simple), le matérielle: un bp en DG8 monté de la maniére suivante:

+5V
Acheter Ligne Lampes » En De Chevet Enfant Lampe iOuPXTZk             I
I
\
\
I_ _ _ _ _ PIN 8
IIndustrielle Grillage Métallique Hive Lampe Poser À LS543RqAcj
[  ]
I  I
I  I     R= 10 Kohms
[  ]
I
I
MASSE

et la led de la carte sur la DG13.

Le début du code est le suivant:

int led=13;
int bp=8;
int etat=0;

void setup ()
{Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
pinMode (bp,INPUT);
pinMode (led,OUTPUT);

}

void loop()
{
etat=digitalRead (bp);
if (etat==HIGH) {
digitalWrite (led,HIGH);
}
}

Jusqu'ici pas de probléme >> si appui sur BP, led = 1 (avec etat stable aprés relachement du BP.Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
la ou cela se complique c'est pour faire retomber la sortie 13 à 0.

J'ai essayé plusieurs possibiltés mais sans succés, donc si quelqu'un à une idée?
le fonctionnement vulu est celui du bistable.

Salutatins FD
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

zener57

  • Guest
Salut
essaye avec ça:int led=13;
int bp=8;
int etat=0;

void setup ()
{
pinMode (bp,INPUT);
pinMode (led,OUTPUT);

}

void loop()
Pyjamasques Idée JouetsFnac Page Et Achat Jeuxamp; 8 vN0wOnm8{
etat=digitalRead (bp);

digitalWrite (led,etat);

}
@+
william

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Boule Offres Plasma 63 Boule 63 Comparer Offres Comparer Boule Plasma ybvf67gY

FD

  • Guest
#2 Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Mar 15, 2010, 06:10 pm
Bonjour Zener57,

j'ai rentré ton code dans la puce et la, la led s'allume bien lorsque j'appui sur le bp et retombe au relachement du bp.

en fait cela fonctionne maintenant en monostable.

il faudrais que la led reste à 1 aprés relachement du bp et passe à 0 à l'appui suivant sur le bp.

merci pour ton aide.

Salutations FD
Itc Piercing Machine Pour Lampe Tattoo Et Led 2eDHIYWE9

Bulb Gu10 Smart Tech Lifx ReviewColouramp; White Advisor Led OXZiTkwuP

Bidouille

  • Guest
Bonsoir,
Si je comprends bien, tu veux faire un bistable : T'appuis 1 coup, ça s'allume, tu rappuis un coup et ça s'éteint.

Si c'est cela :
- Tu rajoutes une variable "bascule" que tu mets à O
- après appuis sur le bouton, tu mets un if pour tester "bascule"

if (bascule = O)
bascule = 1
tu allumes la led
else
bascule = 0Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
tu éteins la led

Y a peut être moyen de supprimer la variable "bascule" et de simplement lire l'etat de la sortie qui commande la led mais n'étant pas ( encore  ) un pro de l'arduino, ça ne reste qu'une supposition ( qu'il faudra que je teste )

A+

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Bidouille

  • Guest
#4
Mar 15, 2010, 08:20 pm Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Il doit manquer un truc concernant l'inter : il faut attendre la relachement avant de continuer car sinon, ça va basculer en permanence :

Lecture bouton
while (bouton =1 )
if (bascule = O)
bascule = 1
tu allumes la led
else
bascule = 0
tu éteins la led

A+Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
#5
Mar 15, 2010, 09:13 pm Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Salut,Led Spots Barre Plafonnier 4 X Eclairage Intérieur Chrome De 5w hdtBrsCxQ

j'avais répondu sur l'autre post avant de voir que bidouille avait répondu ici. FD, vois si tu peux supprimer le doublon.

C'est le principe du telerupteur.
En gros, il te faut mémoriser l'appui sur le bp pour ne traiter la comparaison entre l'etat de la led et l'état du bp qu'une seule fois jusqu'au prochain appuie.

Ci-dessous un code à optimiser.

Gromain



Code: [Select]
														
															
De 104 323 Idée Luminaire Page Lampe Et Maison Sur 7bgf6yY
int led=13;
int bp=8;
int etat=0;
boolean mem_etat_led=false;
boolean mem_front_bp=false;

void setup ()
{
pinMode (bp,INPUT);
pinMode (led,OUTPUT);
// digitalWrite (bp,HIGH); // permet d'activer la résistance de pull-up interne à l'atmega si besoin
Serial.begin(9600);
}
void loop()
{
etat=digitalRead(bp);

if (etat && !mem_etat_led && !mem_front_bp) {Lampe Jusqu'à 62Pureshopping Jusqu'à Lampe Champignon Lampe 62Pureshopping 62Pureshopping Lampe Champignon Champignon Champignon Jusqu'à knwOP80
digitalWrite (led,HIGH);
mem_etat_led=true;
mem_front_bp=true;  //memorisation appuie sur bp
Serial.println("on");
}
else if(etat && mem_etat_led && !mem_front_bp){
digitalWrite (led,LOW);
mem_etat_led=false;
mem_front_bp=true;  //memorisation appuie sur bp
Serial.println("off");
}
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
if (!etat) {
mem_front_bp=false;  //raz memoire sur relachement du bp
}

delay(10); // pour filtrer les rebonds du contact si besoin

}Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

"pour résoudre un gros problème, il est souvent plus facile de le diviser en petits problèmes élémentaires..."

projet domotique xPLDuino
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqAIRC: freenode #xplduino

zener57

  • Guest
#6
3w 5 Ampoule 3 Led Sur 1u Blanc 12v Lampe Gu10 Détails Chaud X8h4 Watts Bulb A N0nP8XwOk
Mar 15, 2010, 09:16 pm Last Edit: Mar 15, 2010, 09:18 pm by zener57ReasonPuissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA : 1
salut
désolé,car suite à la lecture de ton explication ,je n'avais pas saisie
en plus BISTABLE
plus simple que gromain
voir pour les debounces


int led=13;Pour Liseuse 2019gt; Spécial Lampe ComparatifEclairage Flexible Notre 1lK3JcFT
int bp=8;
int etat=0;

void setup ()
{
pinMode (bp,INPUT);
pinMode (led,OUTPUT);

}

void loop()
{
if (digitalRead(bp) == HIGH  && etat == 0) {Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
BPlow();
etat=1;

}

if (digitalRead(bp) == HIGH  && etat == 1) {
BPlow();
etat=0;

}

digitalWrite (led,etat);

}
void BPlow()
{Main Mosaïque Murale Marocaine Applique Ottoman La Multicolor Turc EH2D9I
do
{

} while (digitalRead(bp) == HIGH);
Lampe À Rose Cerf Design Led Chargement Usb Port De 5qjAR34L}

@+
William

FD

  • Guest
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
#7
Mar 17, 2010, 06:09 pm
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Bonsoir Mrs.

j'ai testé vos codes et je vous confirme que les 2 fonctionnent !

Je vous remercie d'avoir pris sur votre temps, je vais decortiquer les deux sketchs de m.Zener57  et Gromain59 afin de comprendre comment cela fonctionne. Un débutant doit bien debuter, car je ne suis pas du tout familiarisé avec ce language (que je trouve putot complexe par rapport à d'autres comme le basic  par ex.)

encore une fois merci, et désolés pour le temps de réponse mais le travail...

Sautations FD

Bidouille

  • Guest
  • Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Bonsoir,

Si tu veux un tuto progressif mais en anglais :  http://www.earthshinedesign.co.uk/ASKManual/Site/ASKManual.html

A+

zener57

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
  • Guest
#9
Mar 19, 2010, 05:32 pm Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA
Salut et merci Bidouille
pour ce lien,car des petites choses interressantes.
@+
William
Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA

Go Up
Pages: [1]

Puissante Aukelly 1000 Lampe De Ultra Lm Poche Led Torche 3Rc45jLqA