cancel
Showing results for 
Search instead for 
Did you mean: 

STemWin - WM_SetCreateFlags(WM_CF_MEMDEV) caused problem

Darski.Piotr
Associate II
Posted on November 28, 2016 at 14:29

Hello,

I have a problem with my application based on STemWin lib 5.32. Without  WM_SetCreateFlags(WM_CF_MEMDEV) works very fine but there is some flikering. After activation of use memory device 1-2 minuts program is halted. 

How to avoid it? 

regards,

PD
2 REPLIES 2
slimen
Senior
Posted on November 28, 2016 at 14:56

Hello,

Are you following the

https://www.segger.com/downloads/emwin/UM03001_emWin5.pdf

user manual about WM_SetCreateFlags (WM_CF_MEMDEV)

''The flag WM_CF_MEMDEV is frequently used to enable Memory Devices on all windows.Setting create flags is permitted before GUI_Init() is called. This causes the backgroundwindow to be also affected by the create flags.

''

Regards

Darski.Piotr
Associate II
Posted on November 28, 2016 at 15:18

Hi,

yes I read this issue. Please see my ''main'':int main(void)

{  

  /* STM32F4xx HAL library initialization:

       - Configure the Flash prefetch, instruction and Data caches

       - Configure the Systick to generate an interrupt each 1 msec

       - Set NVIC Group Priority to 4

       - Global MSP (MCU Support Package) initialization

     */

  HAL_Init();  

  

  /* Configure the system clock to 180 Mhz */

  SystemClock_Config();

  MX_GPIO_Init();

  MX_DMA_Init();                 // !!! by PD

  MX_I2C3_Init();                // !!! by PD   

  MX_I2C1_Init();                // !!! by PD   

  MX_TIM1_Init();                // !!! by PD

  MX_TIM3_Init();                // !!! by PD

  MX_TIM4_Init();                // !!! by PD

  MX_TIM8_Init();                // !!! by PD

  MX_USART1_Init();              // !!! by PD

  MX_FMC_Init();                 // !!! by PD

  FT5206_CTP_BSP_PB_Init();      // !!! by PD  

  MX_RTC_Init();                 // !!! by PD  

  /***********************************************************/

  HAL_TIM_Base_Start_IT(&htim1);

  HAL_TIM_Base_Start_IT(&htim3);

  HAL_TIM_Base_Start_IT(&htim4);  

  HAL_TIM_Base_Start_IT(&htim8);  

  /***********************************************************/

  VARIABLE_INIT();

  

  

  

  /* Init the STemWin GUI Library */

  BSP_SDRAM_Init(); /* Initializes the SDRAM device */

  __CRC_CLK_ENABLE(); /* Enable the CRC Module */

  GUI_Init();

  BSP_Config();

  

  GUI_Initialized = 1;  

  /* Activate the use of memory device feature */

  //WM_SetCreateFlags(WM_CF_MEMDEV);      //here is commented

  MainTask();

    

  while (1)

  {

  }

}

WM_SetCreateFlags(WM_CF_MEMDEV) is after GUI_INIT.

I have STM32F429BIT6 and 4 windows , rest (8) are created and deteted when aplication needs.  

regards,

PD