emWin is stuck in GUI_Init() api on STM32F769IDISCOVERY board

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • emWin is stuck in GUI_Init() api on STM32F769IDISCOVERY board

      I am trying to get emWin to work with mbed-os but it seems to be stuck in infinite loop inside GUI_Init() (can confirm the same over debugger).
      I know for certain that the MCU is not stuck in hard fault since I have another thread running which is flashing an led.

      Details:
      I am trying to run a basic hello world test with main thread writing to GUI and another thread flashing an led.
      Snippet of code below:

      main()
      {
      GUI_Init();


      /* Enable Window Manager Multibuffering */
      WM_MULTIBUF_Enable(1);


      GUI_Clear();
      GUI_SetFont(&GUI_Font32_1);
      GUI_DispStringAt("Hello world!", (LCD_GetXSize()-100)/2, (LCD_GetYSize()-20)/2);


      while(1) { GUI_X_Delay(1000);}
      }

      I have provided the necessary os apis for timing and multitasking in GUI_X_OS.c
      I am linking the compiled object files to STemWin_CM7_OS_wc32_ARGB.a to create the MCU image.
      I am calling the STM32 CRC hw module initialization api before calling GUI_Init().
      The GUI memory assigned to STemWin library using GUI_ALLOC_AssignMemory() in GUIConf.c is word aligned.

      Is there anything I am missing here?
      Is the STemWin library (STemWin_CM7_OS_wc32_ARGB.a) tightly coupled to FreeRTOS?

      The post was edited 4 times, last by akonwar ().

    • Hi,

      Did you tried the solutions provided in these threads:

      HardFalt when rendering PNG (STM32F746g disco)
      Memory usage

      If the MPU for the RAM area, where the GUI_MEMORY and the frame buffer is placed in, is not configured properly it might come to strange behavior.

      Regards,
      Sven
      Please read the forum rules before posting.

      Keep in mind, this is *not* a support forum.
      Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
      Should you be entitled to support you can contact us via our support system: segger.com/ticket/

      Or you can contact us via e-mail.