-         

+ Antworten
Ergebnis 1 bis 3 von 3

Thema: I2C LCD (LCD02)

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    14.08.2004
    Ort
    Magdeburg
    Beiträge
    154

    I2C LCD (LCD02)

    Anzeige

    Hallo...,

    ich habe das LCD von Roboter-teile.de (LCD02).

    das Schreiben von Zeichen funzt jetzt... aber wie kann ich den Cursor z.b.: auf die Zeile 2 und Spalte 5 setzen?

    Hier ist die Doku zum LCD


    http://www.roboter-teile.de/datasheets/lcd02.pdf

    Hier ist mein Sourcecode (das was ich habe...)
    Code:
    //--------------------------------
    function LCDWrite (byte addr, byte reg, byte Val)
    //--------------------------------
    {
      i2c.cstart (addr);
      i2c.write (reg);
      i2c.write (Val);
      i2c.stop ();
    }
    
    //-------------------------------
    function initLCD()   // LCD - Alles löschen
    //-------------------------------
    {
    LCDWrite(0xC6,0,12);
    }
    
    //-----------------------------
    function cursorHome() // Cursor auf Line und Pos auf Home
    {
    LCDWrite(0xC6,0,1);
    }
    
    //----------------------------
    function CursorHide () // Cursor ausblenden
    //----------------------------
    {
     LCDWrite(0xC6,0,4);
    
    }
    //------------------------------------------
    function print2LCD(byte s[]) // Zeichen ausgeben
    //------------------------------------------
    {
    byte i;
     for i=0 ... s[31]-1 LCDWrite(0xC6,0,s[i]);
    }
    //----------------------------------------
    function printLCD(string s) // Einen String ausgeben
    //----------------------------------------
    {
     print2LCD(s);
    }
    
    //-------------------------------------
    function goto(byte Line,byte Pos) //setzt den Cursor an die angegeben Position
    //-------------------------------------
    { 
    // Hier sollte der CODE rein...
    }

    Wer kann mir da einen Tip geben...?


    mfg uwe

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.11.2003
    Ort
    Dresden
    Alter
    52
    Beiträge
    409
    Hallo Uwe,

    versuch mal folgendes (Code nicht getestet, aber sollte gehen):

    Code:
    //-------------------------------------
    function goto(byte Line,byte Pos) //setzt den Cursor an die angegeben Position
    //-------------------------------------
    {
      i2c.cstart (0xc6);  // addr
      i2c.write (0);   // reg
      i2c.write (3);   // command
      i2c.write (Line); 
      i2c.write (Pos);  
      i2c.stop ();
    }
    Man kann das ganze sicher auch als Array an eine alternative LCDWrite-Funktion geben, so viele Commands mit mehreren Parametern das es sich lohnt gibts aber wohl gar nicht.

    HTH und Viele Grüße
    Jörg

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    14.08.2004
    Ort
    Magdeburg
    Beiträge
    154
    Hi Joerg...


    Danke....!
    Funzt super...!

    ich hatte es ähnlich probiert, aber ebend nicht so... *g*

    Der andere Code von mir ist doch dann auch nicht richtig oder...?

    mfg uwe

+ Antworten

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •