Files

copied
Last update 5 months 1 week by Masakatsu Honda
FilesCubeMXpassion-v2-1build
..
adc.d
adc.lst
adc.o
buzzer.d
buzzer.lst
buzzer.o
config.d
config.lst
config.o
eeprom.d
eeprom.lst
eeprom.o
encodermode.d
encodermode.lst
encodermode.o
gpio.d
gpio.lst
gpio.o
imu.d
imu.lst
imu.o
interrupt.d
interrupt.lst
interrupt.o
led.d
led.lst
led.o
main.d
main.lst
main.o
passion-v2-1.bin
passion-v2-1.elf
passion-v2-1.hex
passion-v2-1.map
pwm.d
pwm.lst
pwm.o
spi.d
spi.lst
spi.o
startup_stm32f405xx.d
startup_stm32f405xx.o
stdout.d
stdout.lst
stdout.o
stm32f4xx_hal.d
stm32f4xx_hal.lst
stm32f4xx_hal.o
stm32f4xx_hal_adc.d
stm32f4xx_hal_adc.lst
stm32f4xx_hal_adc.o
stm32f4xx_hal_adc_ex.d
stm32f4xx_hal_adc_ex.lst
stm32f4xx_hal_adc_ex.o
stm32f4xx_hal_cortex.d
stm32f4xx_hal_cortex.lst
stm32f4xx_hal_cortex.o
stm32f4xx_hal_dma.d
stm32f4xx_hal_dma.lst
stm32f4xx_hal_dma.o
stm32f4xx_hal_dma_ex.d
stm32f4xx_hal_dma_ex.lst
stm32f4xx_hal_dma_ex.o
stm32f4xx_hal_exti.d
stm32f4xx_hal_exti.lst
stm32f4xx_hal_exti.o
stm32f4xx_hal_flash.d
stm32f4xx_hal_flash.lst
stm32f4xx_hal_flash.o
stm32f4xx_hal_flash_ex.d
stm32f4xx_hal_flash_ex.lst
stm32f4xx_hal_flash_ex.o
stm32f4xx_hal_flash_ramfunc.d
stm32f4xx_hal_flash_ramfunc.lst
stm32f4xx_hal_flash_ramfunc.o
stm32f4xx_hal_gpio.d
stm32f4xx_hal_gpio.lst
stm32f4xx_hal_gpio.o
stm32f4xx_hal_msp.d
stm32f4xx_hal_msp.lst
stm32f4xx_hal_msp.o
stm32f4xx_hal_pwr.d
stm32f4xx_hal_pwr.lst
stm32f4xx_hal_pwr.o
stm32f4xx_hal_pwr_ex.d
stm32f4xx_hal_pwr_ex.lst
stm32f4xx_hal_pwr_ex.o
stm32f4xx_hal_rcc.d
stm32f4xx_hal_rcc.lst
stm32f4xx_hal_rcc.o
stm32f4xx_hal_rcc_ex.d
stm32f4xx_hal_rcc_ex.lst
stm32f4xx_hal_rcc_ex.o
stm32f4xx_hal_spi.d
stm32f4xx_hal_spi.lst
stm32f4xx_hal_spi.o
stm32f4xx_hal_tim.d
stm32f4xx_hal_tim.lst
stm32f4xx_hal_tim.o
stm32f4xx_hal_tim_ex.d
stm32f4xx_hal_tim_ex.lst
stm32f4xx_hal_tim_ex.o
stm32f4xx_hal_uart.d
stm32f4xx_hal_uart.lst
stm32f4xx_hal_uart.o
stm32f4xx_it.d
stm32f4xx_it.lst
stm32f4xx_it.o
stm32f4xx_ll_adc.d
stm32f4xx_ll_adc.lst
stm32f4xx_ll_adc.o
syscalls.d
syscalls.lst
syscalls.o
sysmem.d
sysmem.lst
sysmem.o
system_stm32f4xx.d
system_stm32f4xx.lst
system_stm32f4xx.o
test.d
test.lst
test.o
wait.d
wait.lst
wait.o
stm32f4xx_hal_adc.lst
ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal_adc.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.ADC_Init,"ax",%progbits 20 .align 1 21 .syntax unified 22 .thumb 23 .thumb_func 25 ADC_Init: 26 .LVL0: 27 .LFB261: 28 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @file stm32f4xx_hal_adc.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief This file provides firmware functions to manage the following 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * functionalities of the Analog to Digital Converter (ADC) peripheral: 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * + Initialization and de-initialization functions 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * + Peripheral Control functions 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * + Peripheral State functions 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ****************************************************************************** 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @attention 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * Copyright (c) 2017 STMicroelectronics. 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * All rights reserved. 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * This software is licensed under terms that can be found in the LICENSE file 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * in the root directory of this software component. 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ****************************************************************************** 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### ADC Peripheral features ##### 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) 12-bit, 10-bit, 8-bit or 6-bit configurable resolution. 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Interrupt generation at the end of conversion, end of injected conversion, 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** and in case of analog watchdog or overrun events 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Single and continuous conversion modes. ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 2 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Scan mode for automatic conversion of channel 0 to channel x. 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Data alignment with in-built data coherency. 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Channel-wise programmable sampling time. 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) External trigger option with configurable polarity for both regular and 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** injected conversion. 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Dual/Triple mode (on devices with 2 ADCs or more). 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Configurable DMA data storage in Dual/Triple ADC mode. 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Configurable delay between conversions in Dual/Triple interleaved mode. 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) ADC conversion type (refer to the datasheets). 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) ADC supply requirements: 2.4 V to 3.6 V at full speed and down to 1.8 V at 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** slower speed. 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) ADC input range: VREF(minus) = VIN = VREF(plus). 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) DMA request generation during regular channel conversion. 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### How to use this driver ##### 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#)Initialize the ADC low level resources by implementing the HAL_ADC_MspInit(): 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (##) Enable the ADC interface clock using __HAL_RCC_ADC_CLK_ENABLE() 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (##) ADC pins configuration 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Enable the clock for the ADC GPIOs using the following function: 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_RCC_GPIOx_CLK_ENABLE() 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Configure these ADC pins in analog mode using HAL_GPIO_Init() 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (##) In case of using interrupts (e.g. HAL_ADC_Start_IT()) 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Configure the ADC interrupt priority using HAL_NVIC_SetPriority() 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Enable the ADC IRQ handler using HAL_NVIC_EnableIRQ() 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) In ADC IRQ handler, call HAL_ADC_IRQHandler() 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (##) In case of using DMA to control data transfer (e.g. HAL_ADC_Start_DMA()) 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Enable the DMAx interface clock using __HAL_RCC_DMAx_CLK_ENABLE() 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Configure and enable two DMA streams stream for managing data 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** transfer from peripheral to memory (output stream) 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Associate the initialized DMA handle to the CRYP DMA handle 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using __HAL_LINKDMA() 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Configure the priority and enable the NVIC for the transfer complete 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** interrupt on the two DMA Streams. The output stream should have higher 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** priority than the input stream. 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Configuration of ADC, groups regular/injected, channels parameters *** 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Configure the ADC parameters (resolution, data alignment, ...) 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** and regular group parameters (conversion trigger, sequencer, ...) 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using function HAL_ADC_Init(). 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Configure the channels for regular group parameters (channel number, 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** channel rank into sequencer, ..., into regular group) 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using function HAL_ADC_ConfigChannel(). 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Optionally, configure the injected group parameters (conversion trigger, 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** sequencer, ..., of injected group) 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** and the channels for injected group parameters (channel number, 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** channel rank into sequencer, ..., into injected group) 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using function HAL_ADCEx_InjectedConfigChannel(). 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Optionally, configure the analog watchdog parameters (channels 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** monitored, thresholds, ...) using function HAL_ADC_AnalogWDGConfig(). ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 3 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Optionally, for devices with several ADC instances: configure the 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** multimode parameters using function HAL_ADCEx_MultiModeConfigChannel(). 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Execution of ADC conversions *** 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) ADC driver can be used among three modes: polling, interruption, 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** transfer by DMA. 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Polling mode IO operation *** 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ================================= 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start the ADC peripheral using HAL_ADC_Start() 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Wait for end of conversion using HAL_ADC_PollForConversion(), at this stage 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** user can specify the value of timeout according to his end application 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) To read the ADC converted values, use the HAL_ADC_GetValue() function. 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop the ADC peripheral using HAL_ADC_Stop() 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Interrupt mode IO operation *** 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =================================== 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start the ADC peripheral using HAL_ADC_Start_IT() 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Use HAL_ADC_IRQHandler() called under ADC_IRQHandler() Interrupt subroutine 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) At ADC end of conversion HAL_ADC_ConvCpltCallback() function is executed and user can 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** add his own code by customization of function pointer HAL_ADC_ConvCpltCallback 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) In case of ADC Error, HAL_ADC_ErrorCallback() function is executed and user can 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** add his own code by customization of function pointer HAL_ADC_ErrorCallback 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop the ADC peripheral using HAL_ADC_Stop_IT() 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** DMA mode IO operation *** 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================== 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start the ADC peripheral using HAL_ADC_Start_DMA(), at this stage the user specify the l 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** of data to be transferred at each end of conversion 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) At The end of data transfer by HAL_ADC_ConvCpltCallback() function is executed and user 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** add his own code by customization of function pointer HAL_ADC_ConvCpltCallback 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) In case of transfer Error, HAL_ADC_ErrorCallback() function is executed and user can 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** add his own code by customization of function pointer HAL_ADC_ErrorCallback 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop the ADC peripheral using HAL_ADC_Stop_DMA() 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** ADC HAL driver macros list *** 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================= 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Below the list of most used macros in ADC HAL driver. 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_ENABLE : Enable the ADC peripheral 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_DISABLE : Disable the ADC peripheral 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_ENABLE_IT: Enable the ADC end of conversion interrupt 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_DISABLE_IT: Disable the ADC end of conversion interrupt 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_GET_IT_SOURCE: Check if the specified ADC interrupt source is enabled or disabl 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_CLEAR_FLAG: Clear the ADC's pending flags 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) __HAL_ADC_GET_FLAG: Get the selected ADC's flag status 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ADC_GET_RESOLUTION: Return resolution bits in CR1 register 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (@) You can refer to the ADC HAL driver header file for more useful macros ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 4 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Deinitialization of ADC *** 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Disable the ADC interface 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) ADC clock can be hard reset and disabled at RCC top level. 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) Hard reset of ADC peripherals 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using macro __HAL_RCC_ADC_FORCE_RESET(), __HAL_RCC_ADC_RELEASE_RESET(). 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) ADC clock disable using the equivalent macro/functions as configuration step. 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) Example: 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Into HAL_ADC_MspDeInit() (recommended code location) or with 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** other device clock parameters configuration: 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) HAL_RCC_GetOscConfig(&RCC_OscInitStructure); 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) RCC_OscInitStructure.OscillatorType = RCC_OSCILLATORTYPE_HSI; 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) RCC_OscInitStructure.HSIState = RCC_HSI_OFF; (if not used for system clock) 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+++) HAL_RCC_OscConfig(&RCC_OscInitStructure); 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) ADC pins configuration 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) Disable the clock for the ADC GPIOs using macro __HAL_RCC_GPIOx_CLK_DISABLE() 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Optionally, in case of usage of ADC with interruptions: 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) Disable the NVIC for ADC using function HAL_NVIC_DisableIRQ(ADCx_IRQn) 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (#) Optionally, in case of usage of DMA: 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) Deinitialize the DMA using function HAL_DMA_DeInit(). 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (++) Disable the NVIC for DMA using function HAL_NVIC_DisableIRQ(DMAx_Channelx_IRQn) 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** *** Callback registration *** 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ============================================================================== 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** The compilation flag USE_HAL_ADC_REGISTER_CALLBACKS, when set to 1, 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** allows the user to configure dynamically the driver callbacks. 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Use Functions HAL_ADC_RegisterCallback() 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** to register an interrupt callback. 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Function HAL_ADC_RegisterCallback() allows to register following callbacks: 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ConvCpltCallback : ADC conversion complete callback 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ConvHalfCpltCallback : ADC conversion DMA half-transfer callback 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindowCallback : ADC analog watchdog 1 callback 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ErrorCallback : ADC error callback 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) InjectedConvCpltCallback : ADC group injected conversion complete callback 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) InjectedQueueOverflowCallback : ADC group injected context queue overflow callback 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindow2Callback : ADC analog watchdog 2 callback 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindow3Callback : ADC analog watchdog 3 callback 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) EndOfSamplingCallback : ADC end of sampling callback 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) MspInitCallback : ADC Msp Init callback 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) MspDeInitCallback : ADC Msp DeInit callback 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** This function takes as parameters the HAL peripheral handle, the Callback ID 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** and a pointer to the user callback function. 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Use function HAL_ADC_UnRegisterCallback to reset a callback to the default 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** weak function. 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_UnRegisterCallback takes as parameters the HAL peripheral handle, ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 5 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** and the Callback ID. 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** This function allows to reset following callbacks: 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ConvCpltCallback : ADC conversion complete callback 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ConvHalfCpltCallback : ADC conversion DMA half-transfer callback 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindowCallback : ADC analog watchdog 1 callback 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) ErrorCallback : ADC error callback 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) InjectedConvCpltCallback : ADC group injected conversion complete callback 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) InjectedQueueOverflowCallback : ADC group injected context queue overflow callback 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindow2Callback : ADC analog watchdog 2 callback 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) LevelOutOfWindow3Callback : ADC analog watchdog 3 callback 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) EndOfSamplingCallback : ADC end of sampling callback 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) MspInitCallback : ADC Msp Init callback 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) MspDeInitCallback : ADC Msp DeInit callback 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** By default, after the HAL_ADC_Init() and when the state is HAL_ADC_STATE_RESET 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** all callbacks are set to the corresponding weak functions: 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** examples HAL_ADC_ConvCpltCallback(), HAL_ADC_ErrorCallback(). 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Exception done for MspInit and MspDeInit functions that are 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** reset to the legacy weak functions in the HAL_ADC_Init()/ HAL_ADC_DeInit() only when 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** these callbacks are null (not registered beforehand). 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** If MspInit or MspDeInit are not null, the HAL_ADC_Init()/ HAL_ADC_DeInit() 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand) whatever the state. 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Callbacks can be registered/unregistered in HAL_ADC_STATE_READY state only. 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Exception done MspInit/MspDeInit functions that can be registered/unregistered 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** in HAL_ADC_STATE_READY or HAL_ADC_STATE_RESET state, 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** thus registered (user) MspInit/DeInit callbacks can be used during the Init/DeInit. 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Then, the user first registers the MspInit/MspDeInit user callbacks 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** using HAL_ADC_RegisterCallback() before calling HAL_ADC_DeInit() 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** or HAL_ADC_Init() function. 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** When the compilation flag USE_HAL_ADC_REGISTER_CALLBACKS is set to 0 or 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** not defined, the callback registration feature is not available and all callbacks 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** are set to the corresponding weak functions. 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Includes ------------------------------------------------------------------*/ 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #include "stm32f4xx_hal.h" 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup STM32F4xx_HAL_Driver 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC ADC 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief ADC driver modules 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 6 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef HAL_ADC_MODULE_ENABLED 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private typedef -----------------------------------------------------------*/ 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private define ------------------------------------------------------------*/ 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private macro -------------------------------------------------------------*/ 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private variables ---------------------------------------------------------*/ 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup ADC_Private_Functions 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private function prototypes -----------------------------------------------*/ 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_Init(ADC_HandleTypeDef *hadc); 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAConvCplt(DMA_HandleTypeDef *hdma); 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAError(DMA_HandleTypeDef *hdma); 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAHalfConvCplt(DMA_HandleTypeDef *hdma); 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @} 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Exported functions --------------------------------------------------------*/ 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions ADC Exported Functions 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group1 Initialization and de-initialization functions 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Initialization and Configuration functions 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### Initialization and de-initialization functions ##### 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] This section provides functions allowing to: 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Initialize and configure the ADC. 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) De-initialize the ADC. 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Initializes the ADCx peripheral according to the specified parameters 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * in the ADC_InitStruct and initializes the ADC MSP. 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note This function is used to configure the global features of the ADC ( 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * ClockPrescaler, Resolution, Data Alignment and number of conversion), however, 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the rest of the configuration parameters are specific to the regular 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * channels group (scan mode activation, continuous mode activation, 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * External trigger source and edge, DMA continuous request after the 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * last transfer and End of conversion selection). 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Init(ADC_HandleTypeDef *hadc) 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check ADC handle */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 7 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc == NULL) 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_ERROR; 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_CLOCKPRESCALER(hadc->Init.ClockPrescaler)); 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_RESOLUTION(hadc->Init.Resolution)); 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ScanConvMode)); 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG(hadc->Init.ExternalTrigConv)); 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_DATA_ALIGN(hadc->Init.DataAlign)); 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion)); 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection)); 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DiscontinuousConvMode)); 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->Init.ExternalTrigConv != ADC_SOFTWARE_START) 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->State == HAL_ADC_STATE_RESET) 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Init the ADC Callback settings */ 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvCpltCallback = HAL_ADC_ConvCpltCallback; /* Legacy weak 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvHalfCpltCallback = HAL_ADC_ConvHalfCpltCallback; /* Legacy weak 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->LevelOutOfWindowCallback = HAL_ADC_LevelOutOfWindowCallback; /* Legacy weak 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback = HAL_ADC_ErrorCallback; /* Legacy weak 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->InjectedConvCpltCallback = HAL_ADCEx_InjectedConvCpltCallback; /* Legacy weak 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->MspInitCallback == NULL) 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit */ 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Init the low level hardware */ 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback(hadc); 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Init the low level hardware */ 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_MspInit(hadc); 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Initialize ADC error code */ 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Allocate lock resource and initialize it */ 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Lock = HAL_UNLOCKED; 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Configuration of ADC parameters if previous preliminary actions are */ 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* correctly completed. */ 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL)) 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 8 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_BUSY_INTERNAL); 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC parameters */ 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Init(hadc); 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to none */ 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the ADC state */ 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_BUSY_INTERNAL, 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY); 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp_hal_status = HAL_ERROR; 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Release Lock */ 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return tmp_hal_status; 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Deinitializes the ADCx peripheral registers to their default reset values. 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_DeInit(ADC_HandleTypeDef *hadc) 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check ADC handle */ 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc == NULL) 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_ERROR; 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_BUSY_INTERNAL); 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Stop potential conversion on going, on regular and injected groups */ 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC peripheral */ 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE(hadc); 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Configuration of ADC parameters if previous preliminary actions are */ 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* correctly completed. */ 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 9 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->MspDeInitCallback == NULL) 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit */ 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* DeInit the low level hardware: RCC clock, NVIC */ 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback(hadc); 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* DeInit the low level hardware: RCC clock, NVIC */ 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_MspDeInit(hadc); 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to none */ 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->State = HAL_ADC_STATE_RESET; 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return tmp_hal_status; 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Register a User ADC Callback 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * To be used instead of the weak predefined callback 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc Pointer to a ADC_HandleTypeDef structure that contains 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param CallbackID ID of the callback to be registered 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * This parameter can be one of the following values: 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_CONVERSION_COMPLETE_CB_ID ADC conversion complete callback ID 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_CONVERSION_HALF_CB_ID ADC conversion DMA half-transfer call 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID ADC analog watchdog 1 callback ID 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_ERROR_CB_ID ADC error callback ID 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID ADC group injected conversion complet 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_MSPINIT_CB_ID ADC Msp Init callback ID 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_MSPDEINIT_CB_ID ADC Msp DeInit callback ID 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param pCallback pointer to the Callback function 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_RegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Callb 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef status = HAL_OK; 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (pCallback == NULL) 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_ERROR; 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->State & HAL_ADC_STATE_READY) != 0UL) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 10 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** switch (CallbackID) 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_CONVERSION_COMPLETE_CB_ID : 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvCpltCallback = pCallback; 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_CONVERSION_HALF_CB_ID : 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvHalfCpltCallback = pCallback; 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID : 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->LevelOutOfWindowCallback = pCallback; 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_ERROR_CB_ID : 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback = pCallback; 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID : 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->InjectedConvCpltCallback = pCallback; 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPINIT_CB_ID : 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback = pCallback; 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPDEINIT_CB_ID : 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback = pCallback; 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** default : 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else if (HAL_ADC_STATE_RESET == hadc->State) 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** switch (CallbackID) 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPINIT_CB_ID : 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback = pCallback; 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPDEINIT_CB_ID : 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback = pCallback; 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** default : 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 11 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return status; 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Unregister a ADC Callback 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * ADC callback is redirected to the weak predefined callback 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc Pointer to a ADC_HandleTypeDef structure that contains 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param CallbackID ID of the callback to be unregistered 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * This parameter can be one of the following values: 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_CONVERSION_COMPLETE_CB_ID ADC conversion complete callback ID 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_CONVERSION_HALF_CB_ID ADC conversion DMA half-transfer call 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID ADC analog watchdog 1 callback ID 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_ERROR_CB_ID ADC error callback ID 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID ADC group injected conversion complet 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_MSPINIT_CB_ID ADC Msp Init callback ID 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg @ref HAL_ADC_MSPDEINIT_CB_ID ADC Msp DeInit callback ID 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_UnRegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Cal 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef status = HAL_OK; 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->State & HAL_ADC_STATE_READY) != 0UL) 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** switch (CallbackID) 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_CONVERSION_COMPLETE_CB_ID : 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvCpltCallback = HAL_ADC_ConvCpltCallback; 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_CONVERSION_HALF_CB_ID : 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvHalfCpltCallback = HAL_ADC_ConvHalfCpltCallback; 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID : 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->LevelOutOfWindowCallback = HAL_ADC_LevelOutOfWindowCallback; 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_ERROR_CB_ID : 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback = HAL_ADC_ErrorCallback; 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID : ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 12 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->InjectedConvCpltCallback = HAL_ADCEx_InjectedConvCpltCallback; 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPINIT_CB_ID : 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit */ 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPDEINIT_CB_ID : 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit */ 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** default : 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else if (HAL_ADC_STATE_RESET == hadc->State) 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** switch (CallbackID) 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPINIT_CB_ID : 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** case HAL_ADC_MSPDEINIT_CB_ID : 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** default : 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** break; 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update the error code */ 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK; 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return error status */ 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** status = HAL_ERROR; 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return status; 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Initializes the ADC MSP. ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 13 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_MspInit(ADC_HandleTypeDef *hadc) 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_MspInit could be implemented in the user file 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief DeInitializes the ADC MSP. 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_MspDeInit(ADC_HandleTypeDef *hadc) 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_MspDeInit could be implemented in the user file 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @} 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group2 IO operation functions 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief IO operation functions 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### IO operation functions ##### 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] This section provides functions allowing to: 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start conversion of regular channel. 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop conversion of regular channel. 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start conversion of regular channel and enable interrupt. 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop conversion of regular channel and disable interrupt. 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Start conversion of regular channel and enable DMA transfer. 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Stop conversion of regular channel and disable DMA transfer. 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Handle ADC interrupt request. 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Enables ADC and starts conversion of the regular channels. 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 14 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start(ADC_HandleTypeDef *hadc) 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the ADC peripheral */ 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Tstab time the ADC's stabilization */ 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the Peripheral */ 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE(hadc); 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Delay for ADC stabilization time */ 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Compute number of CPU cycles to wait for */ 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter--; 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Start conversion if ADC is effectively enabled */ 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Clear state bitfield related to regular group conversion results */ 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Set state bitfield related to regular group operation */ 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY); 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* If conversions on group regular are also triggering group injected, */ 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* update ADC state. */ 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET) 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, HAL_ADC_STATE_INJ_EOC, HAL_ADC_STATE_INJ_BUSY); 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* State machine update: Check if an injected conversion is ongoing */ 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC error code fields related to conversions on group regular */ 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA)); 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC all error code fields */ 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 15 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Unlock before starting ADC conversions: in case of potential */ 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* interruption, to let the process to ADC IRQ Handler. */ 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Pointer to the common control register to which is belonging hadc */ 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */ 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* control register) */ 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear regular group conversion flag and overrun flag */ 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR); 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if Multimode enabled */ 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC123_COMMON->CCR & ADC_CCR_M 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if no external trigger present enable software conversion of regular channels */ 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if instance of handle correspond to ADC1 and no external trigger present enable software 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET)) 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to error */ 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to ADC IP internal error */ 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 16 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Disables ADC and stop conversion of regular channels. 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note Caution: This function will stop also injected channels. 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status. 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop(ADC_HandleTypeDef *hadc) 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Stop potential conversion on going, on regular and injected groups */ 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC peripheral */ 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE(hadc); 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC is effectively disabled */ 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY); 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Poll for regular conversion complete 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note ADC conversion flags EOS (end of sequence) and EOC (end of 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * conversion) are cleared by this function. 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note This function cannot be used in a particular setup: ADC configured 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * in DMA mode and polling for end of each conversion (ADC init 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * parameter "EOCSelection" set to ADC_EOC_SINGLE_CONV). 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * In this case, DMA resets the flag EOC and polling cannot be 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * performed on each conversion. Nevertheless, polling can still 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * be performed on the complete sequence. 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param Timeout Timeout value in millisecond. 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_PollForConversion(ADC_HandleTypeDef *hadc, uint32_t Timeout) 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 17 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Verification that ADC configuration is compliant with polling for */ 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* each conversion: */ 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Particular case is ADC configured in DMA mode and ADC sequencer with */ 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* several ranks and polling for end of each conversion. */ 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* For code simplicity sake, this particular case is generalized to */ 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* ADC configured in DMA mode and polling for end of each conversion. */ 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_EOCS) && 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)) 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to error */ 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_ERROR; 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Get tick */ 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tickstart = HAL_GetTick(); 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag */ 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOC))) 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if timeout is disabled (set to infinite wait) */ 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (Timeout != HAL_MAX_DELAY) 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* New check to avoid false timeout detection in case of preemption */ 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOC))) 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to timeout */ 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT); 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_TIMEOUT; 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear regular group conversion flag */ 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_STRT | ADC_FLAG_EOC); 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine */ 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Determine whether any further conversion upcoming on group regular */ 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by external trigger, continuous mode or scan sequence on going. */ 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* The test of scan sequence on going is done either with scan */ 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* sequence disabled or with end of conversion flag set to */ 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* of end of sequence. */ 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (ADC_IS_SOFTWARE_START_REGULAR(hadc) && ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 18 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY); 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return ADC state */ 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Poll for conversion event 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param EventType the ADC event type. 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * This parameter can be one of the following values: 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg ADC_AWD_EVENT: ADC Analog watch Dog event. 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @arg ADC_OVR_EVENT: ADC Overrun event. 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param Timeout Timeout value in millisecond. 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_PollForEvent(ADC_HandleTypeDef *hadc, uint32_t EventType, uint32_t Timeou 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EVENT_TYPE(EventType)); 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Get tick */ 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tickstart = HAL_GetTick(); 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check selected event flag */ 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (!(__HAL_ADC_GET_FLAG(hadc, EventType))) 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check for the Timeout */ 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (Timeout != HAL_MAX_DELAY) 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* New check to avoid false timeout detection in case of preemption */ 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (!(__HAL_ADC_GET_FLAG(hadc, EventType))) 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to timeout */ 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT); 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_TIMEOUT; ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 19 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Analog watchdog (level out of window) event */ 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (EventType == ADC_AWD_EVENT) 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_AWD1); 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear ADC analog watchdog flag */ 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD); 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Overrun event */ 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_OVR); 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to overrun */ 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR); 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear ADC overrun flag */ 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR); 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return ADC state */ 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Enables the interrupt and starts ADC conversion of regular channels. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status. 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start_IT(ADC_HandleTypeDef *hadc) 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the ADC peripheral */ 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Tstab time the ADC's stabilization */ 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the Peripheral */ 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE(hadc); 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 20 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Delay for ADC stabilization time */ 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Compute number of CPU cycles to wait for */ 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter--; 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Start conversion if ADC is effectively enabled */ 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Clear state bitfield related to regular group conversion results */ 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Set state bitfield related to regular group operation */ 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY); 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* If conversions on group regular are also triggering group injected, */ 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* update ADC state. */ 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET) 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, HAL_ADC_STATE_INJ_EOC, HAL_ADC_STATE_INJ_BUSY); 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* State machine update: Check if an injected conversion is ongoing */ 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC error code fields related to conversions on group regular */ 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA)); 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC all error code fields */ 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Unlock before starting ADC conversions: in case of potential */ 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* interruption, to let the process to ADC IRQ Handler. */ 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Pointer to the common control register to which is belonging hadc */ 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */ 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* control register) */ 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear regular group conversion flag and overrun flag */ 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR); 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable end of conversion interrupt for regular group */ 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_OVR)); 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if Multimode enabled */ 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 21 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC123_COMMON->CCR & ADC_CCR_M 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if no external trigger present enable software conversion of regular channels */ 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if instance of handle correspond to ADC1 and no external trigger present enable software 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET)) 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to error */ 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to ADC IP internal error */ 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Disables the interrupt and stop ADC conversion of regular channels. 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note Caution: This function will stop also injected channels. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop_IT(ADC_HandleTypeDef *hadc) 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Stop potential conversion on going, on regular and injected groups */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 22 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC peripheral */ 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE(hadc); 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC is effectively disabled */ 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC end of conversion interrupt for regular group */ 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_OVR)); 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY); 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Handles ADC interrupt request 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** void HAL_ADC_IRQHandler(ADC_HandleTypeDef *hadc) 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp_sr = hadc->Instance->SR; 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp_cr1 = hadc->Instance->CR1; 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion)); 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection)); 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp1 = tmp_sr & ADC_FLAG_EOC; 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_EOC; 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag for regular channels */ 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (tmp1 && tmp2) 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update state machine on conversion status if not in error state */ 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL)) 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Determine whether any further conversion upcoming on group regular */ 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by external trigger, continuous mode or scan sequence on going. */ 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* The test of scan sequence on going is done either with scan */ 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* sequence disabled or with end of conversion flag set to */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 23 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* of end of sequence. */ 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC end of single conversion interrupt on group regular */ 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: Overrun interrupt was enabled with EOC interrupt in */ 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* HAL_ADC_Start_IT(), but is not disabled here because can be used */ 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by overrun IRQ process below. */ 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC); 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY); 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Conversion complete callback */ 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvCpltCallback(hadc); 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ConvCpltCallback(hadc); 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear regular group conversion flag */ 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_STRT | ADC_FLAG_EOC); 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp1 = tmp_sr & ADC_FLAG_JEOC; 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_JEOC; 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag for injected channels */ 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (tmp1 && tmp2) 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update state machine on conversion status if not in error state */ 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL)) 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_INJ_EOC); 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Determine whether any further conversion upcoming on group injected */ 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by external trigger, scan sequence on going or by automatic injected */ 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* conversion from group regular (same conditions as group regular */ 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* interruption disabling above). */ 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (ADC_IS_SOFTWARE_START_INJECTED(hadc) && 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC end of single conversion interrupt on group injected */ 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_JEOC); ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 24 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_INJ_BUSY); 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Conversion complete callback */ 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Conversion complete callback */ 1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->InjectedConvCpltCallback(hadc); 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADCEx_InjectedConvCpltCallback(hadc); 1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear injected group conversion flag */ 1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_JSTRT | ADC_FLAG_JEOC)); 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp1 = tmp_sr & ADC_FLAG_AWD; 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_AWD; 1309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Analog watchdog flag */ 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (tmp1 && tmp2) 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_AWD)) 1313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_AWD1); 1316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Level out of window callback */ 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 1319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->LevelOutOfWindowCallback(hadc); 1320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_LevelOutOfWindowCallback(hadc); 1322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 1323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the ADC analog watchdog flag */ 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD); 1326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp1 = tmp_sr & ADC_FLAG_OVR; 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_OVR; 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Overrun flag */ 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (tmp1 && tmp2) 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: On STM32F4, ADC overrun can be set through other parameters */ 1335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* refer to description of parameter "EOCSelection" for more */ 1336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* details. */ 1337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to overrun */ 1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR); 1340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear ADC overrun flag */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 25 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR); 1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Error callback */ 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback(hadc); 1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ErrorCallback(hadc); 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the Overrun flag */ 1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR); 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Enables ADC DMA request after last transfer (Single-ADC mode) and enables ADC periphera 1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param pData The destination Buffer address. 1361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param Length The length of data to be transferred from ADC peripheral to memory. 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start_DMA(ADC_HandleTypeDef *hadc, uint32_t *pData, uint32_t Length) 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the ADC peripheral */ 1377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Tstab time the ADC's stabilization */ 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 1380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the Peripheral */ 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE(hadc); 1383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Delay for ADC stabilization time */ 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Compute number of CPU cycles to wait for */ 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter--; 1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check ADC DMA Mode */ 1394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - disable the DMA Mode if it is already enabled */ 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_DMA) == ADC_CR2_DMA) 1396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->Instance->CR2, ADC_CR2_DMA); 1398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 26 1399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Start conversion if ADC is effectively enabled */ 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 1402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Clear state bitfield related to regular group conversion results */ 1405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* - Set state bitfield related to regular group operation */ 1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 1407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY); 1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* If conversions on group regular are also triggering group injected, */ 1411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* update ADC state. */ 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET) 1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, HAL_ADC_STATE_INJ_EOC, HAL_ADC_STATE_INJ_BUSY); 1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* State machine update: Check if an injected conversion is ongoing */ 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC error code fields related to conversions on group regular */ 1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA)); 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset ADC all error code fields */ 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_CLEAR_ERRORCODE(hadc); 1427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Unlock before starting ADC conversions: in case of potential */ 1431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* interruption, to let the process to ADC IRQ Handler. */ 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Pointer to the common control register to which is belonging hadc */ 1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */ 1436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* control register) */ 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the DMA transfer complete callback */ 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->DMA_Handle->XferCpltCallback = ADC_DMAConvCplt; 1441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the DMA half transfer complete callback */ 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->DMA_Handle->XferHalfCpltCallback = ADC_DMAHalfConvCplt; 1444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the DMA error callback */ 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->DMA_Handle->XferErrorCallback = ADC_DMAError; 1447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Manage ADC and DMA start: ADC overrun interruption, DMA start, ADC */ 1450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* start (in case of SW start): */ 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear regular group conversion flag and overrun flag */ 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR); 1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 27 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable ADC overrun interrupt */ 1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR); 1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable ADC DMA mode */ 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= ADC_CR2_DMA; 1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Start the DMA channel */ 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_DMA_Start_IT(hadc->DMA_Handle, (uint32_t)&hadc->Instance->DR, (uint32_t)pData, Length); 1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if Multimode enabled */ 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 1467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC123_COMMON->CCR & ADC_CCR_M 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if no external trigger present enable software conversion of regular channels */ 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3) 1480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */ 1482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if instance of handle correspond to ADC1 and no external trigger present enable software 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET)) 1487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC software conversion for regular group */ 1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 1490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to error */ 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to ADC IP internal error */ 1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Disables ADC DMA (Single-ADC mode) and disables ADC peripheral 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop_DMA(ADC_HandleTypeDef *hadc) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 28 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Stop potential conversion on going, on regular and injected groups */ 1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC peripheral */ 1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE(hadc); 1525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if ADC is effectively disabled */ 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 1528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the selected ADC DMA mode */ 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~ADC_CR2_DMA; 1531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the DMA channel (in case of DMA in circular mode or stop while */ 1533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* DMA transfer is on going) */ 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->DMA_Handle->State == HAL_DMA_STATE_BUSY) 1535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp_hal_status = HAL_DMA_Abort(hadc->DMA_Handle); 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check if DMA channel effectively disabled */ 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (tmp_hal_status != HAL_OK) 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine to error */ 1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_DMA); 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC overrun interrupt */ 1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_OVR); 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_STATE_CLR_SET(hadc->State, 1551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY); 1553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return tmp_hal_status; 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Gets the converted value from data register of regular channel. 1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval Converted value 1567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetValue(ADC_HandleTypeDef *hadc) 1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 29 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return the selected ADC converted value */ 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return hadc->Instance->DR; 1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Regular conversion complete callback in non blocking mode 1576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef *hadc) 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_ConvCpltCallback could be implemented in the user file 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Regular conversion half DMA transfer callback in non blocking mode 1591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ConvHalfCpltCallback(ADC_HandleTypeDef *hadc) 1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 1599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_ConvHalfCpltCallback could be implemented in the user file 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Analog watchdog callback in non blocking mode 1606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_LevelOutOfWindowCallback(ADC_HandleTypeDef *hadc) 1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 1613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 1614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_LevelOoutOfWindowCallback could be implemented in the user file 1616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Error ADC callback. 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note In case of error due to overrun when using ADC with DMA transfer 1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * (HAL ADC handle parameter "ErrorCode" to state "HAL_ADC_ERROR_OVR"): 1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * - Reinitialize the DMA using function "HAL_ADC_Stop_DMA()". 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * - If needed, restart a new ADC conversion using function 1625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * "HAL_ADC_Start_DMA()" 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * (this function is also clearing overrun flag) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 30 1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ErrorCallback(ADC_HandleTypeDef *hadc) 1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** UNUSED(hadc); 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** the HAL_ADC_ErrorCallback could be implemented in the user file 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @} 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group3 Peripheral Control functions 1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Peripheral Control functions 1646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * 1647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim 1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### Peripheral Control functions ##### 1650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 1651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] This section provides functions allowing to: 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Configure regular channels. 1653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Configure injected channels. 1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Configure multimode. 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Configure the analog watch dog. 1656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim 1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 1659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Configures for the selected ADC regular channel its corresponding 1663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * rank in the sequencer and its sample time. 1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param sConfig ADC configuration structure. 1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 1668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_ConfigChannel(ADC_HandleTypeDef *hadc, ADC_ChannelConfTypeDef *sConfig) 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_CHANNEL(sConfig->Channel)); 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_RANK(sConfig->Rank)); 1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_SAMPLE_TIME(sConfig->SamplingTime)); 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if ADC_Channel_10 ... ADC_Channel_18 is selected */ 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (sConfig->Channel > ADC_CHANNEL_9) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 31 1684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the old sample time */ 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SMPR1 &= ~ADC_SMPR1(ADC_SMPR1_SMP10, sConfig->Channel); 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the new sample time */ 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SMPR1 |= ADC_SMPR1(sConfig->SamplingTime, sConfig->Channel); 1690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else /* ADC_Channel include in ADC_Channel_[0..9] */ 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the old sample time */ 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SMPR2 &= ~ADC_SMPR2(ADC_SMPR2_SMP0, sConfig->Channel); 1695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the new sample time */ 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SMPR2 |= ADC_SMPR2(sConfig->SamplingTime, sConfig->Channel); 1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* For Rank 1 to 6 */ 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (sConfig->Rank < 7U) 1702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the old SQx bits for the selected rank */ 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR3 &= ~ADC_SQR3_RK(ADC_SQR3_SQ1, sConfig->Rank); 1705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the SQx bits for the selected rank */ 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR3 |= ADC_SQR3_RK(sConfig->Channel, sConfig->Rank); 1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* For Rank 7 to 12 */ 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else if (sConfig->Rank < 13U) 1711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the old SQx bits for the selected rank */ 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR2 &= ~ADC_SQR2_RK(ADC_SQR2_SQ7, sConfig->Rank); 1714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the SQx bits for the selected rank */ 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR2 |= ADC_SQR2_RK(sConfig->Channel, sConfig->Rank); 1717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* For Rank 13 to 16 */ 1719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the old SQx bits for the selected rank */ 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR1 &= ~ADC_SQR1_RK(ADC_SQR1_SQ13, sConfig->Rank); 1723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the SQx bits for the selected rank */ 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR1 |= ADC_SQR1_RK(sConfig->Channel, sConfig->Rank); 1726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Pointer to the common control register to which is belonging hadc */ 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */ 1730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* control register) */ 1731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 1732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if ADC1 Channel_18 is selected for VBAT Channel ennable VBATE */ 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) && (sConfig->Channel == ADC_CHANNEL_VBAT)) 1735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the TEMPSENSOR channel in case of using board with multiplixed ADC_CHANNEL_VBAT & AD 1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((uint16_t)ADC_CHANNEL_TEMPSENSOR == (uint16_t)ADC_CHANNEL_VBAT) 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR &= ~ADC_CCR_TSVREFE; 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 32 1741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the VBAT channel*/ 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR |= ADC_CCR_VBATE; 1743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* if ADC1 Channel_16 or Channel_18 is selected for Temperature sensor or 1746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** Channel_17 is selected for VREFINT enable TSVREFE */ 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->Instance == ADC1) && ((sConfig->Channel == ADC_CHANNEL_TEMPSENSOR) || (sConfig->Channe 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the VBAT channel in case of using board with multiplixed ADC_CHANNEL_VBAT & ADC_CHAN 1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((uint16_t)ADC_CHANNEL_TEMPSENSOR == (uint16_t)ADC_CHANNEL_VBAT) 1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR &= ~ADC_CCR_VBATE; 1753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the Temperature sensor and VREFINT channel*/ 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR |= ADC_CCR_TSVREFE; 1756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (sConfig->Channel == ADC_CHANNEL_TEMPSENSOR) 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Delay for temperature sensor stabilization time */ 1760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Compute number of CPU cycles to wait for */ 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter = (ADC_TEMPSENSOR_DELAY_US * (SystemCoreClock / 1000000U)); 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** counter--; 1765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Configures the analog watchdog. 1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @note Analog watchdog thresholds can be modified while ADC conversion 1779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * is on going. 1780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * In this case, some constraints must be taken into account: 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * The programmed threshold values are effective from the next 1782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * ADC EOC (end of unitary conversion). 1783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * Considering that registers write delay may happen due to 1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * bus activity, this might cause an uncertainty on the 1785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * effective timing of the new programmed threshold values. 1786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param AnalogWDGConfig pointer to an ADC_AnalogWDGConfTypeDef structure 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * that contains the configuration information of ADC analog watchdog. 1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL status 1791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_AnalogWDGConfig(ADC_HandleTypeDef *hadc, ADC_AnalogWDGConfTypeDef *Analog 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT 1795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp = 0U; 1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_FULL_ASSERT */ 1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 33 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_ANALOG_WATCHDOG(AnalogWDGConfig->WatchdogMode)); 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_CHANNEL(AnalogWDGConfig->Channel)); 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(AnalogWDGConfig->ITMode)); 1802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT 1804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp = ADC_GET_RESOLUTION(hadc); 1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_RANGE(tmp, AnalogWDGConfig->HighThreshold)); 1806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_RANGE(tmp, AnalogWDGConfig->LowThreshold)); 1807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_FULL_ASSERT */ 1808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process locked */ 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_LOCK(hadc); 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (AnalogWDGConfig->ITMode == ENABLE) 1813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the ADC Analog watchdog interrupt */ 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_AWD); 1816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the ADC Analog watchdog interrupt */ 1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_AWD); 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear AWDEN, JAWDEN and AWDSGL bits */ 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~(ADC_CR1_AWDSGL | ADC_CR1_JAWDEN | ADC_CR1_AWDEN); 1825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the analog watchdog enable mode */ 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= AnalogWDGConfig->WatchdogMode; 1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the high threshold */ 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->HTR = AnalogWDGConfig->HighThreshold; 1831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the low threshold */ 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->LTR = AnalogWDGConfig->LowThreshold; 1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Clear the Analog watchdog channel select bits */ 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~ADC_CR1_AWDCH; 1837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the Analog watchdog channel */ 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= (uint32_t)((uint16_t)(AnalogWDGConfig->Channel)); 1840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Process unlocked */ 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_UNLOCK(hadc); 1843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return function status */ 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return HAL_OK; 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @} 1850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group4 ADC Peripheral State functions 1853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief ADC Peripheral State functions 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 34 1855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim 1856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ##### Peripheral State and errors functions ##### 1858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** =============================================================================== 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** [..] 1860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** This subsection provides functions allowing to 1861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Check the ADC state 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (+) Check the ADC Error 1863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim 1865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief return the ADC state 1870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval HAL state 1873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetState(ADC_HandleTypeDef *hadc) 1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return ADC state */ 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return hadc->State; 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Return the ADC error code 1882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval ADC Error Code 1885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetError(ADC_HandleTypeDef *hadc) 1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return hadc->ErrorCode; 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @} 1893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup ADC_Private_Functions 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @{ 1897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief Initializes the ADCx peripheral according to the specified parameters 1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * in the ADC_InitStruct without initializing the ADC MSP. 1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 1903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified ADC. 1904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_Init(ADC_HandleTypeDef *hadc) 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 29 .loc 1 1907 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 35 33 @ link register save eliminated. 1908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 34 .loc 1 1908 3 view .LVU1 1909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC parameters */ 1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Pointer to the common control register to which is belonging hadc */ 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */ 1913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* control register) */ 1914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 35 .loc 1 1914 3 view .LVU2 1915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the ADC clock prescaler */ 1917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR &= ~(ADC_CCR_ADCPRE); 36 .loc 1 1917 3 view .LVU3 37 .loc 1 1917 22 is_stmt 0 view .LVU4 38 0000 4A4B ldr r3, .L6 39 0002 5A68 ldr r2, [r3, #4] 40 0004 22F44032 bic r2, r2, #196608 41 0008 5A60 str r2, [r3, #4] 1918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmpADC_Common->CCR |= hadc->Init.ClockPrescaler; 42 .loc 1 1918 3 is_stmt 1 view .LVU5 43 .loc 1 1918 22 is_stmt 0 view .LVU6 44 000a 5A68 ldr r2, [r3, #4] 45 .loc 1 1918 36 view .LVU7 46 000c 4168 ldr r1, [r0, #4] 47 .loc 1 1918 22 view .LVU8 48 000e 0A43 orrs r2, r2, r1 49 0010 5A60 str r2, [r3, #4] 1919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC scan mode */ 1921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~(ADC_CR1_SCAN); 50 .loc 1 1921 3 is_stmt 1 view .LVU9 51 .loc 1 1921 7 is_stmt 0 view .LVU10 52 0012 0268 ldr r2, [r0] 53 .loc 1 1921 23 view .LVU11 54 0014 5368 ldr r3, [r2, #4] 55 0016 23F48073 bic r3, r3, #256 56 001a 5360 str r3, [r2, #4] 1922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= ADC_CR1_SCANCONV(hadc->Init.ScanConvMode); 57 .loc 1 1922 3 is_stmt 1 view .LVU12 58 .loc 1 1922 7 is_stmt 0 view .LVU13 59 001c 0268 ldr r2, [r0] 60 .loc 1 1922 23 view .LVU14 61 001e 5368 ldr r3, [r2, #4] 62 .loc 1 1922 27 view .LVU15 63 0020 0169 ldr r1, [r0, #16] 64 .loc 1 1922 23 view .LVU16 65 0022 43EA0123 orr r3, r3, r1, lsl #8 66 0026 5360 str r3, [r2, #4] 1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC resolution */ 1925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~(ADC_CR1_RES); 67 .loc 1 1925 3 is_stmt 1 view .LVU17 68 .loc 1 1925 7 is_stmt 0 view .LVU18 69 0028 0268 ldr r2, [r0] 70 .loc 1 1925 23 view .LVU19 71 002a 5368 ldr r3, [r2, #4] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 36 72 002c 23F04073 bic r3, r3, #50331648 73 0030 5360 str r3, [r2, #4] 1926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= hadc->Init.Resolution; 74 .loc 1 1926 3 is_stmt 1 view .LVU20 75 .loc 1 1926 7 is_stmt 0 view .LVU21 76 0032 0268 ldr r2, [r0] 77 .loc 1 1926 23 view .LVU22 78 0034 5368 ldr r3, [r2, #4] 79 .loc 1 1926 37 view .LVU23 80 0036 8168 ldr r1, [r0, #8] 81 .loc 1 1926 23 view .LVU24 82 0038 0B43 orrs r3, r3, r1 83 003a 5360 str r3, [r2, #4] 1927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC data alignment */ 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_ALIGN); 84 .loc 1 1929 3 is_stmt 1 view .LVU25 85 .loc 1 1929 7 is_stmt 0 view .LVU26 86 003c 0268 ldr r2, [r0] 87 .loc 1 1929 23 view .LVU27 88 003e 9368 ldr r3, [r2, #8] 89 0040 23F40063 bic r3, r3, #2048 90 0044 9360 str r3, [r2, #8] 1930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= hadc->Init.DataAlign; 91 .loc 1 1930 3 is_stmt 1 view .LVU28 92 .loc 1 1930 7 is_stmt 0 view .LVU29 93 0046 0268 ldr r2, [r0] 94 .loc 1 1930 23 view .LVU30 95 0048 9368 ldr r3, [r2, #8] 96 .loc 1 1930 36 view .LVU31 97 004a C168 ldr r1, [r0, #12] 98 .loc 1 1930 23 view .LVU32 99 004c 0B43 orrs r3, r3, r1 100 004e 9360 str r3, [r2, #8] 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable external trigger if trigger selection is different of software */ 1933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* start. */ 1934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: This configuration keeps the hardware feature of parameter */ 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* ExternalTrigConvEdge "trigger edge none" equivalent to */ 1936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* software start. */ 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->Init.ExternalTrigConv != ADC_SOFTWARE_START) 101 .loc 1 1937 3 is_stmt 1 view .LVU33 102 .loc 1 1937 17 is_stmt 0 view .LVU34 103 0050 826A ldr r2, [r0, #40] 104 .loc 1 1937 6 view .LVU35 105 0052 374B ldr r3, .L6+4 106 0054 9A42 cmp r2, r3 107 0056 57D0 beq .L2 1938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Select external trigger to start conversion */ 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTSEL); 108 .loc 1 1940 5 is_stmt 1 view .LVU36 109 .loc 1 1940 9 is_stmt 0 view .LVU37 110 0058 0268 ldr r2, [r0] 111 .loc 1 1940 25 view .LVU38 112 005a 9368 ldr r3, [r2, #8] 113 005c 23F07063 bic r3, r3, #251658240 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 37 114 0060 9360 str r3, [r2, #8] 1941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= hadc->Init.ExternalTrigConv; 115 .loc 1 1941 5 is_stmt 1 view .LVU39 116 .loc 1 1941 9 is_stmt 0 view .LVU40 117 0062 0268 ldr r2, [r0] 118 .loc 1 1941 25 view .LVU41 119 0064 9368 ldr r3, [r2, #8] 120 .loc 1 1941 38 view .LVU42 121 0066 816A ldr r1, [r0, #40] 122 .loc 1 1941 25 view .LVU43 123 0068 0B43 orrs r3, r3, r1 124 006a 9360 str r3, [r2, #8] 1942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Select external trigger polarity */ 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN); 125 .loc 1 1944 5 is_stmt 1 view .LVU44 126 .loc 1 1944 9 is_stmt 0 view .LVU45 127 006c 0268 ldr r2, [r0] 128 .loc 1 1944 25 view .LVU46 129 006e 9368 ldr r3, [r2, #8] 130 0070 23F04053 bic r3, r3, #805306368 131 0074 9360 str r3, [r2, #8] 1945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= hadc->Init.ExternalTrigConvEdge; 132 .loc 1 1945 5 is_stmt 1 view .LVU47 133 .loc 1 1945 9 is_stmt 0 view .LVU48 134 0076 0268 ldr r2, [r0] 135 .loc 1 1945 25 view .LVU49 136 0078 9368 ldr r3, [r2, #8] 137 .loc 1 1945 38 view .LVU50 138 007a C16A ldr r1, [r0, #44] 139 .loc 1 1945 25 view .LVU51 140 007c 0B43 orrs r3, r3, r1 141 007e 9360 str r3, [r2, #8] 142 .L3: 1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Reset the external trigger */ 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTSEL); 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN); 1952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable or disable ADC continuous conversion mode */ 1955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_CONT); 143 .loc 1 1955 3 is_stmt 1 view .LVU52 144 .loc 1 1955 7 is_stmt 0 view .LVU53 145 0080 0268 ldr r2, [r0] 146 .loc 1 1955 23 view .LVU54 147 0082 9368 ldr r3, [r2, #8] 148 0084 23F00203 bic r3, r3, #2 149 0088 9360 str r3, [r2, #8] 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= ADC_CR2_CONTINUOUS((uint32_t)hadc->Init.ContinuousConvMode); 150 .loc 1 1956 3 is_stmt 1 view .LVU55 151 .loc 1 1956 7 is_stmt 0 view .LVU56 152 008a 0268 ldr r2, [r0] 153 .loc 1 1956 23 view .LVU57 154 008c 9368 ldr r3, [r2, #8] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 38 155 .loc 1 1956 26 view .LVU58 156 008e 017E ldrb r1, [r0, #24] @ zero_extendqisi2 157 .loc 1 1956 23 view .LVU59 158 0090 43EA4103 orr r3, r3, r1, lsl #1 159 0094 9360 str r3, [r2, #8] 1957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (hadc->Init.DiscontinuousConvMode != DISABLE) 160 .loc 1 1958 3 is_stmt 1 view .LVU60 161 .loc 1 1958 17 is_stmt 0 view .LVU61 162 0096 90F82030 ldrb r3, [r0, #32] @ zero_extendqisi2 163 .loc 1 1958 6 view .LVU62 164 009a 002B cmp r3, #0 165 009c 3FD0 beq .L4 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_DISC_NUMBER(hadc->Init.NbrOfDiscConversion)); 166 .loc 1 1960 5 is_stmt 1 view .LVU63 1961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable the selected ADC regular discontinuous mode */ 1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= (uint32_t)ADC_CR1_DISCEN; 167 .loc 1 1963 5 view .LVU64 168 .loc 1 1963 9 is_stmt 0 view .LVU65 169 009e 0268 ldr r2, [r0] 170 .loc 1 1963 25 view .LVU66 171 00a0 5368 ldr r3, [r2, #4] 172 00a2 43F40063 orr r3, r3, #2048 173 00a6 5360 str r3, [r2, #4] 1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set the number of channels to be converted in discontinuous mode */ 1966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~(ADC_CR1_DISCNUM); 174 .loc 1 1966 5 is_stmt 1 view .LVU67 175 .loc 1 1966 9 is_stmt 0 view .LVU68 176 00a8 0268 ldr r2, [r0] 177 .loc 1 1966 25 view .LVU69 178 00aa 5368 ldr r3, [r2, #4] 179 00ac 23F46043 bic r3, r3, #57344 180 00b0 5360 str r3, [r2, #4] 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 |= ADC_CR1_DISCONTINUOUS(hadc->Init.NbrOfDiscConversion); 181 .loc 1 1967 5 is_stmt 1 view .LVU70 182 .loc 1 1967 9 is_stmt 0 view .LVU71 183 00b2 0168 ldr r1, [r0] 184 .loc 1 1967 25 view .LVU72 185 00b4 4B68 ldr r3, [r1, #4] 186 .loc 1 1967 29 view .LVU73 187 00b6 426A ldr r2, [r0, #36] 188 00b8 013A subs r2, r2, #1 189 .loc 1 1967 25 view .LVU74 190 00ba 43EA4233 orr r3, r3, r2, lsl #13 191 00be 4B60 str r3, [r1, #4] 192 .L5: 1968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 1970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable the selected ADC regular discontinuous mode */ 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR1 &= ~(ADC_CR1_DISCEN); 1973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC number of conversion */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 39 1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR1 &= ~(ADC_SQR1_L); 193 .loc 1 1976 3 is_stmt 1 view .LVU75 194 .loc 1 1976 7 is_stmt 0 view .LVU76 195 00c0 0268 ldr r2, [r0] 196 .loc 1 1976 24 view .LVU77 197 00c2 D36A ldr r3, [r2, #44] 198 00c4 23F47003 bic r3, r3, #15728640 199 00c8 D362 str r3, [r2, #44] 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->SQR1 |= ADC_SQR1(hadc->Init.NbrOfConversion); 200 .loc 1 1977 3 is_stmt 1 view .LVU78 201 .loc 1 1977 7 is_stmt 0 view .LVU79 202 00ca 0168 ldr r1, [r0] 203 .loc 1 1977 24 view .LVU80 204 00cc CB6A ldr r3, [r1, #44] 205 .loc 1 1977 28 view .LVU81 206 00ce C269 ldr r2, [r0, #28] 207 00d0 013A subs r2, r2, #1 208 .loc 1 1977 24 view .LVU82 209 00d2 43EA0253 orr r3, r3, r2, lsl #20 210 00d6 CB62 str r3, [r1, #44] 1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable or disable ADC DMA continuous request */ 1980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_DDS); 211 .loc 1 1980 3 is_stmt 1 view .LVU83 212 .loc 1 1980 7 is_stmt 0 view .LVU84 213 00d8 0268 ldr r2, [r0] 214 .loc 1 1980 23 view .LVU85 215 00da 9368 ldr r3, [r2, #8] 216 00dc 23F40073 bic r3, r3, #512 217 00e0 9360 str r3, [r2, #8] 1981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= ADC_CR2_DMAContReq((uint32_t)hadc->Init.DMAContinuousRequests); 218 .loc 1 1981 3 is_stmt 1 view .LVU86 219 .loc 1 1981 7 is_stmt 0 view .LVU87 220 00e2 0268 ldr r2, [r0] 221 .loc 1 1981 23 view .LVU88 222 00e4 9368 ldr r3, [r2, #8] 223 .loc 1 1981 26 view .LVU89 224 00e6 90F83010 ldrb r1, [r0, #48] @ zero_extendqisi2 225 .loc 1 1981 23 view .LVU90 226 00ea 43EA4123 orr r3, r3, r1, lsl #9 227 00ee 9360 str r3, [r2, #8] 1982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Enable or disable ADC end of conversion selection */ 1984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EOCS); 228 .loc 1 1984 3 is_stmt 1 view .LVU91 229 .loc 1 1984 7 is_stmt 0 view .LVU92 230 00f0 0268 ldr r2, [r0] 231 .loc 1 1984 23 view .LVU93 232 00f2 9368 ldr r3, [r2, #8] 233 00f4 23F48063 bic r3, r3, #1024 234 00f8 9360 str r3, [r2, #8] 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 |= ADC_CR2_EOCSelection(hadc->Init.EOCSelection); 235 .loc 1 1985 3 is_stmt 1 view .LVU94 236 .loc 1 1985 7 is_stmt 0 view .LVU95 237 00fa 0268 ldr r2, [r0] 238 .loc 1 1985 23 view .LVU96 239 00fc 9368 ldr r3, [r2, #8] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 40 240 .loc 1 1985 26 view .LVU97 241 00fe 4169 ldr r1, [r0, #20] 242 .loc 1 1985 23 view .LVU98 243 0100 43EA8123 orr r3, r3, r1, lsl #10 244 0104 9360 str r3, [r2, #8] 1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 245 .loc 1 1986 1 view .LVU99 246 0106 7047 bx lr 247 .L2: 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN); 248 .loc 1 1950 5 is_stmt 1 view .LVU100 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN); 249 .loc 1 1950 9 is_stmt 0 view .LVU101 250 0108 0268 ldr r2, [r0] 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN); 251 .loc 1 1950 25 view .LVU102 252 010a 9368 ldr r3, [r2, #8] 253 010c 23F07063 bic r3, r3, #251658240 254 0110 9360 str r3, [r2, #8] 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 255 .loc 1 1951 5 is_stmt 1 view .LVU103 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 256 .loc 1 1951 9 is_stmt 0 view .LVU104 257 0112 0268 ldr r2, [r0] 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 258 .loc 1 1951 25 view .LVU105 259 0114 9368 ldr r3, [r2, #8] 260 0116 23F04053 bic r3, r3, #805306368 261 011a 9360 str r3, [r2, #8] 262 011c B0E7 b .L3 263 .L4: 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 264 .loc 1 1972 5 is_stmt 1 view .LVU106 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 265 .loc 1 1972 9 is_stmt 0 view .LVU107 266 011e 0268 ldr r2, [r0] 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 267 .loc 1 1972 25 view .LVU108 268 0120 5368 ldr r3, [r2, #4] 269 0122 23F40063 bic r3, r3, #2048 270 0126 5360 str r3, [r2, #4] 271 0128 CAE7 b .L5 272 .L7: 273 012a 00BF .align 2 274 .L6: 275 012c 00230140 .word 1073816320 276 0130 0100000F .word 251658241 277 .cfi_endproc 278 .LFE261: 280 .section .text.HAL_ADC_MspInit,"ax",%progbits 281 .align 1 282 .weak HAL_ADC_MspInit 283 .syntax unified 284 .thumb 285 .thumb_func 287 HAL_ADC_MspInit: 288 .LVL1: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 41 289 .LFB241: 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 290 .loc 1 663 1 is_stmt 1 view -0 291 .cfi_startproc 292 @ args = 0, pretend = 0, frame = 0 293 @ frame_needed = 0, uses_anonymous_args = 0 294 @ link register save eliminated. 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 295 .loc 1 665 3 view .LVU110 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 296 .loc 1 669 1 is_stmt 0 view .LVU111 297 0000 7047 bx lr 298 .cfi_endproc 299 .LFE241: 301 .section .text.HAL_ADC_Init,"ax",%progbits 302 .align 1 303 .global HAL_ADC_Init 304 .syntax unified 305 .thumb 306 .thumb_func 308 HAL_ADC_Init: 309 .LVL2: 310 .LFB239: 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 311 .loc 1 312 1 is_stmt 1 view -0 312 .cfi_startproc 313 @ args = 0, pretend = 0, frame = 0 314 @ frame_needed = 0, uses_anonymous_args = 0 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 315 .loc 1 313 3 view .LVU113 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 316 .loc 1 316 3 view .LVU114 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 317 .loc 1 316 6 is_stmt 0 view .LVU115 318 0000 38B3 cbz r0, .L13 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 319 .loc 1 312 1 view .LVU116 320 0002 10B5 push {r4, lr} 321 .LCFI0: 322 .cfi_def_cfa_offset 8 323 .cfi_offset 4, -8 324 .cfi_offset 14, -4 325 0004 0446 mov r4, r0 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_CLOCKPRESCALER(hadc->Init.ClockPrescaler)); 326 .loc 1 322 3 is_stmt 1 view .LVU117 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_RESOLUTION(hadc->Init.Resolution)); 327 .loc 1 323 3 view .LVU118 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ScanConvMode)); 328 .loc 1 324 3 view .LVU119 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 329 .loc 1 325 3 view .LVU120 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG(hadc->Init.ExternalTrigConv)); 330 .loc 1 326 3 view .LVU121 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_DATA_ALIGN(hadc->Init.DataAlign)); 331 .loc 1 327 3 view .LVU122 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion)); 332 .loc 1 328 3 view .LVU123 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 42 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); 333 .loc 1 329 3 view .LVU124 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection)); 334 .loc 1 330 3 view .LVU125 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DiscontinuousConvMode)); 335 .loc 1 331 3 view .LVU126 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 336 .loc 1 332 3 view .LVU127 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 337 .loc 1 334 3 view .LVU128 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 338 .loc 1 336 5 view .LVU129 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 339 .loc 1 339 3 view .LVU130 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 340 .loc 1 339 11 is_stmt 0 view .LVU131 341 0006 036C ldr r3, [r0, #64] 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 342 .loc 1 339 6 view .LVU132 343 0008 43B1 cbz r3, .L19 344 .LVL3: 345 .L11: 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 346 .loc 1 369 3 is_stmt 1 view .LVU133 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 347 .loc 1 369 7 is_stmt 0 view .LVU134 348 000a 236C ldr r3, [r4, #64] 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 349 .loc 1 369 6 view .LVU135 350 000c 13F0100F tst r3, #16 351 0010 0BD0 beq .L20 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 352 .loc 1 389 20 view .LVU136 353 0012 0120 movs r0, #1 354 .L12: 355 .LVL4: 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 356 .loc 1 393 3 is_stmt 1 view .LVU137 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 357 .loc 1 393 3 view .LVU138 358 0014 0023 movs r3, #0 359 0016 84F83C30 strb r3, [r4, #60] 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 360 .loc 1 393 3 view .LVU139 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 361 .loc 1 396 3 view .LVU140 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 362 .loc 1 397 1 is_stmt 0 view .LVU141 363 001a 10BD pop {r4, pc} 364 .LVL5: 365 .L19: 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 366 .loc 1 357 5 is_stmt 1 view .LVU142 367 001c FFF7FEFF bl HAL_ADC_MspInit 368 .LVL6: 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 369 .loc 1 361 5 view .LVU143 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 43 370 0020 0023 movs r3, #0 371 0022 6364 str r3, [r4, #68] 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 372 .loc 1 364 5 view .LVU144 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 373 .loc 1 364 16 is_stmt 0 view .LVU145 374 0024 84F83C30 strb r3, [r4, #60] 375 0028 EFE7 b .L11 376 .L20: 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 377 .loc 1 372 5 is_stmt 1 view .LVU146 378 002a 236C ldr r3, [r4, #64] 379 002c 23F48853 bic r3, r3, #4352 380 0030 23F00203 bic r3, r3, #2 381 0034 43F00203 orr r3, r3, #2 382 0038 2364 str r3, [r4, #64] 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 383 .loc 1 377 5 view .LVU147 384 003a 2046 mov r0, r4 385 003c FFF7FEFF bl ADC_Init 386 .LVL7: 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 387 .loc 1 380 5 view .LVU148 388 0040 0020 movs r0, #0 389 0042 6064 str r0, [r4, #68] 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_BUSY_INTERNAL, 390 .loc 1 383 5 view .LVU149 391 0044 236C ldr r3, [r4, #64] 392 0046 23F00303 bic r3, r3, #3 393 004a 43F00103 orr r3, r3, #1 394 004e 2364 str r3, [r4, #64] 395 0050 E0E7 b .L12 396 .LVL8: 397 .L13: 398 .LCFI1: 399 .cfi_def_cfa_offset 0 400 .cfi_restore 4 401 .cfi_restore 14 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 402 .loc 1 318 12 is_stmt 0 view .LVU150 403 0052 0120 movs r0, #1 404 .LVL9: 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 405 .loc 1 397 1 view .LVU151 406 0054 7047 bx lr 407 .cfi_endproc 408 .LFE239: 410 .section .text.HAL_ADC_MspDeInit,"ax",%progbits 411 .align 1 412 .weak HAL_ADC_MspDeInit 413 .syntax unified 414 .thumb 415 .thumb_func 417 HAL_ADC_MspDeInit: 418 .LVL10: 419 .LFB242: 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 44 420 .loc 1 678 1 is_stmt 1 view -0 421 .cfi_startproc 422 @ args = 0, pretend = 0, frame = 0 423 @ frame_needed = 0, uses_anonymous_args = 0 424 @ link register save eliminated. 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 425 .loc 1 680 3 view .LVU153 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 426 .loc 1 684 1 is_stmt 0 view .LVU154 427 0000 7047 bx lr 428 .cfi_endproc 429 .LFE242: 431 .section .text.HAL_ADC_DeInit,"ax",%progbits 432 .align 1 433 .global HAL_ADC_DeInit 434 .syntax unified 435 .thumb 436 .thumb_func 438 HAL_ADC_DeInit: 439 .LVL11: 440 .LFB240: 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 441 .loc 1 406 1 is_stmt 1 view -0 442 .cfi_startproc 443 @ args = 0, pretend = 0, frame = 0 444 @ frame_needed = 0, uses_anonymous_args = 0 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 445 .loc 1 407 3 view .LVU156 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 446 .loc 1 410 3 view .LVU157 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 447 .loc 1 410 6 is_stmt 0 view .LVU158 448 0000 C8B1 cbz r0, .L25 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 449 .loc 1 406 1 view .LVU159 450 0002 10B5 push {r4, lr} 451 .LCFI2: 452 .cfi_def_cfa_offset 8 453 .cfi_offset 4, -8 454 .cfi_offset 14, -4 455 0004 0446 mov r4, r0 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 456 .loc 1 416 3 is_stmt 1 view .LVU160 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 457 .loc 1 419 3 view .LVU161 458 0006 036C ldr r3, [r0, #64] 459 0008 43F00203 orr r3, r3, #2 460 000c 0364 str r3, [r0, #64] 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 461 .loc 1 423 3 view .LVU162 462 000e 0268 ldr r2, [r0] 463 0010 9368 ldr r3, [r2, #8] 464 0012 23F00103 bic r3, r3, #1 465 0016 9360 str r3, [r2, #8] 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 466 .loc 1 427 3 view .LVU163 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 45 467 .loc 1 427 7 is_stmt 0 view .LVU164 468 0018 0368 ldr r3, [r0] 469 001a 9B68 ldr r3, [r3, #8] 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 470 .loc 1 427 6 view .LVU165 471 001c 13F0010F tst r3, #1 472 0020 03D0 beq .L30 473 .LVL12: 474 .L24: 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 475 .loc 1 450 3 is_stmt 1 view .LVU166 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 476 .loc 1 450 3 view .LVU167 477 0022 0020 movs r0, #0 478 0024 84F83C00 strb r0, [r4, #60] 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 479 .loc 1 450 3 view .LVU168 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 480 .loc 1 453 3 view .LVU169 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 481 .loc 1 454 1 is_stmt 0 view .LVU170 482 0028 10BD pop {r4, pc} 483 .LVL13: 484 .L30: 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 485 .loc 1 439 5 is_stmt 1 view .LVU171 486 002a FFF7FEFF bl HAL_ADC_MspDeInit 487 .LVL14: 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 488 .loc 1 443 5 view .LVU172 489 002e 0023 movs r3, #0 490 0030 6364 str r3, [r4, #68] 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 491 .loc 1 446 5 view .LVU173 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 492 .loc 1 446 17 is_stmt 0 view .LVU174 493 0032 2364 str r3, [r4, #64] 494 0034 F5E7 b .L24 495 .LVL15: 496 .L25: 497 .LCFI3: 498 .cfi_def_cfa_offset 0 499 .cfi_restore 4 500 .cfi_restore 14 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 501 .loc 1 412 12 view .LVU175 502 0036 0120 movs r0, #1 503 .LVL16: 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 504 .loc 1 454 1 view .LVU176 505 0038 7047 bx lr 506 .cfi_endproc 507 .LFE240: 509 .section .text.HAL_ADC_Start,"ax",%progbits 510 .align 1 511 .global HAL_ADC_Start 512 .syntax unified ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 46 513 .thumb 514 .thumb_func 516 HAL_ADC_Start: 517 .LVL17: 518 .LFB243: 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 519 .loc 1 717 1 is_stmt 1 view -0 520 .cfi_startproc 521 @ args = 0, pretend = 0, frame = 8 522 @ frame_needed = 0, uses_anonymous_args = 0 523 @ link register save eliminated. 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 524 .loc 1 717 1 is_stmt 0 view .LVU178 525 0000 82B0 sub sp, sp, #8 526 .LCFI4: 527 .cfi_def_cfa_offset 8 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 528 .loc 1 718 3 is_stmt 1 view .LVU179 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 529 .loc 1 718 17 is_stmt 0 view .LVU180 530 0002 0023 movs r3, #0 531 0004 0193 str r3, [sp, #4] 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 532 .loc 1 719 3 is_stmt 1 view .LVU181 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 533 .loc 1 722 3 view .LVU182 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 534 .loc 1 723 3 view .LVU183 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 535 .loc 1 726 3 view .LVU184 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 536 .loc 1 726 3 view .LVU185 537 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 538 000a 012B cmp r3, #1 539 000c 00F08980 beq .L43 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 540 .loc 1 726 3 discriminator 2 view .LVU186 541 0010 0123 movs r3, #1 542 0012 80F83C30 strb r3, [r0, #60] 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 543 .loc 1 726 3 discriminator 2 view .LVU187 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 544 .loc 1 731 3 discriminator 2 view .LVU188 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 545 .loc 1 731 12 is_stmt 0 discriminator 2 view .LVU189 546 0016 0368 ldr r3, [r0] 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 547 .loc 1 731 22 discriminator 2 view .LVU190 548 0018 9A68 ldr r2, [r3, #8] 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 549 .loc 1 731 6 discriminator 2 view .LVU191 550 001a 12F0010F tst r2, #1 551 001e 13D1 bne .L33 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 552 .loc 1 734 5 is_stmt 1 view .LVU192 553 0020 9A68 ldr r2, [r3, #8] 554 0022 42F00102 orr r2, r2, #1 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 47 555 0026 9A60 str r2, [r3, #8] 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 556 .loc 1 738 5 view .LVU193 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 557 .loc 1 738 53 is_stmt 0 view .LVU194 558 0028 414B ldr r3, .L53 559 002a 1B68 ldr r3, [r3] 560 002c 414A ldr r2, .L53+4 561 002e A2FB0323 umull r2, r3, r2, r3 562 0032 9B0C lsrs r3, r3, #18 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 563 .loc 1 738 34 view .LVU195 564 0034 03EB4303 add r3, r3, r3, lsl #1 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 565 .loc 1 738 13 view .LVU196 566 0038 0193 str r3, [sp, #4] 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 567 .loc 1 739 5 is_stmt 1 view .LVU197 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 568 .loc 1 739 11 is_stmt 0 view .LVU198 569 003a 02E0 b .L34 570 .L35: 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 571 .loc 1 741 7 is_stmt 1 view .LVU199 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 572 .loc 1 741 14 is_stmt 0 view .LVU200 573 003c 019B ldr r3, [sp, #4] 574 003e 013B subs r3, r3, #1 575 0040 0193 str r3, [sp, #4] 576 .L34: 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 577 .loc 1 739 11 is_stmt 1 view .LVU201 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 578 .loc 1 739 20 is_stmt 0 view .LVU202 579 0042 019B ldr r3, [sp, #4] 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 580 .loc 1 739 11 view .LVU203 581 0044 002B cmp r3, #0 582 0046 F9D1 bne .L35 583 .L33: 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 584 .loc 1 746 3 is_stmt 1 view .LVU204 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 585 .loc 1 746 7 is_stmt 0 view .LVU205 586 0048 0268 ldr r2, [r0] 587 004a 9368 ldr r3, [r2, #8] 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 588 .loc 1 746 6 view .LVU206 589 004c 13F0010F tst r3, #1 590 0050 5CD0 beq .L36 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 591 .loc 1 751 5 is_stmt 1 view .LVU207 592 0052 036C ldr r3, [r0, #64] 593 0054 23F4E063 bic r3, r3, #1792 594 0058 23F00103 bic r3, r3, #1 595 005c 43F48073 orr r3, r3, #256 596 0060 0364 str r3, [r0, #64] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 48 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 597 .loc 1 757 5 view .LVU208 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 598 .loc 1 757 9 is_stmt 0 view .LVU209 599 0062 5368 ldr r3, [r2, #4] 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 600 .loc 1 757 8 view .LVU210 601 0064 13F4806F tst r3, #1024 602 0068 05D0 beq .L37 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 603 .loc 1 759 7 is_stmt 1 view .LVU211 604 006a 036C ldr r3, [r0, #64] 605 006c 23F44053 bic r3, r3, #12288 606 0070 43F48053 orr r3, r3, #4096 607 0074 0364 str r3, [r0, #64] 608 .L37: 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 609 .loc 1 763 5 view .LVU212 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 610 .loc 1 763 9 is_stmt 0 view .LVU213 611 0076 036C ldr r3, [r0, #64] 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 612 .loc 1 763 8 view .LVU214 613 0078 13F4805F tst r3, #4096 614 007c 1BD0 beq .L38 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 615 .loc 1 766 7 is_stmt 1 view .LVU215 616 007e 436C ldr r3, [r0, #68] 617 0080 23F00603 bic r3, r3, #6 618 0084 4364 str r3, [r0, #68] 619 .L39: 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 620 .loc 1 777 5 view .LVU216 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 621 .loc 1 777 5 view .LVU217 622 0086 0023 movs r3, #0 623 0088 80F83C30 strb r3, [r0, #60] 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 624 .loc 1 777 5 view .LVU218 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 625 .loc 1 782 5 view .LVU219 626 .LVL18: 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 627 .loc 1 786 5 view .LVU220 628 008c 6FF02203 mvn r3, #34 629 0090 1360 str r3, [r2] 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 630 .loc 1 789 5 view .LVU221 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 631 .loc 1 789 9 is_stmt 0 view .LVU222 632 0092 294B ldr r3, .L53+8 633 0094 5B68 ldr r3, [r3, #4] 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 634 .loc 1 789 8 view .LVU223 635 0096 13F01F0F tst r3, #31 636 009a 27D1 bne .L40 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 49 637 .loc 1 792 7 is_stmt 1 view .LVU224 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 638 .loc 1 792 16 is_stmt 0 view .LVU225 639 009c 0368 ldr r3, [r0] 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 640 .loc 1 792 10 view .LVU226 641 009e 274A ldr r2, .L53+12 642 00a0 9342 cmp r3, r2 643 00a2 11D0 beq .L41 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 644 .loc 1 792 36 discriminator 1 view .LVU227 645 00a4 02F58072 add r2, r2, #256 646 00a8 9342 cmp r3, r2 647 00aa 07D0 beq .L50 648 .L42: 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 649 .loc 1 793 11 view .LVU228 650 00ac 244A ldr r2, .L53+16 651 00ae 9342 cmp r3, r2 652 00b0 14D0 beq .L51 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 653 .loc 1 826 10 view .LVU229 654 00b2 0020 movs r0, #0 655 .LVL19: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 656 .loc 1 826 10 view .LVU230 657 00b4 33E0 b .L32 658 .LVL20: 659 .L38: 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 660 .loc 1 771 7 is_stmt 1 view .LVU231 661 00b6 0023 movs r3, #0 662 00b8 4364 str r3, [r0, #68] 663 00ba E4E7 b .L39 664 .LVL21: 665 .L50: 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 666 .loc 1 792 83 is_stmt 0 discriminator 2 view .LVU232 667 00bc 02F50072 add r2, r2, #512 668 00c0 5268 ldr r2, [r2, #4] 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 669 .loc 1 792 65 discriminator 2 view .LVU233 670 00c2 12F01F0F tst r2, #31 671 00c6 F1D1 bne .L42 672 .L41: 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 673 .loc 1 797 9 is_stmt 1 view .LVU234 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 674 .loc 1 797 28 is_stmt 0 view .LVU235 675 00c8 9A68 ldr r2, [r3, #8] 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 676 .loc 1 797 12 view .LVU236 677 00ca 12F0405F tst r2, #805306368 678 00ce 2AD1 bne .L46 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 679 .loc 1 800 11 is_stmt 1 view .LVU237 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 50 680 .loc 1 800 31 is_stmt 0 view .LVU238 681 00d0 9A68 ldr r2, [r3, #8] 682 00d2 42F08042 orr r2, r2, #1073741824 683 00d6 9A60 str r2, [r3, #8] 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 684 .loc 1 826 10 view .LVU239 685 00d8 0020 movs r0, #0 686 .LVL22: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 687 .loc 1 826 10 view .LVU240 688 00da 20E0 b .L32 689 .LVL23: 690 .L51: 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 691 .loc 1 793 58 discriminator 1 view .LVU241 692 00dc 02F58072 add r2, r2, #256 693 00e0 5268 ldr r2, [r2, #4] 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 694 .loc 1 793 40 discriminator 1 view .LVU242 695 00e2 12F0100F tst r2, #16 696 00e6 EFD0 beq .L41 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 697 .loc 1 826 10 view .LVU243 698 00e8 0020 movs r0, #0 699 .LVL24: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 700 .loc 1 826 10 view .LVU244 701 00ea 18E0 b .L32 702 .LVL25: 703 .L40: 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 704 .loc 1 809 7 is_stmt 1 view .LVU245 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 705 .loc 1 809 16 is_stmt 0 view .LVU246 706 00ec 0368 ldr r3, [r0] 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 707 .loc 1 809 10 view .LVU247 708 00ee 134A ldr r2, .L53+12 709 00f0 9342 cmp r3, r2 710 00f2 01D0 beq .L52 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 711 .loc 1 826 10 view .LVU248 712 00f4 0020 movs r0, #0 713 .LVL26: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 714 .loc 1 826 10 view .LVU249 715 00f6 12E0 b .L32 716 .LVL27: 717 .L52: 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 718 .loc 1 809 55 discriminator 1 view .LVU250 719 00f8 9A68 ldr r2, [r3, #8] 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 720 .loc 1 809 36 discriminator 1 view .LVU251 721 00fa 12F0405F tst r2, #805306368 722 00fe 14D1 bne .L48 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 51 723 .loc 1 812 9 is_stmt 1 view .LVU252 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 724 .loc 1 812 29 is_stmt 0 view .LVU253 725 0100 9A68 ldr r2, [r3, #8] 726 0102 42F08042 orr r2, r2, #1073741824 727 0106 9A60 str r2, [r3, #8] 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 728 .loc 1 826 10 view .LVU254 729 0108 0020 movs r0, #0 730 .LVL28: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 731 .loc 1 826 10 view .LVU255 732 010a 08E0 b .L32 733 .LVL29: 734 .L36: 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 735 .loc 1 819 5 is_stmt 1 view .LVU256 736 010c 036C ldr r3, [r0, #64] 737 010e 43F01003 orr r3, r3, #16 738 0112 0364 str r3, [r0, #64] 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 739 .loc 1 822 5 view .LVU257 740 0114 436C ldr r3, [r0, #68] 741 0116 43F00103 orr r3, r3, #1 742 011a 4364 str r3, [r0, #68] 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 743 .loc 1 826 10 is_stmt 0 view .LVU258 744 011c 0020 movs r0, #0 745 .LVL30: 746 .L32: 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 747 .loc 1 827 1 view .LVU259 748 011e 02B0 add sp, sp, #8 749 .LCFI5: 750 .cfi_remember_state 751 .cfi_def_cfa_offset 0 752 @ sp needed 753 0120 7047 bx lr 754 .LVL31: 755 .L43: 756 .LCFI6: 757 .cfi_restore_state 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 758 .loc 1 726 3 view .LVU260 759 0122 0220 movs r0, #2 760 .LVL32: 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 761 .loc 1 726 3 view .LVU261 762 0124 FBE7 b .L32 763 .LVL33: 764 .L46: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 765 .loc 1 826 10 view .LVU262 766 0126 0020 movs r0, #0 767 .LVL34: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 768 .loc 1 826 10 view .LVU263 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 52 769 0128 F9E7 b .L32 770 .LVL35: 771 .L48: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 772 .loc 1 826 10 view .LVU264 773 012a 0020 movs r0, #0 774 .LVL36: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 775 .loc 1 826 10 view .LVU265 776 012c F7E7 b .L32 777 .L54: 778 012e 00BF .align 2 779 .L53: 780 0130 00000000 .word SystemCoreClock 781 0134 83DE1B43 .word 1125899907 782 0138 00230140 .word 1073816320 783 013c 00200140 .word 1073815552 784 0140 00220140 .word 1073816064 785 .cfi_endproc 786 .LFE243: 788 .section .text.HAL_ADC_Stop,"ax",%progbits 789 .align 1 790 .global HAL_ADC_Stop 791 .syntax unified 792 .thumb 793 .thumb_func 795 HAL_ADC_Stop: 796 .LVL37: 797 .LFB244: 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 798 .loc 1 840 1 is_stmt 1 view -0 799 .cfi_startproc 800 @ args = 0, pretend = 0, frame = 0 801 @ frame_needed = 0, uses_anonymous_args = 0 802 @ link register save eliminated. 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 803 .loc 1 842 3 view .LVU267 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 804 .loc 1 845 3 view .LVU268 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 805 .loc 1 845 3 view .LVU269 806 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 807 0004 012B cmp r3, #1 808 0006 19D0 beq .L58 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 809 .loc 1 845 3 discriminator 2 view .LVU270 810 0008 0123 movs r3, #1 811 000a 80F83C30 strb r3, [r0, #60] 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 812 .loc 1 845 3 discriminator 2 view .LVU271 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 813 .loc 1 849 3 discriminator 2 view .LVU272 814 000e 0268 ldr r2, [r0] 815 0010 9368 ldr r3, [r2, #8] 816 0012 23F00103 bic r3, r3, #1 817 0016 9360 str r3, [r2, #8] 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 53 818 .loc 1 852 3 discriminator 2 view .LVU273 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 819 .loc 1 852 7 is_stmt 0 discriminator 2 view .LVU274 820 0018 0368 ldr r3, [r0] 821 001a 9B68 ldr r3, [r3, #8] 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 822 .loc 1 852 6 discriminator 2 view .LVU275 823 001c 13F0010F tst r3, #1 824 0020 07D1 bne .L57 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 825 .loc 1 855 5 is_stmt 1 view .LVU276 826 0022 036C ldr r3, [r0, #64] 827 0024 23F48853 bic r3, r3, #4352 828 0028 23F00103 bic r3, r3, #1 829 002c 43F00103 orr r3, r3, #1 830 0030 0364 str r3, [r0, #64] 831 .L57: 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 832 .loc 1 861 3 view .LVU277 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 833 .loc 1 861 3 view .LVU278 834 0032 0023 movs r3, #0 835 0034 80F83C30 strb r3, [r0, #60] 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 836 .loc 1 861 3 view .LVU279 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 837 .loc 1 864 3 view .LVU280 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 838 .loc 1 864 10 is_stmt 0 view .LVU281 839 0038 1846 mov r0, r3 840 .LVL38: 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 841 .loc 1 864 10 view .LVU282 842 003a 7047 bx lr 843 .LVL39: 844 .L58: 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 845 .loc 1 845 3 view .LVU283 846 003c 0220 movs r0, #2 847 .LVL40: 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 848 .loc 1 865 1 view .LVU284 849 003e 7047 bx lr 850 .cfi_endproc 851 .LFE244: 853 .section .text.HAL_ADC_PollForConversion,"ax",%progbits 854 .align 1 855 .global HAL_ADC_PollForConversion 856 .syntax unified 857 .thumb 858 .thumb_func 860 HAL_ADC_PollForConversion: 861 .LVL41: 862 .LFB245: 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 863 .loc 1 883 1 is_stmt 1 view -0 864 .cfi_startproc ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 54 865 @ args = 0, pretend = 0, frame = 0 866 @ frame_needed = 0, uses_anonymous_args = 0 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 867 .loc 1 883 1 is_stmt 0 view .LVU286 868 0000 70B5 push {r4, r5, r6, lr} 869 .LCFI7: 870 .cfi_def_cfa_offset 16 871 .cfi_offset 4, -16 872 .cfi_offset 5, -12 873 .cfi_offset 6, -8 874 .cfi_offset 14, -4 875 0002 0446 mov r4, r0 876 0004 0D46 mov r5, r1 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 877 .loc 1 884 3 is_stmt 1 view .LVU287 878 .LVL42: 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)) 879 .loc 1 892 3 view .LVU288 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)) 880 .loc 1 892 7 is_stmt 0 view .LVU289 881 0006 0368 ldr r3, [r0] 882 0008 9A68 ldr r2, [r3, #8] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)) 883 .loc 1 892 6 view .LVU290 884 000a 12F4806F tst r2, #1024 885 000e 03D0 beq .L60 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 886 .loc 1 893 7 discriminator 1 view .LVU291 887 0010 9B68 ldr r3, [r3, #8] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)) 888 .loc 1 892 57 discriminator 1 view .LVU292 889 0012 13F4807F tst r3, #256 890 0016 19D1 bne .L71 891 .L60: 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 892 .loc 1 905 3 is_stmt 1 view .LVU293 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 893 .loc 1 905 15 is_stmt 0 view .LVU294 894 0018 FFF7FEFF bl HAL_GetTick 895 .LVL43: 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 896 .loc 1 905 15 view .LVU295 897 001c 0646 mov r6, r0 898 .LVL44: 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 899 .loc 1 908 3 is_stmt 1 view .LVU296 900 .L63: 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 901 .loc 1 908 9 view .LVU297 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 902 .loc 1 908 12 is_stmt 0 view .LVU298 903 001e 2368 ldr r3, [r4] 904 0020 1A68 ldr r2, [r3] 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 905 .loc 1 908 9 view .LVU299 906 0022 12F0020F tst r2, #2 907 0026 20D1 bne .L72 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 55 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 908 .loc 1 911 5 is_stmt 1 view .LVU300 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 909 .loc 1 911 8 is_stmt 0 view .LVU301 910 0028 B5F1FF3F cmp r5, #-1 911 002c F7D0 beq .L63 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 912 .loc 1 913 7 is_stmt 1 view .LVU302 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 913 .loc 1 913 10 is_stmt 0 view .LVU303 914 002e B5B9 cbnz r5, .L73 915 .L64: 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 916 .loc 1 916 9 is_stmt 1 view .LVU304 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 917 .loc 1 916 15 is_stmt 0 view .LVU305 918 0030 2368 ldr r3, [r4] 919 0032 1B68 ldr r3, [r3] 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 920 .loc 1 916 12 view .LVU306 921 0034 13F0020F tst r3, #2 922 0038 F1D1 bne .L63 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 923 .loc 1 919 11 is_stmt 1 view .LVU307 924 003a 236C ldr r3, [r4, #64] 925 003c 43F00403 orr r3, r3, #4 926 0040 2364 str r3, [r4, #64] 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 927 .loc 1 922 11 view .LVU308 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 928 .loc 1 922 11 view .LVU309 929 0042 0023 movs r3, #0 930 0044 84F83C30 strb r3, [r4, #60] 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 931 .loc 1 922 11 view .LVU310 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 932 .loc 1 924 11 view .LVU311 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 933 .loc 1 924 18 is_stmt 0 view .LVU312 934 0048 0320 movs r0, #3 935 004a 32E0 b .L61 936 .LVL45: 937 .L71: 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 938 .loc 1 896 5 is_stmt 1 view .LVU313 939 004c 036C ldr r3, [r0, #64] 940 004e 43F02003 orr r3, r3, #32 941 0052 0364 str r3, [r0, #64] 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 942 .loc 1 899 5 view .LVU314 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 943 .loc 1 899 5 view .LVU315 944 0054 0023 movs r3, #0 945 0056 80F83C30 strb r3, [r0, #60] 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 946 .loc 1 899 5 view .LVU316 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 56 947 .loc 1 901 5 view .LVU317 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 948 .loc 1 901 12 is_stmt 0 view .LVU318 949 005a 0120 movs r0, #1 950 .LVL46: 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 951 .loc 1 901 12 view .LVU319 952 005c 29E0 b .L61 953 .LVL47: 954 .L73: 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 955 .loc 1 913 32 discriminator 1 view .LVU320 956 005e FFF7FEFF bl HAL_GetTick 957 .LVL48: 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 958 .loc 1 913 46 discriminator 1 view .LVU321 959 0062 801B subs r0, r0, r6 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 960 .loc 1 913 27 discriminator 1 view .LVU322 961 0064 A842 cmp r0, r5 962 0066 DAD9 bls .L63 963 0068 E2E7 b .L64 964 .L72: 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 965 .loc 1 931 3 is_stmt 1 view .LVU323 966 006a 6FF01202 mvn r2, #18 967 006e 1A60 str r2, [r3] 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 968 .loc 1 934 3 view .LVU324 969 0070 236C ldr r3, [r4, #64] 970 0072 43F40073 orr r3, r3, #512 971 0076 2364 str r3, [r4, #64] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 972 .loc 1 942 3 view .LVU325 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 973 .loc 1 942 7 is_stmt 0 view .LVU326 974 0078 2368 ldr r3, [r4] 975 007a 9A68 ldr r2, [r3, #8] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 976 .loc 1 942 6 view .LVU327 977 007c 12F0405F tst r2, #805306368 978 0080 16D1 bne .L68 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 979 .loc 1 943 18 discriminator 1 view .LVU328 980 0082 207E ldrb r0, [r4, #24] @ zero_extendqisi2 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 981 .loc 1 942 61 discriminator 1 view .LVU329 982 0084 B0B9 cbnz r0, .L69 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 983 .loc 1 944 8 view .LVU330 984 0086 DA6A ldr r2, [r3, #44] 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 985 .loc 1 943 61 view .LVU331 986 0088 12F4700F tst r2, #15728640 987 008c 03D0 beq .L67 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 988 .loc 1 945 8 view .LVU332 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 57 989 008e 9B68 ldr r3, [r3, #8] 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 990 .loc 1 944 57 view .LVU333 991 0090 13F4806F tst r3, #1024 992 0094 0DD1 bne .L61 993 .L67: 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 994 .loc 1 948 5 is_stmt 1 view .LVU334 995 0096 236C ldr r3, [r4, #64] 996 0098 23F48073 bic r3, r3, #256 997 009c 2364 str r3, [r4, #64] 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 998 .loc 1 950 5 view .LVU335 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 999 .loc 1 950 9 is_stmt 0 view .LVU336 1000 009e 236C ldr r3, [r4, #64] 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1001 .loc 1 950 8 view .LVU337 1002 00a0 13F4805F tst r3, #4096 1003 00a4 05D1 bne .L61 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1004 .loc 1 952 7 is_stmt 1 view .LVU338 1005 00a6 236C ldr r3, [r4, #64] 1006 00a8 43F00103 orr r3, r3, #1 1007 00ac 2364 str r3, [r4, #64] 1008 00ae 00E0 b .L61 1009 .L68: 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1010 .loc 1 957 10 is_stmt 0 view .LVU339 1011 00b0 0020 movs r0, #0 1012 .LVL49: 1013 .L61: 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1014 .loc 1 958 1 view .LVU340 1015 00b2 70BD pop {r4, r5, r6, pc} 1016 .LVL50: 1017 .L69: 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1018 .loc 1 957 10 view .LVU341 1019 00b4 0020 movs r0, #0 1020 00b6 FCE7 b .L61 1021 .cfi_endproc 1022 .LFE245: 1024 .section .text.HAL_ADC_PollForEvent,"ax",%progbits 1025 .align 1 1026 .global HAL_ADC_PollForEvent 1027 .syntax unified 1028 .thumb 1029 .thumb_func 1031 HAL_ADC_PollForEvent: 1032 .LVL51: 1033 .LFB246: 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 1034 .loc 1 972 1 is_stmt 1 view -0 1035 .cfi_startproc 1036 @ args = 0, pretend = 0, frame = 0 1037 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 58 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tickstart = 0U; 1038 .loc 1 972 1 is_stmt 0 view .LVU343 1039 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 1040 .LCFI8: 1041 .cfi_def_cfa_offset 24 1042 .cfi_offset 4, -24 1043 .cfi_offset 5, -20 1044 .cfi_offset 6, -16 1045 .cfi_offset 7, -12 1046 .cfi_offset 8, -8 1047 .cfi_offset 14, -4 1048 0004 0546 mov r5, r0 1049 0006 0E46 mov r6, r1 1050 0008 1746 mov r7, r2 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1051 .loc 1 973 3 is_stmt 1 view .LVU344 1052 .LVL52: 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EVENT_TYPE(EventType)); 1053 .loc 1 976 3 view .LVU345 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1054 .loc 1 977 3 view .LVU346 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1055 .loc 1 980 3 view .LVU347 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1056 .loc 1 980 15 is_stmt 0 view .LVU348 1057 000a FFF7FEFF bl HAL_GetTick 1058 .LVL53: 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1059 .loc 1 980 15 view .LVU349 1060 000e 8046 mov r8, r0 1061 .LVL54: 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1062 .loc 1 983 3 is_stmt 1 view .LVU350 1063 .L76: 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1064 .loc 1 983 9 view .LVU351 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1065 .loc 1 983 12 is_stmt 0 view .LVU352 1066 0010 2B68 ldr r3, [r5] 1067 0012 1C68 ldr r4, [r3] 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1068 .loc 1 983 9 view .LVU353 1069 0014 36EA0402 bics r2, r6, r4 1070 0018 18D0 beq .L83 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1071 .loc 1 986 5 is_stmt 1 view .LVU354 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1072 .loc 1 986 8 is_stmt 0 view .LVU355 1073 001a B7F1FF3F cmp r7, #-1 1074 001e F7D0 beq .L76 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1075 .loc 1 988 7 is_stmt 1 view .LVU356 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1076 .loc 1 988 10 is_stmt 0 view .LVU357 1077 0020 6FB9 cbnz r7, .L84 1078 .L77: 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 59 1079 .loc 1 991 9 is_stmt 1 view .LVU358 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1080 .loc 1 991 15 is_stmt 0 view .LVU359 1081 0022 2B68 ldr r3, [r5] 1082 0024 1B68 ldr r3, [r3] 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1083 .loc 1 991 12 view .LVU360 1084 0026 36EA0303 bics r3, r6, r3 1085 002a F1D0 beq .L76 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1086 .loc 1 994 11 is_stmt 1 view .LVU361 1087 002c 2B6C ldr r3, [r5, #64] 1088 002e 43F00403 orr r3, r3, #4 1089 0032 2B64 str r3, [r5, #64] 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1090 .loc 1 997 11 view .LVU362 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1091 .loc 1 997 11 view .LVU363 1092 0034 0023 movs r3, #0 1093 0036 85F83C30 strb r3, [r5, #60] 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1094 .loc 1 997 11 view .LVU364 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1095 .loc 1 999 11 view .LVU365 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1096 .loc 1 999 18 is_stmt 0 view .LVU366 1097 003a 0320 movs r0, #3 1098 003c 14E0 b .L79 1099 .L84: 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1100 .loc 1 988 32 discriminator 1 view .LVU367 1101 003e FFF7FEFF bl HAL_GetTick 1102 .LVL55: 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1103 .loc 1 988 46 discriminator 1 view .LVU368 1104 0042 A0EB0800 sub r0, r0, r8 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1105 .loc 1 988 27 discriminator 1 view .LVU369 1106 0046 B842 cmp r0, r7 1107 0048 E2D9 bls .L76 1108 004a EAE7 b .L77 1109 .L83: 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1110 .loc 1 1006 3 is_stmt 1 view .LVU370 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1111 .loc 1 1006 6 is_stmt 0 view .LVU371 1112 004c 012E cmp r6, #1 1113 004e 0DD0 beq .L85 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to overrun */ 1114 .loc 1 1018 5 is_stmt 1 view .LVU372 1115 0050 2A6C ldr r2, [r5, #64] 1116 0052 42F48062 orr r2, r2, #1024 1117 0056 2A64 str r2, [r5, #64] 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1118 .loc 1 1020 5 view .LVU373 1119 0058 6A6C ldr r2, [r5, #68] 1120 005a 42F00202 orr r2, r2, #2 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 60 1121 005e 6A64 str r2, [r5, #68] 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1122 .loc 1 1023 5 view .LVU374 1123 0060 6FF02002 mvn r2, #32 1124 0064 1A60 str r2, [r3] 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1125 .loc 1 1027 10 is_stmt 0 view .LVU375 1126 0066 0020 movs r0, #0 1127 .L79: 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1128 .loc 1 1028 1 view .LVU376 1129 0068 BDE8F081 pop {r4, r5, r6, r7, r8, pc} 1130 .LVL56: 1131 .L85: 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1132 .loc 1 1009 5 is_stmt 1 view .LVU377 1133 006c 2A6C ldr r2, [r5, #64] 1134 006e 42F48032 orr r2, r2, #65536 1135 0072 2A64 str r2, [r5, #64] 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1136 .loc 1 1012 5 view .LVU378 1137 0074 6FF00102 mvn r2, #1 1138 0078 1A60 str r2, [r3] 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1139 .loc 1 1027 10 is_stmt 0 view .LVU379 1140 007a 0020 movs r0, #0 1141 007c F4E7 b .L79 1142 .cfi_endproc 1143 .LFE246: 1145 .section .text.HAL_ADC_Start_IT,"ax",%progbits 1146 .align 1 1147 .global HAL_ADC_Start_IT 1148 .syntax unified 1149 .thumb 1150 .thumb_func 1152 HAL_ADC_Start_IT: 1153 .LVL57: 1154 .LFB247: 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1155 .loc 1 1038 1 is_stmt 1 view -0 1156 .cfi_startproc 1157 @ args = 0, pretend = 0, frame = 8 1158 @ frame_needed = 0, uses_anonymous_args = 0 1159 @ link register save eliminated. 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1160 .loc 1 1038 1 is_stmt 0 view .LVU381 1161 0000 82B0 sub sp, sp, #8 1162 .LCFI9: 1163 .cfi_def_cfa_offset 8 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1164 .loc 1 1039 3 is_stmt 1 view .LVU382 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1165 .loc 1 1039 17 is_stmt 0 view .LVU383 1166 0002 0023 movs r3, #0 1167 0004 0193 str r3, [sp, #4] 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1168 .loc 1 1040 3 is_stmt 1 view .LVU384 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 61 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 1169 .loc 1 1043 3 view .LVU385 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1170 .loc 1 1044 3 view .LVU386 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1171 .loc 1 1047 3 view .LVU387 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1172 .loc 1 1047 3 view .LVU388 1173 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1174 000a 012B cmp r3, #1 1175 000c 00F09080 beq .L98 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1176 .loc 1 1047 3 discriminator 2 view .LVU389 1177 0010 0123 movs r3, #1 1178 0012 80F83C30 strb r3, [r0, #60] 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1179 .loc 1 1047 3 discriminator 2 view .LVU390 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1180 .loc 1 1052 3 discriminator 2 view .LVU391 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1181 .loc 1 1052 12 is_stmt 0 discriminator 2 view .LVU392 1182 0016 0368 ldr r3, [r0] 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1183 .loc 1 1052 22 discriminator 2 view .LVU393 1184 0018 9A68 ldr r2, [r3, #8] 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1185 .loc 1 1052 6 discriminator 2 view .LVU394 1186 001a 12F0010F tst r2, #1 1187 001e 13D1 bne .L88 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1188 .loc 1 1055 5 is_stmt 1 view .LVU395 1189 0020 9A68 ldr r2, [r3, #8] 1190 0022 42F00102 orr r2, r2, #1 1191 0026 9A60 str r2, [r3, #8] 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1192 .loc 1 1059 5 view .LVU396 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1193 .loc 1 1059 53 is_stmt 0 view .LVU397 1194 0028 444B ldr r3, .L108 1195 002a 1B68 ldr r3, [r3] 1196 002c 444A ldr r2, .L108+4 1197 002e A2FB0323 umull r2, r3, r2, r3 1198 0032 9B0C lsrs r3, r3, #18 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1199 .loc 1 1059 34 view .LVU398 1200 0034 03EB4303 add r3, r3, r3, lsl #1 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1201 .loc 1 1059 13 view .LVU399 1202 0038 0193 str r3, [sp, #4] 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1203 .loc 1 1060 5 is_stmt 1 view .LVU400 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1204 .loc 1 1060 11 is_stmt 0 view .LVU401 1205 003a 02E0 b .L89 1206 .L90: 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1207 .loc 1 1062 7 is_stmt 1 view .LVU402 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 62 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1208 .loc 1 1062 14 is_stmt 0 view .LVU403 1209 003c 019B ldr r3, [sp, #4] 1210 003e 013B subs r3, r3, #1 1211 0040 0193 str r3, [sp, #4] 1212 .L89: 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1213 .loc 1 1060 11 is_stmt 1 view .LVU404 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1214 .loc 1 1060 20 is_stmt 0 view .LVU405 1215 0042 019B ldr r3, [sp, #4] 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1216 .loc 1 1060 11 view .LVU406 1217 0044 002B cmp r3, #0 1218 0046 F9D1 bne .L90 1219 .L88: 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1220 .loc 1 1067 3 is_stmt 1 view .LVU407 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1221 .loc 1 1067 7 is_stmt 0 view .LVU408 1222 0048 0268 ldr r2, [r0] 1223 004a 9368 ldr r3, [r2, #8] 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1224 .loc 1 1067 6 view .LVU409 1225 004c 13F0010F tst r3, #1 1226 0050 63D0 beq .L91 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1227 .loc 1 1072 5 is_stmt 1 view .LVU410 1228 0052 036C ldr r3, [r0, #64] 1229 0054 23F4E063 bic r3, r3, #1792 1230 0058 23F00103 bic r3, r3, #1 1231 005c 43F48073 orr r3, r3, #256 1232 0060 0364 str r3, [r0, #64] 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1233 .loc 1 1078 5 view .LVU411 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1234 .loc 1 1078 9 is_stmt 0 view .LVU412 1235 0062 5368 ldr r3, [r2, #4] 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1236 .loc 1 1078 8 view .LVU413 1237 0064 13F4806F tst r3, #1024 1238 0068 05D0 beq .L92 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1239 .loc 1 1080 7 is_stmt 1 view .LVU414 1240 006a 036C ldr r3, [r0, #64] 1241 006c 23F44053 bic r3, r3, #12288 1242 0070 43F48053 orr r3, r3, #4096 1243 0074 0364 str r3, [r0, #64] 1244 .L92: 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1245 .loc 1 1084 5 view .LVU415 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1246 .loc 1 1084 9 is_stmt 0 view .LVU416 1247 0076 036C ldr r3, [r0, #64] 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1248 .loc 1 1084 8 view .LVU417 1249 0078 13F4805F tst r3, #4096 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 63 1250 007c 22D0 beq .L93 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1251 .loc 1 1087 7 is_stmt 1 view .LVU418 1252 007e 436C ldr r3, [r0, #68] 1253 0080 23F00603 bic r3, r3, #6 1254 0084 4364 str r3, [r0, #68] 1255 .L94: 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1256 .loc 1 1098 5 view .LVU419 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1257 .loc 1 1098 5 view .LVU420 1258 0086 0023 movs r3, #0 1259 0088 80F83C30 strb r3, [r0, #60] 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1260 .loc 1 1098 5 view .LVU421 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1261 .loc 1 1103 5 view .LVU422 1262 .LVL58: 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1263 .loc 1 1107 5 view .LVU423 1264 008c 6FF02203 mvn r3, #34 1265 0090 1360 str r3, [r2] 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1266 .loc 1 1110 5 view .LVU424 1267 0092 0268 ldr r2, [r0] 1268 0094 5368 ldr r3, [r2, #4] 1269 0096 43F08063 orr r3, r3, #67108864 1270 009a 43F02003 orr r3, r3, #32 1271 009e 5360 str r3, [r2, #4] 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1272 .loc 1 1113 5 view .LVU425 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1273 .loc 1 1113 9 is_stmt 0 view .LVU426 1274 00a0 284B ldr r3, .L108+8 1275 00a2 5B68 ldr r3, [r3, #4] 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1276 .loc 1 1113 8 view .LVU427 1277 00a4 13F01F0F tst r3, #31 1278 00a8 27D1 bne .L95 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1279 .loc 1 1116 7 is_stmt 1 view .LVU428 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1280 .loc 1 1116 16 is_stmt 0 view .LVU429 1281 00aa 0368 ldr r3, [r0] 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1282 .loc 1 1116 10 view .LVU430 1283 00ac 264A ldr r2, .L108+12 1284 00ae 9342 cmp r3, r2 1285 00b0 11D0 beq .L96 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1286 .loc 1 1116 36 discriminator 1 view .LVU431 1287 00b2 02F58072 add r2, r2, #256 1288 00b6 9342 cmp r3, r2 1289 00b8 07D0 beq .L105 1290 .L97: 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1291 .loc 1 1117 11 view .LVU432 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 64 1292 00ba 244A ldr r2, .L108+16 1293 00bc 9342 cmp r3, r2 1294 00be 14D0 beq .L106 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1295 .loc 1 1150 10 view .LVU433 1296 00c0 0020 movs r0, #0 1297 .LVL59: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1298 .loc 1 1150 10 view .LVU434 1299 00c2 33E0 b .L87 1300 .LVL60: 1301 .L93: 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1302 .loc 1 1092 7 is_stmt 1 view .LVU435 1303 00c4 0023 movs r3, #0 1304 00c6 4364 str r3, [r0, #68] 1305 00c8 DDE7 b .L94 1306 .LVL61: 1307 .L105: 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1308 .loc 1 1116 83 is_stmt 0 discriminator 2 view .LVU436 1309 00ca 02F50072 add r2, r2, #512 1310 00ce 5268 ldr r2, [r2, #4] 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1311 .loc 1 1116 65 discriminator 2 view .LVU437 1312 00d0 12F01F0F tst r2, #31 1313 00d4 F1D1 bne .L97 1314 .L96: 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1315 .loc 1 1121 9 is_stmt 1 view .LVU438 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1316 .loc 1 1121 28 is_stmt 0 view .LVU439 1317 00d6 9A68 ldr r2, [r3, #8] 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1318 .loc 1 1121 12 view .LVU440 1319 00d8 12F0405F tst r2, #805306368 1320 00dc 2AD1 bne .L101 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1321 .loc 1 1124 11 is_stmt 1 view .LVU441 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1322 .loc 1 1124 31 is_stmt 0 view .LVU442 1323 00de 9A68 ldr r2, [r3, #8] 1324 00e0 42F08042 orr r2, r2, #1073741824 1325 00e4 9A60 str r2, [r3, #8] 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1326 .loc 1 1150 10 view .LVU443 1327 00e6 0020 movs r0, #0 1328 .LVL62: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1329 .loc 1 1150 10 view .LVU444 1330 00e8 20E0 b .L87 1331 .LVL63: 1332 .L106: 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1333 .loc 1 1117 58 discriminator 1 view .LVU445 1334 00ea 02F58072 add r2, r2, #256 1335 00ee 5268 ldr r2, [r2, #4] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 65 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1336 .loc 1 1117 40 discriminator 1 view .LVU446 1337 00f0 12F0100F tst r2, #16 1338 00f4 EFD0 beq .L96 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1339 .loc 1 1150 10 view .LVU447 1340 00f6 0020 movs r0, #0 1341 .LVL64: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1342 .loc 1 1150 10 view .LVU448 1343 00f8 18E0 b .L87 1344 .LVL65: 1345 .L95: 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1346 .loc 1 1133 7 is_stmt 1 view .LVU449 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1347 .loc 1 1133 16 is_stmt 0 view .LVU450 1348 00fa 0368 ldr r3, [r0] 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1349 .loc 1 1133 10 view .LVU451 1350 00fc 124A ldr r2, .L108+12 1351 00fe 9342 cmp r3, r2 1352 0100 01D0 beq .L107 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1353 .loc 1 1150 10 view .LVU452 1354 0102 0020 movs r0, #0 1355 .LVL66: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1356 .loc 1 1150 10 view .LVU453 1357 0104 12E0 b .L87 1358 .LVL67: 1359 .L107: 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1360 .loc 1 1133 55 discriminator 1 view .LVU454 1361 0106 9A68 ldr r2, [r3, #8] 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1362 .loc 1 1133 36 discriminator 1 view .LVU455 1363 0108 12F0405F tst r2, #805306368 1364 010c 14D1 bne .L103 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1365 .loc 1 1136 9 is_stmt 1 view .LVU456 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1366 .loc 1 1136 29 is_stmt 0 view .LVU457 1367 010e 9A68 ldr r2, [r3, #8] 1368 0110 42F08042 orr r2, r2, #1073741824 1369 0114 9A60 str r2, [r3, #8] 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1370 .loc 1 1150 10 view .LVU458 1371 0116 0020 movs r0, #0 1372 .LVL68: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1373 .loc 1 1150 10 view .LVU459 1374 0118 08E0 b .L87 1375 .LVL69: 1376 .L91: 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1377 .loc 1 1143 5 is_stmt 1 view .LVU460 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 66 1378 011a 036C ldr r3, [r0, #64] 1379 011c 43F01003 orr r3, r3, #16 1380 0120 0364 str r3, [r0, #64] 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1381 .loc 1 1146 5 view .LVU461 1382 0122 436C ldr r3, [r0, #68] 1383 0124 43F00103 orr r3, r3, #1 1384 0128 4364 str r3, [r0, #68] 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1385 .loc 1 1150 10 is_stmt 0 view .LVU462 1386 012a 0020 movs r0, #0 1387 .LVL70: 1388 .L87: 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1389 .loc 1 1151 1 view .LVU463 1390 012c 02B0 add sp, sp, #8 1391 .LCFI10: 1392 .cfi_remember_state 1393 .cfi_def_cfa_offset 0 1394 @ sp needed 1395 012e 7047 bx lr 1396 .LVL71: 1397 .L98: 1398 .LCFI11: 1399 .cfi_restore_state 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1400 .loc 1 1047 3 view .LVU464 1401 0130 0220 movs r0, #2 1402 .LVL72: 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1403 .loc 1 1047 3 view .LVU465 1404 0132 FBE7 b .L87 1405 .LVL73: 1406 .L101: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1407 .loc 1 1150 10 view .LVU466 1408 0134 0020 movs r0, #0 1409 .LVL74: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1410 .loc 1 1150 10 view .LVU467 1411 0136 F9E7 b .L87 1412 .LVL75: 1413 .L103: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1414 .loc 1 1150 10 view .LVU468 1415 0138 0020 movs r0, #0 1416 .LVL76: 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1417 .loc 1 1150 10 view .LVU469 1418 013a F7E7 b .L87 1419 .L109: 1420 .align 2 1421 .L108: 1422 013c 00000000 .word SystemCoreClock 1423 0140 83DE1B43 .word 1125899907 1424 0144 00230140 .word 1073816320 1425 0148 00200140 .word 1073815552 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 67 1426 014c 00220140 .word 1073816064 1427 .cfi_endproc 1428 .LFE247: 1430 .section .text.HAL_ADC_Stop_IT,"ax",%progbits 1431 .align 1 1432 .global HAL_ADC_Stop_IT 1433 .syntax unified 1434 .thumb 1435 .thumb_func 1437 HAL_ADC_Stop_IT: 1438 .LVL77: 1439 .LFB248: 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check the parameters */ 1440 .loc 1 1163 1 is_stmt 1 view -0 1441 .cfi_startproc 1442 @ args = 0, pretend = 0, frame = 0 1443 @ frame_needed = 0, uses_anonymous_args = 0 1444 @ link register save eliminated. 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1445 .loc 1 1165 3 view .LVU471 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1446 .loc 1 1168 3 view .LVU472 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1447 .loc 1 1168 3 view .LVU473 1448 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1449 0004 012B cmp r3, #1 1450 0006 1FD0 beq .L113 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1451 .loc 1 1168 3 discriminator 2 view .LVU474 1452 0008 0123 movs r3, #1 1453 000a 80F83C30 strb r3, [r0, #60] 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1454 .loc 1 1168 3 discriminator 2 view .LVU475 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1455 .loc 1 1172 3 discriminator 2 view .LVU476 1456 000e 0268 ldr r2, [r0] 1457 0010 9368 ldr r3, [r2, #8] 1458 0012 23F00103 bic r3, r3, #1 1459 0016 9360 str r3, [r2, #8] 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1460 .loc 1 1175 3 discriminator 2 view .LVU477 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1461 .loc 1 1175 7 is_stmt 0 discriminator 2 view .LVU478 1462 0018 0368 ldr r3, [r0] 1463 001a 9A68 ldr r2, [r3, #8] 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1464 .loc 1 1175 6 discriminator 2 view .LVU479 1465 001c 12F0010F tst r2, #1 1466 0020 0DD1 bne .L112 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1467 .loc 1 1178 5 is_stmt 1 view .LVU480 1468 0022 5A68 ldr r2, [r3, #4] 1469 0024 22F08062 bic r2, r2, #67108864 1470 0028 22F02002 bic r2, r2, #32 1471 002c 5A60 str r2, [r3, #4] 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1472 .loc 1 1181 5 view .LVU481 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 68 1473 002e 036C ldr r3, [r0, #64] 1474 0030 23F48853 bic r3, r3, #4352 1475 0034 23F00103 bic r3, r3, #1 1476 0038 43F00103 orr r3, r3, #1 1477 003c 0364 str r3, [r0, #64] 1478 .L112: 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1479 .loc 1 1187 3 view .LVU482 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1480 .loc 1 1187 3 view .LVU483 1481 003e 0023 movs r3, #0 1482 0040 80F83C30 strb r3, [r0, #60] 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1483 .loc 1 1187 3 view .LVU484 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1484 .loc 1 1190 3 view .LVU485 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1485 .loc 1 1190 10 is_stmt 0 view .LVU486 1486 0044 1846 mov r0, r3 1487 .LVL78: 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1488 .loc 1 1190 10 view .LVU487 1489 0046 7047 bx lr 1490 .LVL79: 1491 .L113: 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1492 .loc 1 1168 3 view .LVU488 1493 0048 0220 movs r0, #2 1494 .LVL80: 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1495 .loc 1 1191 1 view .LVU489 1496 004a 7047 bx lr 1497 .cfi_endproc 1498 .LFE248: 1500 .section .text.HAL_ADC_Start_DMA,"ax",%progbits 1501 .align 1 1502 .global HAL_ADC_Start_DMA 1503 .syntax unified 1504 .thumb 1505 .thumb_func 1507 HAL_ADC_Start_DMA: 1508 .LVL81: 1509 .LFB250: 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1510 .loc 1 1365 1 is_stmt 1 view -0 1511 .cfi_startproc 1512 @ args = 0, pretend = 0, frame = 8 1513 @ frame_needed = 0, uses_anonymous_args = 0 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 1514 .loc 1 1365 1 is_stmt 0 view .LVU491 1515 0000 10B5 push {r4, lr} 1516 .LCFI12: 1517 .cfi_def_cfa_offset 8 1518 .cfi_offset 4, -8 1519 .cfi_offset 14, -4 1520 0002 82B0 sub sp, sp, #8 1521 .LCFI13: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 69 1522 .cfi_def_cfa_offset 16 1523 0004 1346 mov r3, r2 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1524 .loc 1 1366 3 is_stmt 1 view .LVU492 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1525 .loc 1 1366 17 is_stmt 0 view .LVU493 1526 0006 0022 movs r2, #0 1527 .LVL82: 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 1528 .loc 1 1366 17 view .LVU494 1529 0008 0192 str r2, [sp, #4] 1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1530 .loc 1 1367 3 is_stmt 1 view .LVU495 1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 1531 .loc 1 1370 3 view .LVU496 1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1532 .loc 1 1371 3 view .LVU497 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1533 .loc 1 1374 3 view .LVU498 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1534 .loc 1 1374 3 view .LVU499 1535 000a 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 1536 000e 012A cmp r2, #1 1537 0010 00F0AE80 beq .L127 1538 0014 0446 mov r4, r0 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1539 .loc 1 1374 3 discriminator 2 view .LVU500 1540 0016 0122 movs r2, #1 1541 0018 80F83C20 strb r2, [r0, #60] 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1542 .loc 1 1374 3 discriminator 2 view .LVU501 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1543 .loc 1 1379 3 discriminator 2 view .LVU502 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1544 .loc 1 1379 12 is_stmt 0 discriminator 2 view .LVU503 1545 001c 0268 ldr r2, [r0] 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1546 .loc 1 1379 22 discriminator 2 view .LVU504 1547 001e 9068 ldr r0, [r2, #8] 1548 .LVL83: 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1549 .loc 1 1379 6 discriminator 2 view .LVU505 1550 0020 10F0010F tst r0, #1 1551 0024 13D1 bne .L116 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1552 .loc 1 1382 5 is_stmt 1 view .LVU506 1553 0026 9068 ldr r0, [r2, #8] 1554 0028 40F00100 orr r0, r0, #1 1555 002c 9060 str r0, [r2, #8] 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1556 .loc 1 1386 5 view .LVU507 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1557 .loc 1 1386 53 is_stmt 0 view .LVU508 1558 002e 534A ldr r2, .L137 1559 0030 1068 ldr r0, [r2] 1560 0032 534A ldr r2, .L137+4 1561 0034 A2FB0020 umull r2, r0, r2, r0 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 70 1562 0038 800C lsrs r0, r0, #18 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1563 .loc 1 1386 34 view .LVU509 1564 003a 00EB4000 add r0, r0, r0, lsl #1 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 1565 .loc 1 1386 13 view .LVU510 1566 003e 0190 str r0, [sp, #4] 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1567 .loc 1 1387 5 is_stmt 1 view .LVU511 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1568 .loc 1 1387 11 is_stmt 0 view .LVU512 1569 0040 02E0 b .L117 1570 .L118: 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1571 .loc 1 1389 7 is_stmt 1 view .LVU513 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1572 .loc 1 1389 14 is_stmt 0 view .LVU514 1573 0042 0198 ldr r0, [sp, #4] 1574 0044 0138 subs r0, r0, #1 1575 0046 0190 str r0, [sp, #4] 1576 .L117: 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1577 .loc 1 1387 11 is_stmt 1 view .LVU515 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1578 .loc 1 1387 20 is_stmt 0 view .LVU516 1579 0048 0198 ldr r0, [sp, #4] 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1580 .loc 1 1387 11 view .LVU517 1581 004a 0028 cmp r0, #0 1582 004c F9D1 bne .L118 1583 .L116: 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1584 .loc 1 1395 3 is_stmt 1 view .LVU518 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1585 .loc 1 1395 12 is_stmt 0 view .LVU519 1586 004e 2268 ldr r2, [r4] 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1587 .loc 1 1395 22 view .LVU520 1588 0050 9068 ldr r0, [r2, #8] 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1589 .loc 1 1395 6 view .LVU521 1590 0052 10F4807F tst r0, #256 1591 0056 03D0 beq .L119 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1592 .loc 1 1397 5 is_stmt 1 view .LVU522 1593 0058 9068 ldr r0, [r2, #8] 1594 005a 20F48070 bic r0, r0, #256 1595 005e 9060 str r0, [r2, #8] 1596 .L119: 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1597 .loc 1 1401 3 view .LVU523 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1598 .loc 1 1401 7 is_stmt 0 view .LVU524 1599 0060 2268 ldr r2, [r4] 1600 0062 9068 ldr r0, [r2, #8] 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1601 .loc 1 1401 6 view .LVU525 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 71 1602 0064 10F0010F tst r0, #1 1603 0068 77D0 beq .L120 1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1604 .loc 1 1406 5 is_stmt 1 view .LVU526 1605 006a 206C ldr r0, [r4, #64] 1606 006c 20F4E060 bic r0, r0, #1792 1607 0070 20F00100 bic r0, r0, #1 1608 0074 40F48070 orr r0, r0, #256 1609 0078 2064 str r0, [r4, #64] 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1610 .loc 1 1412 5 view .LVU527 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1611 .loc 1 1412 9 is_stmt 0 view .LVU528 1612 007a 5268 ldr r2, [r2, #4] 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1613 .loc 1 1412 8 view .LVU529 1614 007c 12F4806F tst r2, #1024 1615 0080 05D0 beq .L121 1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1616 .loc 1 1414 7 is_stmt 1 view .LVU530 1617 0082 226C ldr r2, [r4, #64] 1618 0084 22F44052 bic r2, r2, #12288 1619 0088 42F48052 orr r2, r2, #4096 1620 008c 2264 str r2, [r4, #64] 1621 .L121: 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1622 .loc 1 1418 5 view .LVU531 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1623 .loc 1 1418 9 is_stmt 0 view .LVU532 1624 008e 226C ldr r2, [r4, #64] 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1625 .loc 1 1418 8 view .LVU533 1626 0090 12F4805F tst r2, #4096 1627 0094 36D0 beq .L122 1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1628 .loc 1 1421 7 is_stmt 1 view .LVU534 1629 0096 626C ldr r2, [r4, #68] 1630 0098 22F00602 bic r2, r2, #6 1631 009c 6264 str r2, [r4, #68] 1632 .L123: 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1633 .loc 1 1432 5 view .LVU535 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1634 .loc 1 1432 5 view .LVU536 1635 009e 0022 movs r2, #0 1636 00a0 84F83C20 strb r2, [r4, #60] 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1637 .loc 1 1432 5 view .LVU537 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1638 .loc 1 1437 5 view .LVU538 1639 .LVL84: 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1640 .loc 1 1440 5 view .LVU539 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1641 .loc 1 1440 9 is_stmt 0 view .LVU540 1642 00a4 A26B ldr r2, [r4, #56] 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 72 1643 .loc 1 1440 40 view .LVU541 1644 00a6 3748 ldr r0, .L137+8 1645 00a8 D063 str r0, [r2, #60] 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1646 .loc 1 1443 5 is_stmt 1 view .LVU542 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1647 .loc 1 1443 9 is_stmt 0 view .LVU543 1648 00aa A26B ldr r2, [r4, #56] 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1649 .loc 1 1443 44 view .LVU544 1650 00ac 3648 ldr r0, .L137+12 1651 00ae 1064 str r0, [r2, #64] 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1652 .loc 1 1446 5 is_stmt 1 view .LVU545 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1653 .loc 1 1446 9 is_stmt 0 view .LVU546 1654 00b0 A26B ldr r2, [r4, #56] 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1655 .loc 1 1446 41 view .LVU547 1656 00b2 3648 ldr r0, .L137+16 1657 00b4 D064 str r0, [r2, #76] 1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1658 .loc 1 1454 5 is_stmt 1 view .LVU548 1659 00b6 2268 ldr r2, [r4] 1660 00b8 6FF02200 mvn r0, #34 1661 00bc 1060 str r0, [r2] 1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1662 .loc 1 1457 5 view .LVU549 1663 00be 2068 ldr r0, [r4] 1664 00c0 4268 ldr r2, [r0, #4] 1665 00c2 42F08062 orr r2, r2, #67108864 1666 00c6 4260 str r2, [r0, #4] 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1667 .loc 1 1460 5 view .LVU550 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1668 .loc 1 1460 9 is_stmt 0 view .LVU551 1669 00c8 2068 ldr r0, [r4] 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1670 .loc 1 1460 25 view .LVU552 1671 00ca 8268 ldr r2, [r0, #8] 1672 00cc 42F48072 orr r2, r2, #256 1673 00d0 8260 str r2, [r0, #8] 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1674 .loc 1 1463 5 is_stmt 1 view .LVU553 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1675 .loc 1 1463 55 is_stmt 0 view .LVU554 1676 00d2 2068 ldr r0, [r4] 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1677 .loc 1 1463 5 view .LVU555 1678 00d4 0A46 mov r2, r1 1679 00d6 00F14C01 add r1, r0, #76 1680 .LVL85: 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1681 .loc 1 1463 5 view .LVU556 1682 00da A06B ldr r0, [r4, #56] 1683 00dc FFF7FEFF bl HAL_DMA_Start_IT 1684 .LVL86: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 73 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1685 .loc 1 1466 5 is_stmt 1 view .LVU557 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1686 .loc 1 1466 9 is_stmt 0 view .LVU558 1687 00e0 2B4B ldr r3, .L137+20 1688 00e2 5B68 ldr r3, [r3, #4] 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1689 .loc 1 1466 8 view .LVU559 1690 00e4 13F01F0F tst r3, #31 1691 00e8 27D1 bne .L124 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1692 .loc 1 1469 7 is_stmt 1 view .LVU560 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1693 .loc 1 1469 16 is_stmt 0 view .LVU561 1694 00ea 2368 ldr r3, [r4] 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1695 .loc 1 1469 10 view .LVU562 1696 00ec 294A ldr r2, .L137+24 1697 00ee 9342 cmp r3, r2 1698 00f0 11D0 beq .L125 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1699 .loc 1 1469 36 discriminator 1 view .LVU563 1700 00f2 02F58072 add r2, r2, #256 1701 00f6 9342 cmp r3, r2 1702 00f8 07D0 beq .L134 1703 .L126: 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1704 .loc 1 1470 11 view .LVU564 1705 00fa 274A ldr r2, .L137+28 1706 00fc 9342 cmp r3, r2 1707 00fe 14D0 beq .L135 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1708 .loc 1 1503 10 view .LVU565 1709 0100 0020 movs r0, #0 1710 0102 33E0 b .L115 1711 .LVL87: 1712 .L122: 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1713 .loc 1 1426 7 is_stmt 1 view .LVU566 1714 0104 0022 movs r2, #0 1715 0106 6264 str r2, [r4, #68] 1716 0108 C9E7 b .L123 1717 .LVL88: 1718 .L134: 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1719 .loc 1 1469 83 is_stmt 0 discriminator 2 view .LVU567 1720 010a 02F50072 add r2, r2, #512 1721 010e 5268 ldr r2, [r2, #4] 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** || ((hadc->Instance == ADC3) && ((ADC123_COMMON->CCR & ADC_CCR_MULTI_Msk) < ADC_CCR_MULTI 1722 .loc 1 1469 65 discriminator 2 view .LVU568 1723 0110 12F01F0F tst r2, #31 1724 0114 F1D1 bne .L126 1725 .L125: 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1726 .loc 1 1474 9 is_stmt 1 view .LVU569 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1727 .loc 1 1474 28 is_stmt 0 view .LVU570 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 74 1728 0116 9A68 ldr r2, [r3, #8] 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1729 .loc 1 1474 12 view .LVU571 1730 0118 12F0405F tst r2, #805306368 1731 011c 2AD1 bne .L130 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1732 .loc 1 1477 11 is_stmt 1 view .LVU572 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1733 .loc 1 1477 31 is_stmt 0 view .LVU573 1734 011e 9A68 ldr r2, [r3, #8] 1735 0120 42F08042 orr r2, r2, #1073741824 1736 0124 9A60 str r2, [r3, #8] 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1737 .loc 1 1503 10 view .LVU574 1738 0126 0020 movs r0, #0 1739 0128 20E0 b .L115 1740 .L135: 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1741 .loc 1 1470 58 discriminator 1 view .LVU575 1742 012a 02F58072 add r2, r2, #256 1743 012e 5268 ldr r2, [r2, #4] 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1744 .loc 1 1470 40 discriminator 1 view .LVU576 1745 0130 12F0100F tst r2, #16 1746 0134 EFD0 beq .L125 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1747 .loc 1 1503 10 view .LVU577 1748 0136 0020 movs r0, #0 1749 0138 18E0 b .L115 1750 .L124: 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1751 .loc 1 1486 7 is_stmt 1 view .LVU578 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1752 .loc 1 1486 16 is_stmt 0 view .LVU579 1753 013a 2368 ldr r3, [r4] 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1754 .loc 1 1486 10 view .LVU580 1755 013c 154A ldr r2, .L137+24 1756 013e 9342 cmp r3, r2 1757 0140 01D0 beq .L136 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1758 .loc 1 1503 10 view .LVU581 1759 0142 0020 movs r0, #0 1760 0144 12E0 b .L115 1761 .L136: 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1762 .loc 1 1486 55 discriminator 1 view .LVU582 1763 0146 9A68 ldr r2, [r3, #8] 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1764 .loc 1 1486 36 discriminator 1 view .LVU583 1765 0148 12F0405F tst r2, #805306368 1766 014c 14D1 bne .L132 1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1767 .loc 1 1489 9 is_stmt 1 view .LVU584 1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1768 .loc 1 1489 29 is_stmt 0 view .LVU585 1769 014e 9A68 ldr r2, [r3, #8] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 75 1770 0150 42F08042 orr r2, r2, #1073741824 1771 0154 9A60 str r2, [r3, #8] 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1772 .loc 1 1503 10 view .LVU586 1773 0156 0020 movs r0, #0 1774 0158 08E0 b .L115 1775 .LVL89: 1776 .L120: 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1777 .loc 1 1496 5 is_stmt 1 view .LVU587 1778 015a 236C ldr r3, [r4, #64] 1779 .LVL90: 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1780 .loc 1 1496 5 is_stmt 0 view .LVU588 1781 015c 43F01003 orr r3, r3, #16 1782 0160 2364 str r3, [r4, #64] 1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1783 .loc 1 1499 5 is_stmt 1 view .LVU589 1784 0162 636C ldr r3, [r4, #68] 1785 0164 43F00103 orr r3, r3, #1 1786 0168 6364 str r3, [r4, #68] 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1787 .loc 1 1503 10 is_stmt 0 view .LVU590 1788 016a 0020 movs r0, #0 1789 .LVL91: 1790 .L115: 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1791 .loc 1 1504 1 view .LVU591 1792 016c 02B0 add sp, sp, #8 1793 .LCFI14: 1794 .cfi_remember_state 1795 .cfi_def_cfa_offset 8 1796 @ sp needed 1797 016e 10BD pop {r4, pc} 1798 .LVL92: 1799 .L127: 1800 .LCFI15: 1801 .cfi_restore_state 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1802 .loc 1 1374 3 view .LVU592 1803 0170 0220 movs r0, #2 1804 .LVL93: 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1805 .loc 1 1374 3 view .LVU593 1806 0172 FBE7 b .L115 1807 .LVL94: 1808 .L130: 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1809 .loc 1 1503 10 view .LVU594 1810 0174 0020 movs r0, #0 1811 0176 F9E7 b .L115 1812 .L132: 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1813 .loc 1 1503 10 view .LVU595 1814 0178 0020 movs r0, #0 1815 017a F7E7 b .L115 1816 .L138: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 76 1817 .align 2 1818 .L137: 1819 017c 00000000 .word SystemCoreClock 1820 0180 83DE1B43 .word 1125899907 1821 0184 00000000 .word ADC_DMAConvCplt 1822 0188 00000000 .word ADC_DMAHalfConvCplt 1823 018c 00000000 .word ADC_DMAError 1824 0190 00230140 .word 1073816320 1825 0194 00200140 .word 1073815552 1826 0198 00220140 .word 1073816064 1827 .cfi_endproc 1828 .LFE250: 1830 .section .text.HAL_ADC_Stop_DMA,"ax",%progbits 1831 .align 1 1832 .global HAL_ADC_Stop_DMA 1833 .syntax unified 1834 .thumb 1835 .thumb_func 1837 HAL_ADC_Stop_DMA: 1838 .LVL95: 1839 .LFB251: 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1840 .loc 1 1513 1 is_stmt 1 view -0 1841 .cfi_startproc 1842 @ args = 0, pretend = 0, frame = 0 1843 @ frame_needed = 0, uses_anonymous_args = 0 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1844 .loc 1 1514 3 view .LVU597 1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1845 .loc 1 1517 3 view .LVU598 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1846 .loc 1 1520 3 view .LVU599 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1847 .loc 1 1520 3 view .LVU600 1848 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1849 0004 012B cmp r3, #1 1850 0006 35D0 beq .L143 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1851 .loc 1 1513 1 is_stmt 0 discriminator 2 view .LVU601 1852 0008 10B5 push {r4, lr} 1853 .LCFI16: 1854 .cfi_def_cfa_offset 8 1855 .cfi_offset 4, -8 1856 .cfi_offset 14, -4 1857 000a 0446 mov r4, r0 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1858 .loc 1 1520 3 is_stmt 1 discriminator 2 view .LVU602 1859 000c 0123 movs r3, #1 1860 000e 80F83C30 strb r3, [r0, #60] 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1861 .loc 1 1520 3 discriminator 2 view .LVU603 1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1862 .loc 1 1524 3 discriminator 2 view .LVU604 1863 0012 0268 ldr r2, [r0] 1864 0014 9368 ldr r3, [r2, #8] 1865 0016 23F00103 bic r3, r3, #1 1866 001a 9360 str r3, [r2, #8] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 77 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1867 .loc 1 1527 3 discriminator 2 view .LVU605 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1868 .loc 1 1527 7 is_stmt 0 discriminator 2 view .LVU606 1869 001c 0368 ldr r3, [r0] 1870 001e 9A68 ldr r2, [r3, #8] 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1871 .loc 1 1527 6 discriminator 2 view .LVU607 1872 0020 12F0010F tst r2, #1 1873 0024 21D1 bne .L144 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1874 .loc 1 1530 5 is_stmt 1 view .LVU608 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1875 .loc 1 1530 25 is_stmt 0 view .LVU609 1876 0026 9A68 ldr r2, [r3, #8] 1877 0028 22F48072 bic r2, r2, #256 1878 002c 9A60 str r2, [r3, #8] 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1879 .loc 1 1534 5 is_stmt 1 view .LVU610 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1880 .loc 1 1534 13 is_stmt 0 view .LVU611 1881 002e 806B ldr r0, [r0, #56] 1882 .LVL96: 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1883 .loc 1 1534 25 view .LVU612 1884 0030 90F83530 ldrb r3, [r0, #53] @ zero_extendqisi2 1885 0034 DBB2 uxtb r3, r3 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1886 .loc 1 1534 8 view .LVU613 1887 0036 022B cmp r3, #2 1888 0038 0ED0 beq .L150 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1889 .loc 1 1514 21 view .LVU614 1890 003a 0020 movs r0, #0 1891 .LVL97: 1892 .L142: 1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1893 .loc 1 1547 5 is_stmt 1 view .LVU615 1894 003c 2268 ldr r2, [r4] 1895 003e 5368 ldr r3, [r2, #4] 1896 0040 23F08063 bic r3, r3, #67108864 1897 0044 5360 str r3, [r2, #4] 1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1898 .loc 1 1550 5 view .LVU616 1899 0046 236C ldr r3, [r4, #64] 1900 0048 23F48853 bic r3, r3, #4352 1901 004c 23F00103 bic r3, r3, #1 1902 0050 43F00103 orr r3, r3, #1 1903 0054 2364 str r3, [r4, #64] 1904 0056 09E0 b .L141 1905 .LVL98: 1906 .L150: 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1907 .loc 1 1536 7 view .LVU617 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1908 .loc 1 1536 24 is_stmt 0 view .LVU618 1909 0058 FFF7FEFF bl HAL_DMA_Abort ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 78 1910 .LVL99: 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1911 .loc 1 1539 7 is_stmt 1 view .LVU619 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1912 .loc 1 1539 10 is_stmt 0 view .LVU620 1913 005c 0028 cmp r0, #0 1914 005e EDD0 beq .L142 1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1915 .loc 1 1542 9 is_stmt 1 view .LVU621 1916 0060 236C ldr r3, [r4, #64] 1917 0062 43F04003 orr r3, r3, #64 1918 0066 2364 str r3, [r4, #64] 1919 0068 E8E7 b .L142 1920 .LVL100: 1921 .L144: 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1922 .loc 1 1514 21 is_stmt 0 view .LVU622 1923 006a 0020 movs r0, #0 1924 .LVL101: 1925 .L141: 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1926 .loc 1 1556 3 is_stmt 1 view .LVU623 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1927 .loc 1 1556 3 view .LVU624 1928 006c 0023 movs r3, #0 1929 006e 84F83C30 strb r3, [r4, #60] 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1930 .loc 1 1556 3 view .LVU625 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1931 .loc 1 1559 3 view .LVU626 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1932 .loc 1 1560 1 is_stmt 0 view .LVU627 1933 0072 10BD pop {r4, pc} 1934 .LVL102: 1935 .L143: 1936 .LCFI17: 1937 .cfi_def_cfa_offset 0 1938 .cfi_restore 4 1939 .cfi_restore 14 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1940 .loc 1 1520 3 view .LVU628 1941 0074 0220 movs r0, #2 1942 .LVL103: 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1943 .loc 1 1560 1 view .LVU629 1944 0076 7047 bx lr 1945 .cfi_endproc 1946 .LFE251: 1948 .section .text.HAL_ADC_GetValue,"ax",%progbits 1949 .align 1 1950 .global HAL_ADC_GetValue 1951 .syntax unified 1952 .thumb 1953 .thumb_func 1955 HAL_ADC_GetValue: 1956 .LVL104: 1957 .LFB252: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 79 1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return the selected ADC converted value */ 1958 .loc 1 1569 1 is_stmt 1 view -0 1959 .cfi_startproc 1960 @ args = 0, pretend = 0, frame = 0 1961 @ frame_needed = 0, uses_anonymous_args = 0 1962 @ link register save eliminated. 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1963 .loc 1 1571 3 view .LVU631 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1964 .loc 1 1571 14 is_stmt 0 view .LVU632 1965 0000 0368 ldr r3, [r0] 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 1966 .loc 1 1571 24 view .LVU633 1967 0002 D86C ldr r0, [r3, #76] 1968 .LVL105: 1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1969 .loc 1 1572 1 view .LVU634 1970 0004 7047 bx lr 1971 .cfi_endproc 1972 .LFE252: 1974 .section .text.HAL_ADC_ConvCpltCallback,"ax",%progbits 1975 .align 1 1976 .weak HAL_ADC_ConvCpltCallback 1977 .syntax unified 1978 .thumb 1979 .thumb_func 1981 HAL_ADC_ConvCpltCallback: 1982 .LVL106: 1983 .LFB253: 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 1984 .loc 1 1581 1 is_stmt 1 view -0 1985 .cfi_startproc 1986 @ args = 0, pretend = 0, frame = 0 1987 @ frame_needed = 0, uses_anonymous_args = 0 1988 @ link register save eliminated. 1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1989 .loc 1 1583 3 view .LVU636 1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1990 .loc 1 1587 1 is_stmt 0 view .LVU637 1991 0000 7047 bx lr 1992 .cfi_endproc 1993 .LFE253: 1995 .section .text.HAL_ADC_ConvHalfCpltCallback,"ax",%progbits 1996 .align 1 1997 .weak HAL_ADC_ConvHalfCpltCallback 1998 .syntax unified 1999 .thumb 2000 .thumb_func 2002 HAL_ADC_ConvHalfCpltCallback: 2003 .LVL107: 2004 .LFB254: 1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 2005 .loc 1 1596 1 is_stmt 1 view -0 2006 .cfi_startproc 2007 @ args = 0, pretend = 0, frame = 0 2008 @ frame_needed = 0, uses_anonymous_args = 0 2009 @ link register save eliminated. ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 80 1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 2010 .loc 1 1598 3 view .LVU639 1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2011 .loc 1 1602 1 is_stmt 0 view .LVU640 2012 0000 7047 bx lr 2013 .cfi_endproc 2014 .LFE254: 2016 .section .text.ADC_DMAHalfConvCplt,"ax",%progbits 2017 .align 1 2018 .syntax unified 2019 .thumb 2020 .thumb_func 2022 ADC_DMAHalfConvCplt: 2023 .LVL108: 2024 .LFB263: 1987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief DMA transfer complete callback. 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified DMA module. 1992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 1993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 1994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAConvCplt(DMA_HandleTypeDef *hdma) 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 1996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 1998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update state machine on conversion status if not in error state */ 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL | HAL_ADC_STATE_ERROR_DMA)) 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Update ADC state machine */ 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Determine whether any further conversion upcoming on group regular */ 2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by external trigger, continuous mode or scan sequence on going. */ 2007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* The test of scan sequence on going is done either with scan */ 2009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* sequence disabled or with end of conversion flag set to */ 2010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* of end of sequence. */ 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 2015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Disable ADC end of single conversion interrupt on group regular */ 2017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Note: Overrun interrupt was enabled with EOC interrupt in */ 2018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* HAL_ADC_Start_IT(), but is not disabled here because can be used */ 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* by overrun IRQ process below. */ 2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC); 2021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC state */ 2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY); 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 2026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 81 2029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Conversion complete callback */ 2032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 2033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvCpltCallback(hadc); 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ConvCpltCallback(hadc); 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else /* DMA and-or internal error occurred */ 2039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** if ((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) != 0UL) 2041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Call HAL ADC Error Callback function */ 2043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 2044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback(hadc); 2045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ErrorCallback(hadc); 2047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** else 2050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Call DMA error callback */ 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->DMA_Handle->XferErrorCallback(hdma); 2053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 2058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief DMA half transfer complete callback. 2059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 2060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified DMA module. 2061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 2063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAHalfConvCplt(DMA_HandleTypeDef *hdma) 2064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2025 .loc 1 2064 1 is_stmt 1 view -0 2026 .cfi_startproc 2027 @ args = 0, pretend = 0, frame = 0 2028 @ frame_needed = 0, uses_anonymous_args = 0 2029 .loc 1 2064 1 is_stmt 0 view .LVU642 2030 0000 08B5 push {r3, lr} 2031 .LCFI18: 2032 .cfi_def_cfa_offset 8 2033 .cfi_offset 3, -8 2034 .cfi_offset 14, -4 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 2035 .loc 1 2065 3 is_stmt 1 view .LVU643 2036 .LVL109: 2066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Half conversion callback */ 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 2068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ConvHalfCpltCallback(hadc); 2069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ConvHalfCpltCallback(hadc); 2037 .loc 1 2070 3 view .LVU644 2038 0002 806B ldr r0, [r0, #56] 2039 .LVL110: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 82 2040 .loc 1 2070 3 is_stmt 0 view .LVU645 2041 0004 FFF7FEFF bl HAL_ADC_ConvHalfCpltCallback 2042 .LVL111: 2071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2043 .loc 1 2072 1 view .LVU646 2044 0008 08BD pop {r3, pc} 2045 .cfi_endproc 2046 .LFE263: 2048 .section .text.HAL_ADC_LevelOutOfWindowCallback,"ax",%progbits 2049 .align 1 2050 .weak HAL_ADC_LevelOutOfWindowCallback 2051 .syntax unified 2052 .thumb 2053 .thumb_func 2055 HAL_ADC_LevelOutOfWindowCallback: 2056 .LVL112: 2057 .LFB255: 1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 2058 .loc 1 1611 1 is_stmt 1 view -0 2059 .cfi_startproc 2060 @ args = 0, pretend = 0, frame = 0 2061 @ frame_needed = 0, uses_anonymous_args = 0 2062 @ link register save eliminated. 1613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 2063 .loc 1 1613 3 view .LVU648 1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2064 .loc 1 1617 1 is_stmt 0 view .LVU649 2065 0000 7047 bx lr 2066 .cfi_endproc 2067 .LFE255: 2069 .section .text.HAL_ADC_ErrorCallback,"ax",%progbits 2070 .align 1 2071 .weak HAL_ADC_ErrorCallback 2072 .syntax unified 2073 .thumb 2074 .thumb_func 2076 HAL_ADC_ErrorCallback: 2077 .LVL113: 2078 .LFB256: 1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Prevent unused argument(s) compilation warning */ 2079 .loc 1 1632 1 is_stmt 1 view -0 2080 .cfi_startproc 2081 @ args = 0, pretend = 0, frame = 0 2082 @ frame_needed = 0, uses_anonymous_args = 0 2083 @ link register save eliminated. 1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* NOTE : This function Should not be modified, when the callback is needed, 2084 .loc 1 1634 3 view .LVU651 1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2085 .loc 1 1638 1 is_stmt 0 view .LVU652 2086 0000 7047 bx lr 2087 .cfi_endproc 2088 .LFE256: 2090 .section .text.HAL_ADC_IRQHandler,"ax",%progbits 2091 .align 1 2092 .global HAL_ADC_IRQHandler 2093 .syntax unified ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 83 2094 .thumb 2095 .thumb_func 2097 HAL_ADC_IRQHandler: 2098 .LVL114: 2099 .LFB249: 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 2100 .loc 1 1200 1 is_stmt 1 view -0 2101 .cfi_startproc 2102 @ args = 0, pretend = 0, frame = 0 2103 @ frame_needed = 0, uses_anonymous_args = 0 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 2104 .loc 1 1200 1 is_stmt 0 view .LVU654 2105 0000 70B5 push {r4, r5, r6, lr} 2106 .LCFI19: 2107 .cfi_def_cfa_offset 16 2108 .cfi_offset 4, -16 2109 .cfi_offset 5, -12 2110 .cfi_offset 6, -8 2111 .cfi_offset 14, -4 2112 0002 0446 mov r4, r0 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2113 .loc 1 1201 3 is_stmt 1 view .LVU655 2114 .LVL115: 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp_cr1 = hadc->Instance->CR1; 2115 .loc 1 1203 3 view .LVU656 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp_cr1 = hadc->Instance->CR1; 2116 .loc 1 1203 25 is_stmt 0 view .LVU657 2117 0004 0368 ldr r3, [r0] 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t tmp_cr1 = hadc->Instance->CR1; 2118 .loc 1 1203 12 view .LVU658 2119 0006 1E68 ldr r6, [r3] 2120 .LVL116: 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2121 .loc 1 1204 3 is_stmt 1 view .LVU659 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2122 .loc 1 1204 12 is_stmt 0 view .LVU660 2123 0008 5D68 ldr r5, [r3, #4] 2124 .LVL117: 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion)); 2125 .loc 1 1207 3 is_stmt 1 view .LVU661 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection)); 2126 .loc 1 1208 3 view .LVU662 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2127 .loc 1 1209 3 view .LVU663 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_EOC; 2128 .loc 1 1211 3 view .LVU664 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag for regular channels */ 2129 .loc 1 1212 3 view .LVU665 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2130 .loc 1 1214 3 view .LVU666 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2131 .loc 1 1214 6 is_stmt 0 view .LVU667 2132 000a 16F0020F tst r6, #2 2133 000e 2FD0 beq .L159 2134 0010 05F02002 and r2, r5, #32 2135 .LVL118: 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 84 2136 .loc 1 1214 12 discriminator 1 view .LVU668 2137 0014 62B3 cbz r2, .L159 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2138 .loc 1 1217 5 is_stmt 1 view .LVU669 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2139 .loc 1 1217 9 is_stmt 0 view .LVU670 2140 0016 026C ldr r2, [r0, #64] 2141 .LVL119: 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2142 .loc 1 1217 8 view .LVU671 2143 0018 12F0100F tst r2, #16 2144 001c 03D1 bne .L160 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2145 .loc 1 1220 7 is_stmt 1 view .LVU672 2146 001e 026C ldr r2, [r0, #64] 2147 0020 42F40072 orr r2, r2, #512 2148 0024 0264 str r2, [r0, #64] 2149 .L160: 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2150 .loc 1 1229 5 view .LVU673 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2151 .loc 1 1229 9 is_stmt 0 view .LVU674 2152 0026 9A68 ldr r2, [r3, #8] 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2153 .loc 1 1229 8 view .LVU675 2154 0028 12F0405F tst r2, #805306368 2155 002c 19D1 bne .L161 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 2156 .loc 1 1230 20 discriminator 1 view .LVU676 2157 002e 227E ldrb r2, [r4, #24] @ zero_extendqisi2 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2158 .loc 1 1229 63 discriminator 1 view .LVU677 2159 0030 BAB9 cbnz r2, .L161 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 2160 .loc 1 1231 10 view .LVU678 2161 0032 DA6A ldr r2, [r3, #44] 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 2162 .loc 1 1230 63 view .LVU679 2163 0034 12F4700F tst r2, #15728640 2164 0038 03D0 beq .L162 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2165 .loc 1 1232 10 view .LVU680 2166 003a 9A68 ldr r2, [r3, #8] 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 2167 .loc 1 1231 59 view .LVU681 2168 003c 12F4806F tst r2, #1024 2169 0040 0FD1 bne .L161 2170 .L162: 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2171 .loc 1 1238 7 is_stmt 1 view .LVU682 2172 0042 5A68 ldr r2, [r3, #4] 2173 0044 22F02002 bic r2, r2, #32 2174 0048 5A60 str r2, [r3, #4] 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2175 .loc 1 1241 7 view .LVU683 2176 004a 236C ldr r3, [r4, #64] 2177 004c 23F48073 bic r3, r3, #256 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 85 2178 0050 2364 str r3, [r4, #64] 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2179 .loc 1 1243 7 view .LVU684 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2180 .loc 1 1243 11 is_stmt 0 view .LVU685 2181 0052 236C ldr r3, [r4, #64] 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2182 .loc 1 1243 10 view .LVU686 2183 0054 13F4805F tst r3, #4096 2184 0058 03D1 bne .L161 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2185 .loc 1 1245 9 is_stmt 1 view .LVU687 2186 005a 236C ldr r3, [r4, #64] 2187 005c 43F00103 orr r3, r3, #1 2188 0060 2364 str r3, [r4, #64] 2189 .L161: 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2190 .loc 1 1253 5 view .LVU688 2191 0062 2046 mov r0, r4 2192 .LVL120: 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2193 .loc 1 1253 5 is_stmt 0 view .LVU689 2194 0064 FFF7FEFF bl HAL_ADC_ConvCpltCallback 2195 .LVL121: 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2196 .loc 1 1257 5 is_stmt 1 view .LVU690 2197 0068 2368 ldr r3, [r4] 2198 006a 6FF01202 mvn r2, #18 2199 006e 1A60 str r2, [r3] 2200 .L159: 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_JEOC; 2201 .loc 1 1260 3 view .LVU691 2202 .LVL122: 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag for injected channels */ 2203 .loc 1 1261 3 view .LVU692 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check End of conversion flag for injected channels */ 2204 .loc 1 1261 8 is_stmt 0 view .LVU693 2205 0070 05F08003 and r3, r5, #128 2206 .LVL123: 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2207 .loc 1 1263 3 is_stmt 1 view .LVU694 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2208 .loc 1 1263 6 is_stmt 0 view .LVU695 2209 0074 16F0040F tst r6, #4 2210 0078 37D0 beq .L163 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2211 .loc 1 1263 12 discriminator 1 view .LVU696 2212 007a 002B cmp r3, #0 2213 007c 35D0 beq .L163 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2214 .loc 1 1266 5 is_stmt 1 view .LVU697 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2215 .loc 1 1266 9 is_stmt 0 view .LVU698 2216 007e 236C ldr r3, [r4, #64] 2217 .LVL124: 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2218 .loc 1 1266 8 view .LVU699 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 86 2219 0080 13F0100F tst r3, #16 2220 0084 03D1 bne .L164 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2221 .loc 1 1269 7 is_stmt 1 view .LVU700 2222 0086 236C ldr r3, [r4, #64] 2223 0088 43F40053 orr r3, r3, #8192 2224 008c 2364 str r3, [r4, #64] 2225 .L164: 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 2226 .loc 1 1276 5 view .LVU701 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 2227 .loc 1 1276 9 is_stmt 0 view .LVU702 2228 008e 2368 ldr r3, [r4] 2229 0090 9A68 ldr r2, [r3, #8] 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 2230 .loc 1 1276 8 view .LVU703 2231 0092 12F4401F tst r2, #3145728 2232 0096 21D1 bne .L165 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 2233 .loc 1 1277 10 discriminator 1 view .LVU704 2234 0098 9A6B ldr r2, [r3, #56] 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 2235 .loc 1 1276 65 discriminator 1 view .LVU705 2236 009a 12F4401F tst r2, #3145728 2237 009e 03D0 beq .L166 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 2238 .loc 1 1278 10 view .LVU706 2239 00a0 9A68 ldr r2, [r3, #8] 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 2240 .loc 1 1277 61 view .LVU707 2241 00a2 12F4806F tst r2, #1024 2242 00a6 19D1 bne .L165 2243 .L166: 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 2244 .loc 1 1279 10 view .LVU708 2245 00a8 5A68 ldr r2, [r3, #4] 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 2246 .loc 1 1278 61 view .LVU709 2247 00aa 12F4806F tst r2, #1024 2248 00ae 15D1 bne .L165 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 2249 .loc 1 1280 11 view .LVU710 2250 00b0 9A68 ldr r2, [r3, #8] 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 2251 .loc 1 1279 61 view .LVU711 2252 00b2 12F0405F tst r2, #805306368 2253 00b6 11D1 bne .L165 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2254 .loc 1 1281 22 view .LVU712 2255 00b8 227E ldrb r2, [r4, #24] @ zero_extendqisi2 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 2256 .loc 1 1280 53 view .LVU713 2257 00ba 7AB9 cbnz r2, .L165 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2258 .loc 1 1284 7 is_stmt 1 view .LVU714 2259 00bc 5A68 ldr r2, [r3, #4] 2260 00be 22F08002 bic r2, r2, #128 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 87 2261 00c2 5A60 str r2, [r3, #4] 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2262 .loc 1 1287 7 view .LVU715 2263 00c4 236C ldr r3, [r4, #64] 2264 00c6 23F48053 bic r3, r3, #4096 2265 00ca 2364 str r3, [r4, #64] 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2266 .loc 1 1289 7 view .LVU716 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2267 .loc 1 1289 11 is_stmt 0 view .LVU717 2268 00cc 236C ldr r3, [r4, #64] 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2269 .loc 1 1289 10 view .LVU718 2270 00ce 13F4807F tst r3, #256 2271 00d2 03D1 bne .L165 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2272 .loc 1 1291 9 is_stmt 1 view .LVU719 2273 00d4 236C ldr r3, [r4, #64] 2274 00d6 43F00103 orr r3, r3, #1 2275 00da 2364 str r3, [r4, #64] 2276 .L165: 1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2277 .loc 1 1300 5 view .LVU720 2278 00dc 2046 mov r0, r4 2279 00de FFF7FEFF bl HAL_ADCEx_InjectedConvCpltCallback 2280 .LVL125: 1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2281 .loc 1 1304 5 view .LVU721 2282 00e2 2368 ldr r3, [r4] 2283 00e4 6FF00C02 mvn r2, #12 2284 00e8 1A60 str r2, [r3] 2285 .L163: 1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_AWD; 2286 .loc 1 1307 3 view .LVU722 2287 .LVL126: 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Analog watchdog flag */ 2288 .loc 1 1308 3 view .LVU723 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Analog watchdog flag */ 2289 .loc 1 1308 8 is_stmt 0 view .LVU724 2290 00ea 05F04003 and r3, r5, #64 2291 .LVL127: 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2292 .loc 1 1310 3 is_stmt 1 view .LVU725 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2293 .loc 1 1310 6 is_stmt 0 view .LVU726 2294 00ee 16F0010F tst r6, #1 2295 00f2 05D0 beq .L167 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2296 .loc 1 1310 12 discriminator 1 view .LVU727 2297 00f4 23B1 cbz r3, .L167 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2298 .loc 1 1312 5 is_stmt 1 view .LVU728 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2299 .loc 1 1312 9 is_stmt 0 view .LVU729 2300 00f6 2368 ldr r3, [r4] 2301 .LVL128: 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 88 2302 .loc 1 1312 9 view .LVU730 2303 00f8 1B68 ldr r3, [r3] 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2304 .loc 1 1312 8 view .LVU731 2305 00fa 13F0010F tst r3, #1 2306 00fe 06D1 bne .L170 2307 .L167: 1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** tmp2 = tmp_cr1 & ADC_IT_OVR; 2308 .loc 1 1329 3 is_stmt 1 view .LVU732 2309 .LVL129: 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Overrun flag */ 2310 .loc 1 1330 3 view .LVU733 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Check Overrun flag */ 2311 .loc 1 1330 8 is_stmt 0 view .LVU734 2312 0100 05F08065 and r5, r5, #67108864 2313 .LVL130: 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2314 .loc 1 1332 3 is_stmt 1 view .LVU735 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2315 .loc 1 1332 6 is_stmt 0 view .LVU736 2316 0104 16F0200F tst r6, #32 2317 0108 00D0 beq .L158 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2318 .loc 1 1332 12 discriminator 1 view .LVU737 2319 010a 65B9 cbnz r5, .L171 2320 .LVL131: 2321 .L158: 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2322 .loc 1 1354 1 view .LVU738 2323 010c 70BD pop {r4, r5, r6, pc} 2324 .LVL132: 2325 .L170: 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2326 .loc 1 1315 7 is_stmt 1 view .LVU739 2327 010e 236C ldr r3, [r4, #64] 2328 0110 43F48033 orr r3, r3, #65536 2329 0114 2364 str r3, [r4, #64] 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2330 .loc 1 1321 7 view .LVU740 2331 0116 2046 mov r0, r4 2332 0118 FFF7FEFF bl HAL_ADC_LevelOutOfWindowCallback 2333 .LVL133: 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2334 .loc 1 1325 7 view .LVU741 2335 011c 2368 ldr r3, [r4] 2336 011e 6FF00102 mvn r2, #1 2337 0122 1A60 str r2, [r3] 2338 0124 ECE7 b .L167 2339 .LVL134: 2340 .L171: 1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2341 .loc 1 1339 5 view .LVU742 2342 0126 636C ldr r3, [r4, #68] 2343 0128 43F00203 orr r3, r3, #2 2344 012c 6364 str r3, [r4, #68] 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2345 .loc 1 1342 5 view .LVU743 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 89 2346 012e 2368 ldr r3, [r4] 2347 0130 6FF02005 mvn r5, #32 2348 .LVL135: 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2349 .loc 1 1342 5 is_stmt 0 view .LVU744 2350 0134 1D60 str r5, [r3] 1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2351 .loc 1 1348 5 is_stmt 1 view .LVU745 2352 0136 2046 mov r0, r4 2353 0138 FFF7FEFF bl HAL_ADC_ErrorCallback 2354 .LVL136: 1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2355 .loc 1 1352 5 view .LVU746 2356 013c 2368 ldr r3, [r4] 2357 013e 1D60 str r5, [r3] 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2358 .loc 1 1354 1 is_stmt 0 view .LVU747 2359 0140 E4E7 b .L158 2360 .cfi_endproc 2361 .LFE249: 2363 .section .text.ADC_DMAError,"ax",%progbits 2364 .align 1 2365 .syntax unified 2366 .thumb 2367 .thumb_func 2369 ADC_DMAError: 2370 .LVL137: 2371 .LFB264: 2073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @brief DMA error callback 2076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 2077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * the configuration information for the specified DMA module. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** * @retval None 2079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** */ 2080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAError(DMA_HandleTypeDef *hdma) 2081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2372 .loc 1 2081 1 is_stmt 1 view -0 2373 .cfi_startproc 2374 @ args = 0, pretend = 0, frame = 0 2375 @ frame_needed = 0, uses_anonymous_args = 0 2376 .loc 1 2081 1 is_stmt 0 view .LVU749 2377 0000 08B5 push {r3, lr} 2378 .LCFI20: 2379 .cfi_def_cfa_offset 8 2380 .cfi_offset 3, -8 2381 .cfi_offset 14, -4 2082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 2382 .loc 1 2082 3 is_stmt 1 view .LVU750 2383 .loc 1 2082 22 is_stmt 0 view .LVU751 2384 0002 806B ldr r0, [r0, #56] 2385 .LVL138: 2083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->State = HAL_ADC_STATE_ERROR_DMA; 2386 .loc 1 2083 3 is_stmt 1 view .LVU752 2387 .loc 1 2083 15 is_stmt 0 view .LVU753 2388 0004 4023 movs r3, #64 2389 0006 0364 str r3, [r0, #64] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 90 2084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Set ADC error code to DMA error */ 2085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCode |= HAL_ADC_ERROR_DMA; 2390 .loc 1 2085 3 is_stmt 1 view .LVU754 2391 .loc 1 2085 19 is_stmt 0 view .LVU755 2392 0008 436C ldr r3, [r0, #68] 2393 000a 43F00403 orr r3, r3, #4 2394 000e 4364 str r3, [r0, #68] 2086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Error callback */ 2087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1) 2088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** hadc->ErrorCallback(hadc); 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else 2090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_ADC_ErrorCallback(hadc); 2395 .loc 1 2090 3 is_stmt 1 view .LVU756 2396 0010 FFF7FEFF bl HAL_ADC_ErrorCallback 2397 .LVL139: 2091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2398 .loc 1 2092 1 is_stmt 0 view .LVU757 2399 0014 08BD pop {r3, pc} 2400 .cfi_endproc 2401 .LFE264: 2403 .section .text.ADC_DMAConvCplt,"ax",%progbits 2404 .align 1 2405 .syntax unified 2406 .thumb 2407 .thumb_func 2409 ADC_DMAConvCplt: 2410 .LVL140: 2411 .LFB262: 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 2412 .loc 1 1995 1 is_stmt 1 view -0 2413 .cfi_startproc 2414 @ args = 0, pretend = 0, frame = 0 2415 @ frame_needed = 0, uses_anonymous_args = 0 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 2416 .loc 1 1995 1 is_stmt 0 view .LVU759 2417 0000 08B5 push {r3, lr} 2418 .LCFI21: 2419 .cfi_def_cfa_offset 8 2420 .cfi_offset 3, -8 2421 .cfi_offset 14, -4 2422 0002 0346 mov r3, r0 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2423 .loc 1 1997 3 is_stmt 1 view .LVU760 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2424 .loc 1 1997 22 is_stmt 0 view .LVU761 2425 0004 806B ldr r0, [r0, #56] 2426 .LVL141: 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2427 .loc 1 2000 3 is_stmt 1 view .LVU762 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2428 .loc 1 2000 7 is_stmt 0 view .LVU763 2429 0006 026C ldr r2, [r0, #64] 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2430 .loc 1 2000 6 view .LVU764 2431 0008 12F0500F tst r2, #80 2432 000c 25D1 bne .L175 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 91 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2433 .loc 1 2003 5 is_stmt 1 view .LVU765 2434 000e 036C ldr r3, [r0, #64] 2435 .LVL142: 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2436 .loc 1 2003 5 is_stmt 0 view .LVU766 2437 0010 43F40073 orr r3, r3, #512 2438 0014 0364 str r3, [r0, #64] 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2439 .loc 1 2011 5 is_stmt 1 view .LVU767 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2440 .loc 1 2011 9 is_stmt 0 view .LVU768 2441 0016 0368 ldr r3, [r0] 2442 0018 9A68 ldr r2, [r3, #8] 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2443 .loc 1 2011 8 view .LVU769 2444 001a 12F0405F tst r2, #805306368 2445 001e 19D1 bne .L176 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 2446 .loc 1 2012 20 discriminator 1 view .LVU770 2447 0020 027E ldrb r2, [r0, #24] @ zero_extendqisi2 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 2448 .loc 1 2011 63 discriminator 1 view .LVU771 2449 0022 BAB9 cbnz r2, .L176 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 2450 .loc 1 2013 10 view .LVU772 2451 0024 DA6A ldr r2, [r3, #44] 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 2452 .loc 1 2012 63 view .LVU773 2453 0026 12F4700F tst r2, #15728640 2454 002a 03D0 beq .L177 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2455 .loc 1 2014 10 view .LVU774 2456 002c 9A68 ldr r2, [r3, #8] 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 2457 .loc 1 2013 59 view .LVU775 2458 002e 12F4806F tst r2, #1024 2459 0032 0FD1 bne .L176 2460 .L177: 2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2461 .loc 1 2020 7 is_stmt 1 view .LVU776 2462 0034 5A68 ldr r2, [r3, #4] 2463 0036 22F02002 bic r2, r2, #32 2464 003a 5A60 str r2, [r3, #4] 2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2465 .loc 1 2023 7 view .LVU777 2466 003c 036C ldr r3, [r0, #64] 2467 003e 23F48073 bic r3, r3, #256 2468 0042 0364 str r3, [r0, #64] 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2469 .loc 1 2025 7 view .LVU778 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2470 .loc 1 2025 11 is_stmt 0 view .LVU779 2471 0044 036C ldr r3, [r0, #64] 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2472 .loc 1 2025 10 view .LVU780 2473 0046 13F4805F tst r3, #4096 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 92 2474 004a 03D1 bne .L176 2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2475 .loc 1 2027 9 is_stmt 1 view .LVU781 2476 004c 036C ldr r3, [r0, #64] 2477 004e 43F00103 orr r3, r3, #1 2478 0052 0364 str r3, [r0, #64] 2479 .L176: 2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2480 .loc 1 2035 5 view .LVU782 2481 0054 FFF7FEFF bl HAL_ADC_ConvCpltCallback 2482 .LVL143: 2483 .L174: 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2484 .loc 1 2055 1 is_stmt 0 view .LVU783 2485 0058 08BD pop {r3, pc} 2486 .LVL144: 2487 .L175: 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2488 .loc 1 2040 5 is_stmt 1 view .LVU784 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2489 .loc 1 2040 14 is_stmt 0 view .LVU785 2490 005a 026C ldr r2, [r0, #64] 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2491 .loc 1 2040 8 view .LVU786 2492 005c 12F0100F tst r2, #16 2493 0060 04D1 bne .L181 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2494 .loc 1 2052 7 is_stmt 1 view .LVU787 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2495 .loc 1 2052 11 is_stmt 0 view .LVU788 2496 0062 826B ldr r2, [r0, #56] 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2497 .loc 1 2052 23 view .LVU789 2498 0064 D26C ldr r2, [r2, #76] 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2499 .loc 1 2052 7 view .LVU790 2500 0066 1846 mov r0, r3 2501 .LVL145: 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2502 .loc 1 2052 7 view .LVU791 2503 0068 9047 blx r2 2504 .LVL146: 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2505 .loc 1 2055 1 view .LVU792 2506 006a F5E7 b .L174 2507 .LVL147: 2508 .L181: 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2509 .loc 1 2046 7 is_stmt 1 view .LVU793 2510 006c FFF7FEFF bl HAL_ADC_ErrorCallback 2511 .LVL148: 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */ 2512 .loc 1 2046 7 is_stmt 0 view .LVU794 2513 0070 F2E7 b .L174 2514 .cfi_endproc 2515 .LFE262: 2517 .section .text.HAL_ADC_ConfigChannel,"ax",%progbits ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 93 2518 .align 1 2519 .global HAL_ADC_ConfigChannel 2520 .syntax unified 2521 .thumb 2522 .thumb_func 2524 HAL_ADC_ConfigChannel: 2525 .LVL149: 2526 .LFB257: 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 2527 .loc 1 1670 1 is_stmt 1 view -0 2528 .cfi_startproc 2529 @ args = 0, pretend = 0, frame = 8 2530 @ frame_needed = 0, uses_anonymous_args = 0 2531 @ link register save eliminated. 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __IO uint32_t counter = 0U; 2532 .loc 1 1670 1 is_stmt 0 view .LVU796 2533 0000 30B4 push {r4, r5} 2534 .LCFI22: 2535 .cfi_def_cfa_offset 8 2536 .cfi_offset 4, -8 2537 .cfi_offset 5, -4 2538 0002 82B0 sub sp, sp, #8 2539 .LCFI23: 2540 .cfi_def_cfa_offset 16 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 2541 .loc 1 1671 3 is_stmt 1 view .LVU797 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ADC_Common_TypeDef *tmpADC_Common; 2542 .loc 1 1671 17 is_stmt 0 view .LVU798 2543 0004 0023 movs r3, #0 2544 0006 0193 str r3, [sp, #4] 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2545 .loc 1 1672 3 is_stmt 1 view .LVU799 1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_REGULAR_RANK(sConfig->Rank)); 2546 .loc 1 1675 3 view .LVU800 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_SAMPLE_TIME(sConfig->SamplingTime)); 2547 .loc 1 1676 3 view .LVU801 1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2548 .loc 1 1677 3 view .LVU802 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2549 .loc 1 1680 3 view .LVU803 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2550 .loc 1 1680 3 view .LVU804 2551 0008 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 2552 000c 012B cmp r3, #1 2553 000e 00F0BB80 beq .L193 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2554 .loc 1 1680 3 discriminator 2 view .LVU805 2555 0012 0123 movs r3, #1 2556 0014 80F83C30 strb r3, [r0, #60] 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2557 .loc 1 1680 3 discriminator 2 view .LVU806 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2558 .loc 1 1683 3 discriminator 2 view .LVU807 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2559 .loc 1 1683 14 is_stmt 0 discriminator 2 view .LVU808 2560 0018 0B68 ldr r3, [r1] 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 94 2561 .loc 1 1683 6 discriminator 2 view .LVU809 2562 001a 092B cmp r3, #9 2563 001c 41D9 bls .L184 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2564 .loc 1 1686 5 is_stmt 1 view .LVU810 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2565 .loc 1 1686 9 is_stmt 0 view .LVU811 2566 001e 0468 ldr r4, [r0] 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2567 .loc 1 1686 27 view .LVU812 2568 0020 E268 ldr r2, [r4, #12] 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2569 .loc 1 1686 31 view .LVU813 2570 0022 9BB2 uxth r3, r3 2571 0024 03EB4303 add r3, r3, r3, lsl #1 2572 0028 1E3B subs r3, r3, #30 2573 002a 4FF0070C mov ip, #7 2574 002e 0CFA03F3 lsl r3, ip, r3 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2575 .loc 1 1686 27 view .LVU814 2576 0032 22EA0303 bic r3, r2, r3 2577 0036 E360 str r3, [r4, #12] 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2578 .loc 1 1689 5 is_stmt 1 view .LVU815 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2579 .loc 1 1689 9 is_stmt 0 view .LVU816 2580 0038 0468 ldr r4, [r0] 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2581 .loc 1 1689 27 view .LVU817 2582 003a E268 ldr r2, [r4, #12] 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2583 .loc 1 1689 30 view .LVU818 2584 003c 0B88 ldrh r3, [r1] 2585 003e 03EB4303 add r3, r3, r3, lsl #1 2586 0042 1E3B subs r3, r3, #30 2587 0044 8D68 ldr r5, [r1, #8] 2588 0046 05FA03F3 lsl r3, r5, r3 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2589 .loc 1 1689 27 view .LVU819 2590 004a 1343 orrs r3, r3, r2 2591 004c E360 str r3, [r4, #12] 2592 .L185: 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2593 .loc 1 1701 3 is_stmt 1 view .LVU820 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2594 .loc 1 1701 14 is_stmt 0 view .LVU821 2595 004e 4B68 ldr r3, [r1, #4] 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2596 .loc 1 1701 6 view .LVU822 2597 0050 062B cmp r3, #6 2598 0052 3DD8 bhi .L186 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2599 .loc 1 1704 5 is_stmt 1 view .LVU823 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2600 .loc 1 1704 9 is_stmt 0 view .LVU824 2601 0054 0468 ldr r4, [r0] 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 95 2602 .loc 1 1704 26 view .LVU825 2603 0056 626B ldr r2, [r4, #52] 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2604 .loc 1 1704 30 view .LVU826 2605 0058 03EB8303 add r3, r3, r3, lsl #2 2606 005c 053B subs r3, r3, #5 2607 005e 4FF01F0C mov ip, #31 2608 0062 0CFA03F3 lsl r3, ip, r3 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2609 .loc 1 1704 26 view .LVU827 2610 0066 22EA0303 bic r3, r2, r3 2611 006a 6363 str r3, [r4, #52] 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2612 .loc 1 1707 5 is_stmt 1 view .LVU828 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2613 .loc 1 1707 9 is_stmt 0 view .LVU829 2614 006c 0468 ldr r4, [r0] 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2615 .loc 1 1707 26 view .LVU830 2616 006e 626B ldr r2, [r4, #52] 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2617 .loc 1 1707 29 view .LVU831 2618 0070 4B68 ldr r3, [r1, #4] 2619 0072 03EB8303 add r3, r3, r3, lsl #2 2620 0076 053B subs r3, r3, #5 2621 0078 B1F800C0 ldrh ip, [r1] 2622 007c 0CFA03F3 lsl r3, ip, r3 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2623 .loc 1 1707 26 view .LVU832 2624 0080 1343 orrs r3, r3, r2 2625 0082 6363 str r3, [r4, #52] 2626 .L187: 1731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2627 .loc 1 1731 3 is_stmt 1 view .LVU833 2628 .LVL150: 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2629 .loc 1 1734 3 view .LVU834 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2630 .loc 1 1734 12 is_stmt 0 view .LVU835 2631 0084 0268 ldr r2, [r0] 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2632 .loc 1 1734 6 view .LVU836 2633 0086 414B ldr r3, .L197 2634 0088 9A42 cmp r2, r3 2635 008a 51D0 beq .L195 2636 .L189: 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2637 .loc 1 1747 3 is_stmt 1 view .LVU837 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2638 .loc 1 1747 12 is_stmt 0 view .LVU838 2639 008c 0268 ldr r2, [r0] 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2640 .loc 1 1747 6 view .LVU839 2641 008e 3F4B ldr r3, .L197 2642 0090 9A42 cmp r2, r3 2643 0092 56D0 beq .L196 2644 .L190: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 96 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2645 .loc 1 1770 3 is_stmt 1 view .LVU840 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2646 .loc 1 1770 3 view .LVU841 2647 0094 0023 movs r3, #0 2648 0096 80F83C30 strb r3, [r0, #60] 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2649 .loc 1 1770 3 view .LVU842 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2650 .loc 1 1773 3 view .LVU843 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2651 .loc 1 1773 10 is_stmt 0 view .LVU844 2652 009a 1846 mov r0, r3 2653 .LVL151: 2654 .L183: 1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2655 .loc 1 1774 1 view .LVU845 2656 009c 02B0 add sp, sp, #8 2657 .LCFI24: 2658 .cfi_remember_state 2659 .cfi_def_cfa_offset 8 2660 @ sp needed 2661 009e 30BC pop {r4, r5} 2662 .LCFI25: 2663 .cfi_restore 5 2664 .cfi_restore 4 2665 .cfi_def_cfa_offset 0 2666 00a0 7047 bx lr 2667 .LVL152: 2668 .L184: 2669 .LCFI26: 2670 .cfi_restore_state 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2671 .loc 1 1694 5 is_stmt 1 view .LVU846 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2672 .loc 1 1694 9 is_stmt 0 view .LVU847 2673 00a2 0468 ldr r4, [r0] 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2674 .loc 1 1694 27 view .LVU848 2675 00a4 2269 ldr r2, [r4, #16] 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2676 .loc 1 1694 31 view .LVU849 2677 00a6 9BB2 uxth r3, r3 2678 00a8 03EB4303 add r3, r3, r3, lsl #1 2679 00ac 4FF0070C mov ip, #7 2680 00b0 0CFA03F3 lsl r3, ip, r3 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2681 .loc 1 1694 27 view .LVU850 2682 00b4 22EA0303 bic r3, r2, r3 2683 00b8 2361 str r3, [r4, #16] 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2684 .loc 1 1697 5 is_stmt 1 view .LVU851 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2685 .loc 1 1697 9 is_stmt 0 view .LVU852 2686 00ba 0468 ldr r4, [r0] 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2687 .loc 1 1697 27 view .LVU853 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 97 2688 00bc 2269 ldr r2, [r4, #16] 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2689 .loc 1 1697 30 view .LVU854 2690 00be 0B88 ldrh r3, [r1] 2691 00c0 03EB4303 add r3, r3, r3, lsl #1 2692 00c4 8D68 ldr r5, [r1, #8] 2693 00c6 05FA03F3 lsl r3, r5, r3 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2694 .loc 1 1697 27 view .LVU855 2695 00ca 1343 orrs r3, r3, r2 2696 00cc 2361 str r3, [r4, #16] 2697 00ce BEE7 b .L185 2698 .L186: 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2699 .loc 1 1710 8 is_stmt 1 view .LVU856 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2700 .loc 1 1710 11 is_stmt 0 view .LVU857 2701 00d0 0C2B cmp r3, #12 2702 00d2 16D8 bhi .L188 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2703 .loc 1 1713 5 is_stmt 1 view .LVU858 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2704 .loc 1 1713 9 is_stmt 0 view .LVU859 2705 00d4 0568 ldr r5, [r0] 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2706 .loc 1 1713 26 view .LVU860 2707 00d6 2A6B ldr r2, [r5, #48] 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2708 .loc 1 1713 30 view .LVU861 2709 00d8 03EB8303 add r3, r3, r3, lsl #2 2710 00dc 233B subs r3, r3, #35 2711 00de 1F24 movs r4, #31 2712 00e0 04FA03F3 lsl r3, r4, r3 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2713 .loc 1 1713 26 view .LVU862 2714 00e4 22EA0303 bic r3, r2, r3 2715 00e8 2B63 str r3, [r5, #48] 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2716 .loc 1 1716 5 is_stmt 1 view .LVU863 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2717 .loc 1 1716 9 is_stmt 0 view .LVU864 2718 00ea 0568 ldr r5, [r0] 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2719 .loc 1 1716 26 view .LVU865 2720 00ec 2A6B ldr r2, [r5, #48] 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2721 .loc 1 1716 29 view .LVU866 2722 00ee 4B68 ldr r3, [r1, #4] 2723 00f0 03EB8303 add r3, r3, r3, lsl #2 2724 00f4 233B subs r3, r3, #35 2725 00f6 0C88 ldrh r4, [r1] 2726 00f8 04FA03F3 lsl r3, r4, r3 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2727 .loc 1 1716 26 view .LVU867 2728 00fc 1343 orrs r3, r3, r2 2729 00fe 2B63 str r3, [r5, #48] 2730 0100 C0E7 b .L187 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 98 2731 .L188: 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2732 .loc 1 1722 5 is_stmt 1 view .LVU868 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2733 .loc 1 1722 9 is_stmt 0 view .LVU869 2734 0102 0568 ldr r5, [r0] 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2735 .loc 1 1722 26 view .LVU870 2736 0104 EA6A ldr r2, [r5, #44] 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2737 .loc 1 1722 30 view .LVU871 2738 0106 03EB8303 add r3, r3, r3, lsl #2 2739 010a 413B subs r3, r3, #65 2740 010c 1F24 movs r4, #31 2741 010e 04FA03F3 lsl r3, r4, r3 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2742 .loc 1 1722 26 view .LVU872 2743 0112 22EA0303 bic r3, r2, r3 2744 0116 EB62 str r3, [r5, #44] 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2745 .loc 1 1725 5 is_stmt 1 view .LVU873 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2746 .loc 1 1725 9 is_stmt 0 view .LVU874 2747 0118 0568 ldr r5, [r0] 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2748 .loc 1 1725 26 view .LVU875 2749 011a EA6A ldr r2, [r5, #44] 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2750 .loc 1 1725 29 view .LVU876 2751 011c 4B68 ldr r3, [r1, #4] 2752 011e 03EB8303 add r3, r3, r3, lsl #2 2753 0122 413B subs r3, r3, #65 2754 0124 0C88 ldrh r4, [r1] 2755 0126 04FA03F3 lsl r3, r4, r3 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2756 .loc 1 1725 26 view .LVU877 2757 012a 1343 orrs r3, r3, r2 2758 012c EB62 str r3, [r5, #44] 2759 012e A9E7 b .L187 2760 .LVL153: 2761 .L195: 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2762 .loc 1 1734 43 discriminator 1 view .LVU878 2763 0130 0B68 ldr r3, [r1] 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2764 .loc 1 1734 32 discriminator 1 view .LVU879 2765 0132 122B cmp r3, #18 2766 0134 AAD1 bne .L189 1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2767 .loc 1 1737 5 is_stmt 1 view .LVU880 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2768 .loc 1 1742 5 view .LVU881 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2769 .loc 1 1742 24 is_stmt 0 view .LVU882 2770 0136 164A ldr r2, .L197+4 2771 0138 5368 ldr r3, [r2, #4] 2772 013a 43F48003 orr r3, r3, #4194304 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 99 2773 013e 5360 str r3, [r2, #4] 2774 0140 A4E7 b .L189 2775 .L196: 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2776 .loc 1 1747 44 discriminator 1 view .LVU883 2777 0142 0B68 ldr r3, [r1] 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2778 .loc 1 1747 81 discriminator 1 view .LVU884 2779 0144 103B subs r3, r3, #16 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2780 .loc 1 1747 32 discriminator 1 view .LVU885 2781 0146 012B cmp r3, #1 2782 0148 A4D8 bhi .L190 1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2783 .loc 1 1750 5 is_stmt 1 view .LVU886 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2784 .loc 1 1755 5 view .LVU887 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2785 .loc 1 1755 24 is_stmt 0 view .LVU888 2786 014a 114A ldr r2, .L197+4 2787 014c 5368 ldr r3, [r2, #4] 2788 014e 43F40003 orr r3, r3, #8388608 2789 0152 5360 str r3, [r2, #4] 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2790 .loc 1 1757 5 is_stmt 1 view .LVU889 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2791 .loc 1 1757 16 is_stmt 0 view .LVU890 2792 0154 0B68 ldr r3, [r1] 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2793 .loc 1 1757 8 view .LVU891 2794 0156 102B cmp r3, #16 2795 0158 9CD1 bne .L190 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 2796 .loc 1 1761 7 is_stmt 1 view .LVU892 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 2797 .loc 1 1761 61 is_stmt 0 view .LVU893 2798 015a 0E4B ldr r3, .L197+8 2799 015c 1B68 ldr r3, [r3] 2800 015e 02F14672 add r2, r2, #51904512 2801 0162 02F52E32 add r2, r2, #178176 2802 0166 02F28332 addw r2, r2, #899 2803 016a A2FB0323 umull r2, r3, r2, r3 2804 016e 9B0C lsrs r3, r3, #18 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 2805 .loc 1 1761 42 view .LVU894 2806 0170 03EB8303 add r3, r3, r3, lsl #2 2807 0174 5B00 lsls r3, r3, #1 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** while (counter != 0U) 2808 .loc 1 1761 15 view .LVU895 2809 0176 0193 str r3, [sp, #4] 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2810 .loc 1 1762 7 is_stmt 1 view .LVU896 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2811 .loc 1 1762 13 is_stmt 0 view .LVU897 2812 0178 02E0 b .L191 2813 .L192: 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 100 2814 .loc 1 1764 9 is_stmt 1 view .LVU898 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2815 .loc 1 1764 16 is_stmt 0 view .LVU899 2816 017a 019B ldr r3, [sp, #4] 2817 017c 013B subs r3, r3, #1 2818 017e 0193 str r3, [sp, #4] 2819 .L191: 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2820 .loc 1 1762 13 is_stmt 1 view .LVU900 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2821 .loc 1 1762 22 is_stmt 0 view .LVU901 2822 0180 019B ldr r3, [sp, #4] 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2823 .loc 1 1762 13 view .LVU902 2824 0182 002B cmp r3, #0 2825 0184 F9D1 bne .L192 2826 0186 85E7 b .L190 2827 .LVL154: 2828 .L193: 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2829 .loc 1 1680 3 view .LVU903 2830 0188 0220 movs r0, #2 2831 .LVL155: 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2832 .loc 1 1680 3 view .LVU904 2833 018a 87E7 b .L183 2834 .L198: 2835 .align 2 2836 .L197: 2837 018c 00200140 .word 1073815552 2838 0190 00230140 .word 1073816320 2839 0194 00000000 .word SystemCoreClock 2840 .cfi_endproc 2841 .LFE257: 2843 .section .text.HAL_ADC_AnalogWDGConfig,"ax",%progbits 2844 .align 1 2845 .global HAL_ADC_AnalogWDGConfig 2846 .syntax unified 2847 .thumb 2848 .thumb_func 2850 HAL_ADC_AnalogWDGConfig: 2851 .LVL156: 2852 .LFB258: 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT 2853 .loc 1 1793 1 is_stmt 1 view -0 2854 .cfi_startproc 2855 @ args = 0, pretend = 0, frame = 0 2856 @ frame_needed = 0, uses_anonymous_args = 0 2857 @ link register save eliminated. 1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_ADC_CHANNEL(AnalogWDGConfig->Channel)); 2858 .loc 1 1799 3 view .LVU906 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** assert_param(IS_FUNCTIONAL_STATE(AnalogWDGConfig->ITMode)); 2859 .loc 1 1800 3 view .LVU907 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2860 .loc 1 1801 3 view .LVU908 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2861 .loc 1 1810 3 view .LVU909 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 101 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2862 .loc 1 1810 3 view .LVU910 2863 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 2864 0004 012B cmp r3, #1 2865 0006 34D0 beq .L203 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT 2866 .loc 1 1793 1 is_stmt 0 discriminator 2 view .LVU911 2867 0008 10B4 push {r4} 2868 .LCFI27: 2869 .cfi_def_cfa_offset 4 2870 .cfi_offset 4, -4 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2871 .loc 1 1810 3 is_stmt 1 discriminator 2 view .LVU912 2872 000a 0123 movs r3, #1 2873 000c 80F83C30 strb r3, [r0, #60] 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2874 .loc 1 1810 3 discriminator 2 view .LVU913 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2875 .loc 1 1812 3 discriminator 2 view .LVU914 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2876 .loc 1 1812 22 is_stmt 0 discriminator 2 view .LVU915 2877 0010 0B7C ldrb r3, [r1, #16] @ zero_extendqisi2 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** { 2878 .loc 1 1812 6 discriminator 2 view .LVU916 2879 0012 012B cmp r3, #1 2880 0014 27D0 beq .L208 1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2881 .loc 1 1820 5 is_stmt 1 view .LVU917 2882 0016 0268 ldr r2, [r0] 2883 0018 5368 ldr r3, [r2, #4] 2884 001a 23F04003 bic r3, r3, #64 2885 001e 5360 str r3, [r2, #4] 2886 .L202: 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2887 .loc 1 1824 3 view .LVU918 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2888 .loc 1 1824 7 is_stmt 0 view .LVU919 2889 0020 0268 ldr r2, [r0] 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2890 .loc 1 1824 23 view .LVU920 2891 0022 5368 ldr r3, [r2, #4] 2892 0024 23F44003 bic r3, r3, #12582912 2893 0028 23F40073 bic r3, r3, #512 2894 002c 5360 str r3, [r2, #4] 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2895 .loc 1 1827 3 is_stmt 1 view .LVU921 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2896 .loc 1 1827 7 is_stmt 0 view .LVU922 2897 002e 0268 ldr r2, [r0] 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2898 .loc 1 1827 23 view .LVU923 2899 0030 5368 ldr r3, [r2, #4] 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2900 .loc 1 1827 41 view .LVU924 2901 0032 0C68 ldr r4, [r1] 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2902 .loc 1 1827 23 view .LVU925 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 102 2903 0034 2343 orrs r3, r3, r4 2904 0036 5360 str r3, [r2, #4] 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2905 .loc 1 1830 3 is_stmt 1 view .LVU926 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2906 .loc 1 1830 7 is_stmt 0 view .LVU927 2907 0038 0368 ldr r3, [r0] 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2908 .loc 1 1830 40 view .LVU928 2909 003a 4A68 ldr r2, [r1, #4] 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2910 .loc 1 1830 23 view .LVU929 2911 003c 5A62 str r2, [r3, #36] 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2912 .loc 1 1833 3 is_stmt 1 view .LVU930 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2913 .loc 1 1833 7 is_stmt 0 view .LVU931 2914 003e 0368 ldr r3, [r0] 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2915 .loc 1 1833 40 view .LVU932 2916 0040 8A68 ldr r2, [r1, #8] 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2917 .loc 1 1833 23 view .LVU933 2918 0042 9A62 str r2, [r3, #40] 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2919 .loc 1 1836 3 is_stmt 1 view .LVU934 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2920 .loc 1 1836 7 is_stmt 0 view .LVU935 2921 0044 0268 ldr r2, [r0] 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2922 .loc 1 1836 23 view .LVU936 2923 0046 5368 ldr r3, [r2, #4] 2924 0048 23F01F03 bic r3, r3, #31 2925 004c 5360 str r3, [r2, #4] 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2926 .loc 1 1839 3 is_stmt 1 view .LVU937 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2927 .loc 1 1839 7 is_stmt 0 view .LVU938 2928 004e 0268 ldr r2, [r0] 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2929 .loc 1 1839 23 view .LVU939 2930 0050 5468 ldr r4, [r2, #4] 2931 0052 8B89 ldrh r3, [r1, #12] 2932 0054 2343 orrs r3, r3, r4 2933 0056 5360 str r3, [r2, #4] 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2934 .loc 1 1842 3 is_stmt 1 view .LVU940 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2935 .loc 1 1842 3 view .LVU941 2936 0058 0023 movs r3, #0 2937 005a 80F83C30 strb r3, [r0, #60] 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2938 .loc 1 1842 3 view .LVU942 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2939 .loc 1 1845 3 view .LVU943 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2940 .loc 1 1845 10 is_stmt 0 view .LVU944 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 103 2941 005e 1846 mov r0, r3 2942 .LVL157: 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2943 .loc 1 1846 1 view .LVU945 2944 0060 5DF8044B ldr r4, [sp], #4 2945 .LCFI28: 2946 .cfi_remember_state 2947 .cfi_restore 4 2948 .cfi_def_cfa_offset 0 2949 0064 7047 bx lr 2950 .LVL158: 2951 .L208: 2952 .LCFI29: 2953 .cfi_restore_state 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2954 .loc 1 1815 5 is_stmt 1 view .LVU946 2955 0066 0268 ldr r2, [r0] 2956 0068 5368 ldr r3, [r2, #4] 2957 006a 43F04003 orr r3, r3, #64 2958 006e 5360 str r3, [r2, #4] 2959 0070 D6E7 b .L202 2960 .L203: 2961 .LCFI30: 2962 .cfi_def_cfa_offset 0 2963 .cfi_restore 4 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2964 .loc 1 1810 3 is_stmt 0 view .LVU947 2965 0072 0220 movs r0, #2 2966 .LVL159: 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2967 .loc 1 1846 1 view .LVU948 2968 0074 7047 bx lr 2969 .cfi_endproc 2970 .LFE258: 2972 .section .text.HAL_ADC_GetState,"ax",%progbits 2973 .align 1 2974 .global HAL_ADC_GetState 2975 .syntax unified 2976 .thumb 2977 .thumb_func 2979 HAL_ADC_GetState: 2980 .LVL160: 2981 .LFB259: 1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Return ADC state */ 2982 .loc 1 1875 1 is_stmt 1 view -0 2983 .cfi_startproc 2984 @ args = 0, pretend = 0, frame = 0 2985 @ frame_needed = 0, uses_anonymous_args = 0 2986 @ link register save eliminated. 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2987 .loc 1 1877 3 view .LVU950 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 2988 .loc 1 1877 14 is_stmt 0 view .LVU951 2989 0000 006C ldr r0, [r0, #64] 2990 .LVL161: 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 2991 .loc 1 1878 1 view .LVU952 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 104 2992 0002 7047 bx lr 2993 .cfi_endproc 2994 .LFE259: 2996 .section .text.HAL_ADC_GetError,"ax",%progbits 2997 .align 1 2998 .global HAL_ADC_GetError 2999 .syntax unified 3000 .thumb 3001 .thumb_func 3003 HAL_ADC_GetError: 3004 .LVL162: 3005 .LFB260: 1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** return hadc->ErrorCode; 3006 .loc 1 1887 1 is_stmt 1 view -0 3007 .cfi_startproc 3008 @ args = 0, pretend = 0, frame = 0 3009 @ frame_needed = 0, uses_anonymous_args = 0 3010 @ link register save eliminated. 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 3011 .loc 1 1888 3 view .LVU954 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** } 3012 .loc 1 1888 14 is_stmt 0 view .LVU955 3013 0000 406C ldr r0, [r0, #68] 3014 .LVL163: 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 3015 .loc 1 1889 1 view .LVU956 3016 0002 7047 bx lr 3017 .cfi_endproc 3018 .LFE260: 3020 .text 3021 .Letext0: 3022 .file 2 "c:\\tools\\gcc-arm-none-eabi-10.3-2021.10-win32\\gcc-arm-none-eabi-10.3-2021.10\\arm-none 3023 .file 3 "c:\\tools\\gcc-arm-none-eabi-10.3-2021.10-win32\\gcc-arm-none-eabi-10.3-2021.10\\arm-none 3024 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f405xx.h" 3025 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 3026 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 3027 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h" 3028 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h" 3029 .file 9 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 3030 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h" 3031 .file 11 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 105 DEFINED SYMBOLS *ABS*:00000000 stm32f4xx_hal_adc.c C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:20 .text.ADC_Init:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:25 .text.ADC_Init:00000000 ADC_Init C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:275 .text.ADC_Init:0000012c $d C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:281 .text.HAL_ADC_MspInit:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:287 .text.HAL_ADC_MspInit:00000000 HAL_ADC_MspInit C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:302 .text.HAL_ADC_Init:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:308 .text.HAL_ADC_Init:00000000 HAL_ADC_Init C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:411 .text.HAL_ADC_MspDeInit:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:417 .text.HAL_ADC_MspDeInit:00000000 HAL_ADC_MspDeInit C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:432 .text.HAL_ADC_DeInit:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:438 .text.HAL_ADC_DeInit:00000000 HAL_ADC_DeInit C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:510 .text.HAL_ADC_Start:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:516 .text.HAL_ADC_Start:00000000 HAL_ADC_Start C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:780 .text.HAL_ADC_Start:00000130 $d C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:789 .text.HAL_ADC_Stop:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:795 .text.HAL_ADC_Stop:00000000 HAL_ADC_Stop C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:854 .text.HAL_ADC_PollForConversion:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:860 .text.HAL_ADC_PollForConversion:00000000 HAL_ADC_PollForConversion C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1025 .text.HAL_ADC_PollForEvent:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1031 .text.HAL_ADC_PollForEvent:00000000 HAL_ADC_PollForEvent C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1146 .text.HAL_ADC_Start_IT:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1152 .text.HAL_ADC_Start_IT:00000000 HAL_ADC_Start_IT C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1422 .text.HAL_ADC_Start_IT:0000013c $d C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1431 .text.HAL_ADC_Stop_IT:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1437 .text.HAL_ADC_Stop_IT:00000000 HAL_ADC_Stop_IT C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1501 .text.HAL_ADC_Start_DMA:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1507 .text.HAL_ADC_Start_DMA:00000000 HAL_ADC_Start_DMA C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1819 .text.HAL_ADC_Start_DMA:0000017c $d C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2409 .text.ADC_DMAConvCplt:00000000 ADC_DMAConvCplt C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2022 .text.ADC_DMAHalfConvCplt:00000000 ADC_DMAHalfConvCplt C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2369 .text.ADC_DMAError:00000000 ADC_DMAError C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1831 .text.HAL_ADC_Stop_DMA:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1837 .text.HAL_ADC_Stop_DMA:00000000 HAL_ADC_Stop_DMA C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1949 .text.HAL_ADC_GetValue:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1955 .text.HAL_ADC_GetValue:00000000 HAL_ADC_GetValue C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1975 .text.HAL_ADC_ConvCpltCallback:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1981 .text.HAL_ADC_ConvCpltCallback:00000000 HAL_ADC_ConvCpltCallback C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:1996 .text.HAL_ADC_ConvHalfCpltCallback:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2002 .text.HAL_ADC_ConvHalfCpltCallback:00000000 HAL_ADC_ConvHalfCpltCallback C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2017 .text.ADC_DMAHalfConvCplt:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2049 .text.HAL_ADC_LevelOutOfWindowCallback:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2055 .text.HAL_ADC_LevelOutOfWindowCallback:00000000 HAL_ADC_LevelOutOfWindowCallback C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2070 .text.HAL_ADC_ErrorCallback:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2076 .text.HAL_ADC_ErrorCallback:00000000 HAL_ADC_ErrorCallback C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2091 .text.HAL_ADC_IRQHandler:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2097 .text.HAL_ADC_IRQHandler:00000000 HAL_ADC_IRQHandler C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2364 .text.ADC_DMAError:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2404 .text.ADC_DMAConvCplt:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2518 .text.HAL_ADC_ConfigChannel:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2524 .text.HAL_ADC_ConfigChannel:00000000 HAL_ADC_ConfigChannel C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2837 .text.HAL_ADC_ConfigChannel:0000018c $d C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2844 .text.HAL_ADC_AnalogWDGConfig:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2850 .text.HAL_ADC_AnalogWDGConfig:00000000 HAL_ADC_AnalogWDGConfig C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2973 .text.HAL_ADC_GetState:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2979 .text.HAL_ADC_GetState:00000000 HAL_ADC_GetState ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s page 106 C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:2997 .text.HAL_ADC_GetError:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cc87tYKQ.s:3003 .text.HAL_ADC_GetError:00000000 HAL_ADC_GetError UNDEFINED SYMBOLS SystemCoreClock HAL_GetTick HAL_DMA_Start_IT HAL_DMA_Abort HAL_ADCEx_InjectedConvCpltCallback
Report a bug