Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Christian, > > Ich habe bei der Anpassung des Moduls für 4x16LCDs vergessen, > in der Funktion goto() etwas zu ersetzen. > Korrekt muß diese so lauten: > > { if line & 0x01 LCD_WriteCommand(0x80+(chars_per_line*(line shr 1))+pos); > else LCD_WriteCommand(0xC0+(chars_per_line*(line shr 2))+pos); > } > > Die If-Bedingung selbst stimmt. > Bei Zeile 1 und bei Zeile 3 muß der If-Teil ausgeführt werden. > Bei Zeile 2 und bei Zeile 4 muß der else-Teil ausgeführt werden. > > Dies hat folgenden Grund: > Zeile 3 ist die Verlängerung von Zeile 1 und > Zeile 4 ist die Verlängerung von Zeile 2. > > Ich werd ein Kürze eine neue Modul-Version hochladen. Bei dieser > ist goto() dann korregiert. > > Bei dem goto mit dem Bug müssten aber alle Zeichen beim 4x16 > in Zeile 3 um 4 Zeichen zu weit Rechts und nicht zu weit Links ausgegeben > werden ! > > > MfG André H. > > > > Hallo beisammen! > > > > Ich weiss nicht, ob es an mir oder meinem LCD (4x16; Displaytech 164A) liegt, > > oder ob es ein Fehler im Modul pcflcd ist. Jedenfalls gibts bei mir Probleme mit > > pcflcd.goto(); hier wird in Zeile 3, und nur in dieser, die Position falsch gesetzt... > > immer 4 Zeichen weiter links wie aufgerufen. > > > > Ich hab jetzt den Original-Code: > > > > if line & 0x01 > > { > > LCD_WriteCommand( 0x80 + ( 20 * (line shr 1) ) + pos ); > > } > > else > > LCD_WriteCommand( 0xC0 + ( chars_per_line * (line shr 2) ) + pos ); > > > > in der ersten Zeile ersetzt mit: > > > > if line == 1 > > { > > > > und jetzt funktionierts. > > Original springt CC2 ja auch bei line == 3 ins if und nicht ins else, das wirds wohl > > gewesen sein... > > > > Wär nur interessant ob das an meinem LCD liegt - und ich hab keine Lust das > > Datenblatt des Controllers zu wälzen - kennt jemand das Problem?