EMWIN initialization failure

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

  • EMWIN initialization failure

    hello
    i am trying to use EMWIN on my EFM32TG210F32 (4k ram, 32k flash) however when i call the GUI_Init() i get a region `FLASH' overflowed error
    when i build.




    1) how can i solve this? can i "thin" the GUI_Init?
    meaning remove some functions from it?
    because i dont need alot of the functions, just need some basic text\animation


    my LCD is LS013B7DH03
  • Hi,

    in the file GUIConf.c a memory area gets dedicated to emWin. Try to put the array used for this into another region, like external RAM.

    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.
  • Hi,

    in GUIConf.c it might look like this:

    C Source Code

    1. #include "GUI.h"
    2. #include "BSP_GUI.h"
    3. /*********************************************************************
    4. *
    5. * Defines
    6. *
    7. **********************************************************************
    8. */
    9. //
    10. // Define the available number of bytes available for the GUI
    11. //
    12. #define GUI_NUMBYTES 0x180000
    13. //
    14. // Place GUI RAM into a section in RAM
    15. //
    16. static U32 aMemory[GUI_NUMBYTES / 4] __attribute__ ((section (".GUI_RAM")));
    17. /*********************************************************************
    18. *
    19. * Static code
    20. *
    21. **********************************************************************
    22. */
    23. /*********************************************************************
    24. *
    25. * Public code
    26. *
    27. **********************************************************************
    28. */
    29. /*********************************************************************
    30. *
    31. * GUI_X_Config
    32. *
    33. * Purpose:
    34. * Called during the initialization process in order to set up the
    35. * available memory for the GUI.
    36. */
    37. void GUI_X_Config(void) {
    38. //
    39. // Assign memory to emWin
    40. //
    41. GUI_ALLOC_AssignMemory(aMemory, GUI_NUMBYTES);
    42. }
    Display All


    With '__attribute__xxx' we place the array into a section called GUI_RAM. This section is declared in the linker file and lays in the external RAM.

    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.
  • EMWIN initialization failure

    1) i have an external flash and not external ram, does it matter? are there any difference in the configuration between them?
    2)once i declare this region in the linker file, what else do i need to do in order for emwin to manage the LCD via its driver?
    please help

    The post was edited 2 times, last by roinovi ().