Hallo,

ich habe ein Problem mit der LCD-Steuerung. Wenn ich manuell die benötigten Datenbits setze klappt alles wunderbar, will ich das ganze aber in der Form automatisieren, dass ich nur einen Hex-Wert in die Funktion geben kann, macht das Display ganz komische Sachen (Zeigt schwarze / weiße Blöcke an, oder Zeichen, die ich nicht hex-codiert habe).

Wer hat eine Idee?

Code:
	unsigned char data;
	data = 0x11;
	
	AT91F_PIO_SetOutput(arm_portb, lcd_rs);		//data mode
	AT91F_PIO_ClearOutput(arm_portb, lcd_rw);
	for (j=0; j < 8; j++) {
		if ((data & (1<<j)) == 0) {
			//mask the j-th bit and set or clear it
			AT91F_PIO_SetOutput(arm_porta, (1 << j));
		} else {
			AT91F_PIO_ClearOutput(arm_porta, (1 << j));
		}
	}
	enable_lcd();
Beim ARM kann man leider nicht auf den ganze Port zugreifen, so wie ich das weiß... - deswegen mach ich das bitweise...

Hat jemand eine Idee?

Danke GALDO