Cześć! Właśnie skończyłem mój drugi projekt ( pierwszym była płytka startowa na Atmegę328 ) czyli kostka led 4x4x4. Widziałem na internecie masę sposobów realizacji tego zadania które zazwyczaj bazowały na dużych mikrokontrolerach ale postanowiłem podnieść sobie poprzeczkę i pomyślałem że wystarczą mi 3 piny do rejestrów przesuwnych więc postanowiłem zrealizować to za pomocą Attiny85 (+ kwarc 16MHz ) i 3 rejestrów przesuwnych. Projekt tworzyłem samemu od początku, nie wzorowałem się na żadnym internetowym projekcie ( oprócz konstrukcji samej kostki ) więc zdaję sobie sprawę że jest prawdopodobnie nieoptymalnie zaprojektowany. Mimo to, jest to mój 2 projekt i jestem z niego strasznie dumny !
Kod obsługujący kostkę ( kod znajduje się na dole posta, w załączniku). _cube.c - obsługa przerwania zmieniającego stany na wyjściach rejestrów przesuwnych. _moves.c - funkcje odpowiadające ze animacje kostki.
Zasada działania jest taka: 4 elementowa tablica globalna (2bajty) każda odpowiada kolejnym warstwom kostki. Obsługa przerwania cyklicznie wystawia stan "0" na katodach kolejnych warstw ( pozostałe - stan "1") jednocześnie wystawiając na anody bity z odpowiedniego 2-bajtowego elementu tablicy. Czas trawnia danej animacji opóźniany jest zwykłym _delay_ms(). Przykładowo - chciałbym zapalać na sekundę warstwę 1 i 3 a potem zapalić tylko warstwę 2 i 4 również na sekundę, kod wygląda tak:
Jako początkujący mogę jedynie pogratulować . Sam snuję pomysł na wyświetlacz z matryc ledowych na rejestrach przesuwnych lecz ciągły rak czasu powoduje odkładanie hobby na dalszy tor. Czy o rejestrach przesuwnych oglądałeś Mirka wykład czy może sam doszedłeś co i jak? Projekt może nie wydaje się skomplikowany ale satysfakcja budowy od 0 jest nie do opisania. Powodzenia w dalszych projektach.
Dzięki za dobre słowa Na filmik Mirka o rejestrach jeszcze nie trafiłem, wystarczające informacje o nich dostałem na zajęciach na studiach na przedmiocie "układy cyfrowe" i to w zasadzie ten przedmiot mnie wkręcił w zabawę mikrokontrolerami. Bardzo fajny pomysł! Też mam pod ręką 4 matryce 8x8 niestety bez sterowników więc w najbliższym czasie będę chciał zrobić z nich jedną dużą na jakimś własnym patencie Pozdrawiam i oby udało Ci się znaleźć sporo wolnego czasu!
Mam w planie zrobić obudowę ale raczej tylko po to żeby kostka się nie uszkodziła przy przenoszeniu, przechowywaniu. Ale co raz bardziej ciągnie mnie do zrobienia kostki 8x8x8 i myślę że jeżeli ją zrobię to wtedy piękne, drewniane pudełko będzie konieczne
Dołączył(a): 08 sie 2014 Posty: 21 Lokalizacja: Gliwice
Pomógł: 0
Bardzo fajnie wyszła Ci ta kostka. Dobry pomysł z wykorzystaniem rejestrów i mini uC. Sam zabieram się do takiej 8x8x8 ale ciągle brakuje chęci i czasu do lutowania ledów
Dołączył(a): 17 sie 2013 Posty: 3797 Lokalizacja: Grudziądz
Pomógł: 143
Jako obudowę ledów polecam dymioną pexe efekt byłby nieziemsko przestrzenny no wideo zaskakuje niby taka kostka za którą zabieram się od roku ale efekt niesamowity
Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość
Nie możesz rozpoczynać nowych wątków Nie możesz odpowiadać w wątkach Nie możesz edytować swoich postów Nie możesz usuwać swoich postów Nie możesz dodawać załączników