ARM GAS  /tmp/ccMhywUy.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              	.LFB152:
  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 Convertor (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 ****   *           + IO operation functions
   9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *           + State and errors functions
  10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         
  11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   @verbatim
  12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
  13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                     ##### ADC Peripheral features #####
  14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
  15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   [..] 
  16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) 12-bit, 10-bit, 8-bit or 6-bit configurable resolution.
  17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Interrupt generation at the end of conversion, end of injected conversion,  
  18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       and in case of analog watchdog or overrun events
  19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Single and continuous conversion modes.
  20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Scan mode for automatic conversion of channel 0 to channel x.
  21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Data alignment with in-built data coherency.
  22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Channel-wise programmable sampling time.
  23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) External trigger option with configurable polarity for both regular and 
  24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       injected conversion.
  25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Dual/Triple mode (on devices with 2 ADCs or more).
  26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Configurable DMA data storage in Dual/Triple ADC mode. 
  27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Configurable delay between conversions in Dual/Triple interleaved mode.
  28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) ADC conversion type (refer to the datasheets).
  29: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 
  30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       slower speed.
ARM GAS  /tmp/ccMhywUy.s 			page 2


  31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) ADC input range: VREF(minus) = VIN = VREF(plus).
  32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) DMA request generation during regular channel conversion.
  33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                      ##### How to use this driver #####
  36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
  37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   [..]
  38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#)Initialize the ADC low level resources by implementing the HAL_ADC_MspInit():
  39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (##) Enable the ADC interface clock using __HAL_RCC_ADC_CLK_ENABLE()
  40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (##) ADC pins configuration
  41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Enable the clock for the ADC GPIOs using the following function:
  42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                    __HAL_RCC_GPIOx_CLK_ENABLE()  
  43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Configure these ADC pins in analog mode using HAL_GPIO_Init() 
  44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (##) In case of using interrupts (e.g. HAL_ADC_Start_IT())
  45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Configure the ADC interrupt priority using HAL_NVIC_SetPriority()
  46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Enable the ADC IRQ handler using HAL_NVIC_EnableIRQ()
  47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) In ADC IRQ handler, call HAL_ADC_IRQHandler()
  48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (##) In case of using DMA to control data transfer (e.g. HAL_ADC_Start_DMA())
  49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Enable the DMAx interface clock using __HAL_RCC_DMAx_CLK_ENABLE()
  50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Configure and enable two DMA streams stream for managing data
  51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                  transfer from peripheral to memory (output stream)
  52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Associate the initialized DMA handle to the CRYP DMA handle
  53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                  using  __HAL_LINKDMA()
  54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              (+++) Configure the priority and enable the NVIC for the transfer complete
  55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                  interrupt on the two DMA Streams. The output stream should have higher
  56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                  priority than the input stream.
  57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                        
  58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     *** Configuration of ADC, groups regular/injected, channels parameters ***
  59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
  60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   [..]
  61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Configure the ADC parameters (resolution, data alignment, ...)
  62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       and regular group parameters (conversion trigger, sequencer, ...)
  63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       using function HAL_ADC_Init().
  64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Configure the channels for regular group parameters (channel number, 
  66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       channel rank into sequencer, ..., into regular group)
  67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       using function HAL_ADC_ConfigChannel().
  68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Optionally, configure the injected group parameters (conversion trigger, 
  70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       sequencer, ..., of injected group)
  71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       and the channels for injected group parameters (channel number, 
  72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       channel rank into sequencer, ..., into injected group)
  73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       using function HAL_ADCEx_InjectedConfigChannel().
  74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Optionally, configure the analog watchdog parameters (channels
  76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       monitored, thresholds, ...) using function HAL_ADC_AnalogWDGConfig().
  77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Optionally, for devices with several ADC instances: configure the 
  79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       multimode parameters using function HAL_ADCEx_MultiModeConfigChannel().
  80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                        *** Execution of ADC conversions ***
  82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
  83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   [..]  
  84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) ADC driver can be used among three modes: polling, interruption,
  85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       transfer by DMA.    
  86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
  87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      *** Polling mode IO operation ***
ARM GAS  /tmp/ccMhywUy.s 			page 3


  88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      =================================
  89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      [..]    
  90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Start the ADC peripheral using HAL_ADC_Start() 
  91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Wait for end of conversion using HAL_ADC_PollForConversion(), at this stage
  92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****            user can specify the value of timeout according to his end application      
  93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) To read the ADC converted values, use the HAL_ADC_GetValue() function.
  94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Stop the ADC peripheral using HAL_ADC_Stop()
  95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        
  96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      *** Interrupt mode IO operation ***    
  97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      ===================================
  98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      [..]    
  99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Start the ADC peripheral using HAL_ADC_Start_IT() 
 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Use HAL_ADC_IRQHandler() called under ADC_IRQHandler() Interrupt subroutine
 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) At ADC end of conversion HAL_ADC_ConvCpltCallback() function is executed and user can 
 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****            add his own code by customization of function pointer HAL_ADC_ConvCpltCallback 
 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) In case of ADC Error, HAL_ADC_ErrorCallback() function is executed and user can 
 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****            add his own code by customization of function pointer HAL_ADC_ErrorCallback
 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) Stop the ADC peripheral using HAL_ADC_Stop_IT()     
 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      *** DMA 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_DMA(), at this stage the user specify the l
 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****            of data to be transferred at each end of conversion 
 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) At The end of data transfer by HAL_ADC_ConvCpltCallback() function is executed and user 
 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 transfer 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_DMA()
 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                     
 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      *** ADC HAL driver macros list ***
 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 ****        Below the list of most used macros in ADC HAL driver.
 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        
 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_ENABLE : Enable the ADC peripheral
 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_DISABLE : Disable the ADC peripheral
 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_ENABLE_IT: Enable the ADC end of conversion interrupt
 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_DISABLE_IT: Disable the ADC end of conversion interrupt
 127: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
 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_CLEAR_FLAG: Clear the ADC's pending flags
 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) __HAL_ADC_GET_FLAG: Get the selected ADC's flag status
 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) ADC_GET_RESOLUTION: Return resolution bits in CR1 register 
 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      [..] 
 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (@) You can refer to the ADC HAL driver header file for more useful macros 
 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       *** Deinitialization of ADC ***
 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   [..]
 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Disable the ADC interface
 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (++) ADC clock can be hard reset and disabled at RCC top level.
 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (++) Hard reset of ADC peripherals
 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           using macro __HAL_RCC_ADC_FORCE_RESET(), __HAL_RCC_ADC_RELEASE_RESET().
 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (++) ADC clock disable using the equivalent macro/functions as configuration step.
 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                (+++) Example:
 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                    Into HAL_ADC_MspDeInit() (recommended code location) or with
ARM GAS  /tmp/ccMhywUy.s 			page 4


 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                    other device clock parameters configuration:
 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                (+++) HAL_RCC_GetOscConfig(&RCC_OscInitStructure);
 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                (+++) RCC_OscInitStructure.OscillatorType = RCC_OSCILLATORTYPE_HSI;
 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                (+++) RCC_OscInitStructure.HSIState = RCC_HSI_OFF; (if not used for system clock)
 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                (+++) HAL_RCC_OscConfig(&RCC_OscInitStructure);
 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) ADC pins configuration
 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (++) Disable the clock for the ADC GPIOs using macro __HAL_RCC_GPIOx_CLK_DISABLE()
 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Optionally, in case of usage of ADC with interruptions:
 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (++) Disable the NVIC for ADC using function HAL_NVIC_DisableIRQ(ADCx_IRQn)
 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   (#) Optionally, in case of usage of DMA:
 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (++) Deinitialize the DMA using function HAL_DMA_DeInit().
 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (++) Disable the NVIC for DMA using function HAL_NVIC_DisableIRQ(DMAx_Channelx_IRQn)   
 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       *** Callback registration ***
 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ==============================================================================
 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      The compilation flag USE_HAL_ADC_REGISTER_CALLBACKS, when set to 1,
 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      allows the user to configure dynamically the driver callbacks.
 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Use Functions @ref HAL_ADC_RegisterCallback()
 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      to register an interrupt callback.
 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Function @ref HAL_ADC_RegisterCallback() allows to register following callbacks:
 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ConvCpltCallback               : ADC conversion complete callback
 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ConvHalfCpltCallback           : ADC conversion DMA half-transfer callback
 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindowCallback       : ADC analog watchdog 1 callback
 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ErrorCallback                  : ADC error callback
 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) InjectedConvCpltCallback       : ADC group injected conversion complete callback
 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) InjectedQueueOverflowCallback  : ADC group injected context queue overflow callback
 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindow2Callback      : ADC analog watchdog 2 callback
 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindow3Callback      : ADC analog watchdog 3 callback
 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) EndOfSamplingCallback          : ADC end of sampling callback
 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) MspInitCallback                : ADC Msp Init callback
 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) MspDeInitCallback              : ADC Msp DeInit callback
 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      This function takes as parameters the HAL peripheral handle, the Callback ID
 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      and a pointer to the user callback function.
 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Use function @ref HAL_ADC_UnRegisterCallback to reset a callback to the default
 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      weak function.
 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      @ref HAL_ADC_UnRegisterCallback takes as parameters the HAL peripheral handle,
 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      and the Callback ID.
 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      This function allows to reset following callbacks:
 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ConvCpltCallback               : ADC conversion complete callback
 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ConvHalfCpltCallback           : ADC conversion DMA half-transfer callback
 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindowCallback       : ADC analog watchdog 1 callback
 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) ErrorCallback                  : ADC error callback
 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) InjectedConvCpltCallback       : ADC group injected conversion complete callback
 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) InjectedQueueOverflowCallback  : ADC group injected context queue overflow callback
 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindow2Callback      : ADC analog watchdog 2 callback
 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) LevelOutOfWindow3Callback      : ADC analog watchdog 3 callback
 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) EndOfSamplingCallback          : ADC end of sampling callback
ARM GAS  /tmp/ccMhywUy.s 			page 5


 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) MspInitCallback                : ADC Msp Init callback
 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (+) MspDeInitCallback              : ADC Msp DeInit callback
 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      [..]
 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      By default, after the @ref HAL_ADC_Init() and when the state is @ref HAL_ADC_STATE_RESET
 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      all callbacks are set to the corresponding weak functions:
 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      examples @ref HAL_ADC_ConvCpltCallback(), @ref HAL_ADC_ErrorCallback().
 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Exception done for MspInit and MspDeInit functions that are
 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      reset to the legacy weak functions in the @ref HAL_ADC_Init()/ @ref HAL_ADC_DeInit() only when
 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      these callbacks are null (not registered beforehand).
 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      If MspInit or MspDeInit are not null, the @ref HAL_ADC_Init()/ @ref HAL_ADC_DeInit()
 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      keep and use the user MspInit/MspDeInit callbacks (registered beforehand) whatever the state.
 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      [..]
 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Callbacks can be registered/unregistered in @ref HAL_ADC_STATE_READY state only.
 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Exception done MspInit/MspDeInit functions that can be registered/unregistered
 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      in @ref HAL_ADC_STATE_READY or @ref HAL_ADC_STATE_RESET state,
 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      thus registered (user) MspInit/DeInit callbacks can be used during the Init/DeInit.
 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Then, the user first registers the MspInit/MspDeInit user callbacks
 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      using @ref HAL_ADC_RegisterCallback() before calling @ref HAL_ADC_DeInit()
 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      or @ref HAL_ADC_Init() function.
 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 ****      When the compilation flag USE_HAL_ADC_REGISTER_CALLBACKS is set to 0 or
 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      not defined, the callback registration feature is not available and all callbacks
 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      are set to the corresponding weak functions.
 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     @endverbatim
 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ******************************************************************************
 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @attention
 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics.
 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * All rights reserved.</center></h2>
 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * This software component is licensed by ST under BSD 3-Clause license,
 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * the "License"; You may not use this file except in compliance with the
 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * License. You may obtain a copy of the License at:
 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                        opensource.org/licenses/BSD-3-Clause
 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
 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 **** 
 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Includes ------------------------------------------------------------------*/
 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #include "stm32f4xx_hal.h"
 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup STM32F4xx_HAL_Driver
 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 **** 
 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC ADC
 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief ADC driver modules
 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @{
 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */ 
ARM GAS  /tmp/ccMhywUy.s 			page 6


 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef HAL_ADC_MODULE_ENABLED
 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private typedef -----------------------------------------------------------*/
 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private define ------------------------------------------------------------*/
 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private macro -------------------------------------------------------------*/
 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private variables ---------------------------------------------------------*/
 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup ADC_Private_Functions
 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @{
 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Private function prototypes -----------------------------------------------*/
 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_Init(ADC_HandleTypeDef* hadc);
 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAConvCplt(DMA_HandleTypeDef *hdma);
 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAError(DMA_HandleTypeDef *hdma);
 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAHalfConvCplt(DMA_HandleTypeDef *hdma);
 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 ****   */
 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /* Exported functions --------------------------------------------------------*/
 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions ADC Exported Functions
 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 **** 
 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group1 Initialization and de-initialization functions 
 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *  @brief    Initialization and Configuration functions 
 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *
 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim    
 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================
 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****               ##### Initialization and de-initialization functions #####
 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================
 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]  This section provides functions allowing to:
 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Initialize and configure the ADC. 
 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) De-initialize the ADC. 
 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****          
 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim
 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 **** /**
 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Initializes the ADCx peripheral according to the specified parameters 
 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         in the ADC_InitStruct and initializes the ADC MSP.
 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *           
 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   This function is used to configure the global features of the ADC ( 
 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         ClockPrescaler, Resolution, Data Alignment and number of conversion), however,
 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the rest of the configuration parameters are specific to the regular
 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         channels group (scan mode activation, continuous mode activation,
 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         External trigger source and edge, DMA continuous request after the  
 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         last transfer and End of conversion selection).
 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *             
 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.  
 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Init(ADC_HandleTypeDef* hadc)
 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
ARM GAS  /tmp/ccMhywUy.s 			page 7


 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check ADC handle */
 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc == NULL)
 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     return HAL_ERROR;
 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_CLOCKPRESCALER(hadc->Init.ClockPrescaler));
 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_RESOLUTION(hadc->Init.Resolution));
 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ScanConvMode));
 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG(hadc->Init.ExternalTrigConv));
 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_DATA_ALIGN(hadc->Init.DataAlign));
 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion));
 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests));
 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection));
 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DiscontinuousConvMode));
 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc->Init.ExternalTrigConv != ADC_SOFTWARE_START)
 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge));
 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc->State == HAL_ADC_STATE_RESET)
 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Init the ADC Callback settings */
 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ConvCpltCallback              = HAL_ADC_ConvCpltCallback;                 /* Legacy weak 
 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ConvHalfCpltCallback          = HAL_ADC_ConvHalfCpltCallback;             /* Legacy weak 
 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->LevelOutOfWindowCallback      = HAL_ADC_LevelOutOfWindowCallback;         /* Legacy weak 
 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ErrorCallback                 = HAL_ADC_ErrorCallback;                    /* Legacy weak 
 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->InjectedConvCpltCallback      = HAL_ADCEx_InjectedConvCpltCallback;       /* Legacy weak 
 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (hadc->MspInitCallback == NULL)
 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit  */
 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Init the low level hardware */
 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->MspInitCallback(hadc);
 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Init the low level hardware */
 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     HAL_ADC_MspInit(hadc);
 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Initialize ADC error code */
 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_CLEAR_ERRORCODE(hadc);
 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Allocate lock resource and initialize it */
 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Lock = HAL_UNLOCKED;
 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Configuration of ADC parameters if previous preliminary actions are      */ 
 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* correctly completed.                                                     */
 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL))
 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
ARM GAS  /tmp/ccMhywUy.s 			page 8


 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_BUSY_INTERNAL);
 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC parameters */
 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_Init(hadc);
 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC error code to none */
 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_CLEAR_ERRORCODE(hadc);
 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the ADC state */
 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_BUSY_INTERNAL,
 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY);
 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmp_hal_status = HAL_ERROR;
 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Release Lock */
 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return tmp_hal_status;
 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 **** /**
 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Deinitializes the ADCx peripheral registers to their default reset values. 
 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.  
 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_DeInit(ADC_HandleTypeDef* hadc)
 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check ADC handle */
 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc == NULL)
 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     return HAL_ERROR;
 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC state */
 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   SET_BIT(hadc->State, HAL_ADC_STATE_BUSY_INTERNAL);
 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Stop potential conversion on going, on regular and injected groups */
 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Disable ADC peripheral */
 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_ADC_DISABLE(hadc);
 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Configuration of ADC parameters if previous preliminary actions are      */ 
 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* correctly completed.                                                     */
 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON))
 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
ARM GAS  /tmp/ccMhywUy.s 			page 9


 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (hadc->MspDeInitCallback == NULL)
 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit  */
 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* DeInit the low level hardware: RCC clock, NVIC */
 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->MspDeInitCallback(hadc);
 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* DeInit the low level hardware: RCC clock, NVIC */
 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_ADC_MspDeInit(hadc);
 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC error code to none */
 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_CLEAR_ERRORCODE(hadc);
 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->State = HAL_ADC_STATE_RESET;
 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process unlocked */
 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return tmp_hal_status;
 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Register a User ADC Callback
 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         To be used instead of the weak predefined callback
 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc Pointer to a ADC_HandleTypeDef structure that contains
 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                the configuration information for the specified ADC.
 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  CallbackID ID of the callback to be registered
 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         This parameter can be one of the following values:
 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_CONVERSION_COMPLETE_CB_ID      ADC conversion complete callback ID
 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_CONVERSION_HALF_CB_ID          ADC conversion DMA half-transfer call
 467: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
 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_ERROR_CB_ID                    ADC error callback ID
 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID  ADC group injected conversion complet
 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_INJ_QUEUE_OVEFLOW_CB_ID        ADC group injected context queue over
 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_MSPINIT_CB_ID                  ADC Msp Init callback ID
 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_MSPDEINIT_CB_ID                ADC Msp DeInit callback ID
 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  pCallback pointer to the Callback function
 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_RegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Callb
 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef status = HAL_OK;
 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (pCallback == NULL)
 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update the error code */
 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     return HAL_ERROR;
 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
ARM GAS  /tmp/ccMhywUy.s 			page 10


 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if ((hadc->State & HAL_ADC_STATE_READY) != 0UL)
 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     switch (CallbackID)
 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_CONVERSION_COMPLETE_CB_ID :
 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ConvCpltCallback = pCallback;
 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_CONVERSION_HALF_CB_ID :
 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ConvHalfCpltCallback = pCallback;
 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID :
 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->LevelOutOfWindowCallback = pCallback;
 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_ERROR_CB_ID :
 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCallback = pCallback;
 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID :
 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->InjectedConvCpltCallback = pCallback;
 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPINIT_CB_ID :
 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspInitCallback = pCallback;
 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPDEINIT_CB_ID :
 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspDeInitCallback = pCallback;
 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       default :
 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update the error code */
 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Return error status */
 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         status = HAL_ERROR;
 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else if (HAL_ADC_STATE_RESET == hadc->State)
 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     switch (CallbackID)
 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPINIT_CB_ID :
 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspInitCallback = pCallback;
 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPDEINIT_CB_ID :
 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspDeInitCallback = pCallback;
 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       default :
 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update the error code */
 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
ARM GAS  /tmp/ccMhywUy.s 			page 11


 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Return error status */
 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         status = HAL_ERROR;
 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update the error code */
 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Return error status */
 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     status =  HAL_ERROR;
 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return status;
 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Unregister a ADC Callback
 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         ADC callback is redirected to the weak predefined callback
 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc Pointer to a ADC_HandleTypeDef structure that contains
 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                the configuration information for the specified ADC.
 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  CallbackID ID of the callback to be unregistered
 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         This parameter can be one of the following values:
 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_CONVERSION_COMPLETE_CB_ID      ADC conversion complete callback ID
 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_CONVERSION_HALF_CB_ID          ADC conversion DMA half-transfer call
 571: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
 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_ERROR_CB_ID                    ADC error callback ID
 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID  ADC group injected conversion complet
 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_INJ_QUEUE_OVEFLOW_CB_ID        ADC group injected context queue over
 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_MSPINIT_CB_ID                  ADC Msp Init callback ID
 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          @arg @ref HAL_ADC_MSPDEINIT_CB_ID                ADC Msp DeInit callback ID
 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_UnRegisterCallback(ADC_HandleTypeDef *hadc, HAL_ADC_CallbackIDTypeDef Cal
 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef status = HAL_OK;
 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if ((hadc->State & HAL_ADC_STATE_READY) != 0UL)
 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     switch (CallbackID)
 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_CONVERSION_COMPLETE_CB_ID :
 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ConvCpltCallback = HAL_ADC_ConvCpltCallback;
 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_CONVERSION_HALF_CB_ID :
 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ConvHalfCpltCallback = HAL_ADC_ConvHalfCpltCallback;
 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_LEVEL_OUT_OF_WINDOW_1_CB_ID :
 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->LevelOutOfWindowCallback = HAL_ADC_LevelOutOfWindowCallback;
 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_ERROR_CB_ID :
 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCallback = HAL_ADC_ErrorCallback;
ARM GAS  /tmp/ccMhywUy.s 			page 12


 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_INJ_CONVERSION_COMPLETE_CB_ID :
 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->InjectedConvCpltCallback = HAL_ADCEx_InjectedConvCpltCallback;
 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPINIT_CB_ID :
 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspInitCallback = HAL_ADC_MspInit; /* Legacy weak MspInit              */
 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPDEINIT_CB_ID :
 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspDeInitCallback = HAL_ADC_MspDeInit; /* Legacy weak MspDeInit            */
 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       default :
 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update the error code */
 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Return error status */
 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         status =  HAL_ERROR;
 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else if (HAL_ADC_STATE_RESET == hadc->State)
 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     switch (CallbackID)
 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPINIT_CB_ID :
 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspInitCallback = HAL_ADC_MspInit;                   /* Legacy weak MspInit          
 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       case HAL_ADC_MSPDEINIT_CB_ID :
 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->MspDeInitCallback = HAL_ADC_MspDeInit;               /* Legacy weak MspDeInit        
 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       default :
 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update the error code */
 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Return error status */
 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         status =  HAL_ERROR;
 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         break;
 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update the error code */
 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ErrorCode |= HAL_ADC_ERROR_INVALID_CALLBACK;
 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Return error status */
 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     status =  HAL_ERROR;
 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 ****   return status;
 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 **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
ARM GAS  /tmp/ccMhywUy.s 			page 13


 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Initializes the ADC MSP.
 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.  
 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_MspInit could be implemented in the user file
 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    */ 
 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  DeInitializes the ADC MSP.
 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.  
 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_MspDeInit could be implemented in the user file
 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 ****   * @}
 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group2 IO operation functions
 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *  @brief    IO operation functions 
 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *
 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim   
 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================
 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              ##### IO operation functions #####
 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================  
 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]  This section provides functions allowing to:
 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Start conversion of regular channel.
 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Stop conversion of regular channel.
 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Start conversion of regular channel and enable interrupt.
 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Stop conversion of regular channel and disable interrupt.
 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Start conversion of regular channel and enable DMA transfer.
 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Stop conversion of regular channel and disable DMA transfer.
 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Handle ADC interrupt request. 
 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                
 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim
 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @{
 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Enables ADC and starts conversion of the regular channels.
ARM GAS  /tmp/ccMhywUy.s 			page 14


 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start(ADC_HandleTypeDef* hadc)
 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable the ADC peripheral */
 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC peripheral is disabled in order to enable it and wait during 
 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   Tstab time the ADC's stabilization */
 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON)
 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the Peripheral */
 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE(hadc);
 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Delay for ADC stabilization time */
 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Compute number of CPU cycles to wait for */
 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U));
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       counter--;
 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Start conversion if ADC is effectively enabled */
 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON))
 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state                                                          */
 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Clear state bitfield related to regular group conversion results     */
 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Set state bitfield related to regular group operation                */
 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR,
 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY);
 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* If conversions on group regular are also triggering group injected,    */
 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* update ADC state.                                                      */
 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET)
 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 762: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);  
 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* State machine update: Check if an injected conversion is ongoing */
 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY))
 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC error code fields related to conversions on group regular */
 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA));         
 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
ARM GAS  /tmp/ccMhywUy.s 			page 15


 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC all error code fields */
 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       ADC_CLEAR_ERRORCODE(hadc);
 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     } 
 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Process unlocked */
 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Unlock before starting ADC conversions: in case of potential           */
 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* interruption, to let the process to ADC IRQ Handler.                   */
 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_UNLOCK(hadc);
 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Pointer to the common control register to which is belonging hadc    */
 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */
 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* control register)                                                    */
 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common = ADC_COMMON_REGISTER(hadc);
 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear regular group conversion flag and overrun flag */
 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (To ensure of no unknown state from potential previous ADC operations) */
 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR);
 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Check if Multimode enabled */
 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI))
 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* if no external trigger present enable software conversion of regular channels */
 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         if((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 
 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           /* Enable the selected ADC software conversion for regular group */
 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* if instance of handle correspond to ADC1 and  no external trigger present enable software 
 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET))
 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Enable the selected ADC software conversion for regular group */
 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 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 ****   * @brief  Disables ADC and stop conversion of regular channels.
 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * 
 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   Caution: This function will stop also injected channels.  
 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
ARM GAS  /tmp/ccMhywUy.s 			page 16


 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status.
 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop(ADC_HandleTypeDef* hadc)
 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Stop potential conversion on going, on regular and injected groups */
 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Disable ADC peripheral */
 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_ADC_DISABLE(hadc);
 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC is effectively disabled */
 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON))
 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY);
 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process unlocked */
 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Poll for regular conversion complete
 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   ADC conversion flags EOS (end of sequence) and EOC (end of
 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         conversion) are cleared by this function.
 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   This function cannot be used in a particular setup: ADC configured 
 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         in DMA mode and polling for end of each conversion (ADC init
 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         parameter "EOCSelection" set to ADC_EOC_SINGLE_CONV).
 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         In this case, DMA resets the flag EOC and polling cannot be
 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         performed on each conversion. Nevertheless, polling can still 
 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         be performed on the complete sequence.
 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  Timeout Timeout value in millisecond.  
 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_PollForConversion(ADC_HandleTypeDef* hadc, uint32_t Timeout)
 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  
 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Verification that ADC configuration is compliant with polling for      */
 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* each conversion:                                                       */
 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Particular case is ADC configured in DMA mode and ADC sequencer with   */
 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* several ranks and polling for end of each conversion.                  */
 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* For code simplicity sake, this particular case is generalized to       */
ARM GAS  /tmp/ccMhywUy.s 			page 17


 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* ADC configured in DMA mode and polling for end of each conversion.     */
 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_EOCS) &&
 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)    )
 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update ADC state machine to error */
 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG);
 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Process unlocked */
 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_UNLOCK(hadc);
 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     return HAL_ERROR;
 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Get tick */ 
 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tickstart = HAL_GetTick();
 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag */
 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   while(!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOC)))
 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Check if timeout is disabled (set to infinite wait) */
 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(Timeout != HAL_MAX_DELAY)
 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((Timeout == 0U) || ((HAL_GetTick() - tickstart ) > Timeout))
 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update ADC state machine to timeout */
 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT);
 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Process unlocked */
 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         __HAL_UNLOCK(hadc);
 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         return HAL_TIMEOUT;
 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Clear regular group conversion flag */
 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_STRT | ADC_FLAG_EOC);
 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Update ADC state machine */
 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC);
 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Determine whether any further conversion upcoming on group regular       */
 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* by external trigger, continuous mode or scan sequence on going.          */
 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Note: On STM32F4, there is no independent flag of end of sequence.       */
 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /*       The test of scan sequence on going is done either with scan        */
 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /*       sequence disabled or with end of conversion flag set to            */
 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /*       of end of sequence.                                                */
 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(ADC_IS_SOFTWARE_START_REGULAR(hadc)                   &&
 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (hadc->Init.ContinuousConvMode == DISABLE)            &&
 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) ||
 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY);   
 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY))
 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     { 
ARM GAS  /tmp/ccMhywUy.s 			page 18


 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       SET_BIT(hadc->State, HAL_ADC_STATE_READY);
 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return ADC state */
 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Poll for conversion event
 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  EventType the ADC event type.
 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *          This parameter can be one of the following values:
 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *            @arg ADC_AWD_EVENT: ADC Analog watch Dog event.
 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *            @arg ADC_OVR_EVENT: ADC Overrun event.
 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  Timeout Timeout value in millisecond.   
 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_PollForEvent(ADC_HandleTypeDef* hadc, uint32_t EventType, uint32_t Timeou
 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EVENT_TYPE(EventType));
 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Get tick */
 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tickstart = HAL_GetTick();
 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check selected event flag */
 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   while(!(__HAL_ADC_GET_FLAG(hadc,EventType)))
 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Check for the Timeout */
 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(Timeout != HAL_MAX_DELAY)
 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((Timeout == 0U) || ((HAL_GetTick() - tickstart ) > Timeout))
 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Update ADC state machine to timeout */
 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         SET_BIT(hadc->State, HAL_ADC_STATE_TIMEOUT);
 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Process unlocked */
 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         __HAL_UNLOCK(hadc);
 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         return HAL_TIMEOUT;
 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Analog watchdog (level out of window) event */
 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(EventType == ADC_AWD_EVENT)
 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->State, HAL_ADC_STATE_AWD1);
 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear ADC analog watchdog flag */
 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD);
