5 Replies Latest reply on Nov 13, 2017 11:59 AM by JoMe_264151

    how does the internal rx interrupt isr work?

      Using a full duplex UART in a PSoC5 design.

      I don't understand how the interrupts work when the RX Buffer Size is > 4.

      From the data sheet:


      When the (Rx/Tx) Buffer size is set to a value greater than 4, the UART component uses the internal interrupts to move the data from Hardware FIFO to a software FIFO. In this case, use the internal ISR to add custom code to process the data in the "User Code" regions.

      Note External interrupts are generated only with respect to the Hardware FIFO.


      Does the ISR_UART_RX (auto-generated) fire when the received data overflows the RX Buffer Size that I have specified? Or does it fire after each byte is received?

      I have looked at the example projects and it's not clear.


      Does the internal interrupt work in the background to transfer the bytes into the buffer, or does it trigger the ISR_UART_RX auto-generated code?


      In my application, the RX will received data from another internal board, so I know exactly how many bytes to expect (46 bytes). So if I can fire the ISR when that many bytes are received that's fine.