AnsweredAssumed Answered

LCD Settings on STM32F429I-Disco

Question asked by geiger.daniel on Dec 23, 2013
Latest reply on Jan 6, 2014 by leppie
Hello together,

I try to get to work the STM32F4-Discovery-Board with the LCD-Display. I have the code of the graphic-workshop from ST. In this code the STemWin-Library of segger is used without the source code, only the library.
In the example application the external SDRAM is used as frame buffer at the memory location 0xD0000000. This example works fine so far.
So I want now for my application to use the internal memory as frame buffer on 0x20000000 I put the default variables to 0x10000000 (64k) but than there is noc picture on the LCD any more. The programm goes to a hard fault after the call of the function GUI_Init(), there is a meory access error.
In the GUIConf.c-File following initializations were made:

#define GUI_NUMBYTES  (1024 * 136)    // x KByte

#if defined ( __CC_ARM   ) 
  U32 HeapMem[1024 * 1024] __attribute__((at(0xD0100000)));
#elif defined ( __ICCARM__ ) 
  #pragma location=0xD0100000
  static __no_init U32 HeapMem[1024 * 1024];
#elif defined   (  __GNUC__  ) 
  U32 HeapMem[1024 * 1024] __attribute__((section(".HeapMemSection")));

U32 extMem[GUI_NUMBYTES / 4];

I changed no memory location in the conf-file and the external SDRAM is still there, I only change the definition of the framebuffer from 0xD0000000 to 0x20000000.

The problem is, that if I comment out the GUI_Init()-function there is no picture on the LCD. My intension is to use the internal memory as frame-buffer I only want to use the LCD in 565-format, so the internal SRAM should be enough.

A second thing in the example application is, that format odf the LCD is portrait but I want to use it in landscape-format.
What changes do I have to do?