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

osPoolAlloc in ISR consumes lots of time

we need a queue in ISR , so we use osPoolAlloc and osPoolFree ,both taking a lot of time, which is not allowed in ISR. Can someone give us some advice ?

Parents Reply Children
  • the real problem is that, sometimes 'osMessagePut' called from an ISR can put messages into the queue more than I have defined .

    1, Is the message queue mantained by the system periodically? if so, consuming too much time in ISR results in the queue corrupted.

    2, Do I need to disable IRQ when call 'osMessageGet' from thread?

    thanks a lot.