Forum: Mikrocontroller und Digitale Elektronik LCD inisialieserung Fehlt


von Otto M. (ottomuller)


Lesenswert?

Hallo Mikrocontroller Freunden,
Ich habe ein LCD module (von Electronic Assembly) 4x20 mit Controller
KS0073 und endlich habe ich text auf mein LCD aber when ich 3x die text
'Hallo' schreibe geht alles hinter dehn 12e positione auf das 2e
zeile:

Die cursor ist auch verswunden und komt nur zuruck nach das 1x
shift-left befehle, und steht dan auf 20e-stelle von 2e zeile
               12
---------------|-------
HalloHalloHallo
llo                        _   cursor auf platz 20 (after 1x
shift-eft)

(ohne DDRAM zu setzen auf 20 hex)
-----------------------


Wenn ich 4x Hallo schreibe:
               12
---------------|-------
HalloHalloHalloHallo
lloHallo                  _   cursor auf platz 20 (after 1x shift-eft)

(ohne DDRAM zu setzen auf 20 hex)
-----------------------


Wenn ich 4x Hallo und 123 schreibe:
               12
---------------|-------
HalloHalloHalloHallo
lloHallo123_              cursor steht auf normale platz

(ohne DDRAM zu setzen auf 20 hex)
-----------------------


Wenn ich 4x Hallo und 123 schreibe:
               12
---------------|-------
HalloHalloHalloHallo
lloHallo                  _  cursor steht auf  20e platz nachdem ich 4x
shift-left hat gegeben

(DDRAM gesetzt auf 20 hex hinter Hallo)
-----------------------
Und wie Sie sehn kunte: 123 ist weg !!
Ich bin schon 5 tage gesheftigt mit dat tauschen von die  '1' und
'0' leider !!
Sorry fur meinem slechtes Deutch ( komme von Amsterdam)

; Initialisierung des LCD-Displays
; fur Microchip PIC 16F684…..

InitLCD
   movlw   D'255'      ; 250 ms Pause nach dem Einschalten
   movwf   loops
   call   WAIT

   movlw   B'00000011'   ; 1 Änderung --> Maskierung für untere 4bit
   movwf   PORTC
   bsf      PORTC, LcdE
   nop
   bcf      PORTC, LcdE

   movlw   D'50'      ; 50 ms Pause
   movwf   loops
   call   WAIT

   movlw   B'00000011'   ; 2 Änderung --> Maskierung für untere 4bit
   call   Control8Bit
   movlw   D'50'      ; 50 ms Pause
   movwf   loops
   call   WAIT

   movlw   B'00000011'   ; 3 Änderung --> Maskierung für untere 4bit
   call   Control8Bit
   movlw   D'50'      ; 50 ms Pause
   movwf   loops
   call   WAIT

   movlw   B'00000010'   ; 4 - Bit setzen Änderung --> Maskierung für
untere 4bit (origineel)
   call    Control8Bit
   movlw   D'50'      ; 50 ms Pause
   movwf   loops
   call   WAIT

   movlw   B'00000001'   ; löschen und cursor home
   call   OutLcdControl
   movlw   B'00101000'   ; 5 function set, 4-bit  2-zeilig,  5x7
   call   OutLcdControl
   movlw   B'00001000'   ; 6 display off
   call   OutLcdControl
   movlw   B'00000110'   ; 7 entry mode, increment, disable
display-shift
   call   OutLcdControl
   movlw   B'00000011'   ; 8 cursor home, cursor home
   call   OutLcdControl
   movlw   B'00001111'   ; 9 display an, blinkender Cursor
   call   OutLcdControl


   return

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.