+ All Categories
Home > Documents > Fading led (led care se aprinde si se stinge progresiv) Web viewSe numeste puls cu modulare (puls...

Fading led (led care se aprinde si se stinge progresiv) Web viewSe numeste puls cu modulare (puls...

Date post: 30-Jan-2018
Category:
Upload: truongkien
View: 235 times
Download: 1 times
Share this document with a friend
3
Fading led (led care se aprinde si se stinge progresiv) Task : Un led care sa se aprinda si sa se stinga progresiv Echipament necesar: Microcontroler/ un led (albastru)/ un rezistor de 100 Ohm/ Breadboard/ fire Setup: Un Arduino este un microcontroler digital. El stie doar “5 Volt on” si “5 Volt off” pe output ( adica pe un pin definit ca output, putem avea doar 5 V sau 0 V). Dar pentru a modifica luminozitatea ledului, trebuie sa variem tensiunea de iesire. De exemplu, la 5V ledul lumineaza stralucitor, la 4V lumineaza ceva mai putin si asa mai departe. ACEST LUCRU NU ESTE POSIBIL PE PINI DIGITALI.
Transcript
Page 1: Fading led (led care se aprinde si se stinge progresiv) Web viewSe numeste puls cu modulare (puls with modulation – PWM). PWM permite o tensiune variabila. De fapt, pinul primeste

Fading led (led care se aprinde si se stinge progresiv)

Task : Un led care sa se aprinda si sa se stinga progresiv

Echipament necesar: Microcontroler/ un led (albastru)/ un rezistor de 100 Ohm/ Breadboard/ fire

Setup:

Un Arduino este un microcontroler digital. El stie doar “5 Volt on” si “5 Volt off” pe output ( adica pe un pin definit ca output, putem avea doar 5 V sau 0 V). Dar pentru a modifica luminozitatea ledului, trebuie sa variem tensiunea de iesire. De exemplu, la 5V ledul lumineaza stralucitor, la 4V lumineaza ceva mai putin si asa mai departe.

ACEST LUCRU NU ESTE POSIBIL PE PINI DIGITALI.

Dar exista o alta optiune. Se numeste puls cu modulare (puls with modulation – PWM). PWM permite o tensiune variabila. De fapt, pinul primeste pulsuri de 5V intermitent. Cu cat pauza dintre pulsurile este mai mare (de ordinul milisecundelor), tensiunea medie “simtita” de pin este mai mica; astfel, se pot obtine practic tensiuni cuprinse intre 0V si 5V – ca si cum tensiunea ar fi variabila. Nu toti pini de pe placa permit functia PWM. Acesti pini sunt notati pe placa Arduino cu semnul “~” in fata numarului.

Page 2: Fading led (led care se aprinde si se stinge progresiv) Web viewSe numeste puls cu modulare (puls with modulation – PWM). PWM permite o tensiune variabila. De fapt, pinul primeste

La treaba!

Code:

int LED=8; //cuvantul “LED” inlocuieste numarul 8.

int brightness=0; // cuvantul “brightness” inlocuieste valoarea emisa de PWM.

// Numarul “0” este doar valoarea initiala.

int fading=5; // “fading” reprezinta viteza de variatie a luminozitatii.

void setup()

{ //setup incepe aici.

pinMode(LED, OUTPUT); //pinul LED se considera output.

}

void loop()

{ //aici incepe partea loop a programului.

analogWrite(LED, brightness); //functia analogWrite este folosita pentru a activa //PWM output pe pindul LED. Valoarea PWM este salvata in cuvantul “brightness”. In //acest caz esta “0”.

brightness=brightness + fading; //acum modificam valoarea PWM output. Adaugam //valoarea fading la valoarea brightness. In acest caz: brightness = 0 + 5. Noua //valoare a lui brightness nu va mai fi “0” de acum incolo, ci “5”. Deci dupa primul //loop, brightness are valoarea 5, dupa al doilea loop are valoarea 10, 15…etc.

delay(25); //ledul va sta aprins o perioada scurta de timp: 25 milisecunde. Daca //micsoram aceasta valoare, modificarea luminozitatii ledului se va produce mai //rapid.

if(brightness==0 || brightness==255) {

fading= -fading;

} // Iata semnificatia acestei comenzi: Daca brightness atinge valoarea 0 sau 255, //valoarea fading se schimba din pozitiva in negativa sau invers. Motivul este //urmatorul: pe masura ce programul loop este reluat, ledul va lumina din ce in ce mai //puternic. Dar cand PWM ia valoarea 255, atunci s-a atins valoarea maxima. Din //acest punct, ledul ar trebui sa lumineze din ce in ce mai putin. Din aceasta cauza //fading ia valoare negativa, ceea ce inseamna ca atunci cand in program se modifica //brightness ( “ brightness=brightness+fading”) , valoarea acestuia o sa scada, iar //ledul va lumina din ce in ce mai putin. Exemplu: “brightness=255+(-5)”. Noua //valoare a lui brightness va fi 250. Dupa urmatorul loop va fi 245, .., etc. Cand //brightness atinge valoarea 0, fading va deveni din nou pozitiv.

} //cu aceasta paranteza, se finalizeaza partea loop

Page 3: Fading led (led care se aprinde si se stinge progresiv) Web viewSe numeste puls cu modulare (puls with modulation – PWM). PWM permite o tensiune variabila. De fapt, pinul primeste

Recommended