The O² board lacks an extra analog input, which is quite useful for interfacing with sensors.
This commit implements support for this function.
Implementation:
This was actually much more challenging than it should be.
Board changes -
- It was necessary to add support for the new pin on the owntech_board.dts
- It was necessary to add support for the new adc-channel on the adc-channel.dtsi
Data Acquisition module changes -
- DataAcquisition.cpp and .h required changes to support high-level API access to the new channel for reading and parameters update
- data_conversion.c and .h required changes to support the conversion of the new adc channel
Hardware Configuration changes -
- HardwareConfiguration.cpp and .h required changes to launch the new channel initialization that includes the extra measurement
- adc_configuration.c and .h required changes to configure the new channel properly and describe it via a dedicated structure