ARM GAS  /tmp/ccMhywUy.s 			page 19


1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Overrun event */
1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->State, HAL_ADC_STATE_REG_OVR);
1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC error code to overrun */
1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR);
1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear ADC overrun flag */
1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR);
1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return ADC state */
1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Enables the interrupt and starts ADC conversion of regular channels.
1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status.
1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start_IT(ADC_HandleTypeDef* hadc)
1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable the ADC peripheral */
1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC peripheral is disabled in order to enable it and wait during 
1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   Tstab time the ADC's stabilization */
1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON)
1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the Peripheral */
1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE(hadc);
1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Delay for ADC stabilization time */
1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Compute number of CPU cycles to wait for */
1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U));
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       counter--;
1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Start conversion if ADC is effectively enabled */
1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON))
1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state                                                          */
ARM GAS  /tmp/ccMhywUy.s 			page 20


1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Clear state bitfield related to regular group conversion results     */
1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Set state bitfield related to regular group operation                */
1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR,
1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY);
1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* If conversions on group regular are also triggering group injected,    */
1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* update ADC state.                                                      */
1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET)
1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1067: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);  
1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* State machine update: Check if an injected conversion is ongoing */
1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY))
1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC error code fields related to conversions on group regular */
1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA));         
1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC all error code fields */
1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       ADC_CLEAR_ERRORCODE(hadc);
1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Process unlocked */
1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Unlock before starting ADC conversions: in case of potential           */
1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* interruption, to let the process to ADC IRQ Handler.                   */
1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_UNLOCK(hadc);
1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Pointer to the common control register to which is belonging hadc    */
1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */
1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* control register)                                                    */
1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common = ADC_COMMON_REGISTER(hadc);
1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear regular group conversion flag and overrun flag */
1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (To ensure of no unknown state from potential previous ADC operations) */
1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR);
1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable end of conversion interrupt for regular group */
1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_OVR));
1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Check if Multimode enabled */
1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI))
1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* if no external trigger present enable software conversion of regular channels */
1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         if((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 
1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           /* Enable the selected ADC software conversion for regular group */
1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
ARM GAS  /tmp/ccMhywUy.s 			page 21


1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* if instance of handle correspond to ADC1 and  no external trigger present enable software 
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET))
1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Enable the selected ADC software conversion for regular group */
1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Disables the interrupt and stop ADC conversion of regular channels.
1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * 
1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   Caution: This function will stop also injected channels.  
1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *
1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status.
1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop_IT(ADC_HandleTypeDef* hadc)
1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Stop potential conversion on going, on regular and injected groups */
1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Disable ADC peripheral */
1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_ADC_DISABLE(hadc);
1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC is effectively disabled */
1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON))
1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   	/* Disable ADC end of conversion interrupt for regular group */
1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_DISABLE_IT(hadc, (ADC_IT_EOC | ADC_IT_OVR));
1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY);
1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process unlocked */
1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
ARM GAS  /tmp/ccMhywUy.s 			page 22


1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Handles ADC interrupt request  
1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** void HAL_ADC_IRQHandler(ADC_HandleTypeDef* hadc)
1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tmp1 = 0U, tmp2 = 0U;
1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion));
1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection));
1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp1 = __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_EOC);
1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_EOC);
1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for regular channels */
1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(tmp1 && tmp2)
1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update state machine on conversion status if not in error state */
1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL))
1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 
1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Determine whether any further conversion upcoming on group regular   */
1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* by external trigger, continuous mode or scan sequence on going.      */
1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Note: On STM32F4, there is no independent flag of end of sequence.   */
1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       The test of scan sequence on going is done either with scan    */
1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       sequence disabled or with end of conversion flag set to        */
1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       of end of sequence.                                            */
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(ADC_IS_SOFTWARE_START_REGULAR(hadc)                   &&
1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Disable ADC end of single conversion interrupt on group regular */
1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Note: Overrun interrupt was enabled with EOC interrupt in          */
1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* HAL_ADC_Start_IT(), but is not disabled here because can be used   */
1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* by overrun IRQ process below.                                      */
1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC);
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY);
1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY))
1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         SET_BIT(hadc->State, HAL_ADC_STATE_READY);
1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Conversion complete callback */
1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ConvCpltCallback(hadc);
ARM GAS  /tmp/ccMhywUy.s 			page 23


1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     HAL_ADC_ConvCpltCallback(hadc);
1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear regular group conversion flag */
1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_STRT | ADC_FLAG_EOC);
1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp1 = __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_JEOC);
1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_JEOC);                               
1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for injected channels */
1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(tmp1 && tmp2)
1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update state machine on conversion status if not in error state */
1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL))
1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       SET_BIT(hadc->State, HAL_ADC_STATE_INJ_EOC);
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 ****     /* Determine whether any further conversion upcoming on group injected  */
1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* by external trigger, scan sequence on going or by automatic injected */
1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* conversion from group regular (same conditions as group regular      */
1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* interruption disabling above).                                       */
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(ADC_IS_SOFTWARE_START_INJECTED(hadc)                    &&
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL)  ||
1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)    ) &&
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) &&
1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (ADC_IS_SOFTWARE_START_REGULAR(hadc)       &&
1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (hadc->Init.ContinuousConvMode == DISABLE)   )       )   )
1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Disable ADC end of single conversion interrupt on group injected */
1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       __HAL_ADC_DISABLE_IT(hadc, ADC_IT_JEOC);
1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->State, HAL_ADC_STATE_INJ_BUSY);   
1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY))
1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       { 
1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         SET_BIT(hadc->State, HAL_ADC_STATE_READY);
1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Conversion complete callback */ 
1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Conversion complete callback */ 
1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->InjectedConvCpltCallback(hadc);
1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_ADCEx_InjectedConvCpltCallback(hadc);
1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear injected group conversion flag */
1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, (ADC_FLAG_JSTRT | ADC_FLAG_JEOC));
1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp1 = __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_AWD);
1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_AWD);                          
ARM GAS  /tmp/ccMhywUy.s 			page 24


1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Analog watchdog flag */
1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(tmp1 && tmp2)
1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_AWD))
1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       SET_BIT(hadc->State, HAL_ADC_STATE_AWD1);
1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Level out of window callback */
1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->LevelOutOfWindowCallback(hadc);
1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_ADC_LevelOutOfWindowCallback(hadc);
1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Clear the ADC analog watchdog flag */
1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_AWD);
1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp1 = __HAL_ADC_GET_FLAG(hadc, ADC_FLAG_OVR);
1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_OVR);
1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Overrun flag */
1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(tmp1 && tmp2)
1309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Note: On STM32F4, ADC overrun can be set through other parameters    */
1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       refer to description of parameter "EOCSelection" for more      */
1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       details.                                                       */
1313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC error code to overrun */
1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_OVR);
1316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear ADC overrun flag */
1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR);
1319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Error callback */ 
1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->ErrorCallback(hadc);
1323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_ADC_ErrorCallback(hadc);
1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the Overrun flag */
1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_OVR);
1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Enables ADC DMA request after last transfer (Single-ADC mode) and enables ADC periphera
1334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  pData The destination Buffer address.
1337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  Length The length of data to be transferred from ADC peripheral to memory.
1338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Start_DMA(ADC_HandleTypeDef* hadc, uint32_t* pData, uint32_t Length)
1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
ARM GAS  /tmp/ccMhywUy.s 			page 25


1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
1344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable the ADC peripheral */
1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC peripheral is disabled in order to enable it and wait during 
1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   Tstab time the ADC's stabilization */
1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON)
1356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the Peripheral */
1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE(hadc);
1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Delay for ADC stabilization time */
1361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Compute number of CPU cycles to wait for */
1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U));
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
1364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       counter--;
1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Start conversion if ADC is effectively enabled */
1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON))
1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state                                                          */
1373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Clear state bitfield related to regular group conversion results     */
1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* - Set state bitfield related to regular group operation                */
1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
1376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR,
1377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY);
1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* If conversions on group regular are also triggering group injected,    */
1380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* update ADC state.                                                      */
1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET)
1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1383: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);  
1384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* State machine update: Check if an injected conversion is ongoing */
1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY))
1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC error code fields related to conversions on group regular */
1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA));         
1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
1393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Reset ADC all error code fields */
1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       ADC_CLEAR_ERRORCODE(hadc);
1396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Process unlocked */
ARM GAS  /tmp/ccMhywUy.s 			page 26


1399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Unlock before starting ADC conversions: in case of potential           */
1400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* interruption, to let the process to ADC IRQ Handler.                   */
1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_UNLOCK(hadc);   
1402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Pointer to the common control register to which is belonging hadc    */
1404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */
1405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* control register)                                                    */
1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common = ADC_COMMON_REGISTER(hadc);
1407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the DMA transfer complete callback */
1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->DMA_Handle->XferCpltCallback = ADC_DMAConvCplt;
1410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the DMA half transfer complete callback */
1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->DMA_Handle->XferHalfCpltCallback = ADC_DMAHalfConvCplt;
1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the DMA error callback */
1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->DMA_Handle->XferErrorCallback = ADC_DMAError;
1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Manage ADC and DMA start: ADC overrun interruption, DMA start, ADC     */
1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* start (in case of SW start):                                           */
1420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear regular group conversion flag and overrun flag */
1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (To ensure of no unknown state from potential previous ADC operations) */
1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC | ADC_FLAG_OVR);
1424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable ADC overrun interrupt */
1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR);
1427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable ADC DMA mode */
1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 |= ADC_CR2_DMA;
1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Start the DMA channel */
1432: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);
1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Check if Multimode enabled */
1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI))
1436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) || ((hadc->Instance == ADC2) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
1442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* if no external trigger present enable software conversion of regular channels */
1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         if((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 
1444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
1445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           /* Enable the selected ADC software conversion for regular group */
1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
1447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
1448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if defined(ADC2) && defined(ADC3)
1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* ADC2 || ADC3 */
1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     else
1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* if instance of handle correspond to ADC1 and  no external trigger present enable software 
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if((hadc->Instance == ADC1) && ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET))
ARM GAS  /tmp/ccMhywUy.s 			page 27


1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         /* Enable the selected ADC software conversion for regular group */
1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****           hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART;
1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Disables ADC DMA (Single-ADC mode) and disables ADC peripheral    
1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
1472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_Stop_DMA(ADC_HandleTypeDef* hadc)
1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance));
1479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Stop potential conversion on going, on regular and injected groups */
1484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Disable ADC peripheral */
1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_ADC_DISABLE(hadc);
1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check if ADC is effectively disabled */
1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON))
1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable the selected ADC DMA mode */
1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~ADC_CR2_DMA;
1492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable the DMA channel (in case of DMA in circular mode or stop while */
1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* DMA transfer is on going)                                              */
1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmp_hal_status = HAL_DMA_Abort(hadc->DMA_Handle);
1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable ADC overrun interrupt */
1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_DISABLE_IT(hadc, ADC_IT_OVR);
1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC state */
1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     ADC_STATE_CLR_SET(hadc->State,
1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY);
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 ****   /* Process unlocked */
1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return tmp_hal_status;
1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 28


1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Gets the converted value from data register of regular channel.
1515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval Converted value
1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetValue(ADC_HandleTypeDef* hadc)
1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {       
1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return the selected ADC converted value */ 
1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return hadc->Instance->DR;
1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Regular conversion complete callback in non blocking mode 
1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
1535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_ConvCpltCallback could be implemented in the user file
1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    */
1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Regular conversion half DMA transfer callback in non blocking mode 
1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ConvHalfCpltCallback(ADC_HandleTypeDef* hadc)
1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
1551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_ConvHalfCpltCallback could be implemented in the user file
1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    */
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 **** /**
1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Analog watchdog callback in non blocking mode 
1557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_LevelOutOfWindowCallback(ADC_HandleTypeDef* hadc)
1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
1565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
1566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_LevelOoutOfWindowCallback could be implemented in the user file
1567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    */
1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 29


1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Error ADC callback.
1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note   In case of error due to overrun when using ADC with DMA transfer 
1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         (HAL ADC handle paramater "ErrorCode" to state "HAL_ADC_ERROR_OVR"):
1574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         - Reinitialize the DMA using function "HAL_ADC_Stop_DMA()".
1575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         - If needed, restart a new ADC conversion using function
1576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *           "HAL_ADC_Start_DMA()"
1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *           (this function is also clearing overrun flag)
1578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** __weak void HAL_ADC_ErrorCallback(ADC_HandleTypeDef *hadc)
1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   UNUSED(hadc);
1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             the HAL_ADC_ErrorCallback could be implemented in the user file
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 **** 
1591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @}
1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group3 Peripheral Control functions
1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *  @brief   	Peripheral Control functions 
1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *
1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim   
1599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================
1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****              ##### Peripheral Control functions #####
1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================  
1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]  This section provides functions allowing to:
1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Configure regular channels. 
1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Configure injected channels.
1605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Configure multimode.
1606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Configure the analog watch dog.
1607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim
1609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @{
1610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /**
1613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Configures for the selected ADC regular channel its corresponding
1614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         rank in the sequencer and its sample time.
1615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  sConfig ADC configuration structure. 
1618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status
1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_ConfigChannel(ADC_HandleTypeDef* hadc, ADC_ChannelConfTypeDef* sConfig)
1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_CHANNEL(sConfig->Channel));
ARM GAS  /tmp/ccMhywUy.s 			page 30


1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_RANK(sConfig->Rank));
1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_SAMPLE_TIME(sConfig->SamplingTime));
1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* if ADC_Channel_10 ... ADC_Channel_18 is selected */
1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (sConfig->Channel > ADC_CHANNEL_9)
1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the old sample time */
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SMPR1 &= ~ADC_SMPR1(ADC_SMPR1_SMP10, sConfig->Channel);
1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the new sample time */
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SMPR1 |= ADC_SMPR1(sConfig->SamplingTime, sConfig->Channel);
1641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else /* ADC_Channel include in ADC_Channel_[0..9] */
1643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the old sample time */
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SMPR2 &= ~ADC_SMPR2(ADC_SMPR2_SMP0, sConfig->Channel);
1646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the new sample time */
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SMPR2 |= ADC_SMPR2(sConfig->SamplingTime, sConfig->Channel);
1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* For Rank 1 to 6 */
1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if (sConfig->Rank < 7U)
1653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the old SQx bits for the selected rank */
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR3 &= ~ADC_SQR3_RK(ADC_SQR3_SQ1, sConfig->Rank);
1656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the SQx bits for the selected rank */
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR3 |= ADC_SQR3_RK(sConfig->Channel, sConfig->Rank);
1659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* For Rank 7 to 12 */
1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else if (sConfig->Rank < 13U)
1662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the old SQx bits for the selected rank */
1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR2 &= ~ADC_SQR2_RK(ADC_SQR2_SQ7, sConfig->Rank);
1665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the SQx bits for the selected rank */
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR2 |= ADC_SQR2_RK(sConfig->Channel, sConfig->Rank);
1668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* For Rank 13 to 16 */
1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Clear the old SQx bits for the selected rank */
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR1 &= ~ADC_SQR1_RK(ADC_SQR1_SQ13, sConfig->Rank);
1674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the SQx bits for the selected rank */
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->SQR1 |= ADC_SQR1_RK(sConfig->Channel, sConfig->Rank);
1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Pointer to the common control register to which is belonging hadc    */
1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */
1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* control register)                                                    */
1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common = ADC_COMMON_REGISTER(hadc);
1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 31


1684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* if ADC1 Channel_18 is selected for VBAT Channel ennable VBATE */
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if ((hadc->Instance == ADC1) && (sConfig->Channel == ADC_CHANNEL_VBAT))
1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable the TEMPSENSOR channel in case of using board with multiplixed ADC_CHANNEL_VBAT & AD
1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if ((uint16_t)ADC_CHANNEL_TEMPSENSOR == (uint16_t)ADC_CHANNEL_VBAT)
1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       tmpADC_Common->CCR &= ~ADC_CCR_TSVREFE;
1691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the VBAT channel*/
1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common->CCR |= ADC_CCR_VBATE;
1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* if ADC1 Channel_16 or Channel_18 is selected for Temperature sensor or 
1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      Channel_17 is selected for VREFINT enable TSVREFE */
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if ((hadc->Instance == ADC1) && ((sConfig->Channel == ADC_CHANNEL_TEMPSENSOR) || (sConfig->Channe
1699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1700: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
1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if ((uint16_t)ADC_CHANNEL_TEMPSENSOR == (uint16_t)ADC_CHANNEL_VBAT)
1702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       tmpADC_Common->CCR &= ~ADC_CCR_VBATE;
1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the Temperature sensor and VREFINT channel*/
1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     tmpADC_Common->CCR |= ADC_CCR_TSVREFE;
1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if((sConfig->Channel == ADC_CHANNEL_TEMPSENSOR))
1709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Delay for temperature sensor stabilization time */
1711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Compute number of CPU cycles to wait for */
1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       counter = (ADC_TEMPSENSOR_DELAY_US * (SystemCoreClock / 1000000U));
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       while(counter != 0U)
1714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         counter--;
1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process unlocked */
1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
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 ****   * @brief  Configures the analog watchdog.
1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @note Analog watchdog thresholds can be modified while ADC conversion
1730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * is on going.
1731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * In this case, some constraints must be taken into account:
1732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * The programmed threshold values are effective from the next
1733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * ADC EOC (end of unitary conversion).
1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * Considering that registers write delay may happen due to
1735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * bus activity, this might cause an uncertainty on the
1736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * effective timing of the new programmed threshold values.
1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  AnalogWDGConfig  pointer to an ADC_AnalogWDGConfTypeDef structure 
1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         that contains the configuration information of ADC analog watchdog.
ARM GAS  /tmp/ccMhywUy.s 			page 32


1741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL status	  
1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** HAL_StatusTypeDef HAL_ADC_AnalogWDGConfig(ADC_HandleTypeDef* hadc, ADC_AnalogWDGConfTypeDef* Analog
1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT  
1746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tmp = 0U;
1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_FULL_ASSERT  */  
1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_ANALOG_WATCHDOG(AnalogWDGConfig->WatchdogMode));
1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_CHANNEL(AnalogWDGConfig->Channel));
1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(AnalogWDGConfig->ITMode));
1753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT  
1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp = ADC_GET_RESOLUTION(hadc);
1756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_RANGE(tmp, AnalogWDGConfig->HighThreshold));
1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_RANGE(tmp, AnalogWDGConfig->LowThreshold));
1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_FULL_ASSERT  */
1759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process locked */
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_LOCK(hadc);
1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(AnalogWDGConfig->ITMode == ENABLE)
1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the ADC Analog watchdog interrupt */
1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_ENABLE_IT(hadc, ADC_IT_AWD);
1767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable the ADC Analog watchdog interrupt */
1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     __HAL_ADC_DISABLE_IT(hadc, ADC_IT_AWD);
1772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Clear AWDEN, JAWDEN and AWDSGL bits */
1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 &=  ~(ADC_CR1_AWDSGL | ADC_CR1_JAWDEN | ADC_CR1_AWDEN);
1776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set the analog watchdog enable mode */
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 |= AnalogWDGConfig->WatchdogMode;
1779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set the high threshold */
1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->HTR = AnalogWDGConfig->HighThreshold;
1782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set the low threshold */
1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->LTR = AnalogWDGConfig->LowThreshold;
1785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Clear the Analog watchdog channel select bits */
1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 &= ~ADC_CR1_AWDCH;
1788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set the Analog watchdog channel */
1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 |= (uint32_t)((uint16_t)(AnalogWDGConfig->Channel));
1791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Process unlocked */
1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __HAL_UNLOCK(hadc);
1794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return function status */
1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return HAL_OK;
1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
ARM GAS  /tmp/ccMhywUy.s 			page 33


1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @}
1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @defgroup ADC_Exported_Functions_Group4 ADC Peripheral State functions
1804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *  @brief   ADC Peripheral State functions 
1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  *
1806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @verbatim   
1807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================
1808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****             ##### Peripheral State and errors functions #####
1809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  ===============================================================================  
1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     [..]
1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     This subsection provides functions allowing to
1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Check the ADC state
1813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       (+) Check the ADC Error
1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****          
1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** @endverbatim
1816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @{
1817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  return the ADC state
1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval HAL state
1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetState(ADC_HandleTypeDef* hadc)
1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return ADC state */
1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return hadc->State;
1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  Return the ADC error code
1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.
1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval ADC Error Code
1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** uint32_t HAL_ADC_GetError(ADC_HandleTypeDef *hadc)
1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return hadc->ErrorCode;
1840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
1841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @}
1844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /** @addtogroup ADC_Private_Functions
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 ****   * @brief  Initializes the ADCx peripheral according to the specified parameters 
1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         in the ADC_InitStruct without initializing the ADC MSP.       
1853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hadc pointer to a ADC_HandleTypeDef structure that contains
1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *         the configuration information for the specified ADC.  
ARM GAS  /tmp/ccMhywUy.s 			page 34


1855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_Init(ADC_HandleTypeDef* hadc)
1858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
  29              		.loc 1 1858 1 view -0
  30              		.cfi_startproc
  31              		@ args = 0, pretend = 0, frame = 0
  32              		@ frame_needed = 0, uses_anonymous_args = 0
  33              		@ link register save eliminated.
1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
  34              		.loc 1 1859 3 view .LVU1
1860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC parameters */
1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Pointer to the common control register to which is belonging hadc    */
1863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* (Depending on STM32F4 product, there may be up to 3 ADCs and 1 common */
1864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* control register)                                                    */
1865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmpADC_Common = ADC_COMMON_REGISTER(hadc);
  35              		.loc 1 1865 3 view .LVU2
1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set the ADC clock prescaler */
1868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmpADC_Common->CCR &= ~(ADC_CCR_ADCPRE);
  36              		.loc 1 1868 3 view .LVU3
  37              		.loc 1 1868 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]
