- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 3 von 3

Thema: LCD Steuerung auf AT91SAM7x

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    10.03.2007
    Beiträge
    15

    LCD Steuerung auf AT91SAM7x

    Anzeige

    LiFePo4 Akku selber bauen - Video
    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

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    08.04.2004
    Ort
    Regensburg
    Alter
    44
    Beiträge
    55
    Hio,

    teste doch mal
    Code:
    for (j=0; j < 8; j++) {
          if ((data & (unsigned char)(0x01U<<j)) == 0) {
             //mask the j-th bit and set or clear it
             AT91F_PIO_SetOutput(arm_porta, (unsigned char)(0x01U << j));
          } else {
             AT91F_PIO_ClearOutput(arm_porta, (unsigned char)(0x01U << j));
          }
    Evtl. macht der Compiler bei der Optimierung was falsch?

    LG
    Martin

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    10.03.2007
    Beiträge
    15
    Habs bereits gelöst - aber danke für die Hilfe! Da waren mehrere Denkfehler im Code (siehe: http://wiki.galdo.de/doku.php?id=mic...r:arm_code_lcd)

    Trotzdem vielen Dank für die Hilfe
    Galdo

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests