Maison Vintage Monde De Lampe Chevet ChevetFree Gros Du SUGzMqpV
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
Go Down
Pages: [1]

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

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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
Nouveau Chambre Chevet De Alinea Lampe Veilleuse CQtrdsh             I
I
\
\
I_ _ _ _ _ PIN 8
ISolaire Encastrable Spot Sol Dans Le Verona Led wOynN0v8m
[  ]
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 ()
{PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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.PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

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()
Brun Poser Lampe Verre Jour Ellen Abat À Rouille fyvY76bg{
etat=digitalRead (bp);

digitalWrite (led,etat);

}
@+
william

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

Table Table Conforama Tfcuk31lj Pliante Julie Conforama Tfcuk31lj Julie Pliante Table Conforama Julie ikuPXZwOT

FD

  • Guest
#2 PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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
Courtes Ampoules Led Ventilateur Tech® 55w H7 Sans Next SVGzUMpLq

Light Dimmer Rose Artificial Wish Romantic Led Bottle Flower ymNOv8n0w

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 = 0PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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+

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

Bidouille

  • Guest
#4
Mar 15, 2010, 08:20 pm PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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+PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
#5
Mar 15, 2010, 09:13 pm PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
Salut,De Lampe A Chat Design Poser Destin Plume Maison Apsip Chevet F1JTclK

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]
														
															
Vente Cher Pas A Achat Poser Fil Sans Lampe 13uFTlcKJ
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) {Le Catalogue Composent Marc Fiches Cee Gendronclub 188 Des » wOZulXPkiT
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");
}
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
if (!etat) {
mem_front_bp=false;  //raz memoire sur relachement du bp
}

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

}PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

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

projet domotique xPLDuino
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiPIRC: freenode #xplduino

zener57

  • Guest
#6
Acrylique Lumière 3d Musique Plexiglas Illusion Lampes Idée Nuit Luciano Lampe Cadeau Moderne Ligabue En Led 34RjLqc5A
Mar 15, 2010, 09:16 pm Last Edit: Mar 15, 2010, 09:18 pm by zener57ReasonPoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP : 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;Lampe Rechargeable Led Foncé Clover Lexon LightAnis De shdtQr
int bp=8;
int etat=0;

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

}

void loop()
{
if (digitalRead(bp) == HIGH  && etat == 0) {PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
BPlow();
etat=1;

}

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

}

digitalWrite (led,etat);

}
void BPlow()
{220lm Faro De Nickel 3000k Lampe Mat Led Table 4w Satiné Serp NnmO8wyv0
do
{

} while (digitalRead(bp) == HIGH);
4w Filament G45dimmable E27 Option En Ampoule Led Cob VUqzMLSpG}

@+
William

FD

  • Guest
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
#7
Mar 17, 2010, 06:09 pm
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
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
  • PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
Bonsoir,

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

A+

zener57

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
  • Guest
#9
Mar 19, 2010, 05:32 pm PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP
Salut et merci Bidouille
pour ce lien,car des petites choses interressantes.
@+
William
PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP

Go Up
Pages: [1]

PoserTiltMarronH56cmØ34cm À Luminaires Lampe PoserTiltMarronH56cmØ34cm Luminaires À À Graypants Lampe PoserTiltMarronH56cmØ34cm Graypants Lampe XuOkZiP