xQueueSendFromISR(xQueue, &buffer, NULL) is this API will disable interrupts?

Dear Community,

I am facing data missing probelm on UART. UART serial buffer losing some bytes when xQueueSendFromISR called from UART Rx ISR. Basically it is request and response communication over uart. response will come in 2 parts. after receiving the first part, called xQueueSendFromISR from UART Rx ISR. at the the same time 2nd part of response will receive. Also Data seeing by tapping UART Rx line, same is not receiving/seeing in UART Rx buffer (ISR Rx circular buffer)
Is xQueueSendFromISR will disable all the interrupts?

Other way i tried not calling xQueueSendFromISR, keeping rxflag, this time could not see the data bytes missed.

Target : RH850
Compiler: CC-RH
FreeRTOS Environments.

best regards,

Please post an outline of your ISR.

Dear rtel,

We are using 3 uarts in interrupt mode, 2 are connected to modem communication. Another one debug logging. One uart get data (size - 64bytes) for every 1 sec will be received in uart rx isr and from there data will be pushed to queue (xQueueSendFromISR(xQueue, &buffer, NULL) ).
second uart used for req and response communication, response will be received in 2 messages. one after one. first message received and pushed to queue during push the data into queue second message not able to receive by the uart serial buffer. if i remove xQueueSendFromISR from isr function i can be able to see data in uart rx isr circular buffer. Suspecting xQueueSendFromISR will disable the interrupts during data push into queue because of that few of the bytes missing in uart rx ISR


Where is this serial buffer?

Are you saying that the Rx ISR is getting lost? How did you verify that? As Richard said before, it would help if you share your ISR code.

There is a chance of your circular isr buffer being too small so that the buffer is overwritten before the signalled tasks have a chance to copy the data into application space. Also, do you monitor the hardware error flags (overrun, parity and frame errors) in your isr?

Again, without seeing code, everything is guess work.