
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> Hallo zusammen > Ich arbeite mich gerade in die LCD Ansteuerung bei der Open Mini ein. > Dazu meine für Euch sicherlich banale Frage: > Wie kann man bei dieser Art der Ansteuerung den Cursor dazu veranlassen 1,2,3,4,5 Zeichen weiter > nach rechts zu springen sodas ich ein Wort auch zentriet schreiben kann ohne viel Leerzeichen > zu schreiben > > ...........Define Line1 &H80 : Define Line2 &HC0 : Define Line3 &H94 : Define Line4 &HD4 'Für 4x20 LCD > 'Define Line1 &H80 : Define Line2 &HC0 : Define Line3 &H90 : Define Line4 &HD0 'Für 4x16 LCD Mit diesen Hexwerten gibst Du ja schon die Cusor Positionen vor, jeweils für das erste Zeichen jeder Zeile Wenn Du z.B.erst LCD_CMD &H83 schreiben würdest und dann einen Text ausgibst, dann Startet der Text auf dem 4.Zeichen der 1.Zeile des LCD Displays. Die entsprechenden Änderungen in Deinem Programm mach Bitte selber Gruß Jürgen > > gosub LCD_init > #start > LCD_CMD Line1 > LCD_put nk > LCD_put ek > LCD_put xk > LCD_put tk > LCD_put space > LCD_put A_ > > LCD_CMD Line2 > LCD_put S_ > LCD_put ek > LCD_put kk > LCD_put uk > LCD_put nk > LCD_put dk > LCD_put ek > LCD_put nk > :LCD_put dpp > LCD_put Space > LCD_Zahl second > > goto start > > > > '---LCD-Routinen---------- > #LCD_init > LCD_Port = &h38 > > 'Function Set 8 Bit > LCD_PORT = &B10000011 > Pulse LCD_e > pause 5 > LCD_PORT = &B10000011 > Pulse LCD_e > > LCD_PORT = &B10000011 > Pulse LCD_e > > ' Function Set 4 Bit > LCD_PORT = &B10000010 > Pulse LCD_e > > LCD_CMD &h28 > LCD_CMD &h0C > LCD_CMD &h06 > #LCD_CLS > LCD_CMD &h01 > pause 5 > return > > #LCD_CMD > pop LCD_Param > LCD_RS=0 > goto LCD_Write > > #LCD_put > pop LCD_Param > LCD_RS=1 > #LCD_Write > LCD_Port = (LCD_Port and &hF0) or (LCD_Param SHR 4) > Pulse LCD_e > LCD_Port = (LCD_Port and &hF0) or (LCD_Param AND &H0F) > Pulse LCD_e > return > > '#LCD_Print ' Zeichenfolge ausgeben. > 'pop x > 'looktab LCDtext,x,LCD_Param > 'while LCD_Param > ' LCD_Put LCD_Param > ' x=x+1 > ' looktab LCDtext,x,LCD_Param > 'wend > 'return > > #LCD_Zahl > pop y > if y > 99 then LCD_Put ( (y / 100) + &H30) else LCD_Put Space > if y > 9 then LCD_Put (((y mod 100) / 10) + &H30) else LCD_Put Space > LCD_Put ((y mod 10) + &H30) > return |
| Antwort schreiben |