logo elektroda
logo elektroda
X
logo elektroda

Wyświetlacz LED - Mega32

xamrex  28 17641 Fajne? (+95)


Witam,

Chciałbym Wam przedstawić projekt wyświetlacza LED oparty na ATmedze32.

Do odpalania tej matrycy użyłem jak zwykle płytki startowej od pana Mirka :D

Schemat płytki:



Zasada działania:
Do portu C uC podpiąłem tranzystory, które sterują wierszami,
a poprzez interface SPI steruję czterema 8-bitowymi układami 74HC595.

Program na uC nie jest zbyt skomplikowany, ale niestety nie zamierzam go udostępnić ze względu na to, że nie jest on rewelacyjnie napisany, a nie chce mi się go już poprawiać.

Napisałem sobie również fajną funkcję pixel(x,y).
Zapala ona poszczególne diody na wyświetlaczu, np. wywołanie funkcji pixel(1,1) zapala pierwszą diodę w pierwszym rzędzie ;)

Nie jest to może szczyt marzeń, bo płytka jest jednostronna (chciałem zaoszczędzić pieniądze - samodzielnie 2-stronnej zrobić nie potrafię) i musiałem z góry lutować przewody do diod.
Widać to na zdjęciu poniżej:



Tutaj filmik z działania płytki ;)




Widać, że pojawiają się "duszki", ale to przez telefon, którym narywałem. W rzeczywistości wszystko ładnie świeci.

Proszę o komentarze ;)
Załączniki:
  • eagle.rar (40.65 KB) Musisz być zalogowany, aby pobrać ten załącznik.

O autorze
xamrex
Specjalizuje się w: komputery, avr xamrex napisał 1668 postów o ocenie 341 , pomógł 82 razy. Mieszka w mieście Kalety. Jest z nami od 2006 roku.

Komentarze

MasMas 06 Sie 2011 16:44

A można by tak zrobić, żeby wierszami sterować nie za pomocą tranzystorów, tylko tak samo jak kolumnami, tj. przez rejestry i drivery ULN ?? Wtedy to by można było strować taką matrycą z wykorzystaniem... [Czytaj dalej]

marcin19912305 06 Sie 2011 17:16

ULN mają OC mogą tylko do masy ściągać ;) [Czytaj dalej]

xamrex 06 Sie 2011 17:24

Można by tak zrobić używając innych driverów, teraz nie pamiętam nazwy, ale są one drogie ;/ [Czytaj dalej]

BoskiDialer 06 Sie 2011 17:27

Co do użycia dodatkowej pary rejestr+ULN do wierszy: nie. Musiał by się pojawić element, który dołącza dany wiersz do VCC. Natomiast nic nie stoi na przeszkodzie, aby tranzystory, które już są obecne wysterować... [Czytaj dalej]

xamrex 06 Sie 2011 17:49

Z tego co kojarzę można by użyć UDN2982 do sterowania wierszami Ale widzę, że nie produkują więc można użyć UDN2981 [Czytaj dalej]

leadman 06 Sie 2011 18:03

Bardzo fajnie Ci to wyszło. Krytykować nie ma czego, tym bardziej że kwestia wykonania wiązała się z funduszami (ja swoje pierwsze "układziki" lutowałem na kawałku płytki pilśniowej - taki trochę lepszy... [Czytaj dalej]

xamrex 06 Sie 2011 18:15

Gdybym dał kod to i tak nikt by tego nie zrozumiał :D tak wygląda funkcja mian: int main(void){ InitSpi(); InitTimer(); SendSpi(0); napis("ELEKTRODA"); } Tutaj stworzyłem sobie tablice... [Czytaj dalej]

slawek55 06 Sie 2011 18:30

Może nie dno, ale Jest stwierdzeniem trochę obraźliwym. Ja zawsze się zastanawiałem jak takie tablice są sterowane, zwłaszcza że niektóre są na prawdę duże. [Czytaj dalej]

Matejkos 06 Sie 2011 20:09

Sądzę że autor nie chciał nikogo obrazić tym że nie zrozumiemy, chyba każdemu a przynajmniej mnie zdarza się napisać program którego działanie znam tylko jak i Bóg a po pewnym czasie to już tylko Bóg wie... [Czytaj dalej]

piotrva 06 Sie 2011 20:22

Ehh, po co I2C pakować do czegoś takiego? Drogie i mają za dużo funkcji. 74hc595 są relatywnie tanie i bardzo miło się obsługuje (3 linie do całego sterowania to chyba nie jest dużo...) i nie widzę problemu,... [Czytaj dalej]

leadman 06 Sie 2011 20:24

Heh ja też nie czuję się obrażony :) Matejkos trafił w 100% ze stwierdzeniem, że na początku jak działa program wiemy tylko my i Bóg potem tylko Bóg :). Teraz mogę się odnieść jeszcze do jednej... [Czytaj dalej]

MasMas 06 Sie 2011 20:30

Ja też uważam, że ekspandery I/O są fajne, ale tutaj nie potrzebne... Takie 2 x 8bit kosztuje ~8-10 zł. Przy takim projekcie diametralne zwiększa jego koszt. A pomysł z tymi rejestrami całkiem fajny i... [Czytaj dalej]

xamrex 06 Sie 2011 20:53

Dokładnie tak jak napisał Matejkos Napisałem ten kod na szybko i działa.. Ale zrobiłem go nie tak jak powinno się robić (w przerwaniach mam dosyć długie funkcje, a przerwania powinny być możliwie jak... [Czytaj dalej]

grala1 06 Sie 2011 21:16

Ile zajęło Ci zrobienie płytki z diodami? Trochę się przy niej nawierciłeś. [Czytaj dalej]

piotrmak 06 Sie 2011 21:33

Nie wiem czy dobrze widzę, ale chyba nie działa kilka diód po lewej stronie. Chyba, że to przewody zasłaniają. [Czytaj dalej]

tdx110 06 Sie 2011 22:13

A jaki jest maksymalny pobór prądu? Patrząc tak i zakładając że każda dioda pobiera około 20mA to po ilości diod można zobaczyć że dużo. Sprawdzałeś może? [Czytaj dalej]

xamrex 06 Sie 2011 22:45

3-4 dni :) Wszystkie świecą, przewodu muszą zasłaniać ;) Nigdy nie świecą wszystkie diody na raz ;) Są one multipleksowane, więc Maksymalna ilość diod, jaka mogłaby świecić w jednym momencie... [Czytaj dalej]

farrix 06 Sie 2011 22:58

Koledzy piszą o jakiś ekspanderach, dokładaniu rejestrów a ja pytam po co? Mega 32 kosztuje 10-12zł a ma ponad 30 linii więc mowa o zmniejszaniu ilości linii (czyt. również zwiększaniu kosztów) jest ... [Czytaj dalej]

xamrex 06 Sie 2011 23:02

Dokładnie, dlatego ja już się nie bawiłem w zmniejszanie ilości lini, Nie mniej jednak, można użyć mniejszego uC i wysterować to używając znacznie mniej linii :) [Czytaj dalej]

%}