I am running CCS 5.3.0.00090 with MCU SDK 1.00.01.74, which bundles bios 6.33.04.39 and xdctools 3.23.05.61.
I am running on a Stellaris LM4F230H5QR on a prioprietary board. I also have the LM4F232 Eval board. I have the same problem on the Eval board as well.
When I have one task, that that never does a Task_sleep(), I can control the Stellaris register WTIMERA, TIMER_TAMATCHR to change the Pulse Width Modulator duty cycle as expected.
Then, I've added a second task. This is a static task, and get's enabled by the first task, by changing it's priority from -1 to 10.
This task makes one adjustment to the TIMER_TAMATCHR register, then, goes to sleep using Task_sleep().
After the sleep, it attempts to make another adjustment to the TIMER_TAMATCHR register. It calls ROM_TimerMatchSet() to do so.
If I "pause" the execution, and examine TIMER_TAMATCHR, it does not have the updated value.
If I disable this task, and go back to the first task, it can no longer set the TIMER_TAMATCHR either.
So, in summary, once Task_sleep() has executed, I can no longer set TIMER_TAMATCHR.
GPIO writes and ADC reads are unaffected by the Task_sleep(), they still work.
Thanks in advance for ideas.