| View previous topic :: View next topic |
| Author |
Message |
SteveW
Joined: 27 Sep 2005 Posts: 27
|
| UART Input Simultaneously with Higher Priority Interrupt |
Posted: Fri Apr 03, 2026 4:45 pm |
|
|
| If an Rx ISR set to low priority is processing incoming data when the CCS buffer function is used, and a high priority external interrupt occurs, will the Rx buffer continue to fill while the higher priority interrupt executes? It seems that this could only occur if the buffer function is entirely in hardware. |
|
 |
Ttelmah
Joined: 11 Mar 2010 Posts: 20058
|
|
Posted: Sat Apr 04, 2026 3:15 am |
|
|
First thing. What chip????
When you say 'high priority', are you talking about the #priority directive,
or 'level=' on the 16bit PIC's, or the keyword 'high' on a PIC18?.
It affects massively what happens.
On the 16bit PIC's have you got 'nested_interrupts=TRUE' enabled?.
The CCS buffer function uses an interrupt to put the data into a buffer,
so will not continue on any of the PIC's if the code is in another ISR, and
particularly if this has hardware priority over the standard UART interrupt.
The depth of the hardware buffer depends on the chip. Typically 2 characters
on most of the older PIC's and up to 8 characters on some of the newer
ones. Depending on the chip you may also be able to setup the DMA to
handle buffering serial in hardware. |
|
 |
SteveW
Joined: 27 Sep 2005 Posts: 27
|
|
Posted: Tue Apr 07, 2026 3:31 pm |
|
|
| Hi Ttelmah. Thank you for the reply. I generally use the PIC18 and 24-series parts, but my question was general, and you answered my question. |
|
 |
|