Extracted from other PR.
This change only adds the code to look at the RX FIFO when you call available, and read/peak if our software queue is empty, it then checks to see if hardware FIFO has data to extract.
Longer term we might consider changing timer over to using system clock, with default(max) divisior of 4 to go to PID instead of fixed 24mhz...
But in the mean time, try to allow IntervalTimer Settings that work at least as well as default settings for T3.2 whoes BUS speed is 48mhz, so the magic number of 36 was used which allowed a minimum value passed into begin/update of 36
48*.75-.5
With T4 code we just blindly left the magic number of 36... So this one simply sort of halves it. 24*.75-.5 ... I rounded down to 17
If you call set priority it was only looking at priority of first two items, even though there could be 4. The main code that started an interrupt checked all 4. So I sort of copied that code over, only change was to simply set the top_priority to the first item to start with instead of 255 and then look at the first item
Add T4 ADC_ETC definitions for bits plus structure
Decided to go to the format that is closer to the the manual to
and use names like: chain_1_0, chain_3_2...
Add structure to make it easer to use ADC objects,
Plus updated defines to use the structure.
Left in my own define for structure location as a trigger to not define it in my own code when running older version of core...
Also added defines for XBAR, such that we can hopefully not have to use magic numbers to say, map PID1 to ADC_ETC1_...
It was not properly clearing the old state for the ADC_CFG_AVGS, but instead it was oring in the new value,
also T4-Analog fix calibration tests
Found by @mjs513 - At init time it was not looking at ADC2 to have completed calibration...
Remove T41b1 pins ifdef
The TX and RX values were reversed.
That is for example on Serial1 (LPUART6)
Before we had:
```
```
now we have
```
```
So for example trying to get WS2812Serial library to work was failing, to output anything.
Here is a first pass at trying to get the AVR emulation of Ports working like it did for T3.x.
Not 100% confident, but at least simple sketch is working.