-
I2C LCD (LCD02)
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
-
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
-
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