1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmpADC_Common->CCR |=  hadc->Init.ClockPrescaler;
  42              		.loc 1 1869 3 is_stmt 1 view .LVU5
  43              		.loc 1 1869 22 is_stmt 0 view .LVU6
  44 000a 5A68     		ldr	r2, [r3, #4]
  45              		.loc 1 1869 36 view .LVU7
  46 000c 4168     		ldr	r1, [r0, #4]
  47              		.loc 1 1869 22 view .LVU8
  48 000e 0A43     		orrs	r2, r2, r1
  49 0010 5A60     		str	r2, [r3, #4]
1870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC scan mode */
1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 &= ~(ADC_CR1_SCAN);
  50              		.loc 1 1872 3 is_stmt 1 view .LVU9
  51              		.loc 1 1872 7 is_stmt 0 view .LVU10
  52 0012 0268     		ldr	r2, [r0]
  53              		.loc 1 1872 23 view .LVU11
  54 0014 5368     		ldr	r3, [r2, #4]
  55 0016 23F48073 		bic	r3, r3, #256
  56 001a 5360     		str	r3, [r2, #4]
1873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 |=  ADC_CR1_SCANCONV(hadc->Init.ScanConvMode);
  57              		.loc 1 1873 3 is_stmt 1 view .LVU12
  58              		.loc 1 1873 7 is_stmt 0 view .LVU13
  59 001c 0268     		ldr	r2, [r0]
  60              		.loc 1 1873 23 view .LVU14
  61 001e 5368     		ldr	r3, [r2, #4]
  62              		.loc 1 1873 27 view .LVU15
  63 0020 0169     		ldr	r1, [r0, #16]
  64              		.loc 1 1873 23 view .LVU16
  65 0022 43EA0123 		orr	r3, r3, r1, lsl #8
  66 0026 5360     		str	r3, [r2, #4]
ARM GAS  /tmp/ccMhywUy.s 			page 35


1874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC resolution */
1876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 &= ~(ADC_CR1_RES);
  67              		.loc 1 1876 3 is_stmt 1 view .LVU17
  68              		.loc 1 1876 7 is_stmt 0 view .LVU18
  69 0028 0268     		ldr	r2, [r0]
  70              		.loc 1 1876 23 view .LVU19
  71 002a 5368     		ldr	r3, [r2, #4]
  72 002c 23F04073 		bic	r3, r3, #50331648
  73 0030 5360     		str	r3, [r2, #4]
1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR1 |=  hadc->Init.Resolution;
  74              		.loc 1 1877 3 is_stmt 1 view .LVU20
  75              		.loc 1 1877 7 is_stmt 0 view .LVU21
  76 0032 0268     		ldr	r2, [r0]
  77              		.loc 1 1877 23 view .LVU22
  78 0034 5368     		ldr	r3, [r2, #4]
  79              		.loc 1 1877 37 view .LVU23
  80 0036 8168     		ldr	r1, [r0, #8]
  81              		.loc 1 1877 23 view .LVU24
  82 0038 0B43     		orrs	r3, r3, r1
  83 003a 5360     		str	r3, [r2, #4]
1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC data alignment */
1880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 &= ~(ADC_CR2_ALIGN);
  84              		.loc 1 1880 3 is_stmt 1 view .LVU25
  85              		.loc 1 1880 7 is_stmt 0 view .LVU26
  86 003c 0268     		ldr	r2, [r0]
  87              		.loc 1 1880 23 view .LVU27
  88 003e 9368     		ldr	r3, [r2, #8]
  89 0040 23F40063 		bic	r3, r3, #2048
  90 0044 9360     		str	r3, [r2, #8]
1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 |= hadc->Init.DataAlign;
  91              		.loc 1 1881 3 is_stmt 1 view .LVU28
  92              		.loc 1 1881 7 is_stmt 0 view .LVU29
  93 0046 0268     		ldr	r2, [r0]
  94              		.loc 1 1881 23 view .LVU30
  95 0048 9368     		ldr	r3, [r2, #8]
  96              		.loc 1 1881 36 view .LVU31
  97 004a C168     		ldr	r1, [r0, #12]
  98              		.loc 1 1881 23 view .LVU32
  99 004c 0B43     		orrs	r3, r3, r1
 100 004e 9360     		str	r3, [r2, #8]
1882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable external trigger if trigger selection is different of software  */
1884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* start.                                                                 */
1885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Note: This configuration keeps the hardware feature of parameter       */
1886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /*       ExternalTrigConvEdge "trigger edge none" equivalent to           */
1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /*       software start.                                                  */
1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc->Init.ExternalTrigConv != ADC_SOFTWARE_START)
 101              		.loc 1 1888 3 is_stmt 1 view .LVU33
 102              		.loc 1 1888 16 is_stmt 0 view .LVU34
 103 0050 826A     		ldr	r2, [r0, #40]
 104              		.loc 1 1888 5 view .LVU35
 105 0052 374B     		ldr	r3, .L6+4
 106 0054 9A42     		cmp	r2, r3
 107 0056 57D0     		beq	.L2
1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
ARM GAS  /tmp/ccMhywUy.s 			page 36


1890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Select external trigger to start conversion */
1891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTSEL);
 108              		.loc 1 1891 5 is_stmt 1 view .LVU36
 109              		.loc 1 1891 9 is_stmt 0 view .LVU37
 110 0058 0268     		ldr	r2, [r0]
 111              		.loc 1 1891 25 view .LVU38
 112 005a 9368     		ldr	r3, [r2, #8]
 113 005c 23F07063 		bic	r3, r3, #251658240
 114 0060 9360     		str	r3, [r2, #8]
1892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 |= hadc->Init.ExternalTrigConv;
 115              		.loc 1 1892 5 is_stmt 1 view .LVU39
 116              		.loc 1 1892 9 is_stmt 0 view .LVU40
 117 0062 0268     		ldr	r2, [r0]
 118              		.loc 1 1892 25 view .LVU41
 119 0064 9368     		ldr	r3, [r2, #8]
 120              		.loc 1 1892 38 view .LVU42
 121 0066 816A     		ldr	r1, [r0, #40]
 122              		.loc 1 1892 25 view .LVU43
 123 0068 0B43     		orrs	r3, r3, r1
 124 006a 9360     		str	r3, [r2, #8]
1893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Select external trigger polarity */
1895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN);
 125              		.loc 1 1895 5 is_stmt 1 view .LVU44
 126              		.loc 1 1895 9 is_stmt 0 view .LVU45
 127 006c 0268     		ldr	r2, [r0]
 128              		.loc 1 1895 25 view .LVU46
 129 006e 9368     		ldr	r3, [r2, #8]
 130 0070 23F04053 		bic	r3, r3, #805306368
 131 0074 9360     		str	r3, [r2, #8]
1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 |= hadc->Init.ExternalTrigConvEdge;
 132              		.loc 1 1896 5 is_stmt 1 view .LVU47
 133              		.loc 1 1896 9 is_stmt 0 view .LVU48
 134 0076 0268     		ldr	r2, [r0]
 135              		.loc 1 1896 25 view .LVU49
 136 0078 9368     		ldr	r3, [r2, #8]
 137              		.loc 1 1896 38 view .LVU50
 138 007a C16A     		ldr	r1, [r0, #44]
 139              		.loc 1 1896 25 view .LVU51
 140 007c 0B43     		orrs	r3, r3, r1
 141 007e 9360     		str	r3, [r2, #8]
 142              	.L3:
1897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Reset the external trigger */
1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTSEL);
1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN);
1903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable or disable ADC continuous conversion mode */
1906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 &= ~(ADC_CR2_CONT);
 143              		.loc 1 1906 3 is_stmt 1 view .LVU52
 144              		.loc 1 1906 7 is_stmt 0 view .LVU53
 145 0080 0268     		ldr	r2, [r0]
 146              		.loc 1 1906 23 view .LVU54
 147 0082 9368     		ldr	r3, [r2, #8]
ARM GAS  /tmp/ccMhywUy.s 			page 37


 148 0084 23F00203 		bic	r3, r3, #2
 149 0088 9360     		str	r3, [r2, #8]
1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 |= ADC_CR2_CONTINUOUS((uint32_t)hadc->Init.ContinuousConvMode);
 150              		.loc 1 1907 3 is_stmt 1 view .LVU55
 151              		.loc 1 1907 7 is_stmt 0 view .LVU56
 152 008a 0268     		ldr	r2, [r0]
 153              		.loc 1 1907 23 view .LVU57
 154 008c 9368     		ldr	r3, [r2, #8]
 155              		.loc 1 1907 26 view .LVU58
 156 008e 017E     		ldrb	r1, [r0, #24]	@ zero_extendqisi2
 157              		.loc 1 1907 23 view .LVU59
 158 0090 43EA4103 		orr	r3, r3, r1, lsl #1
 159 0094 9360     		str	r3, [r2, #8]
1908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   if(hadc->Init.DiscontinuousConvMode != DISABLE)
 160              		.loc 1 1909 3 is_stmt 1 view .LVU60
 161              		.loc 1 1909 16 is_stmt 0 view .LVU61
 162 0096 90F82030 		ldrb	r3, [r0, #32]	@ zero_extendqisi2
 163              		.loc 1 1909 5 view .LVU62
 164 009a 002B     		cmp	r3, #0
 165 009c 3FD0     		beq	.L4
1910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     assert_param(IS_ADC_REGULAR_DISC_NUMBER(hadc->Init.NbrOfDiscConversion));
 166              		.loc 1 1911 5 is_stmt 1 view .LVU63
1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Enable the selected ADC regular discontinuous mode */
1914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR1 |= (uint32_t)ADC_CR1_DISCEN;
 167              		.loc 1 1914 5 view .LVU64
 168              		.loc 1 1914 9 is_stmt 0 view .LVU65
 169 009e 0268     		ldr	r2, [r0]
 170              		.loc 1 1914 25 view .LVU66
 171 00a0 5368     		ldr	r3, [r2, #4]
 172 00a2 43F40063 		orr	r3, r3, #2048
 173 00a6 5360     		str	r3, [r2, #4]
1915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set the number of channels to be converted in discontinuous mode */
1917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR1 &= ~(ADC_CR1_DISCNUM);
 174              		.loc 1 1917 5 is_stmt 1 view .LVU67
 175              		.loc 1 1917 9 is_stmt 0 view .LVU68
 176 00a8 0268     		ldr	r2, [r0]
 177              		.loc 1 1917 25 view .LVU69
 178 00aa 5368     		ldr	r3, [r2, #4]
 179 00ac 23F46043 		bic	r3, r3, #57344
 180 00b0 5360     		str	r3, [r2, #4]
1918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR1 |=  ADC_CR1_DISCONTINUOUS(hadc->Init.NbrOfDiscConversion);
 181              		.loc 1 1918 5 is_stmt 1 view .LVU70
 182              		.loc 1 1918 9 is_stmt 0 view .LVU71
 183 00b2 0168     		ldr	r1, [r0]
 184              		.loc 1 1918 25 view .LVU72
 185 00b4 4B68     		ldr	r3, [r1, #4]
 186              		.loc 1 1918 29 view .LVU73
 187 00b6 426A     		ldr	r2, [r0, #36]
 188 00b8 013A     		subs	r2, r2, #1
 189              		.loc 1 1918 25 view .LVU74
 190 00ba 43EA4233 		orr	r3, r3, r2, lsl #13
 191 00be 4B60     		str	r3, [r1, #4]
 192              	.L5:
ARM GAS  /tmp/ccMhywUy.s 			page 38


1919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else
1921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Disable the selected ADC regular discontinuous mode */
1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR1 &= ~(ADC_CR1_DISCEN);
1924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC number of conversion */
1927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->SQR1 &= ~(ADC_SQR1_L);
 193              		.loc 1 1927 3 is_stmt 1 view .LVU75
 194              		.loc 1 1927 7 is_stmt 0 view .LVU76
 195 00c0 0268     		ldr	r2, [r0]
 196              		.loc 1 1927 24 view .LVU77
 197 00c2 D36A     		ldr	r3, [r2, #44]
 198 00c4 23F47003 		bic	r3, r3, #15728640
 199 00c8 D362     		str	r3, [r2, #44]
1928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->SQR1 |=  ADC_SQR1(hadc->Init.NbrOfConversion);
 200              		.loc 1 1928 3 is_stmt 1 view .LVU78
 201              		.loc 1 1928 7 is_stmt 0 view .LVU79
 202 00ca 0168     		ldr	r1, [r0]
 203              		.loc 1 1928 24 view .LVU80
 204 00cc CB6A     		ldr	r3, [r1, #44]
 205              		.loc 1 1928 28 view .LVU81
 206 00ce C269     		ldr	r2, [r0, #28]
 207 00d0 013A     		subs	r2, r2, #1
 208              		.loc 1 1928 24 view .LVU82
 209 00d2 43EA0253 		orr	r3, r3, r2, lsl #20
 210 00d6 CB62     		str	r3, [r1, #44]
1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable or disable ADC DMA continuous request */
1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 &= ~(ADC_CR2_DDS);
 211              		.loc 1 1931 3 is_stmt 1 view .LVU83
 212              		.loc 1 1931 7 is_stmt 0 view .LVU84
 213 00d8 0268     		ldr	r2, [r0]
 214              		.loc 1 1931 23 view .LVU85
 215 00da 9368     		ldr	r3, [r2, #8]
 216 00dc 23F40073 		bic	r3, r3, #512
 217 00e0 9360     		str	r3, [r2, #8]
1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 |= ADC_CR2_DMAContReq((uint32_t)hadc->Init.DMAContinuousRequests);
 218              		.loc 1 1932 3 is_stmt 1 view .LVU86
 219              		.loc 1 1932 7 is_stmt 0 view .LVU87
 220 00e2 0268     		ldr	r2, [r0]
 221              		.loc 1 1932 23 view .LVU88
 222 00e4 9368     		ldr	r3, [r2, #8]
 223              		.loc 1 1932 26 view .LVU89
 224 00e6 90F83010 		ldrb	r1, [r0, #48]	@ zero_extendqisi2
 225              		.loc 1 1932 23 view .LVU90
 226 00ea 43EA4123 		orr	r3, r3, r1, lsl #9
 227 00ee 9360     		str	r3, [r2, #8]
1933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Enable or disable ADC end of conversion selection */
1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 &= ~(ADC_CR2_EOCS);
 228              		.loc 1 1935 3 is_stmt 1 view .LVU91
 229              		.loc 1 1935 7 is_stmt 0 view .LVU92
 230 00f0 0268     		ldr	r2, [r0]
 231              		.loc 1 1935 23 view .LVU93
 232 00f2 9368     		ldr	r3, [r2, #8]
ARM GAS  /tmp/ccMhywUy.s 			page 39


 233 00f4 23F48063 		bic	r3, r3, #1024
 234 00f8 9360     		str	r3, [r2, #8]
1936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->Instance->CR2 |= ADC_CR2_EOCSelection(hadc->Init.EOCSelection);
 235              		.loc 1 1936 3 is_stmt 1 view .LVU94
 236              		.loc 1 1936 7 is_stmt 0 view .LVU95
 237 00fa 0268     		ldr	r2, [r0]
 238              		.loc 1 1936 23 view .LVU96
 239 00fc 9368     		ldr	r3, [r2, #8]
 240              		.loc 1 1936 26 view .LVU97
 241 00fe 4169     		ldr	r1, [r0, #20]
 242              		.loc 1 1936 23 view .LVU98
 243 0100 43EA8123 		orr	r3, r3, r1, lsl #10
 244 0104 9360     		str	r3, [r2, #8]
1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 245              		.loc 1 1937 1 view .LVU99
 246 0106 7047     		bx	lr
 247              	.L2:
1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN);
 248              		.loc 1 1901 5 is_stmt 1 view .LVU100
1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN);
 249              		.loc 1 1901 9 is_stmt 0 view .LVU101
 250 0108 0268     		ldr	r2, [r0]
1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->Instance->CR2 &= ~(ADC_CR2_EXTEN);
 251              		.loc 1 1901 25 view .LVU102
 252 010a 9368     		ldr	r3, [r2, #8]
 253 010c 23F07063 		bic	r3, r3, #251658240
 254 0110 9360     		str	r3, [r2, #8]
1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 255              		.loc 1 1902 5 is_stmt 1 view .LVU103
1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 256              		.loc 1 1902 9 is_stmt 0 view .LVU104
 257 0112 0268     		ldr	r2, [r0]
1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 258              		.loc 1 1902 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:
1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 264              		.loc 1 1923 5 is_stmt 1 view .LVU106
1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 265              		.loc 1 1923 9 is_stmt 0 view .LVU107
 266 011e 0268     		ldr	r2, [r0]
1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 267              		.loc 1 1923 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              	.LFE152:
ARM GAS  /tmp/ccMhywUy.s 			page 40


 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:
 289              	.LFB132:
 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 290              		.loc 1 666 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.
 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 295              		.loc 1 668 3 view .LVU110
 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 296              		.loc 1 672 1 is_stmt 0 view .LVU111
 297 0000 7047     		bx	lr
 298              		.cfi_endproc
 299              	.LFE132:
 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              	.LFB130:
 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 311              		.loc 1 313 1 is_stmt 1 view -0
 312              		.cfi_startproc
 313              		@ args = 0, pretend = 0, frame = 0
 314              		@ frame_needed = 0, uses_anonymous_args = 0
 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 315              		.loc 1 314 3 view .LVU113
 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 316              		.loc 1 317 3 view .LVU114
 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 317              		.loc 1 317 5 is_stmt 0 view .LVU115
 318 0000 38B3     		cbz	r0, .L13
 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 319              		.loc 1 313 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
 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_CLOCKPRESCALER(hadc->Init.ClockPrescaler));
 326              		.loc 1 323 3 is_stmt 1 view .LVU117
 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_RESOLUTION(hadc->Init.Resolution));
 327              		.loc 1 324 3 view .LVU118
 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ScanConvMode));
 328              		.loc 1 325 3 view .LVU119
ARM GAS  /tmp/ccMhywUy.s 			page 41


 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode));
 329              		.loc 1 326 3 view .LVU120
 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG(hadc->Init.ExternalTrigConv));
 330              		.loc 1 327 3 view .LVU121
 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_DATA_ALIGN(hadc->Init.DataAlign));
 331              		.loc 1 328 3 view .LVU122
 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion));
 332              		.loc 1 329 3 view .LVU123
 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests));
 333              		.loc 1 330 3 view .LVU124
 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection));
 334              		.loc 1 331 3 view .LVU125
 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DiscontinuousConvMode));
 335              		.loc 1 332 3 view .LVU126
 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 336              		.loc 1 333 3 view .LVU127
 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 337              		.loc 1 335 3 view .LVU128
 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 338              		.loc 1 337 5 view .LVU129
 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 339              		.loc 1 340 3 view .LVU130
 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 340              		.loc 1 340 10 is_stmt 0 view .LVU131
 341 0006 036C     		ldr	r3, [r0, #64]
 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 342              		.loc 1 340 5 view .LVU132
 343 0008 43B1     		cbz	r3, .L19
 344              	.LVL3:
 345              	.L11:
 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 346              		.loc 1 370 3 is_stmt 1 view .LVU133
 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 347              		.loc 1 370 7 is_stmt 0 view .LVU134
 348 000a 236C     		ldr	r3, [r4, #64]
 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 349              		.loc 1 370 6 view .LVU135
 350 000c 13F0100F 		tst	r3, #16
 351 0010 0BD0     		beq	.L20
 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 352              		.loc 1 390 20 view .LVU136
 353 0012 0120     		movs	r0, #1
 354              	.L12:
 355              	.LVL4:
 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 356              		.loc 1 394 3 is_stmt 1 view .LVU137
 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 357              		.loc 1 394 3 view .LVU138
 358 0014 0023     		movs	r3, #0
 359 0016 84F83C30 		strb	r3, [r4, #60]
 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 360              		.loc 1 394 3 view .LVU139
 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 361              		.loc 1 397 3 view .LVU140
 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 362              		.loc 1 398 1 is_stmt 0 view .LVU141
 363 001a 10BD     		pop	{r4, pc}
ARM GAS  /tmp/ccMhywUy.s 			page 42


 364              	.LVL5:
 365              	.L19:
 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 366              		.loc 1 358 5 is_stmt 1 view .LVU142
 367 001c FFF7FEFF 		bl	HAL_ADC_MspInit
 368              	.LVL6:
 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 369              		.loc 1 362 5 view .LVU143
 370 0020 0023     		movs	r3, #0
 371 0022 6364     		str	r3, [r4, #68]
 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 372              		.loc 1 365 5 view .LVU144
 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 373              		.loc 1 365 16 is_stmt 0 view .LVU145
 374 0024 84F83C30 		strb	r3, [r4, #60]
 375 0028 EFE7     		b	.L11
 376              	.L20:
 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 377              		.loc 1 373 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]
 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 383              		.loc 1 378 5 view .LVU147
 384 003a 2046     		mov	r0, r4
 385 003c FFF7FEFF 		bl	ADC_Init
 386              	.LVL7:
 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 387              		.loc 1 381 5 view .LVU148
 388 0040 0020     		movs	r0, #0
 389 0042 6064     		str	r0, [r4, #68]
 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_BUSY_INTERNAL,
 390              		.loc 1 384 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
 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 402              		.loc 1 319 12 is_stmt 0 view .LVU150
 403 0052 0120     		movs	r0, #1
 404              	.LVL9:
 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 405              		.loc 1 398 1 view .LVU151
 406 0054 7047     		bx	lr
 407              		.cfi_endproc
 408              	.LFE130:
 410              		.section	.text.HAL_ADC_MspDeInit,"ax",%progbits
 411              		.align	1
ARM GAS  /tmp/ccMhywUy.s 			page 43


 412              		.weak	HAL_ADC_MspDeInit
 413              		.syntax unified
 414              		.thumb
 415              		.thumb_func
 417              	HAL_ADC_MspDeInit:
 418              	.LVL10:
 419              	.LFB133:
 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 420              		.loc 1 681 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.
 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 425              		.loc 1 683 3 view .LVU153
 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 426              		.loc 1 687 1 is_stmt 0 view .LVU154
 427 0000 7047     		bx	lr
 428              		.cfi_endproc
 429              	.LFE133:
 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              	.LFB131:
 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 441              		.loc 1 407 1 is_stmt 1 view -0
 442              		.cfi_startproc
 443              		@ args = 0, pretend = 0, frame = 0
 444              		@ frame_needed = 0, uses_anonymous_args = 0
 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 445              		.loc 1 408 3 view .LVU156
 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 446              		.loc 1 411 3 view .LVU157
 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 447              		.loc 1 411 5 is_stmt 0 view .LVU158
 448 0000 C8B1     		cbz	r0, .L25
 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 449              		.loc 1 407 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
 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 456              		.loc 1 417 3 is_stmt 1 view .LVU160
 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 457              		.loc 1 420 3 view .LVU161
 458 0006 036C     		ldr	r3, [r0, #64]
 459 0008 43F00203 		orr	r3, r3, #2
 460 000c 0364     		str	r3, [r0, #64]
 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
ARM GAS  /tmp/ccMhywUy.s 			page 44


 461              		.loc 1 424 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]
 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 466              		.loc 1 428 3 view .LVU163
 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 467              		.loc 1 428 6 is_stmt 0 view .LVU164
 468 0018 0368     		ldr	r3, [r0]
 469 001a 9B68     		ldr	r3, [r3, #8]
 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 470              		.loc 1 428 5 view .LVU165
 471 001c 13F0010F 		tst	r3, #1
 472 0020 03D0     		beq	.L30
 473              	.LVL12:
 474              	.L24:
 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 475              		.loc 1 451 3 is_stmt 1 view .LVU166
 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 476              		.loc 1 451 3 view .LVU167
 477 0022 0020     		movs	r0, #0
 478 0024 84F83C00 		strb	r0, [r4, #60]
 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 479              		.loc 1 451 3 view .LVU168
 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 480              		.loc 1 454 3 view .LVU169
 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 481              		.loc 1 455 1 is_stmt 0 view .LVU170
 482 0028 10BD     		pop	{r4, pc}
 483              	.LVL13:
 484              	.L30:
 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 485              		.loc 1 440 3 is_stmt 1 view .LVU171
 486 002a FFF7FEFF 		bl	HAL_ADC_MspDeInit
 487              	.LVL14:
 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 488              		.loc 1 444 5 view .LVU172
 489 002e 0023     		movs	r3, #0
 490 0030 6364     		str	r3, [r4, #68]
 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 491              		.loc 1 447 5 view .LVU173
 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 492              		.loc 1 447 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
 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 501              		.loc 1 413 12 view .LVU175
 502 0036 0120     		movs	r0, #1
 503              	.LVL16:
 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 45


 504              		.loc 1 455 1 view .LVU176
 505 0038 7047     		bx	lr
 506              		.cfi_endproc
 507              	.LFE131:
 509              		.section	.text.HAL_ADC_Start,"ax",%progbits
 510              		.align	1
 511              		.global	HAL_ADC_Start
 512              		.syntax unified
 513              		.thumb
 514              		.thumb_func
 516              	HAL_ADC_Start:
 517              	.LVL17:
 518              	.LFB134:
 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 519              		.loc 1 720 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.
 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 524              		.loc 1 720 1 is_stmt 0 view .LVU178
 525 0000 82B0     		sub	sp, sp, #8
 526              	.LCFI4:
 527              		.cfi_def_cfa_offset 8
 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 528              		.loc 1 721 3 is_stmt 1 view .LVU179
 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 529              		.loc 1 721 17 is_stmt 0 view .LVU180
 530 0002 0023     		movs	r3, #0
 531 0004 0193     		str	r3, [sp, #4]
 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 532              		.loc 1 722 3 is_stmt 1 view .LVU181
 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
 533              		.loc 1 725 3 view .LVU182
 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 534              		.loc 1 726 3 view .LVU183
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 535              		.loc 1 729 3 view .LVU184
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 536              		.loc 1 729 3 view .LVU185
 537 0006 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 538 000a 012B     		cmp	r3, #1
 539 000c 7DD0     		beq	.L42
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 540              		.loc 1 729 3 discriminator 2 view .LVU186
 541 000e 0123     		movs	r3, #1
 542 0010 80F83C30 		strb	r3, [r0, #60]
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 543              		.loc 1 729 3 discriminator 2 view .LVU187
 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 544              		.loc 1 734 3 discriminator 2 view .LVU188
 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 545              		.loc 1 734 11 is_stmt 0 discriminator 2 view .LVU189
 546 0014 0368     		ldr	r3, [r0]
 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 547              		.loc 1 734 21 discriminator 2 view .LVU190
 548 0016 9A68     		ldr	r2, [r3, #8]
ARM GAS  /tmp/ccMhywUy.s 			page 46


 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 549              		.loc 1 734 5 discriminator 2 view .LVU191
 550 0018 12F0010F 		tst	r2, #1
 551 001c 13D1     		bne	.L33
 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 552              		.loc 1 737 5 is_stmt 1 view .LVU192
 553 001e 9A68     		ldr	r2, [r3, #8]
 554 0020 42F00102 		orr	r2, r2, #1
 555 0024 9A60     		str	r2, [r3, #8]
 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 556              		.loc 1 741 5 view .LVU193
 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 557              		.loc 1 741 53 is_stmt 0 view .LVU194
 558 0026 3D4B     		ldr	r3, .L53
 559 0028 1B68     		ldr	r3, [r3]
 560 002a 3D4A     		ldr	r2, .L53+4
 561 002c A2FB0323 		umull	r2, r3, r2, r3
 562 0030 9B0C     		lsrs	r3, r3, #18
 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 563              		.loc 1 741 34 view .LVU195
 564 0032 03EB4303 		add	r3, r3, r3, lsl #1
 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 565              		.loc 1 741 13 view .LVU196
 566 0036 0193     		str	r3, [sp, #4]
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 567              		.loc 1 742 5 is_stmt 1 view .LVU197
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 568              		.loc 1 742 10 is_stmt 0 view .LVU198
 569 0038 02E0     		b	.L34
 570              	.L35:
 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 571              		.loc 1 744 7 is_stmt 1 view .LVU199
 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 572              		.loc 1 744 14 is_stmt 0 view .LVU200
 573 003a 019B     		ldr	r3, [sp, #4]
 574 003c 013B     		subs	r3, r3, #1
 575 003e 0193     		str	r3, [sp, #4]
 576              	.L34:
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 577              		.loc 1 742 10 is_stmt 1 view .LVU201
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 578              		.loc 1 742 19 is_stmt 0 view .LVU202
 579 0040 019B     		ldr	r3, [sp, #4]
 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 580              		.loc 1 742 10 view .LVU203
 581 0042 002B     		cmp	r3, #0
 582 0044 F9D1     		bne	.L35
 583              	.L33:
 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 584              		.loc 1 749 3 is_stmt 1 view .LVU204
 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 585              		.loc 1 749 6 is_stmt 0 view .LVU205
 586 0046 0268     		ldr	r2, [r0]
 587 0048 9368     		ldr	r3, [r2, #8]
 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 588              		.loc 1 749 5 view .LVU206
 589 004a 13F0010F 		tst	r3, #1
ARM GAS  /tmp/ccMhywUy.s 			page 47


 590 004e 5ED0     		beq	.L43
 754: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 754 5 is_stmt 1 view .LVU207
 592 0050 036C     		ldr	r3, [r0, #64]
 593 0052 23F4E063 		bic	r3, r3, #1792
 594 0056 23F00103 		bic	r3, r3, #1
 595 005a 43F48073 		orr	r3, r3, #256
 596 005e 0364     		str	r3, [r0, #64]
 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 597              		.loc 1 760 5 view .LVU208
 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 598              		.loc 1 760 9 is_stmt 0 view .LVU209
 599 0060 5368     		ldr	r3, [r2, #4]
 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 600              		.loc 1 760 8 view .LVU210
 601 0062 13F4806F 		tst	r3, #1024
 602 0066 05D0     		beq	.L36
 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 603              		.loc 1 762 7 is_stmt 1 view .LVU211
 604 0068 036C     		ldr	r3, [r0, #64]
 605 006a 23F44053 		bic	r3, r3, #12288
 606 006e 43F48053 		orr	r3, r3, #4096
 607 0072 0364     		str	r3, [r0, #64]
 608              	.L36:
 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 609              		.loc 1 766 5 view .LVU212
 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 610              		.loc 1 766 9 is_stmt 0 view .LVU213
 611 0074 036C     		ldr	r3, [r0, #64]
 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 612              		.loc 1 766 8 view .LVU214
 613 0076 13F4805F 		tst	r3, #4096
 614 007a 1BD0     		beq	.L37
 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 615              		.loc 1 769 7 is_stmt 1 view .LVU215
 616 007c 436C     		ldr	r3, [r0, #68]
 617 007e 23F00603 		bic	r3, r3, #6
 618 0082 4364     		str	r3, [r0, #68]
 619              	.L38:
 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 620              		.loc 1 780 5 view .LVU216
 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 621              		.loc 1 780 5 view .LVU217
 622 0084 0023     		movs	r3, #0
 623 0086 80F83C30 		strb	r3, [r0, #60]
 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 624              		.loc 1 780 5 view .LVU218
 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 625              		.loc 1 785 5 view .LVU219
 626              	.LVL18:
 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 627              		.loc 1 789 5 view .LVU220
 628 008a 6FF02203 		mvn	r3, #34
 629 008e 1360     		str	r3, [r2]
 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 630              		.loc 1 792 5 view .LVU221
 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
ARM GAS  /tmp/ccMhywUy.s 			page 48


 631              		.loc 1 792 8 is_stmt 0 view .LVU222
 632 0090 244B     		ldr	r3, .L53+8
 633 0092 5B68     		ldr	r3, [r3, #4]
 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 634              		.loc 1 792 7 view .LVU223
 635 0094 13F01F0F 		tst	r3, #31
 636 0098 27D1     		bne	.L39
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 637              		.loc 1 795 7 is_stmt 1 view .LVU224
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 638              		.loc 1 795 15 is_stmt 0 view .LVU225
 639 009a 0368     		ldr	r3, [r0]
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 640              		.loc 1 795 9 view .LVU226
 641 009c 224A     		ldr	r2, .L53+12
 642 009e 9342     		cmp	r3, r2
 643 00a0 11D0     		beq	.L40
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 644              		.loc 1 795 35 discriminator 1 view .LVU227
 645 00a2 02F58072 		add	r2, r2, #256
 646 00a6 9342     		cmp	r3, r2
 647 00a8 07D0     		beq	.L50
 648              	.L41:
 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 649              		.loc 1 796 35 view .LVU228
 650 00aa 204A     		ldr	r2, .L53+16
 651 00ac 9342     		cmp	r3, r2
 652 00ae 14D0     		beq	.L51
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 653              		.loc 1 821 10 view .LVU229
 654 00b0 0020     		movs	r0, #0
 655              	.LVL19:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 656              		.loc 1 821 10 view .LVU230
 657 00b2 2DE0     		b	.L32
 658              	.LVL20:
 659              	.L37:
 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     } 
 660              		.loc 1 774 7 is_stmt 1 view .LVU231
 661 00b4 0023     		movs	r3, #0
 662 00b6 4364     		str	r3, [r0, #68]
 663 00b8 E4E7     		b	.L38
 664              	.LVL21:
 665              	.L50:
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 666              		.loc 1 795 72 is_stmt 0 discriminator 2 view .LVU232
 667 00ba 02F50072 		add	r2, r2, #512
 668 00be 5268     		ldr	r2, [r2, #4]
 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 669              		.loc 1 795 64 discriminator 2 view .LVU233
 670 00c0 12F01F0F 		tst	r2, #31
 671 00c4 F1D1     		bne	.L41
 672              	.L40:
 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 673              		.loc 1 800 9 is_stmt 1 view .LVU234
 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 674              		.loc 1 800 27 is_stmt 0 view .LVU235
ARM GAS  /tmp/ccMhywUy.s 			page 49


 675 00c6 9A68     		ldr	r2, [r3, #8]
 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 676              		.loc 1 800 11 view .LVU236
 677 00c8 12F0405F 		tst	r2, #805306368
 678 00cc 22D1     		bne	.L46
 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 679              		.loc 1 803 11 is_stmt 1 view .LVU237
 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 680              		.loc 1 803 31 is_stmt 0 view .LVU238
 681 00ce 9A68     		ldr	r2, [r3, #8]
 682 00d0 42F08042 		orr	r2, r2, #1073741824
 683 00d4 9A60     		str	r2, [r3, #8]
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 684              		.loc 1 821 10 view .LVU239
 685 00d6 0020     		movs	r0, #0
 686              	.LVL22:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 687              		.loc 1 821 10 view .LVU240
 688 00d8 1AE0     		b	.L32
 689              	.LVL23:
 690              	.L51:
 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 691              		.loc 1 796 72 discriminator 1 view .LVU241
 692 00da 02F58072 		add	r2, r2, #256
 693 00de 5268     		ldr	r2, [r2, #4]
 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 694              		.loc 1 796 64 discriminator 1 view .LVU242
 695 00e0 12F0100F 		tst	r2, #16
 696 00e4 EFD0     		beq	.L40
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 697              		.loc 1 821 10 view .LVU243
 698 00e6 0020     		movs	r0, #0
 699              	.LVL24:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 700              		.loc 1 821 10 view .LVU244
 701 00e8 12E0     		b	.L32
 702              	.LVL25:
 703              	.L39:
 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 704              		.loc 1 812 7 is_stmt 1 view .LVU245
 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 705              		.loc 1 812 15 is_stmt 0 view .LVU246
 706 00ea 0368     		ldr	r3, [r0]
 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 707              		.loc 1 812 9 view .LVU247
 708 00ec 0E4A     		ldr	r2, .L53+12
 709 00ee 9342     		cmp	r3, r2
 710 00f0 01D0     		beq	.L52
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 711              		.loc 1 821 10 view .LVU248
 712 00f2 0020     		movs	r0, #0
 713              	.LVL26:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 714              		.loc 1 821 10 view .LVU249
 715 00f4 0CE0     		b	.L32
 716              	.LVL27:
 717              	.L52:
ARM GAS  /tmp/ccMhywUy.s 			page 50


 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 718              		.loc 1 812 54 discriminator 1 view .LVU250
 719 00f6 9A68     		ldr	r2, [r3, #8]
 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 720              		.loc 1 812 35 discriminator 1 view .LVU251
 721 00f8 12F0405F 		tst	r2, #805306368
 722 00fc 0CD1     		bne	.L48
 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 723              		.loc 1 815 11 is_stmt 1 view .LVU252
 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 724              		.loc 1 815 31 is_stmt 0 view .LVU253
 725 00fe 9A68     		ldr	r2, [r3, #8]
 726 0100 42F08042 		orr	r2, r2, #1073741824
 727 0104 9A60     		str	r2, [r3, #8]
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 728              		.loc 1 821 10 view .LVU254
 729 0106 0020     		movs	r0, #0
 730              	.LVL28:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 731              		.loc 1 821 10 view .LVU255
 732 0108 02E0     		b	.L32
 733              	.LVL29:
 734              	.L42:
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 735              		.loc 1 729 3 view .LVU256
 736 010a 0220     		movs	r0, #2
 737              	.LVL30:
 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 738              		.loc 1 729 3 view .LVU257
 739 010c 00E0     		b	.L32
 740              	.LVL31:
 741              	.L43:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 742              		.loc 1 821 10 view .LVU258
 743 010e 0020     		movs	r0, #0
 744              	.LVL32:
 745              	.L32:
 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 746              		.loc 1 822 1 view .LVU259
 747 0110 02B0     		add	sp, sp, #8
 748              	.LCFI5:
 749              		.cfi_remember_state
 750              		.cfi_def_cfa_offset 0
 751              		@ sp needed
 752 0112 7047     		bx	lr
 753              	.LVL33:
 754              	.L46:
 755              	.LCFI6:
 756              		.cfi_restore_state
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 757              		.loc 1 821 10 view .LVU260
 758 0114 0020     		movs	r0, #0
 759              	.LVL34:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 760              		.loc 1 821 10 view .LVU261
 761 0116 FBE7     		b	.L32
 762              	.LVL35:
ARM GAS  /tmp/ccMhywUy.s 			page 51


 763              	.L48:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 764              		.loc 1 821 10 view .LVU262
 765 0118 0020     		movs	r0, #0
 766              	.LVL36:
 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 767              		.loc 1 821 10 view .LVU263
 768 011a F9E7     		b	.L32
 769              	.L54:
 770              		.align	2
 771              	.L53:
 772 011c 00000000 		.word	SystemCoreClock
 773 0120 83DE1B43 		.word	1125899907
 774 0124 00230140 		.word	1073816320
 775 0128 00200140 		.word	1073815552
 776 012c 00220140 		.word	1073816064
 777              		.cfi_endproc
 778              	.LFE134:
 780              		.section	.text.HAL_ADC_Stop,"ax",%progbits
 781              		.align	1
 782              		.global	HAL_ADC_Stop
 783              		.syntax unified
 784              		.thumb
 785              		.thumb_func
 787              	HAL_ADC_Stop:
 788              	.LVL37:
 789              	.LFB135:
 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 790              		.loc 1 835 1 is_stmt 1 view -0
 791              		.cfi_startproc
 792              		@ args = 0, pretend = 0, frame = 0
 793              		@ frame_needed = 0, uses_anonymous_args = 0
 794              		@ link register save eliminated.
 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 795              		.loc 1 837 3 view .LVU265
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 796              		.loc 1 840 3 view .LVU266
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 797              		.loc 1 840 3 view .LVU267
 798 0000 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 799 0004 012B     		cmp	r3, #1
 800 0006 19D0     		beq	.L58
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 801              		.loc 1 840 3 discriminator 2 view .LVU268
 802 0008 0123     		movs	r3, #1
 803 000a 80F83C30 		strb	r3, [r0, #60]
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 804              		.loc 1 840 3 discriminator 2 view .LVU269
 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 805              		.loc 1 844 3 discriminator 2 view .LVU270
 806 000e 0268     		ldr	r2, [r0]
 807 0010 9368     		ldr	r3, [r2, #8]
 808 0012 23F00103 		bic	r3, r3, #1
 809 0016 9360     		str	r3, [r2, #8]
 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 810              		.loc 1 847 3 discriminator 2 view .LVU271
 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
ARM GAS  /tmp/ccMhywUy.s 			page 52


 811              		.loc 1 847 6 is_stmt 0 discriminator 2 view .LVU272
 812 0018 0368     		ldr	r3, [r0]
 813 001a 9B68     		ldr	r3, [r3, #8]
 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 814              		.loc 1 847 5 discriminator 2 view .LVU273
 815 001c 13F0010F 		tst	r3, #1
 816 0020 07D1     		bne	.L57
 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 817              		.loc 1 850 5 is_stmt 1 view .LVU274
 818 0022 036C     		ldr	r3, [r0, #64]
 819 0024 23F48853 		bic	r3, r3, #4352
 820 0028 23F00103 		bic	r3, r3, #1
 821 002c 43F00103 		orr	r3, r3, #1
 822 0030 0364     		str	r3, [r0, #64]
 823              	.L57:
 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 824              		.loc 1 856 3 view .LVU275
 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 825              		.loc 1 856 3 view .LVU276
 826 0032 0023     		movs	r3, #0
 827 0034 80F83C30 		strb	r3, [r0, #60]
 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 828              		.loc 1 856 3 view .LVU277
 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 829              		.loc 1 859 3 view .LVU278
 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 830              		.loc 1 859 10 is_stmt 0 view .LVU279
 831 0038 1846     		mov	r0, r3
 832              	.LVL38:
 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 833              		.loc 1 859 10 view .LVU280
 834 003a 7047     		bx	lr
 835              	.LVL39:
 836              	.L58:
 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 837              		.loc 1 840 3 view .LVU281
 838 003c 0220     		movs	r0, #2
 839              	.LVL40:
 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 840              		.loc 1 860 1 view .LVU282
 841 003e 7047     		bx	lr
 842              		.cfi_endproc
 843              	.LFE135:
 845              		.section	.text.HAL_ADC_PollForConversion,"ax",%progbits
 846              		.align	1
 847              		.global	HAL_ADC_PollForConversion
 848              		.syntax unified
 849              		.thumb
 850              		.thumb_func
 852              	HAL_ADC_PollForConversion:
 853              	.LVL41:
 854              	.LFB136:
 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 855              		.loc 1 878 1 is_stmt 1 view -0
 856              		.cfi_startproc
 857              		@ args = 0, pretend = 0, frame = 0
 858              		@ frame_needed = 0, uses_anonymous_args = 0
ARM GAS  /tmp/ccMhywUy.s 			page 53


 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 859              		.loc 1 878 1 is_stmt 0 view .LVU284
 860 0000 70B5     		push	{r4, r5, r6, lr}
 861              	.LCFI7:
 862              		.cfi_def_cfa_offset 16
 863              		.cfi_offset 4, -16
 864              		.cfi_offset 5, -12
 865              		.cfi_offset 6, -8
 866              		.cfi_offset 14, -4
 867 0002 0446     		mov	r4, r0
 868 0004 0D46     		mov	r5, r1
 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****  
 869              		.loc 1 879 3 is_stmt 1 view .LVU285
 870              	.LVL42:
 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)    )
 871              		.loc 1 887 3 view .LVU286
 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)    )
 872              		.loc 1 887 7 is_stmt 0 view .LVU287
 873 0006 0368     		ldr	r3, [r0]
 874 0008 9A68     		ldr	r2, [r3, #8]
 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)    )
 875              		.loc 1 887 6 view .LVU288
 876 000a 12F4806F 		tst	r2, #1024
 877 000e 03D0     		beq	.L60
 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 878              		.loc 1 888 7 discriminator 1 view .LVU289
 879 0010 9B68     		ldr	r3, [r3, #8]
 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_DMA)    )
 880              		.loc 1 887 57 discriminator 1 view .LVU290
 881 0012 13F4807F 		tst	r3, #256
 882 0016 19D1     		bne	.L70
 883              	.L60:
 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 884              		.loc 1 900 3 is_stmt 1 view .LVU291
 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 885              		.loc 1 900 15 is_stmt 0 view .LVU292
 886 0018 FFF7FEFF 		bl	HAL_GetTick
 887              	.LVL43:
 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 888              		.loc 1 900 15 view .LVU293
 889 001c 0646     		mov	r6, r0
 890              	.LVL44:
 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 891              		.loc 1 903 3 is_stmt 1 view .LVU294
 892              	.L63:
 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 893              		.loc 1 903 8 view .LVU295
 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 894              		.loc 1 903 11 is_stmt 0 view .LVU296
 895 001e 2368     		ldr	r3, [r4]
 896 0020 1A68     		ldr	r2, [r3]
 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 897              		.loc 1 903 8 view .LVU297
 898 0022 12F0020F 		tst	r2, #2
 899 0026 1AD1     		bne	.L71
 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 900              		.loc 1 906 5 is_stmt 1 view .LVU298
ARM GAS  /tmp/ccMhywUy.s 			page 54


 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 901              		.loc 1 906 7 is_stmt 0 view .LVU299
 902 0028 B5F1FF3F 		cmp	r5, #-1
 903 002c F7D0     		beq	.L63
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 904              		.loc 1 908 7 is_stmt 1 view .LVU300
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 905              		.loc 1 908 9 is_stmt 0 view .LVU301
 906 002e 25B1     		cbz	r5, .L64
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 907              		.loc 1 908 31 discriminator 1 view .LVU302
 908 0030 FFF7FEFF 		bl	HAL_GetTick
 909              	.LVL45:
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 910              		.loc 1 908 45 discriminator 1 view .LVU303
 911 0034 801B     		subs	r0, r0, r6
 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 912              		.loc 1 908 26 discriminator 1 view .LVU304
 913 0036 A842     		cmp	r0, r5
 914 0038 F1D9     		bls	.L63
 915              	.L64:
 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 916              		.loc 1 911 9 is_stmt 1 view .LVU305
 917 003a 236C     		ldr	r3, [r4, #64]
 918 003c 43F00403 		orr	r3, r3, #4
 919 0040 2364     		str	r3, [r4, #64]
 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 920              		.loc 1 914 9 view .LVU306
 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 921              		.loc 1 914 9 view .LVU307
 922 0042 0023     		movs	r3, #0
 923 0044 84F83C30 		strb	r3, [r4, #60]
 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 924              		.loc 1 914 9 view .LVU308
 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 925              		.loc 1 916 9 view .LVU309
 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 926              		.loc 1 916 16 is_stmt 0 view .LVU310
 927 0048 0320     		movs	r0, #3
 928 004a 2CE0     		b	.L61
 929              	.LVL46:
 930              	.L70:
 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 931              		.loc 1 891 5 is_stmt 1 view .LVU311
 932 004c 036C     		ldr	r3, [r0, #64]
 933 004e 43F02003 		orr	r3, r3, #32
 934 0052 0364     		str	r3, [r0, #64]
 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 935              		.loc 1 894 5 view .LVU312
 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 936              		.loc 1 894 5 view .LVU313
 937 0054 0023     		movs	r3, #0
 938 0056 80F83C30 		strb	r3, [r0, #60]
 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 939              		.loc 1 894 5 view .LVU314
 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 940              		.loc 1 896 5 view .LVU315
ARM GAS  /tmp/ccMhywUy.s 			page 55


 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 941              		.loc 1 896 12 is_stmt 0 view .LVU316
 942 005a 0120     		movs	r0, #1
 943              	.LVL47:
 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 944              		.loc 1 896 12 view .LVU317
 945 005c 23E0     		b	.L61
 946              	.LVL48:
 947              	.L71:
 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 948              		.loc 1 922 3 is_stmt 1 view .LVU318
 949 005e 6FF01202 		mvn	r2, #18
 950 0062 1A60     		str	r2, [r3]
 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 951              		.loc 1 925 3 view .LVU319
 952 0064 236C     		ldr	r3, [r4, #64]
 953 0066 43F40073 		orr	r3, r3, #512
 954 006a 2364     		str	r3, [r4, #64]
 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (hadc->Init.ContinuousConvMode == DISABLE)            &&
 955              		.loc 1 933 3 view .LVU320
 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (hadc->Init.ContinuousConvMode == DISABLE)            &&
 956              		.loc 1 933 6 is_stmt 0 view .LVU321
 957 006c 2368     		ldr	r3, [r4]
 958 006e 9A68     		ldr	r2, [r3, #8]
 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (hadc->Init.ContinuousConvMode == DISABLE)            &&
 959              		.loc 1 933 5 view .LVU322
 960 0070 12F0405F 		tst	r2, #805306368
 961 0074 16D1     		bne	.L67
 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) ||
 962              		.loc 1 934 17 discriminator 1 view .LVU323
 963 0076 207E     		ldrb	r0, [r4, #24]	@ zero_extendqisi2
 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (hadc->Init.ContinuousConvMode == DISABLE)            &&
 964              		.loc 1 933 60 discriminator 1 view .LVU324
 965 0078 B0B9     		cbnz	r0, .L68
 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 966              		.loc 1 935 7 view .LVU325
 967 007a DA6A     		ldr	r2, [r3, #44]
 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****      (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) ||
 968              		.loc 1 934 60 view .LVU326
 969 007c 12F4700F 		tst	r2, #15728640
 970 0080 03D0     		beq	.L66
 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 971              		.loc 1 936 7 view .LVU327
 972 0082 9B68     		ldr	r3, [r3, #8]
 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 973              		.loc 1 935 56 view .LVU328
 974 0084 13F4806F 		tst	r3, #1024
 975 0088 0DD1     		bne	.L61
 976              	.L66:
 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 977              		.loc 1 939 5 is_stmt 1 view .LVU329
 978 008a 236C     		ldr	r3, [r4, #64]
 979 008c 23F48073 		bic	r3, r3, #256
 980 0090 2364     		str	r3, [r4, #64]
 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     { 
 981              		.loc 1 941 5 view .LVU330
 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     { 
ARM GAS  /tmp/ccMhywUy.s 			page 56


 982              		.loc 1 941 9 is_stmt 0 view .LVU331
 983 0092 236C     		ldr	r3, [r4, #64]
 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     { 
 984              		.loc 1 941 8 view .LVU332
 985 0094 13F4805F 		tst	r3, #4096
 986 0098 05D1     		bne	.L61
 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 987              		.loc 1 943 7 is_stmt 1 view .LVU333
 988 009a 236C     		ldr	r3, [r4, #64]
 989 009c 43F00103 		orr	r3, r3, #1
 990 00a0 2364     		str	r3, [r4, #64]
 991 00a2 00E0     		b	.L61
 992              	.L67:
 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 993              		.loc 1 948 10 is_stmt 0 view .LVU334
 994 00a4 0020     		movs	r0, #0
 995              	.LVL49:
 996              	.L61:
 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 997              		.loc 1 949 1 view .LVU335
 998 00a6 70BD     		pop	{r4, r5, r6, pc}
 999              	.LVL50:
 1000              	.L68:
 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1001              		.loc 1 948 10 view .LVU336
 1002 00a8 0020     		movs	r0, #0
 1003 00aa FCE7     		b	.L61
 1004              		.cfi_endproc
 1005              	.LFE136:
 1007              		.section	.text.HAL_ADC_PollForEvent,"ax",%progbits
 1008              		.align	1
 1009              		.global	HAL_ADC_PollForEvent
 1010              		.syntax unified
 1011              		.thumb
 1012              		.thumb_func
 1014              	HAL_ADC_PollForEvent:
 1015              	.LVL51:
 1016              	.LFB137:
 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 1017              		.loc 1 963 1 is_stmt 1 view -0
 1018              		.cfi_startproc
 1019              		@ args = 0, pretend = 0, frame = 0
 1020              		@ frame_needed = 0, uses_anonymous_args = 0
 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tickstart = 0U;
 1021              		.loc 1 963 1 is_stmt 0 view .LVU338
 1022 0000 2DE9F041 		push	{r4, r5, r6, r7, r8, lr}
 1023              	.LCFI8:
 1024              		.cfi_def_cfa_offset 24
 1025              		.cfi_offset 4, -24
 1026              		.cfi_offset 5, -20
 1027              		.cfi_offset 6, -16
 1028              		.cfi_offset 7, -12
 1029              		.cfi_offset 8, -8
 1030              		.cfi_offset 14, -4
 1031 0004 0546     		mov	r5, r0
 1032 0006 0E46     		mov	r6, r1
 1033 0008 1746     		mov	r7, r2
ARM GAS  /tmp/ccMhywUy.s 			page 57


 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1034              		.loc 1 964 3 is_stmt 1 view .LVU339
 1035              	.LVL52:
 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EVENT_TYPE(EventType));
 1036              		.loc 1 967 3 view .LVU340
 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1037              		.loc 1 968 3 view .LVU341
 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1038              		.loc 1 971 3 view .LVU342
 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1039              		.loc 1 971 15 is_stmt 0 view .LVU343
 1040 000a FFF7FEFF 		bl	HAL_GetTick
 1041              	.LVL53:
 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1042              		.loc 1 971 15 view .LVU344
 1043 000e 8046     		mov	r8, r0
 1044              	.LVL54:
 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1045              		.loc 1 974 3 is_stmt 1 view .LVU345
 1046              	.L74:
 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1047              		.loc 1 974 8 view .LVU346
 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1048              		.loc 1 974 11 is_stmt 0 view .LVU347
 1049 0010 2B68     		ldr	r3, [r5]
 1050 0012 1C68     		ldr	r4, [r3]
 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1051              		.loc 1 974 8 view .LVU348
 1052 0014 36EA0402 		bics	r2, r6, r4
 1053 0018 12D0     		beq	.L80
 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1054              		.loc 1 977 5 is_stmt 1 view .LVU349
 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1055              		.loc 1 977 7 is_stmt 0 view .LVU350
 1056 001a B7F1FF3F 		cmp	r7, #-1
 1057 001e F7D0     		beq	.L74
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1058              		.loc 1 979 7 is_stmt 1 view .LVU351
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1059              		.loc 1 979 9 is_stmt 0 view .LVU352
 1060 0020 2FB1     		cbz	r7, .L75
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1061              		.loc 1 979 31 discriminator 1 view .LVU353
 1062 0022 FFF7FEFF 		bl	HAL_GetTick
 1063              	.LVL55:
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1064              		.loc 1 979 45 discriminator 1 view .LVU354
 1065 0026 A0EB0800 		sub	r0, r0, r8
 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1066              		.loc 1 979 26 discriminator 1 view .LVU355
 1067 002a B842     		cmp	r0, r7
 1068 002c F0D9     		bls	.L74
 1069              	.L75:
 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 1070              		.loc 1 982 9 is_stmt 1 view .LVU356
 1071 002e 2B6C     		ldr	r3, [r5, #64]
 1072 0030 43F00403 		orr	r3, r3, #4
ARM GAS  /tmp/ccMhywUy.s 			page 58


 1073 0034 2B64     		str	r3, [r5, #64]
 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 1074              		.loc 1 985 9 view .LVU357
 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 1075              		.loc 1 985 9 view .LVU358
 1076 0036 0023     		movs	r3, #0
 1077 0038 85F83C30 		strb	r3, [r5, #60]
 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         
 1078              		.loc 1 985 9 view .LVU359
 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 1079              		.loc 1 987 9 view .LVU360
 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 1080              		.loc 1 987 16 is_stmt 0 view .LVU361
 1081 003c 0320     		movs	r0, #3
 1082 003e 0DE0     		b	.L76
 1083              	.L80:
 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1084              		.loc 1 993 3 is_stmt 1 view .LVU362
 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1085              		.loc 1 993 5 is_stmt 0 view .LVU363
 1086 0040 012E     		cmp	r6, #1
 1087 0042 0DD0     		beq	.L81
1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Set ADC error code to overrun */
 1088              		.loc 1 1005 5 is_stmt 1 view .LVU364
 1089 0044 2A6C     		ldr	r2, [r5, #64]
 1090 0046 42F48062 		orr	r2, r2, #1024
 1091 004a 2A64     		str	r2, [r5, #64]
1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1092              		.loc 1 1007 5 view .LVU365
 1093 004c 6A6C     		ldr	r2, [r5, #68]
 1094 004e 42F00202 		orr	r2, r2, #2
 1095 0052 6A64     		str	r2, [r5, #68]
1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 1096              		.loc 1 1010 5 view .LVU366
 1097 0054 6FF02002 		mvn	r2, #32
 1098 0058 1A60     		str	r2, [r3]
1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1099              		.loc 1 1014 10 is_stmt 0 view .LVU367
 1100 005a 0020     		movs	r0, #0
 1101              	.L76:
1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1102              		.loc 1 1015 1 view .LVU368
 1103 005c BDE8F081 		pop	{r4, r5, r6, r7, r8, pc}
 1104              	.LVL56:
 1105              	.L81:
 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 1106              		.loc 1 996 5 is_stmt 1 view .LVU369
 1107 0060 2A6C     		ldr	r2, [r5, #64]
 1108 0062 42F48032 		orr	r2, r2, #65536
 1109 0066 2A64     		str	r2, [r5, #64]
 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 1110              		.loc 1 999 5 view .LVU370
 1111 0068 6FF00102 		mvn	r2, #1
 1112 006c 1A60     		str	r2, [r3]
1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1113              		.loc 1 1014 10 is_stmt 0 view .LVU371
 1114 006e 0020     		movs	r0, #0
ARM GAS  /tmp/ccMhywUy.s 			page 59


 1115 0070 F4E7     		b	.L76
 1116              		.cfi_endproc
 1117              	.LFE137:
 1119              		.section	.text.HAL_ADC_Start_IT,"ax",%progbits
 1120              		.align	1
 1121              		.global	HAL_ADC_Start_IT
 1122              		.syntax unified
 1123              		.thumb
 1124              		.thumb_func
 1126              	HAL_ADC_Start_IT:
 1127              	.LVL57:
 1128              	.LFB138:
1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 1129              		.loc 1 1025 1 is_stmt 1 view -0
 1130              		.cfi_startproc
 1131              		@ args = 0, pretend = 0, frame = 8
 1132              		@ frame_needed = 0, uses_anonymous_args = 0
 1133              		@ link register save eliminated.
1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 1134              		.loc 1 1025 1 is_stmt 0 view .LVU373
 1135 0000 82B0     		sub	sp, sp, #8
 1136              	.LCFI9:
 1137              		.cfi_def_cfa_offset 8
1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 1138              		.loc 1 1026 3 is_stmt 1 view .LVU374
1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 1139              		.loc 1 1026 17 is_stmt 0 view .LVU375
 1140 0002 0023     		movs	r3, #0
 1141 0004 0193     		str	r3, [sp, #4]
1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1142              		.loc 1 1027 3 is_stmt 1 view .LVU376
1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
 1143              		.loc 1 1030 3 view .LVU377
1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1144              		.loc 1 1031 3 view .LVU378
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1145              		.loc 1 1034 3 view .LVU379
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1146              		.loc 1 1034 3 view .LVU380
 1147 0006 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 1148 000a 012B     		cmp	r3, #1
 1149 000c 00F08580 		beq	.L93
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1150              		.loc 1 1034 3 discriminator 2 view .LVU381
 1151 0010 0123     		movs	r3, #1
 1152 0012 80F83C30 		strb	r3, [r0, #60]
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1153              		.loc 1 1034 3 discriminator 2 view .LVU382
1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1154              		.loc 1 1039 3 discriminator 2 view .LVU383
1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1155              		.loc 1 1039 11 is_stmt 0 discriminator 2 view .LVU384
 1156 0016 0368     		ldr	r3, [r0]
1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1157              		.loc 1 1039 21 discriminator 2 view .LVU385
 1158 0018 9A68     		ldr	r2, [r3, #8]
1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
ARM GAS  /tmp/ccMhywUy.s 			page 60


 1159              		.loc 1 1039 5 discriminator 2 view .LVU386
 1160 001a 12F0010F 		tst	r2, #1
 1161 001e 13D1     		bne	.L84
1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1162              		.loc 1 1042 5 is_stmt 1 view .LVU387
 1163 0020 9A68     		ldr	r2, [r3, #8]
 1164 0022 42F00102 		orr	r2, r2, #1
 1165 0026 9A60     		str	r2, [r3, #8]
1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1166              		.loc 1 1046 5 view .LVU388
1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1167              		.loc 1 1046 53 is_stmt 0 view .LVU389
 1168 0028 404B     		ldr	r3, .L104
 1169 002a 1B68     		ldr	r3, [r3]
 1170 002c 404A     		ldr	r2, .L104+4
 1171 002e A2FB0323 		umull	r2, r3, r2, r3
 1172 0032 9B0C     		lsrs	r3, r3, #18
1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1173              		.loc 1 1046 34 view .LVU390
 1174 0034 03EB4303 		add	r3, r3, r3, lsl #1
1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1175              		.loc 1 1046 13 view .LVU391
 1176 0038 0193     		str	r3, [sp, #4]
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1177              		.loc 1 1047 5 is_stmt 1 view .LVU392
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1178              		.loc 1 1047 10 is_stmt 0 view .LVU393
 1179 003a 02E0     		b	.L85
 1180              	.L86:
1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1181              		.loc 1 1049 7 is_stmt 1 view .LVU394
1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1182              		.loc 1 1049 14 is_stmt 0 view .LVU395
 1183 003c 019B     		ldr	r3, [sp, #4]
 1184 003e 013B     		subs	r3, r3, #1
 1185 0040 0193     		str	r3, [sp, #4]
 1186              	.L85:
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1187              		.loc 1 1047 10 is_stmt 1 view .LVU396
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1188              		.loc 1 1047 19 is_stmt 0 view .LVU397
 1189 0042 019B     		ldr	r3, [sp, #4]
1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1190              		.loc 1 1047 10 view .LVU398
 1191 0044 002B     		cmp	r3, #0
 1192 0046 F9D1     		bne	.L86
 1193              	.L84:
1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1194              		.loc 1 1054 3 is_stmt 1 view .LVU399
1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1195              		.loc 1 1054 6 is_stmt 0 view .LVU400
 1196 0048 0268     		ldr	r2, [r0]
 1197 004a 9368     		ldr	r3, [r2, #8]
1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1198              		.loc 1 1054 5 view .LVU401
 1199 004c 13F0010F 		tst	r3, #1
 1200 0050 65D0     		beq	.L94
ARM GAS  /tmp/ccMhywUy.s 			page 61


1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR,
 1201              		.loc 1 1059 5 is_stmt 1 view .LVU402
 1202 0052 036C     		ldr	r3, [r0, #64]
 1203 0054 23F4E063 		bic	r3, r3, #1792
 1204 0058 23F00103 		bic	r3, r3, #1
 1205 005c 43F48073 		orr	r3, r3, #256
 1206 0060 0364     		str	r3, [r0, #64]
1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1207              		.loc 1 1065 5 view .LVU403
1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1208              		.loc 1 1065 9 is_stmt 0 view .LVU404
 1209 0062 5368     		ldr	r3, [r2, #4]
1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1210              		.loc 1 1065 8 view .LVU405
 1211 0064 13F4806F 		tst	r3, #1024
 1212 0068 05D0     		beq	.L87
1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1213              		.loc 1 1067 7 is_stmt 1 view .LVU406
 1214 006a 036C     		ldr	r3, [r0, #64]
 1215 006c 23F44053 		bic	r3, r3, #12288
 1216 0070 43F48053 		orr	r3, r3, #4096
 1217 0074 0364     		str	r3, [r0, #64]
 1218              	.L87:
1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1219              		.loc 1 1071 5 view .LVU407
1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1220              		.loc 1 1071 9 is_stmt 0 view .LVU408
 1221 0076 036C     		ldr	r3, [r0, #64]
1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1222              		.loc 1 1071 8 view .LVU409
 1223 0078 13F4805F 		tst	r3, #4096
 1224 007c 22D0     		beq	.L88
1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1225              		.loc 1 1074 7 is_stmt 1 view .LVU410
 1226 007e 436C     		ldr	r3, [r0, #68]
 1227 0080 23F00603 		bic	r3, r3, #6
 1228 0084 4364     		str	r3, [r0, #68]
 1229              	.L89:
1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1230              		.loc 1 1085 5 view .LVU411
1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1231              		.loc 1 1085 5 view .LVU412
 1232 0086 0023     		movs	r3, #0
 1233 0088 80F83C30 		strb	r3, [r0, #60]
1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1234              		.loc 1 1085 5 view .LVU413
1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1235              		.loc 1 1090 5 view .LVU414
 1236              	.LVL58:
1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1237              		.loc 1 1094 5 view .LVU415
 1238 008c 6FF02203 		mvn	r3, #34
 1239 0090 1360     		str	r3, [r2]
1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1240              		.loc 1 1097 5 view .LVU416
 1241 0092 0268     		ldr	r2, [r0]
 1242 0094 5368     		ldr	r3, [r2, #4]
ARM GAS  /tmp/ccMhywUy.s 			page 62


 1243 0096 43F08063 		orr	r3, r3, #67108864
 1244 009a 43F02003 		orr	r3, r3, #32
 1245 009e 5360     		str	r3, [r2, #4]
1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1246              		.loc 1 1100 5 view .LVU417
1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1247              		.loc 1 1100 8 is_stmt 0 view .LVU418
 1248 00a0 244B     		ldr	r3, .L104+8
 1249 00a2 5B68     		ldr	r3, [r3, #4]
1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1250              		.loc 1 1100 7 view .LVU419
 1251 00a4 13F01F0F 		tst	r3, #31
 1252 00a8 27D1     		bne	.L90
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1253              		.loc 1 1103 7 is_stmt 1 view .LVU420
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1254              		.loc 1 1103 15 is_stmt 0 view .LVU421
 1255 00aa 0368     		ldr	r3, [r0]
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1256              		.loc 1 1103 9 view .LVU422
 1257 00ac 224A     		ldr	r2, .L104+12
 1258 00ae 9342     		cmp	r3, r2
 1259 00b0 11D0     		beq	.L91
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1260              		.loc 1 1103 35 discriminator 1 view .LVU423
 1261 00b2 02F58072 		add	r2, r2, #256
 1262 00b6 9342     		cmp	r3, r2
 1263 00b8 07D0     		beq	.L101
 1264              	.L92:
1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1265              		.loc 1 1104 35 view .LVU424
 1266 00ba 204A     		ldr	r2, .L104+16
 1267 00bc 9342     		cmp	r3, r2
 1268 00be 14D0     		beq	.L102
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1269              		.loc 1 1129 10 view .LVU425
 1270 00c0 0020     		movs	r0, #0
 1271              	.LVL59:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1272              		.loc 1 1129 10 view .LVU426
 1273 00c2 2DE0     		b	.L83
 1274              	.LVL60:
 1275              	.L88:
1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1276              		.loc 1 1079 7 is_stmt 1 view .LVU427
 1277 00c4 0023     		movs	r3, #0
 1278 00c6 4364     		str	r3, [r0, #68]
 1279 00c8 DDE7     		b	.L89
 1280              	.LVL61:
 1281              	.L101:
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1282              		.loc 1 1103 72 is_stmt 0 discriminator 2 view .LVU428
 1283 00ca 02F50072 		add	r2, r2, #512
 1284 00ce 5268     		ldr	r2, [r2, #4]
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1285              		.loc 1 1103 64 discriminator 2 view .LVU429
 1286 00d0 12F01F0F 		tst	r2, #31
ARM GAS  /tmp/ccMhywUy.s 			page 63


 1287 00d4 F1D1     		bne	.L92
 1288              	.L91:
1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1289              		.loc 1 1108 9 is_stmt 1 view .LVU430
1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1290              		.loc 1 1108 27 is_stmt 0 view .LVU431
 1291 00d6 9A68     		ldr	r2, [r3, #8]
1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1292              		.loc 1 1108 11 view .LVU432
 1293 00d8 12F0405F 		tst	r2, #805306368
 1294 00dc 22D1     		bne	.L97
1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 1295              		.loc 1 1111 11 is_stmt 1 view .LVU433
1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 1296              		.loc 1 1111 31 is_stmt 0 view .LVU434
 1297 00de 9A68     		ldr	r2, [r3, #8]
 1298 00e0 42F08042 		orr	r2, r2, #1073741824
 1299 00e4 9A60     		str	r2, [r3, #8]
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1300              		.loc 1 1129 10 view .LVU435
 1301 00e6 0020     		movs	r0, #0
 1302              	.LVL62:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1303              		.loc 1 1129 10 view .LVU436
 1304 00e8 1AE0     		b	.L83
 1305              	.LVL63:
 1306              	.L102:
1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1307              		.loc 1 1104 72 discriminator 1 view .LVU437
 1308 00ea 02F58072 		add	r2, r2, #256
 1309 00ee 5268     		ldr	r2, [r2, #4]
1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1310              		.loc 1 1104 64 discriminator 1 view .LVU438
 1311 00f0 12F0100F 		tst	r2, #16
 1312 00f4 EFD0     		beq	.L91
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1313              		.loc 1 1129 10 view .LVU439
 1314 00f6 0020     		movs	r0, #0
 1315              	.LVL64:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1316              		.loc 1 1129 10 view .LVU440
 1317 00f8 12E0     		b	.L83
 1318              	.LVL65:
 1319              	.L90:
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1320              		.loc 1 1120 7 is_stmt 1 view .LVU441
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1321              		.loc 1 1120 15 is_stmt 0 view .LVU442
 1322 00fa 0368     		ldr	r3, [r0]
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1323              		.loc 1 1120 9 view .LVU443
 1324 00fc 0E4A     		ldr	r2, .L104+12
 1325 00fe 9342     		cmp	r3, r2
 1326 0100 01D0     		beq	.L103
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1327              		.loc 1 1129 10 view .LVU444
 1328 0102 0020     		movs	r0, #0
ARM GAS  /tmp/ccMhywUy.s 			page 64


 1329              	.LVL66:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1330              		.loc 1 1129 10 view .LVU445
 1331 0104 0CE0     		b	.L83
 1332              	.LVL67:
 1333              	.L103:
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1334              		.loc 1 1120 54 discriminator 1 view .LVU446
 1335 0106 9A68     		ldr	r2, [r3, #8]
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1336              		.loc 1 1120 35 discriminator 1 view .LVU447
 1337 0108 12F0405F 		tst	r2, #805306368
 1338 010c 0CD1     		bne	.L99
1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 1339              		.loc 1 1123 11 is_stmt 1 view .LVU448
1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 1340              		.loc 1 1123 31 is_stmt 0 view .LVU449
 1341 010e 9A68     		ldr	r2, [r3, #8]
 1342 0110 42F08042 		orr	r2, r2, #1073741824
 1343 0114 9A60     		str	r2, [r3, #8]
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1344              		.loc 1 1129 10 view .LVU450
 1345 0116 0020     		movs	r0, #0
 1346              	.LVL68:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1347              		.loc 1 1129 10 view .LVU451
 1348 0118 02E0     		b	.L83
 1349              	.LVL69:
 1350              	.L93:
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1351              		.loc 1 1034 3 view .LVU452
 1352 011a 0220     		movs	r0, #2
 1353              	.LVL70:
1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1354              		.loc 1 1034 3 view .LVU453
 1355 011c 00E0     		b	.L83
 1356              	.LVL71:
 1357              	.L94:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1358              		.loc 1 1129 10 view .LVU454
 1359 011e 0020     		movs	r0, #0
 1360              	.LVL72:
 1361              	.L83:
1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1362              		.loc 1 1130 1 view .LVU455
 1363 0120 02B0     		add	sp, sp, #8
 1364              	.LCFI10:
 1365              		.cfi_remember_state
 1366              		.cfi_def_cfa_offset 0
 1367              		@ sp needed
 1368 0122 7047     		bx	lr
 1369              	.LVL73:
 1370              	.L97:
 1371              	.LCFI11:
 1372              		.cfi_restore_state
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1373              		.loc 1 1129 10 view .LVU456
ARM GAS  /tmp/ccMhywUy.s 			page 65


 1374 0124 0020     		movs	r0, #0
 1375              	.LVL74:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1376              		.loc 1 1129 10 view .LVU457
 1377 0126 FBE7     		b	.L83
 1378              	.LVL75:
 1379              	.L99:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1380              		.loc 1 1129 10 view .LVU458
 1381 0128 0020     		movs	r0, #0
 1382              	.LVL76:
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1383              		.loc 1 1129 10 view .LVU459
 1384 012a F9E7     		b	.L83
 1385              	.L105:
 1386              		.align	2
 1387              	.L104:
 1388 012c 00000000 		.word	SystemCoreClock
 1389 0130 83DE1B43 		.word	1125899907
 1390 0134 00230140 		.word	1073816320
 1391 0138 00200140 		.word	1073815552
 1392 013c 00220140 		.word	1073816064
 1393              		.cfi_endproc
 1394              	.LFE138:
 1396              		.section	.text.HAL_ADC_Stop_IT,"ax",%progbits
 1397              		.align	1
 1398              		.global	HAL_ADC_Stop_IT
 1399              		.syntax unified
 1400              		.thumb
 1401              		.thumb_func
 1403              	HAL_ADC_Stop_IT:
 1404              	.LVL77:
 1405              	.LFB139:
1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check the parameters */
 1406              		.loc 1 1142 1 is_stmt 1 view -0
 1407              		.cfi_startproc
 1408              		@ args = 0, pretend = 0, frame = 0
 1409              		@ frame_needed = 0, uses_anonymous_args = 0
 1410              		@ link register save eliminated.
1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1411              		.loc 1 1144 3 view .LVU461
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1412              		.loc 1 1147 3 view .LVU462
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1413              		.loc 1 1147 3 view .LVU463
 1414 0000 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 1415 0004 012B     		cmp	r3, #1
 1416 0006 1FD0     		beq	.L109
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1417              		.loc 1 1147 3 discriminator 2 view .LVU464
 1418 0008 0123     		movs	r3, #1
 1419 000a 80F83C30 		strb	r3, [r0, #60]
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1420              		.loc 1 1147 3 discriminator 2 view .LVU465
1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1421              		.loc 1 1151 3 discriminator 2 view .LVU466
 1422 000e 0268     		ldr	r2, [r0]
ARM GAS  /tmp/ccMhywUy.s 			page 66


 1423 0010 9368     		ldr	r3, [r2, #8]
 1424 0012 23F00103 		bic	r3, r3, #1
 1425 0016 9360     		str	r3, [r2, #8]
1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1426              		.loc 1 1154 3 discriminator 2 view .LVU467
1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1427              		.loc 1 1154 6 is_stmt 0 discriminator 2 view .LVU468
 1428 0018 0368     		ldr	r3, [r0]
 1429 001a 9A68     		ldr	r2, [r3, #8]
1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1430              		.loc 1 1154 5 discriminator 2 view .LVU469
 1431 001c 12F0010F 		tst	r2, #1
 1432 0020 0DD1     		bne	.L108
1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1433              		.loc 1 1157 5 is_stmt 1 view .LVU470
 1434 0022 5A68     		ldr	r2, [r3, #4]
 1435 0024 22F08062 		bic	r2, r2, #67108864
 1436 0028 22F02002 		bic	r2, r2, #32
 1437 002c 5A60     		str	r2, [r3, #4]
1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 1438              		.loc 1 1160 5 view .LVU471
 1439 002e 036C     		ldr	r3, [r0, #64]
 1440 0030 23F48853 		bic	r3, r3, #4352
 1441 0034 23F00103 		bic	r3, r3, #1
 1442 0038 43F00103 		orr	r3, r3, #1
 1443 003c 0364     		str	r3, [r0, #64]
 1444              	.L108:
1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1445              		.loc 1 1166 3 view .LVU472
1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1446              		.loc 1 1166 3 view .LVU473
 1447 003e 0023     		movs	r3, #0
 1448 0040 80F83C30 		strb	r3, [r0, #60]
1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1449              		.loc 1 1166 3 view .LVU474
1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1450              		.loc 1 1169 3 view .LVU475
1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1451              		.loc 1 1169 10 is_stmt 0 view .LVU476
 1452 0044 1846     		mov	r0, r3
 1453              	.LVL78:
1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1454              		.loc 1 1169 10 view .LVU477
 1455 0046 7047     		bx	lr
 1456              	.LVL79:
 1457              	.L109:
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1458              		.loc 1 1147 3 view .LVU478
 1459 0048 0220     		movs	r0, #2
 1460              	.LVL80:
1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1461              		.loc 1 1170 1 view .LVU479
 1462 004a 7047     		bx	lr
 1463              		.cfi_endproc
 1464              	.LFE139:
 1466              		.section	.text.HAL_ADC_Start_DMA,"ax",%progbits
 1467              		.align	1
ARM GAS  /tmp/ccMhywUy.s 			page 67


 1468              		.global	HAL_ADC_Start_DMA
 1469              		.syntax unified
 1470              		.thumb
 1471              		.thumb_func
 1473              	HAL_ADC_Start_DMA:
 1474              	.LVL81:
 1475              	.LFB141:
1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 1476              		.loc 1 1341 1 is_stmt 1 view -0
 1477              		.cfi_startproc
 1478              		@ args = 0, pretend = 0, frame = 8
 1479              		@ frame_needed = 0, uses_anonymous_args = 0
1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 1480              		.loc 1 1341 1 is_stmt 0 view .LVU481
 1481 0000 30B5     		push	{r4, r5, lr}
 1482              	.LCFI12:
 1483              		.cfi_def_cfa_offset 12
 1484              		.cfi_offset 4, -12
 1485              		.cfi_offset 5, -8
 1486              		.cfi_offset 14, -4
 1487 0002 83B0     		sub	sp, sp, #12
 1488              	.LCFI13:
 1489              		.cfi_def_cfa_offset 24
 1490 0004 1346     		mov	r3, r2
1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 1491              		.loc 1 1342 3 is_stmt 1 view .LVU482
1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 1492              		.loc 1 1342 17 is_stmt 0 view .LVU483
 1493 0006 0022     		movs	r2, #0
 1494              	.LVL82:
1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 1495              		.loc 1 1342 17 view .LVU484
 1496 0008 0192     		str	r2, [sp, #4]
1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1497              		.loc 1 1343 3 is_stmt 1 view .LVU485
1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 
 1498              		.loc 1 1346 3 view .LVU486
1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1499              		.loc 1 1347 3 view .LVU487
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1500              		.loc 1 1350 3 view .LVU488
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1501              		.loc 1 1350 3 view .LVU489
 1502 000a 90F83C20 		ldrb	r2, [r0, #60]	@ zero_extendqisi2
 1503 000e 012A     		cmp	r2, #1
 1504 0010 00F09A80 		beq	.L121
 1505 0014 0546     		mov	r5, r0
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1506              		.loc 1 1350 3 discriminator 2 view .LVU490
 1507 0016 0122     		movs	r2, #1
 1508 0018 80F83C20 		strb	r2, [r0, #60]
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1509              		.loc 1 1350 3 discriminator 2 view .LVU491
1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1510              		.loc 1 1355 3 discriminator 2 view .LVU492
1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1511              		.loc 1 1355 11 is_stmt 0 discriminator 2 view .LVU493
ARM GAS  /tmp/ccMhywUy.s 			page 68


 1512 001c 0268     		ldr	r2, [r0]
1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1513              		.loc 1 1355 21 discriminator 2 view .LVU494
 1514 001e 9068     		ldr	r0, [r2, #8]
 1515              	.LVL83:
1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {  
 1516              		.loc 1 1355 5 discriminator 2 view .LVU495
 1517 0020 10F0010F 		tst	r0, #1
 1518 0024 13D1     		bne	.L112
1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1519              		.loc 1 1358 5 is_stmt 1 view .LVU496
 1520 0026 9068     		ldr	r0, [r2, #8]
 1521 0028 40F00100 		orr	r0, r0, #1
 1522 002c 9060     		str	r0, [r2, #8]
1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1523              		.loc 1 1362 5 view .LVU497
1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1524              		.loc 1 1362 53 is_stmt 0 view .LVU498
 1525 002e 4B4A     		ldr	r2, .L132
 1526 0030 1068     		ldr	r0, [r2]
 1527 0032 4B4A     		ldr	r2, .L132+4
 1528 0034 A2FB0020 		umull	r2, r0, r2, r0
 1529 0038 800C     		lsrs	r0, r0, #18
1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1530              		.loc 1 1362 34 view .LVU499
 1531 003a 00EB4000 		add	r0, r0, r0, lsl #1
1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     while(counter != 0U)
 1532              		.loc 1 1362 13 view .LVU500
 1533 003e 0190     		str	r0, [sp, #4]
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1534              		.loc 1 1363 5 is_stmt 1 view .LVU501
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1535              		.loc 1 1363 10 is_stmt 0 view .LVU502
 1536 0040 02E0     		b	.L113
 1537              	.L114:
1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1538              		.loc 1 1365 7 is_stmt 1 view .LVU503
1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1539              		.loc 1 1365 14 is_stmt 0 view .LVU504
 1540 0042 019C     		ldr	r4, [sp, #4]
 1541 0044 013C     		subs	r4, r4, #1
 1542 0046 0194     		str	r4, [sp, #4]
 1543              	.L113:
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1544              		.loc 1 1363 10 is_stmt 1 view .LVU505
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1545              		.loc 1 1363 19 is_stmt 0 view .LVU506
 1546 0048 0198     		ldr	r0, [sp, #4]
1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1547              		.loc 1 1363 10 view .LVU507
 1548 004a 0028     		cmp	r0, #0
 1549 004c F9D1     		bne	.L114
 1550              	.L112:
1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1551              		.loc 1 1370 3 is_stmt 1 view .LVU508
1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1552              		.loc 1 1370 6 is_stmt 0 view .LVU509
ARM GAS  /tmp/ccMhywUy.s 			page 69


 1553 004e 2A68     		ldr	r2, [r5]
 1554 0050 9068     		ldr	r0, [r2, #8]
1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1555              		.loc 1 1370 5 view .LVU510
 1556 0052 10F0010F 		tst	r0, #1
 1557 0056 79D0     		beq	.L122
1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR,
 1558              		.loc 1 1375 5 is_stmt 1 view .LVU511
 1559 0058 286C     		ldr	r0, [r5, #64]
 1560 005a 20F4E060 		bic	r0, r0, #1792
 1561 005e 20F00100 		bic	r0, r0, #1
 1562 0062 40F48070 		orr	r0, r0, #256
 1563 0066 2864     		str	r0, [r5, #64]
1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1564              		.loc 1 1381 5 view .LVU512
1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1565              		.loc 1 1381 9 is_stmt 0 view .LVU513
 1566 0068 5268     		ldr	r2, [r2, #4]
1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1567              		.loc 1 1381 8 view .LVU514
 1568 006a 12F4806F 		tst	r2, #1024
 1569 006e 05D0     		beq	.L115
1383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1570              		.loc 1 1383 7 is_stmt 1 view .LVU515
 1571 0070 2A6C     		ldr	r2, [r5, #64]
 1572 0072 22F44052 		bic	r2, r2, #12288
 1573 0076 42F48052 		orr	r2, r2, #4096
 1574 007a 2A64     		str	r2, [r5, #64]
 1575              	.L115:
1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1576              		.loc 1 1387 5 view .LVU516
1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1577              		.loc 1 1387 9 is_stmt 0 view .LVU517
 1578 007c 2A6C     		ldr	r2, [r5, #64]
1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1579              		.loc 1 1387 8 view .LVU518
 1580 007e 12F4805F 		tst	r2, #4096
 1581 0082 36D0     		beq	.L116
1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1582              		.loc 1 1390 7 is_stmt 1 view .LVU519
 1583 0084 6A6C     		ldr	r2, [r5, #68]
 1584 0086 22F00602 		bic	r2, r2, #6
 1585 008a 6A64     		str	r2, [r5, #68]
 1586              	.L117:
1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1587              		.loc 1 1401 5 view .LVU520
1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1588              		.loc 1 1401 5 view .LVU521
 1589 008c 0022     		movs	r2, #0
 1590 008e 85F83C20 		strb	r2, [r5, #60]
1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1591              		.loc 1 1401 5 view .LVU522
1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1592              		.loc 1 1406 5 view .LVU523
 1593              	.LVL84:
1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1594              		.loc 1 1409 5 view .LVU524
ARM GAS  /tmp/ccMhywUy.s 			page 70


1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1595              		.loc 1 1409 9 is_stmt 0 view .LVU525
 1596 0092 AA6B     		ldr	r2, [r5, #56]
1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1597              		.loc 1 1409 40 view .LVU526
 1598 0094 3348     		ldr	r0, .L132+8
 1599 0096 D063     		str	r0, [r2, #60]
1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1600              		.loc 1 1412 5 is_stmt 1 view .LVU527
1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1601              		.loc 1 1412 9 is_stmt 0 view .LVU528
 1602 0098 AA6B     		ldr	r2, [r5, #56]
1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1603              		.loc 1 1412 44 view .LVU529
 1604 009a 3348     		ldr	r0, .L132+12
 1605 009c 1064     		str	r0, [r2, #64]
1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1606              		.loc 1 1415 5 is_stmt 1 view .LVU530
1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1607              		.loc 1 1415 9 is_stmt 0 view .LVU531
 1608 009e AA6B     		ldr	r2, [r5, #56]
1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1609              		.loc 1 1415 41 view .LVU532
 1610 00a0 3248     		ldr	r0, .L132+16
 1611 00a2 D064     		str	r0, [r2, #76]
1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1612              		.loc 1 1423 5 is_stmt 1 view .LVU533
 1613 00a4 2A68     		ldr	r2, [r5]
 1614 00a6 6FF02200 		mvn	r0, #34
 1615 00aa 1060     		str	r0, [r2]
1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1616              		.loc 1 1426 5 view .LVU534
 1617 00ac 2868     		ldr	r0, [r5]
 1618 00ae 4268     		ldr	r2, [r0, #4]
 1619 00b0 42F08062 		orr	r2, r2, #67108864
 1620 00b4 4260     		str	r2, [r0, #4]
1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1621              		.loc 1 1429 5 view .LVU535
1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1622              		.loc 1 1429 9 is_stmt 0 view .LVU536
 1623 00b6 2868     		ldr	r0, [r5]
1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1624              		.loc 1 1429 25 view .LVU537
 1625 00b8 8268     		ldr	r2, [r0, #8]
 1626 00ba 42F48072 		orr	r2, r2, #256
 1627 00be 8260     		str	r2, [r0, #8]
1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1628              		.loc 1 1432 5 is_stmt 1 view .LVU538
1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1629              		.loc 1 1432 55 is_stmt 0 view .LVU539
 1630 00c0 2868     		ldr	r0, [r5]
1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1631              		.loc 1 1432 5 view .LVU540
 1632 00c2 0A46     		mov	r2, r1
 1633 00c4 00F14C01 		add	r1, r0, #76
 1634              	.LVL85:
1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
ARM GAS  /tmp/ccMhywUy.s 			page 71


 1635              		.loc 1 1432 5 view .LVU541
 1636 00c8 A86B     		ldr	r0, [r5, #56]
 1637 00ca FFF7FEFF 		bl	HAL_DMA_Start_IT
 1638              	.LVL86:
1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1639              		.loc 1 1435 5 is_stmt 1 view .LVU542
1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1640              		.loc 1 1435 8 is_stmt 0 view .LVU543
 1641 00ce 284B     		ldr	r3, .L132+20
 1642 00d0 5B68     		ldr	r3, [r3, #4]
1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 1643              		.loc 1 1435 7 view .LVU544
 1644 00d2 13F01F0F 		tst	r3, #31
 1645 00d6 27D1     		bne	.L118
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1646              		.loc 1 1438 7 is_stmt 1 view .LVU545
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1647              		.loc 1 1438 15 is_stmt 0 view .LVU546
 1648 00d8 2B68     		ldr	r3, [r5]
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1649              		.loc 1 1438 9 view .LVU547
 1650 00da 264A     		ldr	r2, .L132+24
 1651 00dc 9342     		cmp	r3, r2
 1652 00de 11D0     		beq	.L119
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1653              		.loc 1 1438 35 discriminator 1 view .LVU548
 1654 00e0 02F58072 		add	r2, r2, #256
 1655 00e4 9342     		cmp	r3, r2
 1656 00e6 07D0     		beq	.L129
 1657              	.L120:
1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1658              		.loc 1 1439 35 view .LVU549
 1659 00e8 234A     		ldr	r2, .L132+28
 1660 00ea 9342     		cmp	r3, r2
 1661 00ec 14D0     		beq	.L130
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1662              		.loc 1 1464 10 view .LVU550
 1663 00ee 0020     		movs	r0, #0
 1664 00f0 2DE0     		b	.L111
 1665              	.LVL87:
 1666              	.L116:
1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 1667              		.loc 1 1395 7 is_stmt 1 view .LVU551
 1668 00f2 0022     		movs	r2, #0
 1669 00f4 6A64     		str	r2, [r5, #68]
 1670 00f6 C9E7     		b	.L117
 1671              	.LVL88:
 1672              	.L129:
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1673              		.loc 1 1438 72 is_stmt 0 discriminator 2 view .LVU552
 1674 00f8 02F50072 		add	r2, r2, #512
 1675 00fc 5268     		ldr	r2, [r2, #4]
1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                                   || ((hadc->Instance == ADC3) && ((ADC->CCR & ADC_CCR_MULTI_Msk) <
 1676              		.loc 1 1438 64 discriminator 2 view .LVU553
 1677 00fe 12F01F0F 		tst	r2, #31
 1678 0102 F1D1     		bne	.L120
 1679              	.L119:
ARM GAS  /tmp/ccMhywUy.s 			page 72


1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1680              		.loc 1 1443 9 is_stmt 1 view .LVU554
1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1681              		.loc 1 1443 27 is_stmt 0 view .LVU555
 1682 0104 9A68     		ldr	r2, [r3, #8]
1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         {
 1683              		.loc 1 1443 11 view .LVU556
 1684 0106 12F0405F 		tst	r2, #805306368
 1685 010a 22D1     		bne	.L125
1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 1686              		.loc 1 1446 11 is_stmt 1 view .LVU557
1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         }
 1687              		.loc 1 1446 31 is_stmt 0 view .LVU558
 1688 010c 9A68     		ldr	r2, [r3, #8]
 1689 010e 42F08042 		orr	r2, r2, #1073741824
 1690 0112 9A60     		str	r2, [r3, #8]
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1691              		.loc 1 1464 10 view .LVU559
 1692 0114 0020     		movs	r0, #0
 1693 0116 1AE0     		b	.L111
 1694              	.L130:
1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1695              		.loc 1 1439 72 discriminator 1 view .LVU560
 1696 0118 02F58072 		add	r2, r2, #256
 1697 011c 5268     		ldr	r2, [r2, #4]
1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1698              		.loc 1 1439 64 discriminator 1 view .LVU561
 1699 011e 12F0100F 		tst	r2, #16
 1700 0122 EFD0     		beq	.L119
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1701              		.loc 1 1464 10 view .LVU562
 1702 0124 0020     		movs	r0, #0
 1703 0126 12E0     		b	.L111
 1704              	.L118:
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1705              		.loc 1 1455 7 is_stmt 1 view .LVU563
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1706              		.loc 1 1455 15 is_stmt 0 view .LVU564
 1707 0128 2B68     		ldr	r3, [r5]
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1708              		.loc 1 1455 9 view .LVU565
 1709 012a 124A     		ldr	r2, .L132+24
 1710 012c 9342     		cmp	r3, r2
 1711 012e 01D0     		beq	.L131
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1712              		.loc 1 1464 10 view .LVU566
 1713 0130 0020     		movs	r0, #0
 1714 0132 0CE0     		b	.L111
 1715              	.L131:
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1716              		.loc 1 1455 54 discriminator 1 view .LVU567
 1717 0134 9A68     		ldr	r2, [r3, #8]
1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 1718              		.loc 1 1455 35 discriminator 1 view .LVU568
 1719 0136 12F0405F 		tst	r2, #805306368
 1720 013a 0CD1     		bne	.L127
1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
ARM GAS  /tmp/ccMhywUy.s 			page 73


 1721              		.loc 1 1458 11 is_stmt 1 view .LVU569
1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 1722              		.loc 1 1458 31 is_stmt 0 view .LVU570
 1723 013c 9A68     		ldr	r2, [r3, #8]
 1724 013e 42F08042 		orr	r2, r2, #1073741824
 1725 0142 9A60     		str	r2, [r3, #8]
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1726              		.loc 1 1464 10 view .LVU571
 1727 0144 0020     		movs	r0, #0
 1728 0146 02E0     		b	.L111
 1729              	.LVL89:
 1730              	.L121:
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1731              		.loc 1 1350 3 view .LVU572
 1732 0148 0220     		movs	r0, #2
 1733              	.LVL90:
1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1734              		.loc 1 1350 3 view .LVU573
 1735 014a 00E0     		b	.L111
 1736              	.LVL91:
 1737              	.L122:
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1738              		.loc 1 1464 10 view .LVU574
 1739 014c 0020     		movs	r0, #0
 1740              	.LVL92:
 1741              	.L111:
1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1742              		.loc 1 1465 1 view .LVU575
 1743 014e 03B0     		add	sp, sp, #12
 1744              	.LCFI14:
 1745              		.cfi_remember_state
 1746              		.cfi_def_cfa_offset 12
 1747              		@ sp needed
 1748 0150 30BD     		pop	{r4, r5, pc}
 1749              	.LVL93:
 1750              	.L125:
 1751              	.LCFI15:
 1752              		.cfi_restore_state
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1753              		.loc 1 1464 10 view .LVU576
 1754 0152 0020     		movs	r0, #0
 1755 0154 FBE7     		b	.L111
 1756              	.L127:
1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1757              		.loc 1 1464 10 view .LVU577
 1758 0156 0020     		movs	r0, #0
 1759 0158 F9E7     		b	.L111
 1760              	.L133:
 1761 015a 00BF     		.align	2
 1762              	.L132:
 1763 015c 00000000 		.word	SystemCoreClock
 1764 0160 83DE1B43 		.word	1125899907
 1765 0164 00000000 		.word	ADC_DMAConvCplt
 1766 0168 00000000 		.word	ADC_DMAHalfConvCplt
 1767 016c 00000000 		.word	ADC_DMAError
 1768 0170 00230140 		.word	1073816320
 1769 0174 00200140 		.word	1073815552
ARM GAS  /tmp/ccMhywUy.s 			page 74


 1770 0178 00220140 		.word	1073816064
 1771              		.cfi_endproc
 1772              	.LFE141:
 1774              		.section	.text.HAL_ADC_Stop_DMA,"ax",%progbits
 1775              		.align	1
 1776              		.global	HAL_ADC_Stop_DMA
 1777              		.syntax unified
 1778              		.thumb
 1779              		.thumb_func
 1781              	HAL_ADC_Stop_DMA:
 1782              	.LVL94:
 1783              	.LFB142:
1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 1784              		.loc 1 1474 1 is_stmt 1 view -0
 1785              		.cfi_startproc
 1786              		@ args = 0, pretend = 0, frame = 0
 1787              		@ frame_needed = 0, uses_anonymous_args = 0
1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1788              		.loc 1 1475 3 view .LVU579
1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1789              		.loc 1 1478 3 view .LVU580
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1790              		.loc 1 1481 3 view .LVU581
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1791              		.loc 1 1481 3 view .LVU582
 1792 0000 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 1793 0004 012B     		cmp	r3, #1
 1794 0006 28D0     		beq	.L137
1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_StatusTypeDef tmp_hal_status = HAL_OK;
 1795              		.loc 1 1474 1 is_stmt 0 discriminator 2 view .LVU583
 1796 0008 10B5     		push	{r4, lr}
 1797              	.LCFI16:
 1798              		.cfi_def_cfa_offset 8
 1799              		.cfi_offset 4, -8
 1800              		.cfi_offset 14, -4
 1801 000a 0446     		mov	r4, r0
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1802              		.loc 1 1481 3 is_stmt 1 discriminator 2 view .LVU584
 1803 000c 0123     		movs	r3, #1
 1804 000e 80F83C30 		strb	r3, [r0, #60]
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1805              		.loc 1 1481 3 discriminator 2 view .LVU585
1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1806              		.loc 1 1485 3 discriminator 2 view .LVU586
 1807 0012 0268     		ldr	r2, [r0]
 1808 0014 9368     		ldr	r3, [r2, #8]
 1809 0016 23F00103 		bic	r3, r3, #1
 1810 001a 9360     		str	r3, [r2, #8]
1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1811              		.loc 1 1488 3 discriminator 2 view .LVU587
1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1812              		.loc 1 1488 6 is_stmt 0 discriminator 2 view .LVU588
 1813 001c 0368     		ldr	r3, [r0]
 1814 001e 9A68     		ldr	r2, [r3, #8]
1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 1815              		.loc 1 1488 5 discriminator 2 view .LVU589
 1816 0020 12F0010F 		tst	r2, #1
ARM GAS  /tmp/ccMhywUy.s 			page 75


 1817 0024 04D0     		beq	.L143
1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1818              		.loc 1 1475 21 view .LVU590
 1819 0026 0020     		movs	r0, #0
 1820              	.LVL95:
 1821              	.L136:
1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1822              		.loc 1 1507 3 is_stmt 1 view .LVU591
1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1823              		.loc 1 1507 3 view .LVU592
 1824 0028 0023     		movs	r3, #0
 1825 002a 84F83C30 		strb	r3, [r4, #60]
1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1826              		.loc 1 1507 3 view .LVU593
1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1827              		.loc 1 1510 3 view .LVU594
1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1828              		.loc 1 1511 1 is_stmt 0 view .LVU595
 1829 002e 10BD     		pop	{r4, pc}
 1830              	.LVL96:
 1831              	.L143:
1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1832              		.loc 1 1491 5 is_stmt 1 view .LVU596
1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1833              		.loc 1 1491 25 is_stmt 0 view .LVU597
 1834 0030 9A68     		ldr	r2, [r3, #8]
 1835 0032 22F48072 		bic	r2, r2, #256
 1836 0036 9A60     		str	r2, [r3, #8]
1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1837              		.loc 1 1495 5 is_stmt 1 view .LVU598
1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1838              		.loc 1 1495 22 is_stmt 0 view .LVU599
 1839 0038 806B     		ldr	r0, [r0, #56]
 1840              	.LVL97:
1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1841              		.loc 1 1495 22 view .LVU600
 1842 003a FFF7FEFF 		bl	HAL_DMA_Abort
 1843              	.LVL98:
1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 1844              		.loc 1 1498 5 is_stmt 1 view .LVU601
 1845 003e 2268     		ldr	r2, [r4]
 1846 0040 5368     		ldr	r3, [r2, #4]
 1847 0042 23F08063 		bic	r3, r3, #67108864
 1848 0046 5360     		str	r3, [r2, #4]
1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****                       HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY,
 1849              		.loc 1 1501 5 view .LVU602
 1850 0048 236C     		ldr	r3, [r4, #64]
 1851 004a 23F48853 		bic	r3, r3, #4352
 1852 004e 23F00103 		bic	r3, r3, #1
 1853 0052 43F00103 		orr	r3, r3, #1
 1854 0056 2364     		str	r3, [r4, #64]
 1855 0058 E6E7     		b	.L136
 1856              	.LVL99:
 1857              	.L137:
 1858              	.LCFI17:
 1859              		.cfi_def_cfa_offset 0
 1860              		.cfi_restore 4
ARM GAS  /tmp/ccMhywUy.s 			page 76


 1861              		.cfi_restore 14
1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 1862              		.loc 1 1481 3 is_stmt 0 view .LVU603
 1863 005a 0220     		movs	r0, #2
 1864              	.LVL100:
1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1865              		.loc 1 1511 1 view .LVU604
 1866 005c 7047     		bx	lr
 1867              		.cfi_endproc
 1868              	.LFE142:
 1870              		.section	.text.HAL_ADC_GetValue,"ax",%progbits
 1871              		.align	1
 1872              		.global	HAL_ADC_GetValue
 1873              		.syntax unified
 1874              		.thumb
 1875              		.thumb_func
 1877              	HAL_ADC_GetValue:
 1878              	.LVL101:
 1879              	.LFB143:
1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return the selected ADC converted value */ 
 1880              		.loc 1 1520 1 is_stmt 1 view -0
 1881              		.cfi_startproc
 1882              		@ args = 0, pretend = 0, frame = 0
 1883              		@ frame_needed = 0, uses_anonymous_args = 0
 1884              		@ link register save eliminated.
1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1885              		.loc 1 1522 3 view .LVU606
1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1886              		.loc 1 1522 14 is_stmt 0 view .LVU607
 1887 0000 0368     		ldr	r3, [r0]
1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1888              		.loc 1 1522 24 view .LVU608
 1889 0002 D86C     		ldr	r0, [r3, #76]
 1890              	.LVL102:
1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1891              		.loc 1 1523 1 view .LVU609
 1892 0004 7047     		bx	lr
 1893              		.cfi_endproc
 1894              	.LFE143:
 1896              		.section	.text.HAL_ADC_ConvCpltCallback,"ax",%progbits
 1897              		.align	1
 1898              		.weak	HAL_ADC_ConvCpltCallback
 1899              		.syntax unified
 1900              		.thumb
 1901              		.thumb_func
 1903              	HAL_ADC_ConvCpltCallback:
 1904              	.LVL103:
 1905              	.LFB144:
1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 1906              		.loc 1 1532 1 is_stmt 1 view -0
 1907              		.cfi_startproc
 1908              		@ args = 0, pretend = 0, frame = 0
 1909              		@ frame_needed = 0, uses_anonymous_args = 0
 1910              		@ link register save eliminated.
1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 1911              		.loc 1 1534 3 view .LVU611
1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 77


 1912              		.loc 1 1538 1 is_stmt 0 view .LVU612
 1913 0000 7047     		bx	lr
 1914              		.cfi_endproc
 1915              	.LFE144:
 1917              		.section	.text.HAL_ADC_ConvHalfCpltCallback,"ax",%progbits
 1918              		.align	1
 1919              		.weak	HAL_ADC_ConvHalfCpltCallback
 1920              		.syntax unified
 1921              		.thumb
 1922              		.thumb_func
 1924              	HAL_ADC_ConvHalfCpltCallback:
 1925              	.LVL104:
 1926              	.LFB145:
1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 1927              		.loc 1 1547 1 is_stmt 1 view -0
 1928              		.cfi_startproc
 1929              		@ args = 0, pretend = 0, frame = 0
 1930              		@ frame_needed = 0, uses_anonymous_args = 0
 1931              		@ link register save eliminated.
1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 1932              		.loc 1 1549 3 view .LVU614
1553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1933              		.loc 1 1553 1 is_stmt 0 view .LVU615
 1934 0000 7047     		bx	lr
 1935              		.cfi_endproc
 1936              	.LFE145:
 1938              		.section	.text.ADC_DMAHalfConvCplt,"ax",%progbits
 1939              		.align	1
 1940              		.syntax unified
 1941              		.thumb
 1942              		.thumb_func
 1944              	ADC_DMAHalfConvCplt:
 1945              	.LVL105:
 1946              	.LFB154:
1938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
1939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  DMA transfer complete callback. 
1941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hdma pointer to a DMA_HandleTypeDef structure that contains
1942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                the configuration information for the specified DMA module.
1943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
1945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAConvCplt(DMA_HandleTypeDef *hdma)   
1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Retrieve ADC handle corresponding to current DMA handle */
1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent;
1949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Update state machine on conversion status if not in error state */
1951: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))
1952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Update ADC state machine */
1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC);
1955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Determine whether any further conversion upcoming on group regular   */
1957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* by external trigger, continuous mode or scan sequence on going.      */
1958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Note: On STM32F4, there is no independent flag of end of sequence.   */
1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       The test of scan sequence on going is done either with scan    */
1960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       sequence disabled or with end of conversion flag set to        */
ARM GAS  /tmp/ccMhywUy.s 			page 78


1961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /*       of end of sequence.                                            */
1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if(ADC_IS_SOFTWARE_START_REGULAR(hadc)                   &&
1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
1966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Disable ADC end of single conversion interrupt on group regular */
1968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Note: Overrun interrupt was enabled with EOC interrupt in          */
1969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* HAL_ADC_Start_IT(), but is not disabled here because can be used   */
1970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* by overrun IRQ process below.                                      */
1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC);
1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Set ADC state */
1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY);   
1975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY))
1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         SET_BIT(hadc->State, HAL_ADC_STATE_READY);
1979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
1980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
1981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
1982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     /* Conversion complete callback */
1983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     hadc->ConvCpltCallback(hadc);
1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     HAL_ADC_ConvCpltCallback(hadc);
1987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   else /* DMA and-or internal error occurred */
1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     if ((hadc->State & HAL_ADC_STATE_ERROR_INTERNAL) != 0UL)
1992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
1993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Call HAL ADC Error Callback function */
1994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->ErrorCallback(hadc);
1996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       HAL_ADC_ErrorCallback(hadc);
1998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 	else
2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 	{
2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       /* Call DMA error callback */
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       hadc->DMA_Handle->XferErrorCallback(hdma);
2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
2005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
2007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
2009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  DMA half transfer complete callback. 
2010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hdma pointer to a DMA_HandleTypeDef structure that contains
2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                the configuration information for the specified DMA module.
2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAHalfConvCplt(DMA_HandleTypeDef *hdma)   
2015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 1947              		.loc 1 2015 1 is_stmt 1 view -0
 1948              		.cfi_startproc
ARM GAS  /tmp/ccMhywUy.s 			page 79


 1949              		@ args = 0, pretend = 0, frame = 0
 1950              		@ frame_needed = 0, uses_anonymous_args = 0
 1951              		.loc 1 2015 1 is_stmt 0 view .LVU617
 1952 0000 08B5     		push	{r3, lr}
 1953              	.LCFI18:
 1954              		.cfi_def_cfa_offset 8
 1955              		.cfi_offset 3, -8
 1956              		.cfi_offset 14, -4
2016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent;
 1957              		.loc 1 2016 3 is_stmt 1 view .LVU618
 1958              	.LVL106:
2017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    /* Half conversion callback */
2018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->ConvHalfCpltCallback(hadc);
2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
2021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_ADC_ConvHalfCpltCallback(hadc);
 1959              		.loc 1 2021 3 view .LVU619
 1960 0002 806B     		ldr	r0, [r0, #56]
 1961              	.LVL107:
 1962              		.loc 1 2021 3 is_stmt 0 view .LVU620
 1963 0004 FFF7FEFF 		bl	HAL_ADC_ConvHalfCpltCallback
 1964              	.LVL108:
2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 1965              		.loc 1 2023 1 view .LVU621
 1966 0008 08BD     		pop	{r3, pc}
 1967              		.cfi_endproc
 1968              	.LFE154:
 1970              		.section	.text.HAL_ADC_LevelOutOfWindowCallback,"ax",%progbits
 1971              		.align	1
 1972              		.weak	HAL_ADC_LevelOutOfWindowCallback
 1973              		.syntax unified
 1974              		.thumb
 1975              		.thumb_func
 1977              	HAL_ADC_LevelOutOfWindowCallback:
 1978              	.LVL109:
 1979              	.LFB146:
1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 1980              		.loc 1 1562 1 is_stmt 1 view -0
 1981              		.cfi_startproc
 1982              		@ args = 0, pretend = 0, frame = 0
 1983              		@ frame_needed = 0, uses_anonymous_args = 0
 1984              		@ link register save eliminated.
1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 1985              		.loc 1 1564 3 view .LVU623
1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 1986              		.loc 1 1568 1 is_stmt 0 view .LVU624
 1987 0000 7047     		bx	lr
 1988              		.cfi_endproc
 1989              	.LFE146:
 1991              		.section	.text.HAL_ADC_ErrorCallback,"ax",%progbits
 1992              		.align	1
 1993              		.weak	HAL_ADC_ErrorCallback
 1994              		.syntax unified
 1995              		.thumb
 1996              		.thumb_func
 1998              	HAL_ADC_ErrorCallback:
ARM GAS  /tmp/ccMhywUy.s 			page 80


 1999              	.LVL110:
 2000              	.LFB147:
1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Prevent unused argument(s) compilation warning */
 2001              		.loc 1 1583 1 is_stmt 1 view -0
 2002              		.cfi_startproc
 2003              		@ args = 0, pretend = 0, frame = 0
 2004              		@ frame_needed = 0, uses_anonymous_args = 0
 2005              		@ link register save eliminated.
1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* NOTE : This function Should not be modified, when the callback is needed,
 2006              		.loc 1 1585 3 view .LVU626
1589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2007              		.loc 1 1589 1 is_stmt 0 view .LVU627
 2008 0000 7047     		bx	lr
 2009              		.cfi_endproc
 2010              	.LFE147:
 2012              		.section	.text.HAL_ADC_IRQHandler,"ax",%progbits
 2013              		.align	1
 2014              		.global	HAL_ADC_IRQHandler
 2015              		.syntax unified
 2016              		.thumb
 2017              		.thumb_func
 2019              	HAL_ADC_IRQHandler:
 2020              	.LVL111:
 2021              	.LFB140:
1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tmp1 = 0U, tmp2 = 0U;
 2022              		.loc 1 1179 1 is_stmt 1 view -0
 2023              		.cfi_startproc
 2024              		@ args = 0, pretend = 0, frame = 0
 2025              		@ frame_needed = 0, uses_anonymous_args = 0
1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   uint32_t tmp1 = 0U, tmp2 = 0U;
 2026              		.loc 1 1179 1 is_stmt 0 view .LVU629
 2027 0000 38B5     		push	{r3, r4, r5, lr}
 2028              	.LCFI19:
 2029              		.cfi_def_cfa_offset 16
 2030              		.cfi_offset 3, -16
 2031              		.cfi_offset 4, -12
 2032              		.cfi_offset 5, -8
 2033              		.cfi_offset 14, -4
 2034 0002 0446     		mov	r4, r0
1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2035              		.loc 1 1180 3 is_stmt 1 view .LVU630
 2036              	.LVL112:
1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_LENGTH(hadc->Init.NbrOfConversion));
 2037              		.loc 1 1183 3 view .LVU631
1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_EOCSelection(hadc->Init.EOCSelection));
 2038              		.loc 1 1184 3 view .LVU632
1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2039              		.loc 1 1185 3 view .LVU633
1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_EOC);
 2040              		.loc 1 1187 3 view .LVU634
1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_EOC);
 2041              		.loc 1 1187 10 is_stmt 0 view .LVU635
 2042 0004 0268     		ldr	r2, [r0]
 2043 0006 1168     		ldr	r1, [r2]
 2044              	.LVL113:
1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for regular channels */
 2045              		.loc 1 1188 3 is_stmt 1 view .LVU636
ARM GAS  /tmp/ccMhywUy.s 			page 81


1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for regular channels */
 2046              		.loc 1 1188 10 is_stmt 0 view .LVU637
 2047 0008 5368     		ldr	r3, [r2, #4]
 2048              	.LVL114:
1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2049              		.loc 1 1190 3 is_stmt 1 view .LVU638
1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2050              		.loc 1 1190 5 is_stmt 0 view .LVU639
 2051 000a 11F0020F 		tst	r1, #2
 2052 000e 2FD0     		beq	.L152
 2053 0010 03F02003 		and	r3, r3, #32
 2054              	.LVL115:
1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2055              		.loc 1 1190 11 discriminator 1 view .LVU640
 2056 0014 63B3     		cbz	r3, .L152
1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2057              		.loc 1 1193 5 is_stmt 1 view .LVU641
1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2058              		.loc 1 1193 9 is_stmt 0 view .LVU642
 2059 0016 036C     		ldr	r3, [r0, #64]
 2060              	.LVL116:
1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2061              		.loc 1 1193 8 view .LVU643
 2062 0018 13F0100F 		tst	r3, #16
 2063 001c 03D1     		bne	.L153
1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2064              		.loc 1 1196 7 is_stmt 1 view .LVU644
 2065 001e 036C     		ldr	r3, [r0, #64]
 2066 0020 43F40073 		orr	r3, r3, #512
 2067 0024 0364     		str	r3, [r0, #64]
 2068              	.L153:
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2069              		.loc 1 1205 5 view .LVU645
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2070              		.loc 1 1205 8 is_stmt 0 view .LVU646
 2071 0026 9368     		ldr	r3, [r2, #8]
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2072              		.loc 1 1205 7 view .LVU647
 2073 0028 13F0405F 		tst	r3, #805306368
 2074 002c 19D1     		bne	.L154
1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
 2075              		.loc 1 1206 19 discriminator 1 view .LVU648
 2076 002e 237E     		ldrb	r3, [r4, #24]	@ zero_extendqisi2
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2077              		.loc 1 1205 62 discriminator 1 view .LVU649
 2078 0030 BBB9     		cbnz	r3, .L154
1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 2079              		.loc 1 1207 9 view .LVU650
 2080 0032 D36A     		ldr	r3, [r2, #44]
1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
 2081              		.loc 1 1206 62 view .LVU651
 2082 0034 13F4700F 		tst	r3, #15728640
 2083 0038 03D0     		beq	.L155
1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2084              		.loc 1 1208 9 view .LVU652
 2085 003a 9368     		ldr	r3, [r2, #8]
1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
ARM GAS  /tmp/ccMhywUy.s 			page 82


 2086              		.loc 1 1207 58 view .LVU653
 2087 003c 13F4806F 		tst	r3, #1024
 2088 0040 0FD1     		bne	.L154
 2089              	.L155:
1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2090              		.loc 1 1214 7 is_stmt 1 view .LVU654
 2091 0042 5368     		ldr	r3, [r2, #4]
 2092 0044 23F02003 		bic	r3, r3, #32
 2093 0048 5360     		str	r3, [r2, #4]
1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2094              		.loc 1 1217 7 view .LVU655
 2095 004a 236C     		ldr	r3, [r4, #64]
 2096 004c 23F48073 		bic	r3, r3, #256
 2097 0050 2364     		str	r3, [r4, #64]
1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2098              		.loc 1 1219 7 view .LVU656
1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2099              		.loc 1 1219 11 is_stmt 0 view .LVU657
 2100 0052 236C     		ldr	r3, [r4, #64]
1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2101              		.loc 1 1219 10 view .LVU658
 2102 0054 13F4805F 		tst	r3, #4096
 2103 0058 03D1     		bne	.L154
1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 2104              		.loc 1 1221 9 is_stmt 1 view .LVU659
 2105 005a 236C     		ldr	r3, [r4, #64]
 2106 005c 43F00103 		orr	r3, r3, #1
 2107 0060 2364     		str	r3, [r4, #64]
 2108              	.L154:
1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2109              		.loc 1 1229 5 view .LVU660
 2110 0062 2046     		mov	r0, r4
 2111              	.LVL117:
1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2112              		.loc 1 1229 5 is_stmt 0 view .LVU661
 2113 0064 FFF7FEFF 		bl	HAL_ADC_ConvCpltCallback
 2114              	.LVL118:
1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2115              		.loc 1 1233 5 is_stmt 1 view .LVU662
 2116 0068 2368     		ldr	r3, [r4]
 2117 006a 6FF01202 		mvn	r2, #18
 2118 006e 1A60     		str	r2, [r3]
 2119              	.L152:
1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_JEOC);                               
 2120              		.loc 1 1236 3 view .LVU663
1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_JEOC);                               
 2121              		.loc 1 1236 10 is_stmt 0 view .LVU664
 2122 0070 2368     		ldr	r3, [r4]
 2123 0072 1968     		ldr	r1, [r3]
 2124              	.LVL119:
1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for injected channels */
 2125              		.loc 1 1237 3 is_stmt 1 view .LVU665
1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check End of conversion flag for injected channels */
 2126              		.loc 1 1237 10 is_stmt 0 view .LVU666
 2127 0074 5A68     		ldr	r2, [r3, #4]
 2128 0076 02F08002 		and	r2, r2, #128
 2129              	.LVL120:
ARM GAS  /tmp/ccMhywUy.s 			page 83


1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2130              		.loc 1 1239 3 is_stmt 1 view .LVU667
1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2131              		.loc 1 1239 5 is_stmt 0 view .LVU668
 2132 007a 11F0040F 		tst	r1, #4
 2133 007e 36D0     		beq	.L156
1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2134              		.loc 1 1239 11 discriminator 1 view .LVU669
 2135 0080 002A     		cmp	r2, #0
 2136 0082 34D0     		beq	.L156
1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2137              		.loc 1 1242 5 is_stmt 1 view .LVU670
1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2138              		.loc 1 1242 9 is_stmt 0 view .LVU671
 2139 0084 226C     		ldr	r2, [r4, #64]
 2140              	.LVL121:
1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2141              		.loc 1 1242 8 view .LVU672
 2142 0086 12F0100F 		tst	r2, #16
 2143 008a 03D1     		bne	.L157
1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2144              		.loc 1 1245 7 is_stmt 1 view .LVU673
 2145 008c 226C     		ldr	r2, [r4, #64]
 2146 008e 42F40052 		orr	r2, r2, #8192
 2147 0092 2264     		str	r2, [r4, #64]
 2148              	.L157:
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL)  ||
 2149              		.loc 1 1252 5 view .LVU674
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL)  ||
 2150              		.loc 1 1252 8 is_stmt 0 view .LVU675
 2151 0094 9A68     		ldr	r2, [r3, #8]
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL)  ||
 2152              		.loc 1 1252 7 view .LVU676
 2153 0096 12F4401F 		tst	r2, #3145728
 2154 009a 21D1     		bne	.L158
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)    ) &&
 2155              		.loc 1 1253 9 discriminator 1 view .LVU677
 2156 009c 9A6B     		ldr	r2, [r3, #56]
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL)  ||
 2157              		.loc 1 1252 64 discriminator 1 view .LVU678
 2158 009e 12F4401F 		tst	r2, #3145728
 2159 00a2 03D0     		beq	.L159
1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) &&
 2160              		.loc 1 1254 9 view .LVU679
 2161 00a4 9A68     		ldr	r2, [r3, #8]
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)    ) &&
 2162              		.loc 1 1253 60 view .LVU680
 2163 00a6 12F4806F 		tst	r2, #1024
 2164 00aa 19D1     		bne	.L158
 2165              	.L159:
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (ADC_IS_SOFTWARE_START_REGULAR(hadc)       &&
 2166              		.loc 1 1255 9 view .LVU681
 2167 00ac 5A68     		ldr	r2, [r3, #4]
1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) &&
 2168              		.loc 1 1254 64 view .LVU682
 2169 00ae 12F4806F 		tst	r2, #1024
 2170 00b2 15D1     		bne	.L158
ARM GAS  /tmp/ccMhywUy.s 			page 84


1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (hadc->Init.ContinuousConvMode == DISABLE)   )       )   )
 2171              		.loc 1 1256 10 view .LVU683
 2172 00b4 9A68     		ldr	r2, [r3, #8]
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (ADC_IS_SOFTWARE_START_REGULAR(hadc)       &&
 2173              		.loc 1 1255 60 view .LVU684
 2174 00b6 12F0405F 		tst	r2, #805306368
 2175 00ba 11D1     		bne	.L158
1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2176              		.loc 1 1257 20 view .LVU685
 2177 00bc 227E     		ldrb	r2, [r4, #24]	@ zero_extendqisi2
1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         (hadc->Init.ContinuousConvMode == DISABLE)   )       )   )
 2178              		.loc 1 1256 52 view .LVU686
 2179 00be 7AB9     		cbnz	r2, .L158
1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2180              		.loc 1 1260 7 is_stmt 1 view .LVU687
 2181 00c0 5A68     		ldr	r2, [r3, #4]
 2182 00c2 22F08002 		bic	r2, r2, #128
 2183 00c6 5A60     		str	r2, [r3, #4]
1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2184              		.loc 1 1263 7 view .LVU688
 2185 00c8 236C     		ldr	r3, [r4, #64]
 2186 00ca 23F48053 		bic	r3, r3, #4096
 2187 00ce 2364     		str	r3, [r4, #64]
1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       { 
 2188              		.loc 1 1265 7 view .LVU689
1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       { 
 2189              		.loc 1 1265 11 is_stmt 0 view .LVU690
 2190 00d0 236C     		ldr	r3, [r4, #64]
1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       { 
 2191              		.loc 1 1265 10 view .LVU691
 2192 00d2 13F4807F 		tst	r3, #256
 2193 00d6 03D1     		bne	.L158
1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 2194              		.loc 1 1267 9 is_stmt 1 view .LVU692
 2195 00d8 236C     		ldr	r3, [r4, #64]
 2196 00da 43F00103 		orr	r3, r3, #1
 2197 00de 2364     		str	r3, [r4, #64]
 2198              	.L158:
1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2199              		.loc 1 1276 7 view .LVU693
 2200 00e0 2046     		mov	r0, r4
 2201 00e2 FFF7FEFF 		bl	HAL_ADCEx_InjectedConvCpltCallback
 2202              	.LVL122:
1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2203              		.loc 1 1280 5 view .LVU694
 2204 00e6 2368     		ldr	r3, [r4]
 2205 00e8 6FF00C02 		mvn	r2, #12
 2206 00ec 1A60     		str	r2, [r3]
 2207              	.L156:
1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_AWD);                          
 2208              		.loc 1 1283 3 view .LVU695
1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_AWD);                          
 2209              		.loc 1 1283 10 is_stmt 0 view .LVU696
 2210 00ee 2268     		ldr	r2, [r4]
 2211 00f0 1168     		ldr	r1, [r2]
 2212              	.LVL123:
1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Analog watchdog flag */
ARM GAS  /tmp/ccMhywUy.s 			page 85


 2213              		.loc 1 1284 3 is_stmt 1 view .LVU697
1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Analog watchdog flag */
 2214              		.loc 1 1284 10 is_stmt 0 view .LVU698
 2215 00f2 5368     		ldr	r3, [r2, #4]
 2216 00f4 03F04003 		and	r3, r3, #64
 2217              	.LVL124:
1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2218              		.loc 1 1286 3 is_stmt 1 view .LVU699
1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2219              		.loc 1 1286 5 is_stmt 0 view .LVU700
 2220 00f8 11F0010F 		tst	r1, #1
 2221 00fc 04D0     		beq	.L160
1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2222              		.loc 1 1286 11 discriminator 1 view .LVU701
 2223 00fe 1BB1     		cbz	r3, .L160
1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2224              		.loc 1 1288 5 is_stmt 1 view .LVU702
1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2225              		.loc 1 1288 8 is_stmt 0 view .LVU703
 2226 0100 1368     		ldr	r3, [r2]
 2227              	.LVL125:
1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2228              		.loc 1 1288 7 view .LVU704
 2229 0102 13F0010F 		tst	r3, #1
 2230 0106 09D1     		bne	.L163
 2231              	.LVL126:
 2232              	.L160:
1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_OVR);
 2233              		.loc 1 1305 3 is_stmt 1 view .LVU705
1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   tmp2 = __HAL_ADC_GET_IT_SOURCE(hadc, ADC_IT_OVR);
 2234              		.loc 1 1305 10 is_stmt 0 view .LVU706
 2235 0108 2268     		ldr	r2, [r4]
 2236 010a 1168     		ldr	r1, [r2]
 2237              	.LVL127:
1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Overrun flag */
 2238              		.loc 1 1306 3 is_stmt 1 view .LVU707
1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Check Overrun flag */
 2239              		.loc 1 1306 10 is_stmt 0 view .LVU708
 2240 010c 5368     		ldr	r3, [r2, #4]
 2241 010e 03F08063 		and	r3, r3, #67108864
 2242              	.LVL128:
1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2243              		.loc 1 1308 3 is_stmt 1 view .LVU709
1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2244              		.loc 1 1308 5 is_stmt 0 view .LVU710
 2245 0112 11F0200F 		tst	r1, #32
 2246 0116 00D0     		beq	.L151
1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2247              		.loc 1 1308 11 discriminator 1 view .LVU711
 2248 0118 63B9     		cbnz	r3, .L164
 2249              	.LVL129:
 2250              	.L151:
1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2251              		.loc 1 1330 1 view .LVU712
 2252 011a 38BD     		pop	{r3, r4, r5, pc}
 2253              	.LVL130:
 2254              	.L163:
ARM GAS  /tmp/ccMhywUy.s 			page 86


1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2255              		.loc 1 1291 7 is_stmt 1 view .LVU713
 2256 011c 236C     		ldr	r3, [r4, #64]
 2257 011e 43F48033 		orr	r3, r3, #65536
 2258 0122 2364     		str	r3, [r4, #64]
1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2259              		.loc 1 1297 7 view .LVU714
 2260 0124 2046     		mov	r0, r4
 2261 0126 FFF7FEFF 		bl	HAL_ADC_LevelOutOfWindowCallback
 2262              	.LVL131:
1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2263              		.loc 1 1301 7 view .LVU715
 2264 012a 2368     		ldr	r3, [r4]
 2265 012c 6FF00102 		mvn	r2, #1
 2266 0130 1A60     		str	r2, [r3]
 2267 0132 E9E7     		b	.L160
 2268              	.LVL132:
 2269              	.L164:
1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2270              		.loc 1 1315 5 view .LVU716
 2271 0134 636C     		ldr	r3, [r4, #68]
 2272              	.LVL133:
1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2273              		.loc 1 1315 5 is_stmt 0 view .LVU717
 2274 0136 43F00203 		orr	r3, r3, #2
 2275 013a 6364     		str	r3, [r4, #68]
1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2276              		.loc 1 1318 5 is_stmt 1 view .LVU718
 2277 013c 6FF02005 		mvn	r5, #32
 2278 0140 1560     		str	r5, [r2]
1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2279              		.loc 1 1324 7 view .LVU719
 2280 0142 2046     		mov	r0, r4
 2281 0144 FFF7FEFF 		bl	HAL_ADC_ErrorCallback
 2282              	.LVL134:
1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2283              		.loc 1 1328 5 view .LVU720
 2284 0148 2368     		ldr	r3, [r4]
 2285 014a 1D60     		str	r5, [r3]
1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2286              		.loc 1 1330 1 is_stmt 0 view .LVU721
 2287 014c E5E7     		b	.L151
 2288              		.cfi_endproc
 2289              	.LFE140:
 2291              		.section	.text.ADC_DMAError,"ax",%progbits
 2292              		.align	1
 2293              		.syntax unified
 2294              		.thumb
 2295              		.thumb_func
 2297              	ADC_DMAError:
 2298              	.LVL135:
 2299              	.LFB155:
2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** /**
2026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @brief  DMA error callback 
2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @param  hdma pointer to a DMA_HandleTypeDef structure that contains
2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   *                the configuration information for the specified DMA module.
ARM GAS  /tmp/ccMhywUy.s 			page 87


2029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   * @retval None
2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   */
2031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** static void ADC_DMAError(DMA_HandleTypeDef *hdma)   
2032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** {
 2300              		.loc 1 2032 1 is_stmt 1 view -0
 2301              		.cfi_startproc
 2302              		@ args = 0, pretend = 0, frame = 0
 2303              		@ frame_needed = 0, uses_anonymous_args = 0
 2304              		.loc 1 2032 1 is_stmt 0 view .LVU723
 2305 0000 08B5     		push	{r3, lr}
 2306              	.LCFI20:
 2307              		.cfi_def_cfa_offset 8
 2308              		.cfi_offset 3, -8
 2309              		.cfi_offset 14, -4
2033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent;
 2310              		.loc 1 2033 3 is_stmt 1 view .LVU724
 2311              		.loc 1 2033 22 is_stmt 0 view .LVU725
 2312 0002 806B     		ldr	r0, [r0, #56]
 2313              	.LVL136:
2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->State= HAL_ADC_STATE_ERROR_DMA;
 2314              		.loc 1 2034 3 is_stmt 1 view .LVU726
 2315              		.loc 1 2034 14 is_stmt 0 view .LVU727
 2316 0004 4023     		movs	r3, #64
 2317 0006 0364     		str	r3, [r0, #64]
2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Set ADC error code to DMA error */
2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->ErrorCode |= HAL_ADC_ERROR_DMA;
 2318              		.loc 1 2036 3 is_stmt 1 view .LVU728
 2319              		.loc 1 2036 19 is_stmt 0 view .LVU729
 2320 0008 436C     		ldr	r3, [r0, #68]
 2321 000a 43F00403 		orr	r3, r3, #4
 2322 000e 4364     		str	r3, [r0, #68]
2037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****    /* Error callback */
2038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #if (USE_HAL_ADC_REGISTER_CALLBACKS == 1)
2039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   hadc->ErrorCallback(hadc);
2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #else
2041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   HAL_ADC_ErrorCallback(hadc);
 2323              		.loc 1 2041 3 is_stmt 1 view .LVU730
 2324 0010 FFF7FEFF 		bl	HAL_ADC_ErrorCallback
 2325              	.LVL137:
2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
2043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2326              		.loc 1 2043 1 is_stmt 0 view .LVU731
 2327 0014 08BD     		pop	{r3, pc}
 2328              		.cfi_endproc
 2329              	.LFE155:
 2331              		.section	.text.ADC_DMAConvCplt,"ax",%progbits
 2332              		.align	1
 2333              		.syntax unified
 2334              		.thumb
 2335              		.thumb_func
 2337              	ADC_DMAConvCplt:
 2338              	.LVL138:
 2339              	.LFB153:
1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Retrieve ADC handle corresponding to current DMA handle */
 2340              		.loc 1 1946 1 is_stmt 1 view -0
 2341              		.cfi_startproc
 2342              		@ args = 0, pretend = 0, frame = 0
ARM GAS  /tmp/ccMhywUy.s 			page 88


 2343              		@ frame_needed = 0, uses_anonymous_args = 0
1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Retrieve ADC handle corresponding to current DMA handle */
 2344              		.loc 1 1946 1 is_stmt 0 view .LVU733
 2345 0000 08B5     		push	{r3, lr}
 2346              	.LCFI21:
 2347              		.cfi_def_cfa_offset 8
 2348              		.cfi_offset 3, -8
 2349              		.cfi_offset 14, -4
 2350 0002 0346     		mov	r3, r0
1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2351              		.loc 1 1948 3 is_stmt 1 view .LVU734
1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2352              		.loc 1 1948 22 is_stmt 0 view .LVU735
 2353 0004 806B     		ldr	r0, [r0, #56]
 2354              	.LVL139:
1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2355              		.loc 1 1951 3 is_stmt 1 view .LVU736
1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2356              		.loc 1 1951 7 is_stmt 0 view .LVU737
 2357 0006 026C     		ldr	r2, [r0, #64]
1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2358              		.loc 1 1951 6 view .LVU738
 2359 0008 12F0500F 		tst	r2, #80
 2360 000c 25D1     		bne	.L168
1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2361              		.loc 1 1954 5 is_stmt 1 view .LVU739
 2362 000e 036C     		ldr	r3, [r0, #64]
 2363              	.LVL140:
1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2364              		.loc 1 1954 5 is_stmt 0 view .LVU740
 2365 0010 43F40073 		orr	r3, r3, #512
 2366 0014 0364     		str	r3, [r0, #64]
1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2367              		.loc 1 1962 5 is_stmt 1 view .LVU741
1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2368              		.loc 1 1962 8 is_stmt 0 view .LVU742
 2369 0016 0368     		ldr	r3, [r0]
 2370 0018 9A68     		ldr	r2, [r3, #8]
1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2371              		.loc 1 1962 7 view .LVU743
 2372 001a 12F0405F 		tst	r2, #805306368
 2373 001e 19D1     		bne	.L169
1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
 2374              		.loc 1 1963 19 discriminator 1 view .LVU744
 2375 0020 027E     		ldrb	r2, [r0, #24]	@ zero_extendqisi2
1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (hadc->Init.ContinuousConvMode == DISABLE)            &&
 2376              		.loc 1 1962 62 discriminator 1 view .LVU745
 2377 0022 BAB9     		cbnz	r2, .L169
1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 2378              		.loc 1 1964 9 view .LVU746
 2379 0024 DA6A     		ldr	r2, [r3, #44]
1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****        (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 
 2380              		.loc 1 1963 62 view .LVU747
 2381 0026 12F4700F 		tst	r2, #15728640
 2382 002a 03D0     		beq	.L170
1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2383              		.loc 1 1965 9 view .LVU748
ARM GAS  /tmp/ccMhywUy.s 			page 89


 2384 002c 9A68     		ldr	r2, [r3, #8]
1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****         HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)  )   )
 2385              		.loc 1 1964 58 view .LVU749
 2386 002e 12F4806F 		tst	r2, #1024
 2387 0032 0FD1     		bne	.L169
 2388              	.L170:
1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2389              		.loc 1 1971 7 is_stmt 1 view .LVU750
 2390 0034 5A68     		ldr	r2, [r3, #4]
 2391 0036 22F02002 		bic	r2, r2, #32
 2392 003a 5A60     		str	r2, [r3, #4]
1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       
 2393              		.loc 1 1974 7 view .LVU751
 2394 003c 036C     		ldr	r3, [r0, #64]
 2395 003e 23F48073 		bic	r3, r3, #256
 2396 0042 0364     		str	r3, [r0, #64]
1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2397              		.loc 1 1976 7 view .LVU752
1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2398              		.loc 1 1976 11 is_stmt 0 view .LVU753
 2399 0044 036C     		ldr	r3, [r0, #64]
1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2400              		.loc 1 1976 10 view .LVU754
 2401 0046 13F4805F 		tst	r3, #4096
 2402 004a 03D1     		bne	.L169
1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 2403              		.loc 1 1978 9 is_stmt 1 view .LVU755
 2404 004c 036C     		ldr	r3, [r0, #64]
 2405 004e 43F00103 		orr	r3, r3, #1
 2406 0052 0364     		str	r3, [r0, #64]
 2407              	.L169:
1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2408              		.loc 1 1986 5 view .LVU756
 2409 0054 FFF7FEFF 		bl	HAL_ADC_ConvCpltCallback
 2410              	.LVL141:
 2411              	.L167:
2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2412              		.loc 1 2006 1 is_stmt 0 view .LVU757
 2413 0058 08BD     		pop	{r3, pc}
 2414              	.LVL142:
 2415              	.L168:
1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2416              		.loc 1 1991 5 is_stmt 1 view .LVU758
1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2417              		.loc 1 1991 14 is_stmt 0 view .LVU759
 2418 005a 026C     		ldr	r2, [r0, #64]
1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2419              		.loc 1 1991 8 view .LVU760
 2420 005c 12F0100F 		tst	r2, #16
 2421 0060 04D1     		bne	.L174
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2422              		.loc 1 2003 7 is_stmt 1 view .LVU761
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2423              		.loc 1 2003 11 is_stmt 0 view .LVU762
 2424 0062 826B     		ldr	r2, [r0, #56]
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2425              		.loc 1 2003 23 view .LVU763
ARM GAS  /tmp/ccMhywUy.s 			page 90


 2426 0064 D26C     		ldr	r2, [r2, #76]
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2427              		.loc 1 2003 7 view .LVU764
 2428 0066 1846     		mov	r0, r3
 2429              	.LVL143:
2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     }
 2430              		.loc 1 2003 7 view .LVU765
 2431 0068 9047     		blx	r2
 2432              	.LVL144:
2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2433              		.loc 1 2006 1 view .LVU766
 2434 006a F5E7     		b	.L167
 2435              	.LVL145:
 2436              	.L174:
1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2437              		.loc 1 1997 7 is_stmt 1 view .LVU767
 2438 006c FFF7FEFF 		bl	HAL_ADC_ErrorCallback
 2439              	.LVL146:
1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #endif /* USE_HAL_ADC_REGISTER_CALLBACKS */
 2440              		.loc 1 1997 7 is_stmt 0 view .LVU768
 2441 0070 F2E7     		b	.L167
 2442              		.cfi_endproc
 2443              	.LFE153:
 2445              		.section	.text.HAL_ADC_ConfigChannel,"ax",%progbits
 2446              		.align	1
 2447              		.global	HAL_ADC_ConfigChannel
 2448              		.syntax unified
 2449              		.thumb
 2450              		.thumb_func
 2452              	HAL_ADC_ConfigChannel:
 2453              	.LVL147:
 2454              	.LFB148:
1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 2455              		.loc 1 1621 1 is_stmt 1 view -0
 2456              		.cfi_startproc
 2457              		@ args = 0, pretend = 0, frame = 8
 2458              		@ frame_needed = 0, uses_anonymous_args = 0
 2459              		@ link register save eliminated.
1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   __IO uint32_t counter = 0U;
 2460              		.loc 1 1621 1 is_stmt 0 view .LVU770
 2461 0000 30B4     		push	{r4, r5}
 2462              	.LCFI22:
 2463              		.cfi_def_cfa_offset 8
 2464              		.cfi_offset 4, -8
 2465              		.cfi_offset 5, -4
 2466 0002 82B0     		sub	sp, sp, #8
 2467              	.LCFI23:
 2468              		.cfi_def_cfa_offset 16
1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 2469              		.loc 1 1622 3 is_stmt 1 view .LVU771
1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   ADC_Common_TypeDef *tmpADC_Common;
 2470              		.loc 1 1622 17 is_stmt 0 view .LVU772
 2471 0004 0023     		movs	r3, #0
 2472 0006 0193     		str	r3, [sp, #4]
1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2473              		.loc 1 1623 3 is_stmt 1 view .LVU773
1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_REGULAR_RANK(sConfig->Rank));
ARM GAS  /tmp/ccMhywUy.s 			page 91


 2474              		.loc 1 1626 3 view .LVU774
1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_SAMPLE_TIME(sConfig->SamplingTime));
 2475              		.loc 1 1627 3 view .LVU775
1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2476              		.loc 1 1628 3 view .LVU776
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2477              		.loc 1 1631 3 view .LVU777
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2478              		.loc 1 1631 3 view .LVU778
 2479 0008 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 2480 000c 012B     		cmp	r3, #1
 2481 000e 00F0BB80 		beq	.L186
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2482              		.loc 1 1631 3 discriminator 2 view .LVU779
 2483 0012 0123     		movs	r3, #1
 2484 0014 80F83C30 		strb	r3, [r0, #60]
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2485              		.loc 1 1631 3 discriminator 2 view .LVU780
1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2486              		.loc 1 1634 3 discriminator 2 view .LVU781
1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2487              		.loc 1 1634 14 is_stmt 0 discriminator 2 view .LVU782
 2488 0018 0B68     		ldr	r3, [r1]
1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2489              		.loc 1 1634 6 discriminator 2 view .LVU783
 2490 001a 092B     		cmp	r3, #9
 2491 001c 41D9     		bls	.L177
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2492              		.loc 1 1637 5 is_stmt 1 view .LVU784
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2493              		.loc 1 1637 9 is_stmt 0 view .LVU785
 2494 001e 0468     		ldr	r4, [r0]
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2495              		.loc 1 1637 27 view .LVU786
 2496 0020 E268     		ldr	r2, [r4, #12]
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2497              		.loc 1 1637 31 view .LVU787
 2498 0022 9BB2     		uxth	r3, r3
 2499 0024 03EB4303 		add	r3, r3, r3, lsl #1
 2500 0028 1E3B     		subs	r3, r3, #30
 2501 002a 4FF0070C 		mov	ip, #7
 2502 002e 0CFA03F3 		lsl	r3, ip, r3
1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2503              		.loc 1 1637 27 view .LVU788
 2504 0032 22EA0303 		bic	r3, r2, r3
 2505 0036 E360     		str	r3, [r4, #12]
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2506              		.loc 1 1640 5 is_stmt 1 view .LVU789
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2507              		.loc 1 1640 9 is_stmt 0 view .LVU790
 2508 0038 0468     		ldr	r4, [r0]
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2509              		.loc 1 1640 27 view .LVU791
 2510 003a E268     		ldr	r2, [r4, #12]
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2511              		.loc 1 1640 30 view .LVU792
 2512 003c 0B88     		ldrh	r3, [r1]
ARM GAS  /tmp/ccMhywUy.s 			page 92


 2513 003e 03EB4303 		add	r3, r3, r3, lsl #1
 2514 0042 1E3B     		subs	r3, r3, #30
 2515 0044 8D68     		ldr	r5, [r1, #8]
 2516 0046 05FA03F3 		lsl	r3, r5, r3
1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2517              		.loc 1 1640 27 view .LVU793
 2518 004a 1343     		orrs	r3, r3, r2
 2519 004c E360     		str	r3, [r4, #12]
 2520              	.L178:
1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2521              		.loc 1 1652 3 is_stmt 1 view .LVU794
1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2522              		.loc 1 1652 14 is_stmt 0 view .LVU795
 2523 004e 4B68     		ldr	r3, [r1, #4]
1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2524              		.loc 1 1652 6 view .LVU796
 2525 0050 062B     		cmp	r3, #6
 2526 0052 3DD8     		bhi	.L179
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2527              		.loc 1 1655 5 is_stmt 1 view .LVU797
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2528              		.loc 1 1655 9 is_stmt 0 view .LVU798
 2529 0054 0468     		ldr	r4, [r0]
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2530              		.loc 1 1655 26 view .LVU799
 2531 0056 626B     		ldr	r2, [r4, #52]
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2532              		.loc 1 1655 30 view .LVU800
 2533 0058 03EB8303 		add	r3, r3, r3, lsl #2
 2534 005c 053B     		subs	r3, r3, #5
 2535 005e 4FF01F0C 		mov	ip, #31
 2536 0062 0CFA03F3 		lsl	r3, ip, r3
1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2537              		.loc 1 1655 26 view .LVU801
 2538 0066 22EA0303 		bic	r3, r2, r3
 2539 006a 6363     		str	r3, [r4, #52]
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2540              		.loc 1 1658 5 is_stmt 1 view .LVU802
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2541              		.loc 1 1658 9 is_stmt 0 view .LVU803
 2542 006c 0468     		ldr	r4, [r0]
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2543              		.loc 1 1658 26 view .LVU804
 2544 006e 626B     		ldr	r2, [r4, #52]
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2545              		.loc 1 1658 29 view .LVU805
 2546 0070 4B68     		ldr	r3, [r1, #4]
 2547 0072 03EB8303 		add	r3, r3, r3, lsl #2
 2548 0076 053B     		subs	r3, r3, #5
 2549 0078 B1F800C0 		ldrh	ip, [r1]
 2550 007c 0CFA03F3 		lsl	r3, ip, r3
1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2551              		.loc 1 1658 26 view .LVU806
 2552 0080 1343     		orrs	r3, r3, r2
 2553 0082 6363     		str	r3, [r4, #52]
 2554              	.L180:
1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
ARM GAS  /tmp/ccMhywUy.s 			page 93


 2555              		.loc 1 1682 5 is_stmt 1 view .LVU807
 2556              	.LVL148:
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2557              		.loc 1 1685 3 view .LVU808
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2558              		.loc 1 1685 12 is_stmt 0 view .LVU809
 2559 0084 0268     		ldr	r2, [r0]
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2560              		.loc 1 1685 6 view .LVU810
 2561 0086 414B     		ldr	r3, .L190
 2562 0088 9A42     		cmp	r2, r3
 2563 008a 51D0     		beq	.L188
 2564              	.L182:
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2565              		.loc 1 1698 3 is_stmt 1 view .LVU811
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2566              		.loc 1 1698 12 is_stmt 0 view .LVU812
 2567 008c 0268     		ldr	r2, [r0]
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2568              		.loc 1 1698 6 view .LVU813
 2569 008e 3F4B     		ldr	r3, .L190
 2570 0090 9A42     		cmp	r2, r3
 2571 0092 56D0     		beq	.L189
 2572              	.L183:
1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2573              		.loc 1 1721 3 is_stmt 1 view .LVU814
1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2574              		.loc 1 1721 3 view .LVU815
 2575 0094 0023     		movs	r3, #0
 2576 0096 80F83C30 		strb	r3, [r0, #60]
1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2577              		.loc 1 1721 3 view .LVU816
1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2578              		.loc 1 1724 3 view .LVU817
1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2579              		.loc 1 1724 10 is_stmt 0 view .LVU818
 2580 009a 1846     		mov	r0, r3
 2581              	.LVL149:
 2582              	.L176:
1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2583              		.loc 1 1725 1 view .LVU819
 2584 009c 02B0     		add	sp, sp, #8
 2585              	.LCFI24:
 2586              		.cfi_remember_state
 2587              		.cfi_def_cfa_offset 8
 2588              		@ sp needed
 2589 009e 30BC     		pop	{r4, r5}
 2590              	.LCFI25:
 2591              		.cfi_restore 5
 2592              		.cfi_restore 4
 2593              		.cfi_def_cfa_offset 0
 2594 00a0 7047     		bx	lr
 2595              	.LVL150:
 2596              	.L177:
 2597              	.LCFI26:
 2598              		.cfi_restore_state
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
ARM GAS  /tmp/ccMhywUy.s 			page 94


 2599              		.loc 1 1645 5 is_stmt 1 view .LVU820
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2600              		.loc 1 1645 9 is_stmt 0 view .LVU821
 2601 00a2 0468     		ldr	r4, [r0]
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2602              		.loc 1 1645 27 view .LVU822
 2603 00a4 2269     		ldr	r2, [r4, #16]
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2604              		.loc 1 1645 31 view .LVU823
 2605 00a6 9BB2     		uxth	r3, r3
 2606 00a8 03EB4303 		add	r3, r3, r3, lsl #1
 2607 00ac 4FF0070C 		mov	ip, #7
 2608 00b0 0CFA03F3 		lsl	r3, ip, r3
1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2609              		.loc 1 1645 27 view .LVU824
 2610 00b4 22EA0303 		bic	r3, r2, r3
 2611 00b8 2361     		str	r3, [r4, #16]
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2612              		.loc 1 1648 5 is_stmt 1 view .LVU825
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2613              		.loc 1 1648 9 is_stmt 0 view .LVU826
 2614 00ba 0468     		ldr	r4, [r0]
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2615              		.loc 1 1648 27 view .LVU827
 2616 00bc 2269     		ldr	r2, [r4, #16]
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2617              		.loc 1 1648 30 view .LVU828
 2618 00be 0B88     		ldrh	r3, [r1]
 2619 00c0 03EB4303 		add	r3, r3, r3, lsl #1
 2620 00c4 8D68     		ldr	r5, [r1, #8]
 2621 00c6 05FA03F3 		lsl	r3, r5, r3
1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2622              		.loc 1 1648 27 view .LVU829
 2623 00ca 1343     		orrs	r3, r3, r2
 2624 00cc 2361     		str	r3, [r4, #16]
 2625 00ce BEE7     		b	.L178
 2626              	.L179:
1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2627              		.loc 1 1661 8 is_stmt 1 view .LVU830
1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2628              		.loc 1 1661 11 is_stmt 0 view .LVU831
 2629 00d0 0C2B     		cmp	r3, #12
 2630 00d2 16D8     		bhi	.L181
1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2631              		.loc 1 1664 5 is_stmt 1 view .LVU832
1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2632              		.loc 1 1664 9 is_stmt 0 view .LVU833
 2633 00d4 0568     		ldr	r5, [r0]
1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2634              		.loc 1 1664 26 view .LVU834
 2635 00d6 2A6B     		ldr	r2, [r5, #48]
1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2636              		.loc 1 1664 30 view .LVU835
 2637 00d8 03EB8303 		add	r3, r3, r3, lsl #2
 2638 00dc 233B     		subs	r3, r3, #35
 2639 00de 1F24     		movs	r4, #31
 2640 00e0 04FA03F3 		lsl	r3, r4, r3
ARM GAS  /tmp/ccMhywUy.s 			page 95


1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2641              		.loc 1 1664 26 view .LVU836
 2642 00e4 22EA0303 		bic	r3, r2, r3
 2643 00e8 2B63     		str	r3, [r5, #48]
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2644              		.loc 1 1667 5 is_stmt 1 view .LVU837
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2645              		.loc 1 1667 9 is_stmt 0 view .LVU838
 2646 00ea 0568     		ldr	r5, [r0]
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2647              		.loc 1 1667 26 view .LVU839
 2648 00ec 2A6B     		ldr	r2, [r5, #48]
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2649              		.loc 1 1667 29 view .LVU840
 2650 00ee 4B68     		ldr	r3, [r1, #4]
 2651 00f0 03EB8303 		add	r3, r3, r3, lsl #2
 2652 00f4 233B     		subs	r3, r3, #35
 2653 00f6 0C88     		ldrh	r4, [r1]
 2654 00f8 04FA03F3 		lsl	r3, r4, r3
1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2655              		.loc 1 1667 26 view .LVU841
 2656 00fc 1343     		orrs	r3, r3, r2
 2657 00fe 2B63     		str	r3, [r5, #48]
 2658 0100 C0E7     		b	.L180
 2659              	.L181:
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2660              		.loc 1 1673 5 is_stmt 1 view .LVU842
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2661              		.loc 1 1673 9 is_stmt 0 view .LVU843
 2662 0102 0568     		ldr	r5, [r0]
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2663              		.loc 1 1673 26 view .LVU844
 2664 0104 EA6A     		ldr	r2, [r5, #44]
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2665              		.loc 1 1673 30 view .LVU845
 2666 0106 03EB8303 		add	r3, r3, r3, lsl #2
 2667 010a 413B     		subs	r3, r3, #65
 2668 010c 1F24     		movs	r4, #31
 2669 010e 04FA03F3 		lsl	r3, r4, r3
1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2670              		.loc 1 1673 26 view .LVU846
 2671 0112 22EA0303 		bic	r3, r2, r3
 2672 0116 EB62     		str	r3, [r5, #44]
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2673              		.loc 1 1676 5 is_stmt 1 view .LVU847
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2674              		.loc 1 1676 9 is_stmt 0 view .LVU848
 2675 0118 0568     		ldr	r5, [r0]
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2676              		.loc 1 1676 26 view .LVU849
 2677 011a EA6A     		ldr	r2, [r5, #44]
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2678              		.loc 1 1676 29 view .LVU850
 2679 011c 4B68     		ldr	r3, [r1, #4]
 2680 011e 03EB8303 		add	r3, r3, r3, lsl #2
 2681 0122 413B     		subs	r3, r3, #65
 2682 0124 0C88     		ldrh	r4, [r1]
ARM GAS  /tmp/ccMhywUy.s 			page 96


 2683 0126 04FA03F3 		lsl	r3, r4, r3
1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2684              		.loc 1 1676 26 view .LVU851
 2685 012a 1343     		orrs	r3, r3, r2
 2686 012c EB62     		str	r3, [r5, #44]
 2687 012e A9E7     		b	.L180
 2688              	.LVL151:
 2689              	.L188:
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2690              		.loc 1 1685 43 discriminator 1 view .LVU852
 2691 0130 0B68     		ldr	r3, [r1]
1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2692              		.loc 1 1685 32 discriminator 1 view .LVU853
 2693 0132 122B     		cmp	r3, #18
 2694 0134 AAD1     		bne	.L182
1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2695              		.loc 1 1688 5 is_stmt 1 view .LVU854
1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2696              		.loc 1 1693 5 view .LVU855
1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2697              		.loc 1 1693 24 is_stmt 0 view .LVU856
 2698 0136 164A     		ldr	r2, .L190+4
 2699 0138 5368     		ldr	r3, [r2, #4]
 2700 013a 43F48003 		orr	r3, r3, #4194304
 2701 013e 5360     		str	r3, [r2, #4]
 2702 0140 A4E7     		b	.L182
 2703              	.L189:
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2704              		.loc 1 1698 44 discriminator 1 view .LVU857
 2705 0142 0B68     		ldr	r3, [r1]
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2706              		.loc 1 1698 81 discriminator 1 view .LVU858
 2707 0144 103B     		subs	r3, r3, #16
1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2708              		.loc 1 1698 32 discriminator 1 view .LVU859
 2709 0146 012B     		cmp	r3, #1
 2710 0148 A4D8     		bhi	.L183
1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2711              		.loc 1 1701 5 is_stmt 1 view .LVU860
1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2712              		.loc 1 1706 5 view .LVU861
1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2713              		.loc 1 1706 24 is_stmt 0 view .LVU862
 2714 014a 114A     		ldr	r2, .L190+4
 2715 014c 5368     		ldr	r3, [r2, #4]
 2716 014e 43F40003 		orr	r3, r3, #8388608
 2717 0152 5360     		str	r3, [r2, #4]
1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2718              		.loc 1 1708 5 is_stmt 1 view .LVU863
1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2719              		.loc 1 1708 16 is_stmt 0 view .LVU864
 2720 0154 0B68     		ldr	r3, [r1]
1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     {
 2721              		.loc 1 1708 7 view .LVU865
 2722 0156 102B     		cmp	r3, #16
 2723 0158 9CD1     		bne	.L183
1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       while(counter != 0U)
ARM GAS  /tmp/ccMhywUy.s 			page 97


 2724              		.loc 1 1712 7 is_stmt 1 view .LVU866
1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       while(counter != 0U)
 2725              		.loc 1 1712 61 is_stmt 0 view .LVU867
 2726 015a 0E4B     		ldr	r3, .L190+8
 2727 015c 1B68     		ldr	r3, [r3]
 2728 015e 02F14672 		add	r2, r2, #51904512
 2729 0162 02F52E32 		add	r2, r2, #178176
 2730 0166 02F28332 		addw	r2, r2, #899
 2731 016a A2FB0323 		umull	r2, r3, r2, r3
 2732 016e 9B0C     		lsrs	r3, r3, #18
1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       while(counter != 0U)
 2733              		.loc 1 1712 42 view .LVU868
 2734 0170 03EB8303 		add	r3, r3, r3, lsl #2
 2735 0174 5B00     		lsls	r3, r3, #1
1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       while(counter != 0U)
 2736              		.loc 1 1712 15 view .LVU869
 2737 0176 0193     		str	r3, [sp, #4]
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2738              		.loc 1 1713 7 is_stmt 1 view .LVU870
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2739              		.loc 1 1713 12 is_stmt 0 view .LVU871
 2740 0178 02E0     		b	.L184
 2741              	.L185:
1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 2742              		.loc 1 1715 9 is_stmt 1 view .LVU872
1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       }
 2743              		.loc 1 1715 16 is_stmt 0 view .LVU873
 2744 017a 019B     		ldr	r3, [sp, #4]
 2745 017c 013B     		subs	r3, r3, #1
 2746 017e 0193     		str	r3, [sp, #4]
 2747              	.L184:
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2748              		.loc 1 1713 12 is_stmt 1 view .LVU874
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2749              		.loc 1 1713 21 is_stmt 0 view .LVU875
 2750 0180 019B     		ldr	r3, [sp, #4]
1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****       {
 2751              		.loc 1 1713 12 view .LVU876
 2752 0182 002B     		cmp	r3, #0
 2753 0184 F9D1     		bne	.L185
 2754 0186 85E7     		b	.L183
 2755              	.LVL152:
 2756              	.L186:
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2757              		.loc 1 1631 3 view .LVU877
 2758 0188 0220     		movs	r0, #2
 2759              	.LVL153:
1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****     
 2760              		.loc 1 1631 3 view .LVU878
 2761 018a 87E7     		b	.L176
 2762              	.L191:
 2763              		.align	2
 2764              	.L190:
 2765 018c 00200140 		.word	1073815552
 2766 0190 00230140 		.word	1073816320
 2767 0194 00000000 		.word	SystemCoreClock
 2768              		.cfi_endproc
ARM GAS  /tmp/ccMhywUy.s 			page 98


 2769              	.LFE148:
 2771              		.section	.text.HAL_ADC_AnalogWDGConfig,"ax",%progbits
 2772              		.align	1
 2773              		.global	HAL_ADC_AnalogWDGConfig
 2774              		.syntax unified
 2775              		.thumb
 2776              		.thumb_func
 2778              	HAL_ADC_AnalogWDGConfig:
 2779              	.LVL154:
 2780              	.LFB149:
1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT  
 2781              		.loc 1 1744 1 is_stmt 1 view -0
 2782              		.cfi_startproc
 2783              		@ args = 0, pretend = 0, frame = 0
 2784              		@ frame_needed = 0, uses_anonymous_args = 0
 2785              		@ link register save eliminated.
1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_ADC_CHANNEL(AnalogWDGConfig->Channel));
 2786              		.loc 1 1750 3 view .LVU880
1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   assert_param(IS_FUNCTIONAL_STATE(AnalogWDGConfig->ITMode));
 2787              		.loc 1 1751 3 view .LVU881
1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2788              		.loc 1 1752 3 view .LVU882
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2789              		.loc 1 1761 3 view .LVU883
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2790              		.loc 1 1761 3 view .LVU884
 2791 0000 90F83C30 		ldrb	r3, [r0, #60]	@ zero_extendqisi2
 2792 0004 012B     		cmp	r3, #1
 2793 0006 34D0     		beq	.L196
1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** #ifdef USE_FULL_ASSERT  
 2794              		.loc 1 1744 1 is_stmt 0 discriminator 2 view .LVU885
 2795 0008 10B4     		push	{r4}
 2796              	.LCFI27:
 2797              		.cfi_def_cfa_offset 4
 2798              		.cfi_offset 4, -4
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2799              		.loc 1 1761 3 is_stmt 1 discriminator 2 view .LVU886
 2800 000a 0123     		movs	r3, #1
 2801 000c 80F83C30 		strb	r3, [r0, #60]
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2802              		.loc 1 1761 3 discriminator 2 view .LVU887
1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2803              		.loc 1 1763 3 discriminator 2 view .LVU888
1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2804              		.loc 1 1763 21 is_stmt 0 discriminator 2 view .LVU889
 2805 0010 0B7C     		ldrb	r3, [r1, #16]	@ zero_extendqisi2
1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   {
 2806              		.loc 1 1763 5 discriminator 2 view .LVU890
 2807 0012 012B     		cmp	r3, #1
 2808 0014 27D0     		beq	.L201
1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2809              		.loc 1 1771 5 is_stmt 1 view .LVU891
 2810 0016 0268     		ldr	r2, [r0]
 2811 0018 5368     		ldr	r3, [r2, #4]
 2812 001a 23F04003 		bic	r3, r3, #64
 2813 001e 5360     		str	r3, [r2, #4]
 2814              	.L195:
ARM GAS  /tmp/ccMhywUy.s 			page 99


1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2815              		.loc 1 1775 3 view .LVU892
1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2816              		.loc 1 1775 7 is_stmt 0 view .LVU893
 2817 0020 0268     		ldr	r2, [r0]
1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2818              		.loc 1 1775 23 view .LVU894
 2819 0022 5368     		ldr	r3, [r2, #4]
 2820 0024 23F44003 		bic	r3, r3, #12582912
 2821 0028 23F40073 		bic	r3, r3, #512
 2822 002c 5360     		str	r3, [r2, #4]
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2823              		.loc 1 1778 3 is_stmt 1 view .LVU895
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2824              		.loc 1 1778 7 is_stmt 0 view .LVU896
 2825 002e 0268     		ldr	r2, [r0]
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2826              		.loc 1 1778 23 view .LVU897
 2827 0030 5368     		ldr	r3, [r2, #4]
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2828              		.loc 1 1778 41 view .LVU898
 2829 0032 0C68     		ldr	r4, [r1]
1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2830              		.loc 1 1778 23 view .LVU899
 2831 0034 2343     		orrs	r3, r3, r4
 2832 0036 5360     		str	r3, [r2, #4]
1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2833              		.loc 1 1781 3 is_stmt 1 view .LVU900
1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2834              		.loc 1 1781 7 is_stmt 0 view .LVU901
 2835 0038 0368     		ldr	r3, [r0]
1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2836              		.loc 1 1781 40 view .LVU902
 2837 003a 4A68     		ldr	r2, [r1, #4]
1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2838              		.loc 1 1781 23 view .LVU903
 2839 003c 5A62     		str	r2, [r3, #36]
1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2840              		.loc 1 1784 3 is_stmt 1 view .LVU904
1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2841              		.loc 1 1784 7 is_stmt 0 view .LVU905
 2842 003e 0368     		ldr	r3, [r0]
1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2843              		.loc 1 1784 40 view .LVU906
 2844 0040 8A68     		ldr	r2, [r1, #8]
1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2845              		.loc 1 1784 23 view .LVU907
 2846 0042 9A62     		str	r2, [r3, #40]
1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2847              		.loc 1 1787 3 is_stmt 1 view .LVU908
1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2848              		.loc 1 1787 7 is_stmt 0 view .LVU909
 2849 0044 0268     		ldr	r2, [r0]
1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2850              		.loc 1 1787 23 view .LVU910
 2851 0046 5368     		ldr	r3, [r2, #4]
 2852 0048 23F01F03 		bic	r3, r3, #31
ARM GAS  /tmp/ccMhywUy.s 			page 100


 2853 004c 5360     		str	r3, [r2, #4]
1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2854              		.loc 1 1790 3 is_stmt 1 view .LVU911
1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2855              		.loc 1 1790 7 is_stmt 0 view .LVU912
 2856 004e 0268     		ldr	r2, [r0]
1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2857              		.loc 1 1790 23 view .LVU913
 2858 0050 5468     		ldr	r4, [r2, #4]
 2859 0052 8B89     		ldrh	r3, [r1, #12]
 2860 0054 2343     		orrs	r3, r3, r4
 2861 0056 5360     		str	r3, [r2, #4]
1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2862              		.loc 1 1793 3 is_stmt 1 view .LVU914
1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2863              		.loc 1 1793 3 view .LVU915
 2864 0058 0023     		movs	r3, #0
 2865 005a 80F83C30 		strb	r3, [r0, #60]
1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2866              		.loc 1 1793 3 view .LVU916
1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2867              		.loc 1 1796 3 view .LVU917
1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2868              		.loc 1 1796 10 is_stmt 0 view .LVU918
 2869 005e 1846     		mov	r0, r3
 2870              	.LVL155:
1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2871              		.loc 1 1797 1 view .LVU919
 2872 0060 5DF8044B 		ldr	r4, [sp], #4
 2873              	.LCFI28:
 2874              		.cfi_remember_state
 2875              		.cfi_restore 4
 2876              		.cfi_def_cfa_offset 0
 2877 0064 7047     		bx	lr
 2878              	.LVL156:
 2879              	.L201:
 2880              	.LCFI29:
 2881              		.cfi_restore_state
1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   }
 2882              		.loc 1 1766 5 is_stmt 1 view .LVU920
 2883 0066 0268     		ldr	r2, [r0]
 2884 0068 5368     		ldr	r3, [r2, #4]
 2885 006a 43F04003 		orr	r3, r3, #64
 2886 006e 5360     		str	r3, [r2, #4]
 2887 0070 D6E7     		b	.L195
 2888              	.L196:
 2889              	.LCFI30:
 2890              		.cfi_def_cfa_offset 0
 2891              		.cfi_restore 4
1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   
 2892              		.loc 1 1761 3 is_stmt 0 view .LVU921
 2893 0072 0220     		movs	r0, #2
 2894              	.LVL157:
1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2895              		.loc 1 1797 1 view .LVU922
 2896 0074 7047     		bx	lr
 2897              		.cfi_endproc
ARM GAS  /tmp/ccMhywUy.s 			page 101


 2898              	.LFE149:
 2900              		.section	.text.HAL_ADC_GetState,"ax",%progbits
 2901              		.align	1
 2902              		.global	HAL_ADC_GetState
 2903              		.syntax unified
 2904              		.thumb
 2905              		.thumb_func
 2907              	HAL_ADC_GetState:
 2908              	.LVL158:
 2909              	.LFB150:
1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   /* Return ADC state */
 2910              		.loc 1 1826 1 is_stmt 1 view -0
 2911              		.cfi_startproc
 2912              		@ args = 0, pretend = 0, frame = 0
 2913              		@ frame_needed = 0, uses_anonymous_args = 0
 2914              		@ link register save eliminated.
1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2915              		.loc 1 1828 3 view .LVU924
1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2916              		.loc 1 1828 14 is_stmt 0 view .LVU925
 2917 0000 006C     		ldr	r0, [r0, #64]
 2918              	.LVL159:
1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2919              		.loc 1 1829 1 view .LVU926
 2920 0002 7047     		bx	lr
 2921              		.cfi_endproc
 2922              	.LFE150:
 2924              		.section	.text.HAL_ADC_GetError,"ax",%progbits
 2925              		.align	1
 2926              		.global	HAL_ADC_GetError
 2927              		.syntax unified
 2928              		.thumb
 2929              		.thumb_func
 2931              	HAL_ADC_GetError:
 2932              	.LVL160:
 2933              	.LFB151:
1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c ****   return hadc->ErrorCode;
 2934              		.loc 1 1838 1 is_stmt 1 view -0
 2935              		.cfi_startproc
 2936              		@ args = 0, pretend = 0, frame = 0
 2937              		@ frame_needed = 0, uses_anonymous_args = 0
 2938              		@ link register save eliminated.
1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2939              		.loc 1 1839 3 view .LVU928
1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** }
 2940              		.loc 1 1839 14 is_stmt 0 view .LVU929
 2941 0000 406C     		ldr	r0, [r0, #68]
 2942              	.LVL161:
1840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c **** 
 2943              		.loc 1 1840 1 view .LVU930
 2944 0002 7047     		bx	lr
 2945              		.cfi_endproc
 2946              	.LFE151:
 2948              		.text
 2949              	.Letext0:
 2950              		.file 2 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
 2951              		.file 3 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
ARM GAS  /tmp/ccMhywUy.s 			page 102


 2952              		.file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
 2953              		.file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
 2954              		.file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
 2955              		.file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h"
 2956              		.file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h"
 2957              		.file 9 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h"
 2958              		.file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h"
 2959              		.file 11 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h"
ARM GAS  /tmp/ccMhywUy.s 			page 103


DEFINED SYMBOLS
                            *ABS*:0000000000000000 stm32f4xx_hal_adc.c
     /tmp/ccMhywUy.s:20     .text.ADC_Init:0000000000000000 $t
     /tmp/ccMhywUy.s:25     .text.ADC_Init:0000000000000000 ADC_Init
     /tmp/ccMhywUy.s:275    .text.ADC_Init:000000000000012c $d
     /tmp/ccMhywUy.s:281    .text.HAL_ADC_MspInit:0000000000000000 $t
     /tmp/ccMhywUy.s:287    .text.HAL_ADC_MspInit:0000000000000000 HAL_ADC_MspInit
     /tmp/ccMhywUy.s:302    .text.HAL_ADC_Init:0000000000000000 $t
     /tmp/ccMhywUy.s:308    .text.HAL_ADC_Init:0000000000000000 HAL_ADC_Init
     /tmp/ccMhywUy.s:411    .text.HAL_ADC_MspDeInit:0000000000000000 $t
     /tmp/ccMhywUy.s:417    .text.HAL_ADC_MspDeInit:0000000000000000 HAL_ADC_MspDeInit
     /tmp/ccMhywUy.s:432    .text.HAL_ADC_DeInit:0000000000000000 $t
     /tmp/ccMhywUy.s:438    .text.HAL_ADC_DeInit:0000000000000000 HAL_ADC_DeInit
     /tmp/ccMhywUy.s:510    .text.HAL_ADC_Start:0000000000000000 $t
     /tmp/ccMhywUy.s:516    .text.HAL_ADC_Start:0000000000000000 HAL_ADC_Start
     /tmp/ccMhywUy.s:772    .text.HAL_ADC_Start:000000000000011c $d
     /tmp/ccMhywUy.s:781    .text.HAL_ADC_Stop:0000000000000000 $t
     /tmp/ccMhywUy.s:787    .text.HAL_ADC_Stop:0000000000000000 HAL_ADC_Stop
     /tmp/ccMhywUy.s:846    .text.HAL_ADC_PollForConversion:0000000000000000 $t
     /tmp/ccMhywUy.s:852    .text.HAL_ADC_PollForConversion:0000000000000000 HAL_ADC_PollForConversion
     /tmp/ccMhywUy.s:1008   .text.HAL_ADC_PollForEvent:0000000000000000 $t
     /tmp/ccMhywUy.s:1014   .text.HAL_ADC_PollForEvent:0000000000000000 HAL_ADC_PollForEvent
     /tmp/ccMhywUy.s:1120   .text.HAL_ADC_Start_IT:0000000000000000 $t
     /tmp/ccMhywUy.s:1126   .text.HAL_ADC_Start_IT:0000000000000000 HAL_ADC_Start_IT
     /tmp/ccMhywUy.s:1388   .text.HAL_ADC_Start_IT:000000000000012c $d
     /tmp/ccMhywUy.s:1397   .text.HAL_ADC_Stop_IT:0000000000000000 $t
     /tmp/ccMhywUy.s:1403   .text.HAL_ADC_Stop_IT:0000000000000000 HAL_ADC_Stop_IT
     /tmp/ccMhywUy.s:1467   .text.HAL_ADC_Start_DMA:0000000000000000 $t
     /tmp/ccMhywUy.s:1473   .text.HAL_ADC_Start_DMA:0000000000000000 HAL_ADC_Start_DMA
     /tmp/ccMhywUy.s:1763   .text.HAL_ADC_Start_DMA:000000000000015c $d
     /tmp/ccMhywUy.s:2337   .text.ADC_DMAConvCplt:0000000000000000 ADC_DMAConvCplt
     /tmp/ccMhywUy.s:1944   .text.ADC_DMAHalfConvCplt:0000000000000000 ADC_DMAHalfConvCplt
     /tmp/ccMhywUy.s:2297   .text.ADC_DMAError:0000000000000000 ADC_DMAError
     /tmp/ccMhywUy.s:1775   .text.HAL_ADC_Stop_DMA:0000000000000000 $t
     /tmp/ccMhywUy.s:1781   .text.HAL_ADC_Stop_DMA:0000000000000000 HAL_ADC_Stop_DMA
     /tmp/ccMhywUy.s:1871   .text.HAL_ADC_GetValue:0000000000000000 $t
     /tmp/ccMhywUy.s:1877   .text.HAL_ADC_GetValue:0000000000000000 HAL_ADC_GetValue
     /tmp/ccMhywUy.s:1897   .text.HAL_ADC_ConvCpltCallback:0000000000000000 $t
     /tmp/ccMhywUy.s:1903   .text.HAL_ADC_ConvCpltCallback:0000000000000000 HAL_ADC_ConvCpltCallback
     /tmp/ccMhywUy.s:1918   .text.HAL_ADC_ConvHalfCpltCallback:0000000000000000 $t
     /tmp/ccMhywUy.s:1924   .text.HAL_ADC_ConvHalfCpltCallback:0000000000000000 HAL_ADC_ConvHalfCpltCallback
     /tmp/ccMhywUy.s:1939   .text.ADC_DMAHalfConvCplt:0000000000000000 $t
     /tmp/ccMhywUy.s:1971   .text.HAL_ADC_LevelOutOfWindowCallback:0000000000000000 $t
     /tmp/ccMhywUy.s:1977   .text.HAL_ADC_LevelOutOfWindowCallback:0000000000000000 HAL_ADC_LevelOutOfWindowCallback
     /tmp/ccMhywUy.s:1992   .text.HAL_ADC_ErrorCallback:0000000000000000 $t
     /tmp/ccMhywUy.s:1998   .text.HAL_ADC_ErrorCallback:0000000000000000 HAL_ADC_ErrorCallback
     /tmp/ccMhywUy.s:2013   .text.HAL_ADC_IRQHandler:0000000000000000 $t
     /tmp/ccMhywUy.s:2019   .text.HAL_ADC_IRQHandler:0000000000000000 HAL_ADC_IRQHandler
     /tmp/ccMhywUy.s:2292   .text.ADC_DMAError:0000000000000000 $t
     /tmp/ccMhywUy.s:2332   .text.ADC_DMAConvCplt:0000000000000000 $t
     /tmp/ccMhywUy.s:2446   .text.HAL_ADC_ConfigChannel:0000000000000000 $t
     /tmp/ccMhywUy.s:2452   .text.HAL_ADC_ConfigChannel:0000000000000000 HAL_ADC_ConfigChannel
     /tmp/ccMhywUy.s:2765   .text.HAL_ADC_ConfigChannel:000000000000018c $d
     /tmp/ccMhywUy.s:2772   .text.HAL_ADC_AnalogWDGConfig:0000000000000000 $t
     /tmp/ccMhywUy.s:2778   .text.HAL_ADC_AnalogWDGConfig:0000000000000000 HAL_ADC_AnalogWDGConfig
     /tmp/ccMhywUy.s:2901   .text.HAL_ADC_GetState:0000000000000000 $t
     /tmp/ccMhywUy.s:2907   .text.HAL_ADC_GetState:0000000000000000 HAL_ADC_GetState
ARM GAS  /tmp/ccMhywUy.s 			page 104


     /tmp/ccMhywUy.s:2925   .text.HAL_ADC_GetError:0000000000000000 $t
     /tmp/ccMhywUy.s:2931   .text.HAL_ADC_GetError:0000000000000000 HAL_ADC_GetError

UNDEFINED SYMBOLS
SystemCoreClock
HAL_GetTick
HAL_DMA_Start_IT
HAL_DMA_Abort
HAL_ADCEx_InjectedConvCpltCallback
