Jste zde

Poraďte prosím s LCD 1x16

Snažím se už měsíc uvést do provozu koupené LCD .Jedná se o toto http://www.gme.cz/cz/-p513-176.html  a nevím jak na to program který jsem několikrát měnil nic s lcd nedělá.Použil jsem 4-bit komunikaci s připojenými vodiči E a RS

piny pro datové bity DB0-DB4 jsem propojil se zemí

Program je následující(některé řádky jsem použil z nalezeného zdrojáku):

        LIST P=16F84A, R=DEC
        INCLUDE    <P16F84A.INC>
        __CONFIG _PWRTE_ON & _WDT_OFF & _XT_OSC & _CP_OFF

RAM    EQU        H'0C'        ; definice 1. registru pameti pro 16F84A
TMP0    EQU        RAM+3        ; registr pro cekaci smycku
TMP1    EQU        RAM+4        ; registr pro cekaci smycku
TMP3    EQU        RAM+6        ; registr pro ulozeni stavu portu B
TMP4    EQU        RAM+7        ; registr pro ulozeni obsahu W

#DEFINE E        PORTB,4        ; definice bitu Enable pro obsluhu LCD
#DEFINE RS        PORTB,5        ; definice bitu RS pro obsluhu LCD
    ORG    0x000
    bcf    STATUS,RP0
    clrf    PORTA
    clrf    PORTB
    BSF STATUS,RP0
    MOVLW B'00000000'
    MOVWF TRISB
    bcf    STATUS,RP0
; inicializace LCD
    CALL    CEK20MS        ; cekani na pripraveny LCD
    MOVLW    B'0011'    ; 4b mod, 2 radky, font 5x8
    CALL    ZAPISIN

    call CEK2MS
    MOVLW    B'0011'    ; 4b mod, 2 radky, font 5x8
    CALL    ZAPISIN

    call CEK2MS
    MOVLW    B'0011'    ; 4b mod, 2 radky, font 5x8
    CALL    ZAPISIN

    call CEK2MS
    MOVLW    B'0010'    ; 4b mod, 2 radky, font 5x8
    CALL    ZAPISIN

    call CEK2MS

    MOVLW    B'00100000'   
    CALL    ZAPIS

    call CEK2MS

    MOVLW    B'00001111'   
    CALL    ZAPIS

    call CEK2MS

    MOVLW    B'00000110'   
    CALL    ZAPIS

    call CEK2MS

    MOVLW    B'00000001'   
    CALL    ZAPIS
    goto    MAIN

ZAPISIN    MOVWF    TMP4            ; ulozeni W do pomocneho registru TMP4
    bsf    PORTB,3
    btfss    TMP4,3
    bcf    PORTB,3

    bsf    PORTB,2
    btfss    TMP4,2
    bcf    PORTB,2

    bsf    PORTB,1
    btfss    TMP4,1
    bcf    PORTB,1

    bsf    PORTB,0
    btfss    TMP4,0
    bcf    PORTB,0

    BSF    E                ; zapis dat do LCD
    BCF E
    CALL    CEK2MS
    RETURN

ZAPIS    MOVWF    TMP4            ; ulozeni W do pomocneho registru TMP4
    bsf    PORTB,3
    btfss    TMP4,7
    bcf    PORTB,3

    bsf    PORTB,2
    btfss    TMP4,6
    bcf    PORTB,2

    bsf    PORTB,1
    btfss    TMP4,5
    bcf    PORTB,1

    bsf    PORTB,0
    btfss    TMP4,4
    bcf    PORTB,0

    BSF    E   
    nop            ; zapis dat do LCD
    BCF E
    CALL    CEK2MS

    bsf    PORTB,3
    btfss    TMP4,3
    bcf    PORTB,3

    bsf    PORTB,2
    btfss    TMP4,2
    bcf    PORTB,2

    bsf    PORTB,1
    btfss    TMP4,1
    bcf    PORTB,1

    bsf    PORTB,0
    btfss    TMP4,0
    bcf    PORTB,0
   
    BSF    E
    nop                ; zapis dat do LCD
    BCF E
    CALL    CEK2MS
    RETURN
CEK2MS    MOVLW    0x36
    MOVWF    TMP1
aa  MOVLW    0x0B
    MOVWF    TMP0
bb  DECFSZ    TMP0,1
    GOTO    bb
    DECFSZ    TMP1,1
    GOTO    aa
    RETURN

CEK20MS    MOVLW    0x20
    MOVWF    TMP1
cc    MOVLW    0xCF
    MOVWF    TMP0
vv  DECFSZ    TMP0,1
    GOTO    vv
    DECFSZ    TMP1,1
    GOTO    cc
    RETURN

MAIN
    bsf    RS
    movlw    B'01110101'
    call ZAPIS
    bcf    RS
    goto    MAIN
    end

fotoPředem děkuju za rady.

Forums: 

nazdar,
ja mam presne tento lcd panel
a ja som robil chybu v tom, ze som vobec nepripojil ten odporovy trimer na jas,

tj, vsetko som mal dobre len jas je bez toho trimra na nulovej hodnote,

cize ked ho zapojis tak ho vytiahni a zrejme toto bude jediny problem

ku kodu sa vyjadrit momentalne neviem, ja som
pouzil nejaku C-ckovu kniznicu

pozrel som sa na to moje zapojenie
a nemam ten model ktory mas ty ...
je to jeden z prvych 1x16 bez podsvetlenia

ale k podstate: ten riadiaci vstup vytiahne najvyssi kontrast v mojom pripade ked je na GND, postupnym zvysovanim napatia sa kontrast znizuje a pismena uplne zmiznu asi pri napati 1V.

z toho co si pisal sa mi zda ze ho mas pripojeny na Vcc cez odpor ????
tym padom by si spolahlivo stiahol kontrast ( to je lepsi vyraz ..nie jas ako som pisal predtym ) tak, ze nevidis nic.