While validating that device serial1 was really a serial port
Just trying to tighten up the time between when a request is received at the serial2 port and when I send the response. responding immediately to data while busy doing something): drrr.100 bytes x 100 per second = 10K bytes/sec, via UART 8N1 ~ 100Kilobits/sec.First, choose an interrupt you know the rest of your program will never need. But you don't need to have the RTC in use, or even the 32.768 k Hz crystal.The huge advantage of doing it this way is the serial2.c interrupt will finish normally with minimal disruption.You can see they're about 340 us apart, which corresponds well with 4 bytes at 115200 baud.The Serial1 driver configures the 8 byte FIFO with a watermark of 4 bytes.
Using 2/3 of the hardware FIFO was key to keeping the interrupt rate lower, and the interrupt handler surely read all FIFO'd bytes in one interrupt.I need some advice / pointers in dealing with interrupts when a particular value comes in one of the serial ports. Then LOTS of data processing to produce some magic numbers.Quick overview: I have lots of sensor data coming in via Serial1. On serial2 I am listening for a message from another board.Here's a zoom in to one of those little gaps: The long time high is the interrupt that receives 4 bytes into the buffer.Then it's followed by 4 longer-than-normal low and high times, for the CPU overhead of Serial.available() and Serial.read() fetching each byte.