We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
In RTOS1, e.g. in RTX4.xx, calls like osSignalWait() take a timeout which the caller passes in units of milliseconds. This millis value then undergoes a transformation to systicks in rt_ms2tick (rt_CMSIS.c). This routine truncates to U16, so the max value it can return is of course 65535. With an OS_TICK of 1ms (the suggested), the max millis timeout we can achieve is 65.535 seconds, just over a minute. In our apps, we'd routinely like timeout on the order of minutes, so the 65 second limit is a pain I'll have to work around.
Anyone know why RTX4 uses U16 to handle its delays? i would have thought U32 was much better.
Stu
FreeRTOS's "configUSE_16_BIT_TICKS" item allows exactly that.