Page
Stránky / Súčiastky ku Arduinu / 74HC595 Posuvný register /
ShiftPWM je knižnica, ktorý využíva reťazenie obvodov 74HC595 na ovládanie väčšieho množstva LED. Primárne je určená na ovládanie RGB LED, ale nie je problém ju používať ani s jednofarebnými LED. Knižnica sa nachádza na stránke http://www.elcojacobs.com/shiftpwm/.
Postupujte takto:
Ako prvý príklad som napísal program, ktorý nastaví každú z ôsmich diód na konkrétnu hodnotu jasu. Diódy sú v jase odstupňované približne po 50. Program je v súbore hc595_led_shiftpwm.ino. Kód si môžete stiahnuť z GitHub.
unsigned char val[8]={
255,200,150,100,80,60,40,0};
void setup() {
...
for(int i=0;i<8;i++)
{
unsigned char v=val[i];
ShiftPWM.SetOne(i,v);
}
}
Na príklade je vidno, že všetku prácu obstará funkcia SetOne, ktorá nerobí nič iné, iba postupne nastaví jas každej diódy.
Ako druhý som napísal program, ktorý vytvára efekt padajúceho snehu. Je to modifikácia predchádzajúceho príkladu, iba sú upravené hodnoty jasu tak, aby bol začiatok reťazca jasnejší a zvyšok tmavší, čo lepšie vystihne samotný tvar padajúcej vločky. Program je v súbore hc595_led_shiftpwmmoving.ino. Kód si môžete stiahnuť z GitHub.
unsigned char val[8]={
255,200,120,100,80,20,5,0};
int x=0;
void loop() {
for(int i=0;i<8;i++)
{
int idx=x+i;
if(idx>7) idx-=8;
unsigned char v=val[idx];
ShiftPWM.SetOne(i,v);
}
x++;
if(x>7) x=0;
delay(100);
}
Keďže je to na predstavivosť trošku náročnejšie, vytvoril som kratšie video, z ktorého je jasné, čo má daný program robiť.
Nasledujúce príklady sú napísane pre dva posuvné registre, ktoré ovládajú 16 LED. Podrobnosti o prepojení dvoch registrov sa nachádzajú na stránke reťazenie posuvných registrov.
Na obrázku je vidno, že viac diód dáva priestor pre slobodnejšiu tvorbu. V tomto prípade sú to dva postupne sa zhasínajúce rady, ktoré sa blížia ku stredu. Program je v súbore hc595_led_shiftpwm16.ino. Kód si môžete stiahnuť na GitHub.
Pre dynamické experimenty som napísal dva programy:
Pomocou knižnice ShiftPWM sa dajú ovládať aj RGB LED diódy. Pretože na ovládanie ôsmich LED diód potrebujeme tri posuvné registre 74HC595, skladanie na skúšobnom poli je dosť nepraktické. Ak si chcete zopakovať tieto experimenty so mnou, môžete si objednať dve dosky, na ktoré si prispájkujete potrebné súčiastky.
Pokiaľ je pre vás SMD technológia príliš drobná, môžete si to poskladať aj na skúšobnom poli, ale budete na to potrebovať veľké množstvo prepojovacích vodičov. Treba iba zopakovať zapojenie podľa schémy na oboch doskách.
Následne môžete vyskúšať tieto dva experimenty:
18.01.2016