Bei der eingeabe musst du das folgendermaßen schreiben:
_showScreenLCD_P(PSTR("Das ist die Zeile 1"),PSTR("...Zeile2"),PSTR("... Zeile 3"),PSTR("...e' scho wissn..."));
Dafür gibt es ja in der RP6ControlLib.h ein Makro, das man noch so ändern könnte:
Code:
#define showScreenLCD(__line1,__line2,__line3,__line4); ({_showScreenLCD_P((PSTR(__line1)),(PSTR(__line2)),(PSTR(__line3)),(PSTR(__line4)));})
... ich glaub das war alles was ich geändert habe
Man sollte noch 2 Dinge anpassen:
a) char lcd_tmp_buffer[17]; in char lcd_tmp_buffer[21]; ändern
b) char buffer[17]; in char buffer[21]; ändern (in der Funktion writeIntegerLengthLCD)
In der Funktion setCursorPosLCD wäre mir sympatischer, bei den Zeilennummern von 0..3 zu bleiben wie bei der ursprünglichen Lib, die die Zeilen auch ab 0 zählt (Geschmackssache!). Dann würde das so aussehen:
Code:
void setCursorPosLCD(uint8_t line, uint8_t pos)
{
pos |= 128;
if(line==1) pos += 0x20;
if(line==2) pos += 0x40;
if(line==3) pos += 0x60;
writeLCDCommand(pos);
}
_showScreenLCD_P müßte man dann auch entsprechend ändern.
Gruß Dirk
Lesezeichen