xQueueSendFromISR: if fail question...

rtel wrote on Thursday, June 14, 2012:

Just a couple of things to add here:

+ From memory, U1RXREG is in fact a 32 bit register, nine of which can hold data although in most cases the 9th bit will not be used.

+ Unless you have a low data rate, it is not always a good idea to write each received character to a queue because it is inefficient (although extremely convenient).  Using a DMA, circular buffer, etc. and a single semaphore to unblock a task is often preferred.  I know most of the demos use the queuing method, but most also state it is only done to deliberately load the system for test purposes.  Take a look at the transfer modes used by FreeRTOS+IO for more efficient examples.

http://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_IO/FreeRTOS_IO_Transfer_Modes.shtml

Regards.