I use an interrupt function to received chars from the USART and put the received char into a queue. Therefore I use the xQueueSendFromISR function. Now I toggle a pin befor the function starts and toggle the same pin when the function ends. I use a logicananlyzer to measure the time, the xQueueSendFromISR function needs. I get times between 5 an 17 µs. Can anyone explain me why there are different durations, despite the same amount of data is put into the queue? Is it possible to shorten this time, because the rest of the interrupt only needs 2,5µs and the interrupttime directly influences my systems performance.
Thanks a lot,