diff --git a/arch/ARM/STM32/drivers/stm32-adc.adb b/arch/ARM/STM32/drivers/stm32-adc.adb index 48a4d99b..2d223e7a 100644 --- a/arch/ARM/STM32/drivers/stm32-adc.adb +++ b/arch/ARM/STM32/drivers/stm32-adc.adb @@ -414,6 +414,15 @@ package body STM32.ADC is end if; end Start_Conversion; + --------------------- + -- Stop_Conversion -- + --------------------- + + procedure Stop_Conversion (This : in out Analog_To_Digital_Converter) is + begin + This.CR2.SWSTART := False; + end Stop_Conversion; + ------------------------ -- Conversion_Started -- ------------------------ diff --git a/arch/ARM/STM32/drivers/stm32-adc.ads b/arch/ARM/STM32/drivers/stm32-adc.ads index ec337007..b2507c69 100644 --- a/arch/ARM/STM32/drivers/stm32-adc.ads +++ b/arch/ARM/STM32/drivers/stm32-adc.ads @@ -321,6 +321,9 @@ package STM32.ADC is Pre => Enabled (This) and Regular_Conversions_Expected (This) > 0; -- Starts the conversion(s) for the regular channels + procedure Stop_Conversion (This : in out Analog_To_Digital_Converter); + -- Stops the conversion(s) for the regular channels + function Conversion_Started (This : Analog_To_Digital_Converter) return Boolean; -- Returns whether the regular channels' conversions have started. Note