This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

RTX51

Hello,
I created three tasks. Each task increments a counter and send it to LCD by using a semaphore. I used timer 0 for system tiks. I used timer 2 to interrupt every 1/2 second and increase the counter. Also I used ext INT1 to do the same.

Now if I eliminat os_start() from my code timer2 and ext INT1 works fine.
I made the interrupt to send count to LCD.

If I include os_start(), neither Timer2
or ext INT1 works. I made the interrupt to increment a global counter and let the tasks to send it to the LCD.

However, I duplicated timer 2, ext INT1 initialization and IE before for(;;) loop in each task and the timer2 and ext INT1 still do not work but the tasks work.

Thanks

  • Try debugging one aspect of the program at a time. Eliminate the ISRs. Instead create a 4th task that increment all counters. Since we are trying to emmulate the ISRs, use no semaphores on these counters. Does this work?