AnsweredAssumed Answered

MQX Task scheduling with timer task and MQX Watchdog.

Question asked by mrandreas on Apr 16, 2018
Latest reply on May 29, 2018 by Daniel Chen

Regarding the Timer component and it's preemption with other Task's. 

I have several tasks "ready" with almost the same priority and with sliced timer. I also have a timer component (_timer_create_component) modified to also be sliced timer. For all the task's I have a MQX SW Watchdog.

 

All the task's behave as expected with the "time sliced". When I introduce a indefinite loop in one of the task's, the other task's are allowed to execute and feed the SW Dog and eventually the corrupted task will timeout and call the MQX watchdog callback (as expected). But when introducing a indefinite loop in timer callback of the "timer component" the other task's will execute a few times and then the HW watchdog will eventually kick in. I don't get the SW MQX watchdog callback from the "Timer Task" (timer component). 

 

How can I debug Task scheduling with Keil? Is there a run-time debug "window" for the task swapping like with freemaster? And what have I misunderstood with the timer task and it not being timer sliced?

 

(I'm using K60 CPU w keil and ulinkpro w trace support)

Outcomes