Cleaned up ADC module

This commit is contained in:
Jake Goodwin 2025-02-23 10:56:00 -08:00
parent 2add13a745
commit de463a3469
2 changed files with 4 additions and 8 deletions

View File

@ -85,10 +85,7 @@ void ADC_Disable() {
RegEdit_ClearBit((void *)&ADCSRA, ADEN); RegEdit_ClearBit((void *)&ADCSRA, ADEN);
} }
uint16_t ADC_ReadValue_Impl(uint8_t adc_chan) { uint16_t ADC_ReadValue_Impl(void) {
if (IsInvalidChannel(adc_chan)) {
return UINT16_MAX;
}
// start conversion. // start conversion.
RegEdit_SetBit((void *)&ADCSRA, ADSC); RegEdit_SetBit((void *)&ADCSRA, ADSC);
@ -106,9 +103,9 @@ uint16_t ADC_ReadValue_Impl(uint8_t adc_chan) {
cycles++; cycles++;
} }
uint8_t val = ADC; uint16_t val = ADC;
return val; return val;
} }
// Set the default for the function pointer. // Set the default for the function pointer.
uint16_t (*ADC_ReadValue)(uint8_t adc_chan) = ADC_ReadValue_Impl; uint16_t (*ADC_ReadValue)(void) = ADC_ReadValue_Impl;

View File

@ -52,12 +52,11 @@ void ADC_Disable();
/** /**
* @brief Reads ADC value into variable * @brief Reads ADC value into variable
* *
* @param adc_chan The bin number of the ADC pin being read.
* *
* This function depends on the ADC already being initialized and enabled * This function depends on the ADC already being initialized and enabled
* before being called. * before being called.
*/ */
extern uint16_t (*ADC_ReadValue)(uint8_t adc_chan); extern uint16_t (*ADC_ReadValue)();
/** /**
* @brief Sets up the ADC * @brief Sets up the ADC