marți, 21 aprilie 2020

Lumini stroboscopice fara comanda "delay" (2)

   Am facut mici modificari la programul luminilor stroboscopice pentru a avea 10 pasi, nu 8 ca inainte, de aseemenea am schimbat si ledul galben din articolul anterior, cu unul albastru, pentru a simula luminile politiei.
    Schema este, bineinteles identica: 
    Folosim aceeasi metoda ca in articolul anterior, care a fost prezentata mai bine in articolul Clipire led fara comanda "delay" adica ne folosim, in primul rand de functia millis(), care indica in milisecunde timpul de la pornirea microcontrorului de pe placa Arduino. Creem o variabila care va fi un numar mic, daca impartim millis() la 1000 aflam timpul in secunde, daca impartim la un numar mic sunt parti de secunda.
   Pentru a avea 10 pasi de aprindere, ne folosim de calculul restului unei impartiri la numarul de pasi, daca avem 10 pasi, ca in programul stroboscopic_wo_delay2.ino, restul poate fi 0, 1, 2, 3, 4, 5, 6, 7, 8 sau 9.
- pasul 1: restul e 1, adica stare%10 = 1, exemplu: 21%10 = 1, se aprinde ledul 1
- pasul 2: restul e 2, adica stare%10 = 2, ambele leduri stinse
- pasul 3: restul e 3, adica stare%10 = 3, se aprinde ledul 1
 - pasul 4: restul e 4, adica stare%10 = 4, ambele leduri stinse
 - pasul 5: restul e 5, adica stare%10 = 5, ambele leduri stinse
- pasul 6: restul e 6, adica stare%10 = 6, se aprinde ledul 2
- pasul 7: restul e 7, adica stare%10 = 7, ambele leduri stinse
- pasul 8: restul e 8, adica stare%10 = 8, se aprinde ledul 2
- pasul 9: restul e 9, adica stare%10 = 9, ambele leduri stinse
 - pasul 0: restul e 0, adica stare%10 = 0, ambele leduri stinse
    In filmuletele urmatoare s-a folosit si programul stroboscopic_wo_delay.ino. cel in 8 pasi prezentat in articolul anterior:
lumini stroboscopice (2)
stroboscopic lights (2)


Un comentariu: