Hallo Ragnar,
also ich habe alles so versucht wie du beschrieben hast.
Aber immer dass gleiche Effekt.
Es mus was total einfaches oder banales sein!
Denn sonst hätte ich es gefunden
Ich habe auch einen ganz langen String geschrieben, im Anhang ist ein Bild davon. (a-z,A-B,0-9) an die Position LCD_setCursorPos (0,0);
Kann es sein dass wenn ich die Ram Adresse für den CGRAM aktiviere/reserviere dass die Adressierung für Cursorpositionierung auch ändert?
Hier mal das Code dazu:
Code:
// setzt den Cursor an die angegebene Position (y = Zeile, x = Spalte)
void LCD_setCursorPos(const unsigned char y, const unsigned char x)
{
// Adresse aus x und y berechnen
// Adressen sind wie folgt: Zeile 0 = 0; Zeile 1 = 64; Zeile 2 = 128; Zeile 3 = 192; Zeile 4 = 0+24; Zeile 5 = 64+24; Zeile 6 = 128+24; Zeile 7 = 192+24
unsigned char address = x + ((y % 4) << 6);
if (y > 3)
address += 24;
LCD_sendByte(address, (1<<LCD_OC1_PIN) | (1<<LCD_OC2_PIN));
}
Set Function: u.a. Adressierung des CGRAM
Code:
// auf 4-Bit-Mode umschalten
/*
SET FUNCTION MODE
input:
OC1 0
OC2 0
RW 0
DB7,DB6 1
DB5 I/O 8/4 (1 = 8 bit, 0 = 4 bit)
DB4 FONT 8/12 (1 = 5x8 fonts, 0 = 5x12 fonts)
DB3,DB2 DUTY
DB1,DB0 RAM
*/
LCD_sendByte(0xDA, 0); // DB7, DB6, DB4, DB3
grüße
Khan[/code]
Lesezeichen