From e2bc1cbade67484b021ed3e8ec1290d8672d5d41 Mon Sep 17 00:00:00 2001 From: rusefi Date: Mon, 22 Jul 2024 19:47:57 -0400 Subject: [PATCH] only:going fancy enums --- firmware/hw_layer/adc/adc_inputs.cpp | 14 +++++++------- firmware/hw_layer/adc/adc_inputs.h | 12 ++++++------ firmware/hw_layer/adc/adc_subscription.cpp | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/firmware/hw_layer/adc/adc_inputs.cpp b/firmware/hw_layer/adc/adc_inputs.cpp index a18a66f917..adf49853bd 100644 --- a/firmware/hw_layer/adc/adc_inputs.cpp +++ b/firmware/hw_layer/adc/adc_inputs.cpp @@ -29,12 +29,12 @@ static uint32_t slowAdcErrorsCount = 0; static float mcuTemperature; -static adc_channel_mode_e adcHwChannelMode[EFI_ADC_TOTAL_CHANNELS]; +static AdcChannelMode adcHwChannelMode[EFI_ADC_TOTAL_CHANNELS]; // todo: move this flag to Engine god object static int adcDebugReporting = false; -adc_channel_mode_e getAdcMode(adc_channel_e hwChannel) { +AdcChannelMode getAdcMode(adc_channel_e hwChannel) { return adcHwChannelMode[hwChannel]; } @@ -49,7 +49,7 @@ int getInternalAdcValue(const char *msg, adc_channel_e hwChannel) { } #if EFI_USE_FAST_ADC - if (adcHwChannelMode[hwChannel] == ADC_FAST) { + if (adcHwChannelMode[hwChannel] == AdcChannelMode::Fast) { return fastAdc.getAvgAdcValue(hwChannel); } #endif // EFI_USE_FAST_ADC @@ -151,7 +151,7 @@ void addFastAdcChannel(const char*, adc_channel_e hwChannel) { fastAdc.enableChannel(hwChannel); #endif - adcHwChannelMode[hwChannel] = ADC_FAST; + adcHwChannelMode[hwChannel] = AdcChannelMode::Fast; // Nothing to do for slow channels, input is mapped to analog in init_sensors.cpp } @@ -160,20 +160,20 @@ void removeChannel(const char*, adc_channel_e hwChannel) { return; } #if EFI_USE_FAST_ADC - if (adcHwChannelMode[hwChannel] == ADC_FAST) { + if (adcHwChannelMode[hwChannel] == AdcChannelMode::Fast) { /* TODO: */ //fastAdc.disableChannel(hwChannel); } #endif - adcHwChannelMode[hwChannel] = ADC_OFF; + adcHwChannelMode[hwChannel] = AdcChannelMode::Off; } // Weak link a stub so that every board doesn't have to implement this function __attribute__((weak)) void setAdcChannelOverrides() { } static void configureInputs() { - memset(adcHwChannelMode, ADC_OFF, sizeof(adcHwChannelMode)); + memset(adcHwChannelMode, (int)AdcChannelMode::Off, sizeof(adcHwChannelMode)); /** * order of analog channels here is totally random and has no meaning diff --git a/firmware/hw_layer/adc/adc_inputs.h b/firmware/hw_layer/adc/adc_inputs.h index fb00ee3746..31eb885ab6 100644 --- a/firmware/hw_layer/adc/adc_inputs.h +++ b/firmware/hw_layer/adc/adc_inputs.h @@ -70,13 +70,13 @@ inline bool isAdcChannelOffChip(adc_channel_e hwChannel) { #if HAL_USE_ADC -typedef enum { - ADC_OFF = 0, - ADC_SLOW = 1, - ADC_FAST = 2, -} adc_channel_mode_e; +enum class AdcChannelMode : char { + Off, + Slow, + Fast +}; -adc_channel_mode_e getAdcMode(adc_channel_e hwChannel); +AdcChannelMode getAdcMode(adc_channel_e hwChannel); void initAdcInputs(); // wait until at least 1 slowADC sampling is complete diff --git a/firmware/hw_layer/adc/adc_subscription.cpp b/firmware/hw_layer/adc/adc_subscription.cpp index c305d4b18a..4996b197fc 100644 --- a/firmware/hw_layer/adc/adc_subscription.cpp +++ b/firmware/hw_layer/adc/adc_subscription.cpp @@ -186,7 +186,7 @@ void AdcSubscription::PrintInfo() { "%s ADC%d m=%d %s adc=%.2f/input=%.2fv/divider=%.2f", name, channel, - getAdcMode(channel), + (int)getAdcMode(channel), getPinNameByAdcChannel(name, channel, pinNameBuffer, sizeof(pinNameBuffer)), mcuVolts, sensorVolts, entry.VoltsPerAdcVolt );