logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak podłączyć wyświetlacz LCD SSC2M16ULGY-03? Problemy z uruchomieniem

catcher 07 Lut 2007 23:40 5090 5
  • #1 3542200
    catcher
    Poziom 11  
    Posty: 27
    Ocena: 1
    Witam,

    Kupiłem wyświetlacz LCD. Niestety nie bardzo mogę go uruchomić.
    Z tyłu ma takie numery:
    SSC2M16ULGY-03
    2K04-50
    Z googla mam marne wyniki.

    Wyprowadzenia ma w 2 rzędach z boku. Teoretycznie ma zaznaczony 1, 2, 13 i 14 pin. Ale jak podłączyłem do niego w ten sposób: http://www.e-dsp.com/how-to-use-a-lcd-with-your-electronic-devices/
    to wyglądało to trochę tak jakby następowało spięcie: procesor nie odpowiada, a ekranik się nie świeci.

    Wtedy wpadłem na wątek na elektordzie: https://www.elektroda.pl/rtvforum/topic348426.html i zamieniłem te piny, tak jakby były w lustrzanym odbiciu. Wyglądało to trochę lepiej, tzn. procesor działa, i wyświetlacz się świeci (od razu po włączeniu układu do zasilania). Z tym, że nadal efekt jest marny, bo na wyświetlaczu pojawiają się na chwile kwadraty i to tylko w górnym rzędzie, ale procesor nadal pracuje. O czym to może świadczyć?

    Jak mam znaleźć jakiś opis tego LCDka, bo google wyrzuca marne wyniki?
    Czy jest on może zgodny z HD44780, czy można to jakoś wywnioskować po tych numerach?
    Jak uruchomić tego LCDka?

    Dzięki za pomoc.
    Pozdrawiam,
    Michał[/b]
  • #2 3542351
    mirekk36
    Poziom 42  
    Posty: 9195
    Pomógł: 964
    Ocena: 2289
    Cytat:
    bo na wyświetlaczu pojawiają się na chwile kwadraty i to tylko w górnym rzędzie


    to jesteś już prawie w domu ;) .... te kwadraty na górze oznaczają, że wyświetlacz nie został jeszcze zainicjalizowany i przeważnie tak się zachowuje zwykle dwuwierszowy LCD

    teraz tylko pozostaje ci wykryć jakie są wyjścia - spróbuj znaleźć jakiś podobny i podobnie podłącz wejścia D0-7 oraz sterujące
  • #3 3542369
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Jest zgodny z HD44780
  • #4 3543106
    catcher
    Poziom 11  
    Posty: 27
    Ocena: 1
    mirekk36 napisał:
    to jesteś już prawie w domu ;) .... te kwadraty na górze oznaczają, że wyświetlacz nie został jeszcze zainicjalizowany i przeważnie tak się zachowuje zwykle dwuwierszowy LCD

    teraz tylko pozostaje ci wykryć jakie są wyjścia - spróbuj znaleźć jakiś podobny i podobnie podłącz wejścia D0-7 oraz sterujące


    Czyli znaczyło by to, że oznaczenia pinów są źle ponumerowane? Jak juz mówiłem z tylu wyświetlacza mam oznaczone piny 1, 2, 13 i 14 i podlaczyłem wbrew tym oznaczeniom i coś zaczęło działać.

    Mam tylko taki problem, że nie mam innych wyśiwtlaczy LCD. Czy ma ktoś może jakiś schemat podączenia i działający program, żebym był pewien, że wszystko poza wyświetlaczem działa.

    Dzięki.
    Pozdrawiam,
    Michał
  • #5 3605406
    catcher
    Poziom 11  
    Posty: 27
    Ocena: 1
    Witam,

    Zdobyłem w końcu opis tego LCD. Gdyby komuś był potrzebny to go załączam.

    Ale ja nadal mam problem z tym LCD nie mogę go uruchomić.
    Podłączyłem i wygląda tak jakby się nie inicjował. Jak przekręcę potencjometrem (10K) maksymalnie w jedną stronę to widać jakby jeden rządek pulsował cały czas.
    Proces incjalizacji przeprowadziłem jak w załączonym pdfie.
    Dodam jeszcze, że ekranik zasilam z tego samego źródła co procesor, może obciążenie jest za duże.

    Macie jakieś pomysły?

    Pozdrawiam,
    Michał
    Załączniki:
    • LMC-SSC2M16-03.pdf (320.53 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 3605927
    monsinior
    Poziom 17  
    Posty: 162
    Pomógł: 18
    Ocena: 7
    Podłącz według kawałka tego schematu, możesz podłączyć go np. do jakiejś '51 zamieszczam jeszcze procedury inicjujące
    
    LCD_INIT: 
      MOV A,#0FH			; inicjacja wyswietlacza LCD 
      LCALL CZEKAJ			;opoznienie 15 ms czas w akumulatorze
      CLR RW			;RW==0 zapis do LCD
      CLR RS			;RS==0 zapisujemy komendy do wyswietlacza LCD
      MOV R0,#3			;licznik petli
      PETLA: SETB E
      ANL  LCD,#09CH		;linie (D7-D4) 0011 Function Set
      CLR E				;opadajace zbocze zapisuje dana do LCD
      MOV A,#6
      LCALL CZEKAJ                    ;opoznienie 6 ms
      DJNZ R0,PETLA		       ;petla wykona sie 3 razy
      SETB E
      ANL LCD,#094H			;interfejs 4-bitowy (D7-D4) 0010
      CLR E
      MOV A,#01H			
      LCALL CZEKAJ			;opoznienie 1ms
      MOV A,#28H			;function set (4-bitowa,2 wiersze,5*7 znak)
      LCALL ZAPISZ_KOMENDE_LCD
      MOV A,#08H			;wyswietlacz OFF
      LCALL ZAPISZ_KOMENDE_LCD
      MOV A,#0CH			;wlaczenie wyswietlacza
      LCALL ZAPISZ_KOMENDE_LCD	
      MOV A,#06H			;po wpisaniu znaku inkrementacja kursora, przesow kursora w prawo
      LCALL ZAPISZ_KOMENDE_LCD
      LCALL MOJE_ZNAKI_LCD		;skok do procedury dodawania wlasnych znakow do LCD
    RET
    
    CZEKAJ:
      MOV R3,A			;procedura opozniajaca o czas zadany w akumlatorze w ms 
      L1: MOV R2,#10
      L2: MOV R1,#45
      L3:DJNZ R1,L3
      DJNZ R2,L2			; 940 cykle to jest okolo 1 ms dokladnie 1024us
      DJNZ R3,L1			;[(45*2)*10+10*3)]*R1+R1*3+1
    RET
    
    ZAPISZ_KOMENDE_LCD:  
      CLR RS   		;zerujemy RS bo zapisujemy komende do LCD procedura zapisu komendy z akumlatora do LCD
      LCALL ZAPISZ_DO_LCD
    RET
    
    LICZBA_NA_LCD:		;liczba jest w akumulatorze 
      PUSH ACC		;akumlator na stos
      SWAP A		;zamien polowkami akumulator
      LCALL BCD_TO_ASCI	;zmien dolna polowe akumlatora BCD na ascii
      LCALL ZAPISZ_ZNAK_DO_LCD
      POP ACC		;zdejmij akumlator ze stosu
      LCALL BCD_TO_ASCI
      LCALL ZAPISZ_ZNAK_DO_LCD
    RET
    
    BCD_TO_ASCI:			;zamiana liczby BCD na ASCII
    ANL A,#0FH			
    ADD A,#030H
    RET
    
    ZAPISZ_DO_LCD: 
      PUSH ACC		;procedura zapisu danej do wyswietlacza (dana w akumulatorze) 
      CLR RW		;zerujemy RW bo zapisujemy do LCD
      SETB E		;stan wysoki na lini E
      ANL A,#0F0H		;empty low
      CLR C			
      RRC A			;przesun akumlator w prawo
      ANL LCD,#087H 	;wyzeruj bity D7-D4 w porcie LCD
      ORL LCD,A		;odwzorowuje na liniach D7-D4 starsze 4 bity liczby przeslanej w akumulatorze do procedury
      CLR E			;opadajace zbocze na E zapisuje dana do wyswietlacza
      POP ACC		;przywroc poczatkowa wartosc akumulatora
      SWAP A		;zamien polowkami akumulator
      SETB E		;stan wysoki na E
      ANL A,#0F0H		;empty low
      CLR C			
      RRC A			;przesun akumulator w prawo
      ANL LCD,#087H		;wyzeruj bity d7-d4 w porcie LCD
      ORL LCD,A		;odwzorowuje na liniach D7-D4 mlodsze 4 bity liczby przeslanej w akumulatorze do procedury
      CLR E			;opadajace zbocze zapisuje dana do wyswietlacza			
      MOV A,#02H 			
      LCALL CZEKAJ		;odczekaj okolo 2 ms
    RET			;powrot z procedury
    
    ZAPISZ_ZNAK_DO_LCD: 
      SETB RS     ;procedura zapisu znaku z akumlatora do pamieci obrazu wyswietlacza LCD RS
      LCALL ZAPISZ_DO_LCD
    RET
    
    ZAPISZ_TEKST_DO_LCD: 
      MOV R6,#00H	;procedura zapisu tekstu do wyswietlacza LCD 
    PP: 
      MOV A,R6				
      MOVC A,@A+DPTR			;przeslij bajt z pamieci kodu do akumulatora
      JZ KONIEC_ZAPISU			;jesli bajt rowny zero to koniec zapisu
      LCALL ZAPISZ_ZNAK_DO_LCD
      INC R6					
      AJMP PP				;skocz na poczatek petli 
      KONIEC_ZAPISU: RET
    
    MOJE_ZNAKI_LCD: 
      MOV A,#40H			;ustaw tryb zapisu znakow do pamieci generatora znakow
      LCALL ZAPISZ_KOMENDE_LCD
      MOV DPTR,#ZNAKI_LCD		;wskaznik na wlasne znaki (ZNAKI_LCD)
      LCALL ZAPISZ_TEKST_DO_LCD
      MOV A,#80H			;powroc do trybu zapisow znakow do pamieci obrazu
      LCALL ZAPISZ_KOMENDE_LCD
    RET
    


    Niestety nie ma tu sprawdzania flagi zajętości wyświetlacza ale do sprawdzenia wyświetlacza napewno ci to wystarczy

    Kwarc 11059200
    Pozdrawaim Mariusz M.
    Załączniki:
    • Jak podłączyć wyświetlacz LCD SSC2M16ULGY-03? Problemy z uruchomieniem lcd.JPG (65.01 KB) Musisz być zalogowany, aby pobrać ten załącznik.
REKLAMA