Issue about emWin Multi Task with FreeRTOS

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

  • Issue about emWin Multi Task with FreeRTOS

    Hi all,

    Recent days, I ran into an annoying issue related with multi task with FreeRTOS.

    The system always halt in the function xQueueGenericSend() :



    I looked into this issue, the call stack:
    _GUI_Task() -> GUI_Exec() -> WM_Exec() -> GUI_X_Unlock() -> xSemaphoreGive() -> xQueueGenericSend()…

    But where goes wrong? Any ideas?

    Thanks,
    Kenmux

    The post was edited 1 time, last by kenmux ().

  • Hi,

    not sure why it halts in xQueueGenericSend().

    Attached you wil find the latest GUI_X_FreeRTOS.c. In January we did a small change in GUI_X_LOCK() which claims the semaphore.
    Maybe this solves the issue.

    Regards,
    Sven
    Files
    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.
  • It seems related with memory overlapping

    Okay, the issue is resolved now.

    I confirmed the file in my project with your attachment.
    Then I looked into it deeply, and found it's related with memory overlapping.
    And the queue was overwritten after running a while.

    The reason is unknown.
    Thanks for your replay, Schoenen.