I went to do some work on a project based on the LPC2138 with CTL. When I downloaded the code (unedited, I just wanted to get the debugger attached), nothing worked. I eventually tracked this down to be caused by the timer0 isr not running, therefore no tasks were running. The timer/VIC registers seemed okay. In my frustration, I made a new project. The only change I made to the stock template ctl project was to add another task so I could confirm they were switching.
I went to build this project and it choked on a whole bunch of errors about unknown CTL types. So I added #define CTL_TASKING to the project, then it built just fine. However when I ran the project it had the exact same behavior as my original project, timer0 isr not being called. The fact that the template project didn't build or run properly make me suspicious that something got broken. What could it be?
I found that if I add a call to ctl_global_interrupts_enable() before while(1) in new_task_code() in either project it runs as expected.
I am using crossworks 22.214.171.1245060200.24624, ctl 3.2, and LPC2000 bsp 1.32.
Please sign in to leave a comment.