Da bi napravili sat velikih dimenzija koristiti ćemo trake LED dioda koje ćemo podijeliti u segmente veličine oko 20 cm.
Za kontrolu svakog segmenta možemo koristiti po jedan digitalni izlaz Arduina.Npr. za segment A koristimo izlaz D2, za segment B izlaz D3 ….
Spajanjem 7 segmentnog displaya na ovakav način vrlo brzo ćemo dosegnuti ograničenje od 13 digitalnih izlaza koje ima Arduino. Da bi doskočili ovom problemu koristiti ćemo jedan od Shift registara ( 74HC595) koji će nam omogućiti da povežemo veći broj 7 segmentnih znamenki korištenjem samo 3 digitalna izlaza Arduina.
Ovdje preuzmite Arduino sketch koristenje_shift_registra.ino kojim ćemo pokazati osnovnu funkcionalnost shift registra.
Odlična strana shift registara je ta da preko samo 3 žice upravljamo prijenosom podataka u veći broj registara ili u prijevodu preko samo 3 žice upisujemo podatke u 2, 3 ili više znamenki digitalnog sata.
Ako imamo 2 shift registra kao što je prikazano na gornjoj slici i želimo da nam se na 2 7segmentna displaya prikaže broj 47 onda ćemo u sketchu dodati samo još jednu novu naredbu shiftOut koja je zadužena za prijenos podataka u shift registre. Postupak prijenosa ide tako da se prvo naredbom shiftOut pošalje znamenka 7 a nakon nje znamenka 4. Slanjem znamenke 4 u 1. shift registar znamenaka 7 biti će “izgurana” u 2. registar.
Dodavanjem RTC čipa našem projektu moći ćemo na našem velikom digitalnom satu prikazivati i točno vrijeme.
Ovdje se nalazi sketch koji koristi RTC chip i prikazuje sekunde točnog vremena na 2 7segmentna displaya. shift_sat_sekunde.ino