Forum: Mikrocontroller und Digitale Elektronik Discoveryboard, LCD zeigt falsche farben an


von Steggesepp (Gast)


Lesenswert?

Hallo miteinander,
Vorab: Ich bin recht unerfahren in der Nutzung von HALs und BSPs und bin 
mich da gerade etwas am Einarbeiten, wie man damit am Besten umgeht.

Ich habe das Discovery STM32F429 Board und nutze die von ST zur 
Verfügung gestellten "CubeF4" Treiber  HALs  BSPs.

Mein aktuelles Problem ist kurz zusammen gefasst:
Im Debug mode zeigt er immer die falschen Farben an (Schwarz = Weiß, 
Blau = Gelb usw.). Sofern ich die Software auf dem Board ohne Debugmodus 
starte, funktioniert es, wenn ich nur "kurz" die Reset Taste drücke, 
aber funktioniert fehlerhaft wenn ich länger auf der Reset Taste bleibe.

Ich nutze ein von CubeF4 zur Verfügung gestelltes "Template" als Start 
für mein Programm. Es wird zuvor z.B. die SystemClock auf 180Mhz 
angehoben etc.

Ich weiß jetzt natürlich nicht genau was ich euch alles an Codeschnipsel 
zeigen soll, damit man mir überhaupt helfen kann.

die main aufs minimum abgespeckt:
1
  if(BSP_LCD_Init() != LCD_OK)
2
  {
3
    printf("LCD INIT FAIL"); //will be shown in debugwindow
4
    while(1);
5
  }
6
  BSP_LCD_LayerDefaultInit(LCD_FOREGROUND_LAYER, LCD_FRAME_BUFFER);
7
  BSP_LCD_LayerDefaultInit(LCD_BACKGROUND_LAYER, LCD_FRAME_BUFFER+BUFFER_OFFSET);
8
  
9
  BSP_LCD_SelectLayer(LCD_FOREGROUND_LAYER);
10
  BSP_LCD_SetBackColor(LCD_COLOR_DARKGRAY);
11
  BSP_LCD_SetTextColor(LCD_COLOR_BLACK);
12
  BSP_LCD_DisplayOn();
13
  while (1)
14
  {
15
    //HAL_Delay(50);
16
    BSP_LCD_Clear(LCD_COLOR_BLACK);
17
  }
18
}


Die Farbwerte stehen korrekt im RAM drin. Da scheint irgendwas mit der 
Synchronisierung zw. Microcontroller und Bildschirm nicht zu stimmen?


Danke schonmal fürs lesen.

von Steggesepp (Gast)


Lesenswert?

Ah mist ich hätte mich zuvor einloggen sollen dass ich nochmal 
bearbeiten kann:

Ich nutze KEIL uVision 5

von Raphael G. (steggesepp)


Lesenswert?

Jetzt bin ich aber eingelogged :) Sorry für die drei Posts nacheinander!

Das Problem liegt irgendwie an dem Gyroscope BSP welches ich davor 
initialisiere. Wenn ich das entferne läuft der Bildschirm einwandfrei.

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.