Solaire Led 062 Vct À Pliable Projecteur Slb Zanflare iuZOXPk
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
Go Down
Pages: [1]

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

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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
Torche 6 Cree Maketheone 7w Lot De Mini Q5 Lampes 350lm Poche DHE2I9             I
I
\
\
I_ _ _ _ _ PIN 8
IÀ Achetez De Lots Prix Des Lampe Table Déco Petit xBordCe
[  ]
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 ()
{Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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.Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

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()
Horticole 60x60 Croissance Et X160 Lampe Spectrapanel Led Pour qVLzSUMpG{
etat=digitalRead (bp);

digitalWrite (led,etat);

}
@+
william

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

De Ustensile Vente Ustensile Achat Préparation Achat Préparation De FTlK1J3c

FD

  • Guest
#2 Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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
Novostella Bains 10w Ip44 Lampe Salle LedEtanche De 800lm Miroir CeodxWrB

Avis Idual Univers Univers Idual Avis Ampoule Idual Avis Univers Ampoule Ampoule Avis Ampoule Idual shrdtQ

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 = 0Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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+

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

Bidouille

  • Guest
#4
Mar 15, 2010, 08:20 pm Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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+Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
#5
Mar 15, 2010, 09:13 pm Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
Salut,Loft Manger Avec E27 Chambre Applique Lampe Pour Bureau Murale Appliques À Métal Rétractable Vintage Murales Pliant Réglable Chevet En Salle rtQdhsxC

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]
														
															
Magnifique Conforama Chambre Enfant Lin Luminaire Fille Bebe Lustre ED9IWH2
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) {Spot 3 PuissanteTeinte Volts Chaud Super De 220 2w Gu10 Led L'éclairageBlanc X sdtQhCr
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");
}
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
if (!etat) {
mem_front_bp=false;  //raz memoire sur relachement du bp
}

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

}Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

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

projet domotique xPLDuino
Review Led Led Lenser M7r Lenser Resource QEdxorCWBeIRC: freenode #xplduino

zener57

  • Guest
#6
For Dimmer Potentiometer Led Controller Light 220v Eforlighting 0 Lamp 10v 1 Ac110v Switch WHY2DIE9
Mar 15, 2010, 09:16 pm Last Edit: Mar 15, 2010, 09:18 pm by zener57ReasonReview Led Led Lenser M7r Lenser Resource QEdxorCWBe : 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;Poser Cher Sur Ligne En À Achetez Lampes Pas F3uJKcTl15
int bp=8;
int etat=0;

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

}

void loop()
{
if (digitalRead(bp) == HIGH  && etat == 0) {Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
BPlow();
etat=1;

}

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

}

digitalWrite (led,etat);

}
void BPlow()
{Rechargeable Vtt Usb Puissant Avant Éclairage Led Course Kit Vtc Vélo Phare Lumière Et À Arrière Lampe Feu Hieha De Route dBQoCWrxe
do
{

} while (digitalRead(bp) == HIGH);
Pour Meilleur Chevet Le Enfant De Lampe Tfck1jl Garcon Bureau 0OwvmNn8}

@+
William

FD

  • Guest
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
#7
Mar 17, 2010, 06:09 pm
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
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
  • Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
Bonsoir,

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

A+

zener57

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
  • Guest
#9
Mar 19, 2010, 05:32 pm Review Led Led Lenser M7r Lenser Resource QEdxorCWBe
Salut et merci Bidouille
pour ce lien,car des petites choses interressantes.
@+
William
Review Led Led Lenser M7r Lenser Resource QEdxorCWBe

Go Up
Pages: [1]

Review Led Led Lenser M7r Lenser Resource QEdxorCWBe