Niestety z kompilacją są duże problemy. W kodzie pierwotnym ze strony jest parę błędów i mnóstwo ostrzeżeń. Kod nie jest napisany w "ładnym stylu". Aby poprawnie skompilować należy ustawić plik "makefile" jako plik odniesienia do kompilacji (jest już on poprawnie stworzony). Do kompilacji i przerabiania kodu używałem avr studio 4.
Udało mi się skompilować i wgrać do układu, tylko mam problem, nie działają przycisk wyboru efektu, START/ STOP- tylko układ tak jak by sam załadował 13 efekt ( połączenie wszystkich efektów) W czym leży problem?
Udało mi się skompilować i wgrać do układu, tylko mam problem, nie działają przycisk wyboru efektu, START/ STOP- tylko układ tak jak by sam załadował 13 efekt ( połączenie wszystkich efektów) W czym leży problem?
Problem leży w tym że pliki które skompilowałeś odnoszą się do pierwotnego projektu ze strony http://www.instructables.com/id/LED-Cube-4x4x4/. Autor tamtego projektu napisał program tak jak teraz kostka Ci świeci. Ja zmieniłem kod dla swoich potrzeb (m.in obsługa klawiszy itd.) Nie udostępniam plików źródłowych tylko gotowy hex. który możesz wgrać i sprawdzić (plik znajduje się w paczce w pierwszym poście). Jeśli chciałbyś jednak skorzystać z moich plików źródłowych (poprawić/dodać coś) to napisz na priv.
Jestem początkujący zarówno w elektronice jak i AVR. Wcześniej działałem na typowych aplikacjach dla PC. Dlatego jeśli komuś wyda się moje pytanie głupie - dziękuję za zrozumienie.
Całość spokojnie rozumiem, ale jak zawsze mam problem z elektryczną częścią.
Mam pytanie odnośnie zasilania i dostępnego prądu na diodę.
W projekcie jest wspomniane że na diode może być dostarczane 7mA lub 12,5mA.
I tutaj moje pytanie:
1. Na pinie możesz mieć 5V a wg. schematu masz rezystory 220 Ohm.. z prawa Ohma daje to maksymalny prąd = 2,27mA więc nie rozumiem jak osiągasz 7mA.
2. Jeśli zapalasz 1 kolumnę - zasilanie masz ze wspólnego PIN'a więc 2,27mA/4
tranzystory działają jako klucze.
Bardzo proszę o jakieś objaśnienie bardzo mi to pomoże - pewnie czegoś nie wziąłem pod uwagę tylko nie wiem czemu bo że projekt działa to widać:)
1. Na pinie możesz mieć 5V a wg. schematu masz rezystory 220 Ohm.. z prawa Ohma daje to maksymalny prąd = 2,27mA więc nie rozumiem jak osiągasz 7mA.
Obawiam się, że post może być usunięty ze względu na brak wiedzy przez kolegę. Postaram się jednak coś wyjaśnić:
Zacznijmy od tego że mikroprocesor ATmega16 potrafi wypuścić maksymalny prąd wielkości 200mA. Trzeba też mieć to na uwadze. Oczywiście na pinie mamy 5V, na rezystorach mamy 220 Ohm. Obliczając taki układ, nie możesz liczyć prądu nie uwzględniając rezystora jako wymuszenia. Zaczynamy od tego że na jednej diodzie LED będzie spadek (2.2V -> taki dokładnie jest przy mojej kostce). Mając na uwadze napięciowe prawo Kirchhoffa suma napięć na opornikach musi być równa napięciowi zasilania. Więc po bilansie 5V-2.2V uzyskujemy 2.8V na rezystorze. I teraz można wyliczyć prąd jaki przepłynie(wymusi) przez rezystor, 2.8V/220Ohm daję nam ≈ 12,5 mA. Taki prąd przepływa przez jedną diodę!. Jeśli zapalamy wszystkie diody na warstwie to działają wszystkie piny więc mamy 12,5mA*16pinów = 200mA, czyli maksymalnie wykorzystujemy mikroprocesor. Oczywiście tranzystor działa jako "klucz", wybiera odpowiednie warstwy, które mają być podłączone. Jednak nie ma żadnego dzielenia tego prądu na 4 diody. Każda jedna dioda zapala się tylko raz! Program jest tak napisany, że przełączanie warstw odbywa się z częstotliwością 240 razy na sekundę! (wykorzystujemy przerwania mikroprocesora) więc nie ma mowy o jakimkolwiek migotaniu ;)
A co do 1 kolumny to założyłem pracę ciągłą tak oczywiście przy 240Hz ludzkie oko tego nie ogarnie więc rozumiem że nie ma potrzeby zapalania 4 "warstw" na raz.
Sterowanie jest analogicznie jak segmentowym wyświetlaczem LED... zapomniałem, że muszę też uwzględnić spadek napięcia na diodzie:) eh.
Witam wszystkich. Chciałbym pochwalić się w tym temacie projektem który zrealizowałem przy pomocy Zlata_n'a. Trochę inaczej i nowatorsko niż inne projekty wymienione wyżej ale to mój pierwszy projekt tego typu, także jestem początkującym elektronikiem. Po złożeniu wszystkich podzespołów według schematu kostka od razu działała poprawnie. Niestety nie umiem jeszcze programować układów więc wyręczył mnie Zlata_n któremu bardzo dziękuje :D :D
Dokładnie to opisałem na początku postu oraz częściowo na 3 stronie. Przypomnę szybko jeszcze raz.
Anody diod doprowadzone są do nóżek mikroprocesora (8 nóżek na port A i 8 nóżek na port C]. W każdym punkcie lutowniczym 4 diody połączone są w pionie anodami. Katody natomiast są doprowadzone do 4 tranzystorów. Tranzystory sterują całymi warstwami (16 nóżek od każdej katody połączonych jest razem na warstwie). Poprzez zastosowanie "multipleksacji", za pomocą jednego przewodu (z tranzystora), mamy możliwość sterowania aż 16 diodami. Pozwala to nam na kontrole nad pojedyncza dioda bez konieczności stosowania aż 64 indywidualnych połączeń. Teraz już tylko za pomocą kodu możemy wymyślać i tworzyć dowolne sekwencje, jakie tylko możemy sobie wyobrazić. Każda jedna dioda zapala się tylko raz! Program jest tak napisany, że przełączanie warstw(tranzystorów) odbywa się z częstotliwością 240 razy na sekundę! (wykorzystujemy przerwania mikroprocesora) więc nie ma mowy o jakimkolwiek migotaniu :)
Witam. Mógłbyś dodać screena z ustawieniami fuse bitów dla Atmega32?
Nie wiem dokładnie jak je ustawić a nie chce zablokowac uP.
Ustawienia fuse-bitów dla ATmegi 16 i 32 są takie same w tym projekcie. Pisałem już wcześniej o nich. Polecam do tego program AVR Burn-O-Mat.
Ustawienia w tym programie:
Witam bardzo podoba mi się twoja kostka chciałbym zbudować swoja. Panowie jest z was ktoś w stanie pomoc w budowie takiej kostki? moj email rmx1987(malpa)wp.pl
Witam! Zbudowałem sobie taką kosteczkę, narazie na płytce stykowej, działa wszystko ładnie, pięknie. Zbudowałem to w jakieś 10h z przerwami :)
A teraz do rzeczy. Chcę sobie przenieść to na płytkę PCB tylko, że w Eagle widzę "górę" i "dół" płytki na raz i wszystko mi się na siebie nakłada. Jak zrobić, żeby widzieć tylko tą stronę "niebieskią" czyli dół i osobno stronę górną? Bez tego nie ruszę z wytrawianiem płytki, bo muszę osobno wydrukować górę i dół.
Tak własnie widać tą płytke w Eagle:
Liczę na szybką pomoc i pozdrawiam :)
Po prostu musisz najpierw ukryć tą górną warstwę i wydrukować sobie samą dolną, i tak samo z górną, a zrobić to możesz w "View" > "Display/hide layers"
Dla dolnej warstwy
Ooo dzięki wielkie, działa :)
Wiesz może jak zrobić tego zdjęcie w JPEG w 1:1 żeby przenieść to na inny komputer, bo u siebie nie mam drukarki laserowej, a u kogoś nie chce instalować eagle?
EDIT: Do drukowania dać wszystko na czarno, czy nie trzeba? Chodzi o to żeby sie ładnie toner przylepił do płytki.
Musi być na czarno. Najlepiej jest wydrukować do pdf-a i z tego później drukować już na kartce, więc w ustawieniach drukowania wybierz sobie coś takiego
ooo własnie o to mi chodziło ! PDF'a nikt nie zmieni więc bedzie 1:1 i nie ma możliwości pomyłki :)
Ten program jest świetny i ludzie na elektrodzie :) Wysyłam parę punktów :)
EDIT: Proszę o sprawdzenie tych schematów, mam nadzieje że nie powyłączałem potrzebnych rzeczy.
Dla ułatwienia innym chętnym wytrawienia sobie płytki do led cube'a, który jest opisany w tym temacie załączam gotowe schematy w PDF'ie strony dolnej i górnej w oryginalnych rozmiarach. Wystaraczy kliknać "Drukuj", a bedziemy mieć płytkę w rzeczywistych rozmiarach.
Strona górna jest w odbiciu lustrzanym, tak żeby po złożeniu pokryła się z dolną.
Można sobie je wydrukować nałożyć na siebie do środka stroną zadrukowaną, dać pod światło i powinny sie pokryć :)
Zamieszczam dodatkowo moją wersje tej płytki, czyli zostały wywalone rzeczy, które moim zdaniem są zbędne: diody, przycisk "CHECK" i "RESTART", listwa goldpinów do programowania oraz parę napisów.
Ogarnąłem już ten fajny programik "Eagle", więc jakby ktos chciał cos zmienić w tych płytkach np. dodac jakiś napis, zmienić miejsce przycisków to służę pomocą. Wystarczy kliknąc magiczny przycisk "GG" i napisać do mnie :)
Pozdrawiam Wojciech :)
Płytka wytrawiona i uzbrojona :)
Nie wyszło za ładnie, ale pierwszy raz robiłem taką rzecz.
Parę miejsc musiałem poprawić lakierem do paznokci, bo nie wszędzie toner nie przylepił się tak jak trzeba,
ale najważniejsze, że działa. :)
Miałem to szczęście, że górna warstwa idelanie zgrała się z dolną i nie musiałem kombinować.
Płytka jest niestety dość cienka i się ugina, ale czymś ją usztywnię :)
Sama kostka jest zmasakrowana, bo musiałem ją wydrzeć z podstawki drewnianej, w której nóżki diod zalałem klejem z pistoletu, ale kiedyś może kupie niebieskie diody i zrobię to już na porządnie.
A teraz fotki:
Ogólnie to zrobienie takiej płytki jest bardzo proste, udało mi się za pierwszym razem, a nigdy tego jeszcze nie robiłem, dodatkowo lutowanie na takiej płytce podzespołów to czysta przyjemność :D
Tak więc polecam wszystkim zrobienie sobie takiego czegoś :)
Pozdrawiam Wojciech :)
wojtek97, płytka wyszła spoko, kolor diod też ładnie nadaje efekt, lecz samo wykonanie kostki jest "kiepskie". rozumiem że to pierwsza taka kostka, kolejne będą już na pewno dokładniejsze. gratuluje jeszcze raz ;)