Witam wszystkich, od jakiegoś czasu uczę się obsługi uC Atmega8.
Umiem już trochę obsługiwać Timery, PWM, Watchdoga, SPI... itd.
Sterowanie jednym uC drugiego uC przez SPI to raczej nie problem, jednak w moje łapki dostał się mi układ PT6578LQ razem z wyświetlaczem. Wymontowane z jakiegoś taniego chińskiego radyjka.
To jest najdłuższy dokument jaki znalazłem na temat tego kontrolera lcd:
http://www.princeton.com.tw/downloadprocess/downloadfile.asp?mydownload=PT6578.pdf
I nie za bardzo się orientuję jak miało by wyglądać sterowanie nim... Bardzo proszę o pomoc w tej kwestii.
W sumie to jest prawie gotowy moduł, czyli interesuje mnie tylko co i w jaki sposób podać na złącze z drugiego obrazka po lewej stronie. Na pewno muszę podłączyć +5V i GND do zasilania procesora. Są to piny od prawej dołu pierwszy i drugi oraz na górze od prawej pierwszy. Do tego chyba +8V albo do POWER albo do LAMP+ (musi podać na VLCD). Moje takie gdybania... Niestety LCD nie da się podnieść, żeby zobaczyć dokładne połączenie.
Do obsługi SPI używam takiego prostego kodu:
Czy takim kodem komunikacja z kontrolerem lcd wogóle zostanie nawiązana?
Na koniec załączam jeszcze zdjęcia płytki z lcd i kontrolerem:
PS. Może rzucam się na za głęboką wodę, ale to jest chyba najlepszy sposób nauki
Przeczesałem internet..
I znalazłem kilka ciekawych pliczków:
pt6578.c:
display.h:
oraz display.c:
a do tego całą tablicę znaków i pozycji:
To teraz mam co rozgryzać. Jeśli jednak ktoś ma gotowca to chętnie przygarnę
Przy okazji uczę się do sesji więc może mi to trochę zająć, ale tematu nie porzucę na pewno.
Jeśli nikt nie zna odpowiedzi lub nie ma dla mnie podpowiedzi to po prostu będę w tym temacie robił zapiski z postępu prac
Trochę czasu nad rozgryzieniem tego spędziłem, i niestety się zawiesiłem... Układ powinien już działać a jednak dziad jeden nie chce działać.
Mój kod wygląda całkiem całkiem:
Specjalnie napisałem programowo wysyłanie przez SPI, kod już był tyle razy zmieniany, że czasami w komentarzu jest poprzednia wartość albo kombinowana.
Kod w obecnej postaci powinien działać.
Z podanego wyżej pliku pdf jasno wynika sterowanie tym kontrolerem. Sterowanie jest trochę zaczerpnięte z podanych przeze mnie plików, jednak większość napisałem sam lub przerobiłem pod siebie.
SPI sterowane programowo, bo raz jest wysyłane 9 bitów, raz 6, raz 4, raz 3 bity... Różnie, tak aby wszystko było jak najbardziej dopasowane do wzoru podanego w pdf.
W analizatorze stanów logicznych wszystko wygląda prawie dokładnie tak jak w datasheet...
Pierwszy obrazek przedstawia całość analizatora.
Od góry kolejno: A0 - CS (czy tez SS), A2 to MOSI, A4 - SCK, A6 - INH.
Drugi obrazek przedstawia sam początek nadawania danych, pierwsze bity inicjalizujące przedstawione w datasheet, czyli 11010010.
Trzeci przedstawia zakończenie, czyli bity inicjalizujące, bity konfiguracyjne oraz 3 bity zakańczające (101 - jak w datasheet).
Wszystko wygląda bardzo cacy... Kod działa, powinien wyświetlać cokolwiek. Jednak nie wyświetla nic.
Zarówno m8 jak i wyświetlacz są podłączone do zasilacza komputerowego, V_lcd oraz Vcc są podpięte pod 5V, do m8 idą 4 kable - SS, SCK, MOSI oraz INH.
Na drugim zdjęciu jest gniazdo, wszystko jest podpięte dokładnie tak:
- dolny rząd:
INH - COM1 (pin ostatni prawy dół),
+5 - zasilanie kontrolera,
ACC - zasilanie Vlcd
- górny rząd:
GND - masa,
CLK - SCK,
DATA - MOSI,
CE - SS.
Nie wiem czy puls dodatni na INH powinien być po każdym secie danych czy tylko po pierwszym. Ogólnie jest to wg. datash reset kontrolera.
Może ktoś coś poradzi, lub podpowie bo zaczyna mi brakować pomysłów.
Kombinuje dalej!
Umiem już trochę obsługiwać Timery, PWM, Watchdoga, SPI... itd.
Sterowanie jednym uC drugiego uC przez SPI to raczej nie problem, jednak w moje łapki dostał się mi układ PT6578LQ razem z wyświetlaczem. Wymontowane z jakiegoś taniego chińskiego radyjka.
To jest najdłuższy dokument jaki znalazłem na temat tego kontrolera lcd:
http://www.princeton.com.tw/downloadprocess/downloadfile.asp?mydownload=PT6578.pdf
I nie za bardzo się orientuję jak miało by wyglądać sterowanie nim... Bardzo proszę o pomoc w tej kwestii.
W sumie to jest prawie gotowy moduł, czyli interesuje mnie tylko co i w jaki sposób podać na złącze z drugiego obrazka po lewej stronie. Na pewno muszę podłączyć +5V i GND do zasilania procesora. Są to piny od prawej dołu pierwszy i drugi oraz na górze od prawej pierwszy. Do tego chyba +8V albo do POWER albo do LAMP+ (musi podać na VLCD). Moje takie gdybania... Niestety LCD nie da się podnieść, żeby zobaczyć dokładne połączenie.
Do obsługi SPI używam takiego prostego kodu:
Kod: C / C++
Czy takim kodem komunikacja z kontrolerem lcd wogóle zostanie nawiązana?
Na koniec załączam jeszcze zdjęcia płytki z lcd i kontrolerem:
PS. Może rzucam się na za głęboką wodę, ale to jest chyba najlepszy sposób nauki
Przeczesałem internet..
I znalazłem kilka ciekawych pliczków:
pt6578.c:
Kod: C / C++
display.h:
Kod: C / C++
oraz display.c:
Kod: C / C++
a do tego całą tablicę znaków i pozycji:
Kod: C / C++
To teraz mam co rozgryzać. Jeśli jednak ktoś ma gotowca to chętnie przygarnę
Przy okazji uczę się do sesji więc może mi to trochę zająć, ale tematu nie porzucę na pewno.
Jeśli nikt nie zna odpowiedzi lub nie ma dla mnie podpowiedzi to po prostu będę w tym temacie robił zapiski z postępu prac
Trochę czasu nad rozgryzieniem tego spędziłem, i niestety się zawiesiłem... Układ powinien już działać a jednak dziad jeden nie chce działać.
Mój kod wygląda całkiem całkiem:
Kod: C / C++
Specjalnie napisałem programowo wysyłanie przez SPI, kod już był tyle razy zmieniany, że czasami w komentarzu jest poprzednia wartość albo kombinowana.
Kod w obecnej postaci powinien działać.
Z podanego wyżej pliku pdf jasno wynika sterowanie tym kontrolerem. Sterowanie jest trochę zaczerpnięte z podanych przeze mnie plików, jednak większość napisałem sam lub przerobiłem pod siebie.
SPI sterowane programowo, bo raz jest wysyłane 9 bitów, raz 6, raz 4, raz 3 bity... Różnie, tak aby wszystko było jak najbardziej dopasowane do wzoru podanego w pdf.
W analizatorze stanów logicznych wszystko wygląda prawie dokładnie tak jak w datasheet...
Pierwszy obrazek przedstawia całość analizatora.
Od góry kolejno: A0 - CS (czy tez SS), A2 to MOSI, A4 - SCK, A6 - INH.
Drugi obrazek przedstawia sam początek nadawania danych, pierwsze bity inicjalizujące przedstawione w datasheet, czyli 11010010.
Trzeci przedstawia zakończenie, czyli bity inicjalizujące, bity konfiguracyjne oraz 3 bity zakańczające (101 - jak w datasheet).
Wszystko wygląda bardzo cacy... Kod działa, powinien wyświetlać cokolwiek. Jednak nie wyświetla nic.
Zarówno m8 jak i wyświetlacz są podłączone do zasilacza komputerowego, V_lcd oraz Vcc są podpięte pod 5V, do m8 idą 4 kable - SS, SCK, MOSI oraz INH.
Na drugim zdjęciu jest gniazdo, wszystko jest podpięte dokładnie tak:
- dolny rząd:
INH - COM1 (pin ostatni prawy dół),
+5 - zasilanie kontrolera,
ACC - zasilanie Vlcd
- górny rząd:
GND - masa,
CLK - SCK,
DATA - MOSI,
CE - SS.
Nie wiem czy puls dodatni na INH powinien być po każdym secie danych czy tylko po pierwszym. Ogólnie jest to wg. datash reset kontrolera.
Może ktoś coś poradzi, lub podpowie bo zaczyna mi brakować pomysłów.
Kombinuje dalej!
