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

"isr_evt_set "problem

Hi All:
I have a problem when I use “isr_evt_set†in my UART interrupt routine:
It ca not reach to “ os_evt_wait_or(0x0001,0xffff);â€

But if I just change “isr_evt_set†to “os_evt_setâ€, my code works fine.
Anybody knows what’s wrong? I am using MCB2300 board.
Part of code here:

void UART3Handler (void) __irq
{  isr_evt_set(0x0001,UART3_TASK);
  /*use "os_evt_set" works*/

   VICVectAddr = 0;             /* Acknowledge Interrupt */

}


void task_UART3_received (void) __task
{
  BYTE IIRValue, LSRValue;
  BYTE Dummy = Dummy;

  for(;;)
  {
can not get here if I use "isr_evt_set":

        os_evt_wait_or(0x0001,0xffff);
   ......
  }

Thanks
Jack

Parents
  • Hi Jack,

    is your system startup deterministic? Do you have UART task3 actually created when the first interrupt occurs?

    By using "os_evt_set" you may compensate a existing error through the introduction of an second error.

    -Frank

Reply
  • Hi Jack,

    is your system startup deterministic? Do you have UART task3 actually created when the first interrupt occurs?

    By using "os_evt_set" you may compensate a existing error through the introduction of an second error.

    -Frank

Children