There are two pins on the SDCard IO pins that are valid alternate pins for Serial5
Serial5.setRX or setTX.
These pin numbers changed from T4 to T4.1 so update table depending on which board.
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