Module Flash LED ATtiny.
Posté : ven. 13 févr. 2015 12:49
Je vous propose un module qui permet de faire flasher les LED hautes puissance du commerce, les 3W rouge de chez HK par exemple, ou tout autre module LED en 12v.
Le code est conçu pour utiliser une voie sur un inter 3P, bas/milieu/haut.
La séquence est:
-bas = LED OFF
-milieu: LED FLASH
-haut: LED ON
Mais vous pouvez vous ammusez à modifier tous ces réglages biens sûr.
Je développerai la programmation sur ATtiny dans un autre poste.
Le schéma:
Le Circuit Imprimé avec implantation des composants:
Les composants:
-1 Attiny85
-1 resistance 460 ohm (que vous pouvez la remplacer par un strap)
-un transistor 2N4401
Le code arduino pour l'ATtiny:
Le PCB en PDF est en PJ.
Le code est conçu pour utiliser une voie sur un inter 3P, bas/milieu/haut.
La séquence est:
-bas = LED OFF
-milieu: LED FLASH
-haut: LED ON
Mais vous pouvez vous ammusez à modifier tous ces réglages biens sûr.
Je développerai la programmation sur ATtiny dans un autre poste.
Le schéma:
Le Circuit Imprimé avec implantation des composants:
Les composants:
-1 Attiny85
-1 resistance 460 ohm (que vous pouvez la remplacer par un strap)
-un transistor 2N4401
Le code arduino pour l'ATtiny:
Code : Tout sélectionner
/*
RC LED CONTROL
Contrôlez une LED via une voie de la radiocommande
3 états: OFF/ON Blink/ON full
Jouez avec les valeurs ch1 (entre 1000 et 2000) pour déterminer la position des 3 états sur la voie
Jouez avec les valeurs de délais pour modifier l'état ON Blink (séquence de flash)
Sketch pour ATtiny85
DATE 09/02/2015
*/
int ch1;
int led = 0;
void setup() {
pinMode(1, INPUT);
pinMode(0, OUTPUT);
}
void loop() {
ch1 = pulseIn(1, HIGH, 25000);
//Règle les valeurs du secteur bas et haut de votre voie radio pour la séquence de flash, définie ici pour un centre sur un inter 3 voies
if ((ch1>1300)&&(ch1<1600)){
//séquence de flash, jouez a modifiez les valeurs de delay du ON et du OFF
digitalWrite(led, HIGH);
delay(30);
digitalWrite(led, LOW);
delay(40);
digitalWrite(led, HIGH);
delay(30);
digitalWrite(led, LOW);
delay(40);
digitalWrite(led, HIGH);
delay(30);
digitalWrite(led, LOW);
delay(800);}
//règle la position de la voie pour un autre état de la led, ici ON et inter 3P en position haute
else if (ch1>1600){
digitalWrite(led, HIGH);
}
//règle la position de la voie pour un autre état de la led, ici OFF et inter 3P en position basse (boucle vide led éteinte)
else {}
}