diff --git a/Marlin/src/HAL/AVR/HAL.h b/Marlin/src/HAL/AVR/HAL.h index 682374b4ac..3dade7fa15 100644 --- a/Marlin/src/HAL/AVR/HAL.h +++ b/Marlin/src/HAL/AVR/HAL.h @@ -229,12 +229,14 @@ public: } // Begin ADC sampling on the given channel - static inline void adc_start(const pin_t ch) { + static inline void adc_start(const uint8_t ch) { #ifdef MUX5 - if (ch > 7) { ADCSRB = _BV(MUX5); return; } + ADCSRB = ch > 7 ? _BV(MUX5) : 0; + #else + ADCSRB = 0; #endif - ADCSRB = 0; - ADMUX = _BV(REFS0) | (ch & 0x07); SBI(ADCSRA, ADSC); + ADMUX = _BV(REFS0) | (ch & 0x07); + SBI(ADCSRA, ADSC); } // Is the ADC ready for reading? diff --git a/Marlin/src/HAL/LINUX/HAL.h b/Marlin/src/HAL/LINUX/HAL.h index a2a9692cbd..104c47ec61 100644 --- a/Marlin/src/HAL/LINUX/HAL.h +++ b/Marlin/src/HAL/LINUX/HAL.h @@ -140,7 +140,7 @@ public: static inline void adc_enable(const uint8_t) {} // Begin ADC sampling on the given channel - static inline void adc_start(const pin_t ch) { active_ch = ch; } + static inline void adc_start(const uint8_t ch) { active_ch = ch; } // Is the ADC ready for reading? static inline bool adc_ready() { return true; }