AnsweredAssumed Answered

Problem with OS task events using freeRTOS.

Question asked by joe birch on Jul 27, 2015
Latest reply on Jul 28, 2015 by David E Seymour

I cannot get task events to work. I am trying to signal between tasks


I have a very simple example with 2 tasks.

Task2 is waiting on an event.

Task1 sends the event.


I am using KDS 3.0, KSDK 1.2 on a FRDM_K22, gcc

The FreeRTOS version is 8.0.0 which comes with KSDK1.2

I used PEx to generate the code.

I modified FreeRTOSConfig.h to use configFRTOS_MEMORY_SCHEME==1


The event is created in main

            event_t msgInEvent;

           if (OSA_EventCreate(&msgInEvent, kEventAutoClear) != kStatus_OSA_Success) {
               PRINTF("Inside %s, OSA_EventCreate failed\n", __FUNCTION__);






The wait is in task2

            if (OSA_EventWait(&msgInEvent, 0x01, 1, OSA_WAIT_FOREVER, NULL) != kStatus_OSA_Success) {

                       PRINTF("Inside %s, OSA_EventSet failed\n", __FUNCTION__);




The Set is in task1

            if (OSA_EventSet(&msgInEvent, 0x01) != kStatus_OSA_Success) {

                      PRINTF("Inside %s, OSA_EventSet failed\n", __FUNCTION__);



when I pause the CPU I get


rtosTest_Debug_PNE [GDB PEMicro Interface Debugging]          


                        Thread #1 <main> (Suspended : Signal : SIGINT:Interrupt)

                                    WDOG_EWM_IRQHandler() at startup_MK22F51212.S:349 0x4e8        

                                    <signal handler called>() at 0xfffffffd          

                                    vPortStartFirstTask() at port.c:675 0x2852   

                                    xPortStartScheduler() at port.c:554 0x2792  




Any help is appreciated