Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterowanie Tablicą LED 16x16x9 na 74LS574

Pawel_max 06 Wrz 2013 22:50 2889 4
  • #1 06 Wrz 2013 22:50
    Pawel_max
    Poziom 10  

    Witam,przypadkiem trafiła mi się tablica led 9 paneli 16x16 led ,niestety uszkodzony jest procesor sterujący 89c51. Odtworzyłem schemat jednego z paneli,wszystkie są takie same ,jedyna różnica to konfiguracja adresu,w pierwszym z nich wszystkie wejścia Q 74688 są na masie,w każdym następnym na jeden z 8 pinów Q podawane jest 5v. Niestety nie mogę trafić na jakikolwiek opis czy wskazówki dotyczące sterowania w takim układzie z zatrzaskami 574 zarówno w linii wierszy jak i kolumn.
    Widać dla nich również osobne linie zegara (kierunek?).
    Generalnie chciałbym się dowiedzieć w jaki sposób można doprowadzić aby określony piksel (dioda) zapaliła się.
    Z tego co już wiem można sterować diodami z multipleksowaniem lub bez,pytanie który sposób lepszy.Być może ktoś spotkał się z podobnym układem sterowania i mógłby pomóc.Nie ukrywam że bawiłem się w Bascomie dlatego będę pisał raczej w tym języku.

    Schemat jednego z paneli led .

    Sterowanie Tablicą LED 16x16x9 na 74LS574

    Będę wdzięczny za jakąkolwiek pomoc.

    1 4
  • #3 11 Wrz 2013 19:22
    Pawel_max
    Poziom 10  

    Ok,zrobiłem nowy sterownik z ATMEGA32,mogę wyłączać albo włączać poszczególne kolumny lub wiersze ale jakoś nie mogę pojąć jak tym sensownie sterować,z taką konstrukcją nie spotkałem się w sieci.W sumie wszystko leci przez 2 porty ośmiobitowe zarówno kolumn jak i wierszy,sterowanie odbywa się włączeniem linii CLK raz dla wierszy a raz dla kolumn.Dla ułatwienia ćwiczę na jednym panelu 16x16 z adresem 0,kwestię adresowania już przerobiłem więc nie będę miał z tym problemów.

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Zapalając kolejne bity odpowiednie kolumny gasną.
    Np. , kolumny:
    Portc = &B10000000 -gaśnie 1 kolumna
    Porta = &B10000000 -gaśnie 9 kolumna
    wiersze:
    Portc = &B10000000 -gaśnie 1 wiersz
    Porta = &B10000000 -gaśnie 9 wiersz

    Wiem że przy multipleksowaniu timer jest lepszym rozwiązaniem niż pętla ale na razie chciałbym to jakoś ogarnąć i tu właśnie mam problem.W jaki sposób wyświetlić litery czy zdefiniowane znaki.
    Coś mi "dzwoni" ale za bardzo nie wiem gdzie :D
    Pozdrawiam.

    0
  • #5 12 Wrz 2013 13:33
    Pawel_max
    Poziom 10  

    Multipleksowanie zrobione ,miałem problem z wyświetlaniem wiersza bo zawsze zapalał się nie ten co potrzeba tylko o jeden do przodu.Okazało się że najpierw trzeba wpisać informację o położeniu wiersza a dopiero później włączyć zegar.Mogę teraz zapalić określoną diodę na tablicy ,ale jest inny problem który przeczuwałem że się pojawi.O ile na jednym panelu diody świecą w miarę jasno to po zaadresowaniu wszystkich czyli wykonaniu multipleksowania po kolei na każdym z nich diody świecą już bardzo słabo co spowodowane jest dłuższym czasem ich kolejnego wyłączenia .Coś robię źle ale nie bardzo wiem co.Wyjściem z sytuacji byłoby pozostawienie zaświeconego panela podczas multipleksowania kolejnych albo wpisywanie równocześnie wszystkich 144 kolumn ale w tej konstrukcji chyba nie da rady...Program Wygląda na razie tak:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Dla podanego kodu wyświetla się ukośna linia (/) na każdym z 9 paneli zapalana od lewego dolnego rogu ,niestety diody świecą bardzo słabo co nie występuje w przypadku wyświetlania tylko na jednej tablicy 16x16 (po ominięciu adresowania).
    Informacje na porcie A i C ,linia Clk oraz linia włączenia clk dla wierszy są takie same dla każdej tablicy,różnica jest tylko w linii clk kolumn którą można włączyć po wybraniu adresu danego panelu 16x16.Teoretycznie można pociąć ścieżki na panelach i dodać zasilacz ,podający na emitery wierszy np.12v wtedy powinno być lepiej ale skoro kiedyś to świeciło przy zasilaniu 5v to znaczy że program nie pracuje tak jak powinien.
    Dodatkowo występuje delikatne świecenie kolejnej diody po włączonej właściwej ,ale świecą one na tyle słabo że można to pominąć.

    0