ARM GAS /tmp/cce1ybXB.s page 1 1 .cpu cortex-m4 2 .eabi_attribute 27, 1 3 .eabi_attribute 28, 1 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 1 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "stm32f4xx_hal_adc_ex.c" 14 .text 15 .Ltext0: 16 .cfi_sections .debug_frame 17 .section .text.ADC_MultiModeDMAError,"ax",%progbits 18 .align 1 19 .syntax unified 20 .thumb 21 .thumb_func 22 .fpu fpv4-sp-d16 24 ADC_MultiModeDMAError: 25 .LFB144: 26 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @file stm32f4xx_hal_adc_ex.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief This file provides firmware functions to manage the following 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * functionalities of the ADC extension peripheral: 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * + Extended features functions 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @verbatim 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ============================================================================== 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ##### How to use this driver ##### 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ============================================================================== 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#)Initialize the ADC low level resources by implementing the HAL_ADC_MspInit(): 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) Enable the ADC interface clock using __HAL_RCC_ADC_CLK_ENABLE() 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) ADC pins configuration 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the clock for the ADC GPIOs using the following function: 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_RCC_GPIOx_CLK_ENABLE() 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure these ADC pins in analog mode using HAL_GPIO_Init() 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) In case of using interrupts (e.g. HAL_ADC_Start_IT()) 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure the ADC interrupt priority using HAL_NVIC_SetPriority() 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the ADC IRQ handler using HAL_NVIC_EnableIRQ() 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) In ADC IRQ handler, call HAL_ADC_IRQHandler() 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) In case of using DMA to control data transfer (e.g. HAL_ADC_Start_DMA()) 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the DMAx interface clock using __HAL_RCC_DMAx_CLK_ENABLE() 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure and enable two DMA streams stream for managing data 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** transfer from peripheral to memory (output stream) 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Associate the initialized DMA handle to the ADC DMA handle 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** using __HAL_LINKDMA() 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure the priority and enable the NVIC for the transfer complete 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** interrupt on the two DMA Streams. The output stream should have higher 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** priority than the input stream. ARM GAS /tmp/cce1ybXB.s page 2 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Configure the ADC Prescaler, conversion resolution and data alignment 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** using the HAL_ADC_Init() function. 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Configure the ADC Injected channels group features, use HAL_ADC_Init() 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** and HAL_ADC_ConfigChannel() functions. 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Three operation modes are available within this driver : 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Polling mode IO operation *** 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ================================= 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_InjectedStart() 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Wait for end of conversion using HAL_ADC_PollForConversion(), at this stage 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** user can specify the value of timeout according to his end application 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) To read the ADC converted values, use the HAL_ADCEx_InjectedGetValue() function. 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop the ADC peripheral using HAL_ADCEx_InjectedStop() 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Interrupt mode IO operation *** 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =================================== 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_InjectedStart_IT() 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Use HAL_ADC_IRQHandler() called under ADC_IRQHandler() Interrupt subroutine 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) At ADC end of conversion HAL_ADCEx_InjectedConvCpltCallback() function is executed and u 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedConvCpltCallbac 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) In case of ADC Error, HAL_ADCEx_InjectedErrorCallback() function is executed and user ca 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedErrorCallback 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop the ADC peripheral using HAL_ADCEx_InjectedStop_IT() 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** DMA mode IO operation *** 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ============================== 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_InjectedStart_DMA(), at this stage the user spe 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** of data to be transferred at each end of conversion 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) At The end of data transfer ba HAL_ADCEx_InjectedConvCpltCallback() function is executed 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedConvCpltCallbac 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) In case of transfer Error, HAL_ADCEx_InjectedErrorCallback() function is executed and us 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedErrorCallback 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop the ADC peripheral using HAL_ADCEx_InjectedStop_DMA() 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Multi mode ADCs Regular channels configuration *** 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ====================================================== 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Select the Multi mode ADC regular channels features (dual or triple mode) 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** and configure the DMA mode using HAL_ADCEx_MultiModeConfigChannel() functions. 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_MultiModeStart_DMA(), at this stage the user sp 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** of data to be transferred at each end of conversion 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Read the ADCs converted values using the HAL_ADCEx_MultiModeGetValue() function. 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @endverbatim 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ****************************************************************************** 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @attention 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *

© Copyright (c) 2017 STMicroelectronics. 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * All rights reserved.

89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * ARM GAS /tmp/cce1ybXB.s page 3 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * This software component is licensed by ST under BSD 3-Clause license, 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the "License"; You may not use this file except in compliance with the 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * License. You may obtain a copy of the License at: 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * opensource.org/licenses/BSD-3-Clause 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ****************************************************************************** 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Includes ------------------------------------------------------------------*/ 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #include "stm32f4xx_hal.h" 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @addtogroup STM32F4xx_HAL_Driver 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @defgroup ADCEx ADCEx 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief ADC Extended driver modules 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #ifdef HAL_ADC_MODULE_ENABLED 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private typedef -----------------------------------------------------------*/ 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private define ------------------------------------------------------------*/ 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private macro -------------------------------------------------------------*/ 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private variables ---------------------------------------------------------*/ 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @addtogroup ADCEx_Private_Functions 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private function prototypes -----------------------------------------------*/ 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAConvCplt(DMA_HandleTypeDef *hdma); 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAError(DMA_HandleTypeDef *hdma); 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAHalfConvCplt(DMA_HandleTypeDef *hdma); 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @} 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Exported functions --------------------------------------------------------*/ 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @defgroup ADCEx_Exported_Functions ADC Exported Functions 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @defgroup ADCEx_Exported_Functions_Group1 Extended features functions 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Extended features functions 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @verbatim 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =============================================================================== 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ##### Extended features functions ##### 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =============================================================================== 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] This section provides functions allowing to: 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start conversion of injected channel. 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop conversion of injected channel. 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start multimode and enable DMA transfer. 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop multimode and disable DMA transfer. 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Get result of injected channel conversion. 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Get result of multimode conversion. 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Configure injected channels. ARM GAS /tmp/cce1ybXB.s page 4 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Configure multimode. 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @endverbatim 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Enables the selected ADC software start conversion of the injected channels. 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStart(ADC_HandleTypeDef* hadc) 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the ADC peripheral */ 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for ADC stabilization time */ 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to injected group conversion results */ 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to injected operation */ 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_INJ_BUSY); 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if a regular conversion is ongoing */ 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On this device, there is no ADC error code fields related to */ 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* conversions on group injected only. In case of conversion on */ 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* going on group regular, no error code is reset. */ 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); ARM GAS /tmp/cce1ybXB.s page 5 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if Multimode enabled */ 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(tmp1 && tmp2) 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance == ADC1) && tmp1 && tmp2) 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Enables the interrupt and starts ADC conversion of injected channels. 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status. 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStart_IT(ADC_HandleTypeDef* hadc) 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ ARM GAS /tmp/cce1ybXB.s page 6 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the ADC peripheral */ 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for ADC stabilization time */ 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to injected group conversion results */ 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to injected operation */ 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_INJ_BUSY); 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if a regular conversion is ongoing */ 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On this device, there is no ADC error code fields related to */ 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* conversions on group injected only. In case of conversion on */ 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* going on group regular, no error code is reset. */ 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable end of conversion interrupt for injected channels */ 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_JEOC); 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cce1ybXB.s page 7 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if Multimode enabled */ 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(tmp1 && tmp2) 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance == ADC1) && tmp1 && tmp2) 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Stop conversion of injected channels. Disable ADC peripheral if 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * no regular conversion is on going. 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If ADC must be disabled and if conversion is on going on 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * regular group, function HAL_ADC_Stop must be used to stop both 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * injected and regular groups, and disable the ADC. 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If injected group mode auto-injection is enabled, 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * function HAL_ADC_Stop must be used. 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note In case of auto-injection mode, HAL_ADC_Stop must be used. 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc ADC handle 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStop(ADC_HandleTypeDef* hadc) 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion and disable ADC peripheral */ 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conditioned to: */ 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - No conversion on the other group (regular group) is intended to */ 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* continue (injected and regular groups stop conversion and ADC disable */ 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* are common) */ 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - In case of auto-injection mode, HAL_ADC_Stop must be used. */ 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(((hadc->State & HAL_ADC_STATE_REG_BUSY) == RESET) && 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) ARM GAS /tmp/cce1ybXB.s page 8 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_ERROR; 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Poll for injected conversion complete 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param Timeout Timeout value in millisecond. 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedPollForConversion(ADC_HandleTypeDef* hadc, uint32_t Timeout) 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tickstart = 0U; 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Get tick */ 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tickstart = HAL_GetTick(); 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check End of conversion flag */ 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_JEOC))) 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check for the Timeout */ 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(Timeout != HAL_MAX_DELAY) 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((Timeout == 0U)||((HAL_GetTick() - tickstart ) > Timeout)) 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->State= HAL_ADC_STATE_TIMEOUT; 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cce1ybXB.s page 9 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JSTRT | ADC_FLAG_JEOC); 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine */ 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_INJ_EOC); 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Determine whether any further conversion upcoming on group injected */ 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by external trigger, continuous mode or scan sequence on going. */ 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* The test of scan sequence on going is done either with scan */ 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* sequence disabled or with end of conversion flag set to */ 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* of end of sequence. */ 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(ADC_IS_SOFTWARE_START_INJECTED(hadc) && 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) && 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) ) ) ) 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_INJ_BUSY); 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return ADC state */ 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Stop conversion of injected channels, disable interruption of 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * end-of-conversion. Disable ADC peripheral if no regular conversion 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * is on going. 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If ADC must be disabled and if conversion is on going on 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * regular group, function HAL_ADC_Stop must be used to stop both 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * injected and regular groups, and disable the ADC. 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If injected group mode auto-injection is enabled, 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * function HAL_ADC_Stop must be used. 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc ADC handle 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStop_IT(ADC_HandleTypeDef* hadc) 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion and disable ADC peripheral */ ARM GAS /tmp/cce1ybXB.s page 10 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conditioned to: */ 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - No conversion on the other group (regular group) is intended to */ 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* continue (injected and regular groups stop conversion and ADC disable */ 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* are common) */ 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - In case of auto-injection mode, HAL_ADC_Stop must be used. */ 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(((hadc->State & HAL_ADC_STATE_REG_BUSY) == RESET) && 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC end of conversion interrupt for injected channels */ 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_JEOC); 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_ERROR; 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Gets the converted value from data register of injected channel. 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param InjectedRank the ADC injected rank. 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * This parameter can be one of the following values: 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_1: Injected Channel1 selected 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_2: Injected Channel2 selected 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_3: Injected Channel3 selected 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_4: Injected Channel4 selected 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t HAL_ADCEx_InjectedGetValue(ADC_HandleTypeDef* hadc, uint32_t InjectedRank) 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t tmp = 0U; 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_RANK(InjectedRank)); ARM GAS /tmp/cce1ybXB.s page 11 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag to have similar behaviour as */ 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* regular group: reading data register also clears end of conversion flag. */ 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return the selected ADC converted value */ 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** switch(InjectedRank) 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_4: 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR4; 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_3: 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR3; 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_2: 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR2; 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_1: 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR1; 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp; 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Enables ADC DMA request after last transfer (Multi-ADC mode) and enables ADC peripheral 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note Caution: This function must be used only with the ADC master. 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param pData Pointer to buffer in which transferred from ADC peripheral to memory will be st 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param Length The length of data to be transferred from ADC peripheral to memory. 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_MultiModeStart_DMA(ADC_HandleTypeDef* hadc, uint32_t* pData, uint32_t L 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); ARM GAS /tmp/cce1ybXB.s page 12 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for temperature sensor stabilization time */ 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to regular group conversion results */ 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to regular group operation */ 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY); 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* If conversions on group regular are also triggering group injected, */ 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* update ADC state. */ 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET) 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, HAL_ADC_STATE_INJ_EOC, HAL_ADC_STATE_INJ_BUSY); 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* State machine update: Check if an injected conversion is ongoing */ 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC error code fields related to conversions on group regular */ 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA)); 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA transfer complete callback */ 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferCpltCallback = ADC_MultiModeDMAConvCplt; 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA half transfer complete callback */ 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferHalfCpltCallback = ADC_MultiModeDMAHalfConvCplt; 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cce1ybXB.s page 13 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA error callback */ 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferErrorCallback = ADC_MultiModeDMAError ; 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Manage ADC and DMA start: ADC overrun interruption, DMA start, ADC */ 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* start (in case of SW start): */ 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear regular group conversion flag and overrun flag */ 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC); 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable ADC overrun interrupt */ 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR); 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (hadc->Init.DMAContinuousRequests != DISABLE) 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC DMA request after last transfer */ 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_DDS; 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC EOC rising on each regular channel conversion */ 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~ADC_CCR_DDS; 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the DMA Stream */ 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_DMA_Start_IT(hadc->DMA_Handle, (uint32_t)&tmpADC_Common->CDR, (uint32_t)pData, Length); 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if no external trigger present enable software conversion of regular channels */ 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for regular group */ 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Disables ADC DMA (multi-ADC mode) and disables ADC peripheral 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_MultiModeStop_DMA(ADC_HandleTypeDef* hadc) 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); ARM GAS /tmp/cce1ybXB.s page 14 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC DMA mode for multimode */ 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~ADC_CCR_DDS; 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the DMA channel (in case of DMA in circular mode or stop while */ 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* DMA transfer is on going) */ 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_DMA_Abort(hadc->DMA_Handle); 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC overrun interrupt */ 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_OVR); 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Returns the last ADC1, ADC2 and ADC3 regular conversions results 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * data in the selected multi mode. 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval The converted data value. 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t HAL_ADCEx_MultiModeGetValue(ADC_HandleTypeDef* hadc) 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return the multi mode conversion value */ 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmpADC_Common->CDR; ARM GAS /tmp/cce1ybXB.s page 15 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Injected conversion complete callback in non blocking mode 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __weak void HAL_ADCEx_InjectedConvCpltCallback(ADC_HandleTypeDef* hadc) 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Prevent unused argument(s) compilation warning */ 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** UNUSED(hadc); 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* NOTE : This function Should not be modified, when the callback is needed, 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** the HAL_ADC_InjectedConvCpltCallback could be implemented in the user file 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Configures for the selected ADC injected channel its corresponding 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * rank in the sequencer and its sample time. 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param sConfigInjected ADC configuration structure for injected channel. 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedConfigChannel(ADC_HandleTypeDef* hadc, ADC_InjectionConfTypeDef 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #ifdef USE_FULL_ASSERT 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp = 0U; 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #endif /* USE_FULL_ASSERT */ 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_CHANNEL(sConfigInjected->InjectedChannel)); 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_RANK(sConfigInjected->InjectedRank)); 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLE_TIME(sConfigInjected->InjectedSamplingTime)); 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_INJEC_TRIG(sConfigInjected->ExternalTrigInjecConv)); 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_LENGTH(sConfigInjected->InjectedNbrOfConversion)); 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->AutoInjectedConv)); 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->InjectedDiscontinuousConvMode)); 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #ifdef USE_FULL_ASSERT 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = ADC_GET_RESOLUTION(hadc); 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_RANGE(tmp, sConfigInjected->InjectedOffset)); 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #endif /* USE_FULL_ASSERT */ 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(sConfigInjected->ExternalTrigInjecConv != ADC_INJECTED_SOFTWARE_START) 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_INJEC_TRIG_EDGE(sConfigInjected->ExternalTrigInjecConvEdge)); 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cce1ybXB.s page 16 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if ADC_Channel_10 ... ADC_Channel_18 is selected */ 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->InjectedChannel > ADC_CHANNEL_9) 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old sample time */ 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR1 &= ~ADC_SMPR1(ADC_SMPR1_SMP10, sConfigInjected->InjectedChannel); 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the new sample time */ 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR1 |= ADC_SMPR1(sConfigInjected->InjectedSamplingTime, sConfigInjected->Inje 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else /* ADC_Channel include in ADC_Channel_[0..9] */ 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old sample time */ 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR2 &= ~ADC_SMPR2(ADC_SMPR2_SMP0, sConfigInjected->InjectedChannel); 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the new sample time */ 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR2 |= ADC_SMPR2(sConfigInjected->InjectedSamplingTime, sConfigInjected->Inje 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /*---------------------------- ADCx JSQR Configuration -----------------*/ 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR &= ~(ADC_JSQR_JL); 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Rank configuration */ 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old SQx bits for the selected rank */ 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR &= ~ADC_JSQR(ADC_JSQR_JSQ1, sConfigInjected->InjectedRank,sConfigInjected->I 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the SQx bits for the selected rank */ 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_JSQR(sConfigInjected->InjectedChannel, sConfigInjected->InjectedRank, 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable external trigger if trigger selection is different of software */ 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* start. */ 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: This configuration keeps the hardware feature of parameter */ 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* ExternalTrigConvEdge "trigger edge none" equivalent to */ 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* software start. */ 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(sConfigInjected->ExternalTrigInjecConv != ADC_INJECTED_SOFTWARE_START) 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Select external trigger to start conversion */ 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTSEL); 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Select external trigger polarity */ 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset the external trigger */ 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTSEL); 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->AutoInjectedConv != DISABLE) 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC automatic injected group conversion */ 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 |= ADC_CR1_JAUTO; 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cce1ybXB.s page 17 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC automatic injected group conversion */ 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 &= ~(ADC_CR1_JAUTO); 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->InjectedDiscontinuousConvMode != DISABLE) 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC injected discontinuous mode */ 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 |= ADC_CR1_JDISCEN; 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC injected discontinuous mode */ 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 &= ~(ADC_CR1_JDISCEN); 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** switch(sConfigInjected->InjectedRank) 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 1U: 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 1 offset */ 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 &= ~(ADC_JOFR1_JOFFSET1); 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 2U: 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 2 offset */ 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 &= ~(ADC_JOFR2_JOFFSET2); 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 3U: 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 3 offset */ 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 &= ~(ADC_JOFR3_JOFFSET3); 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 4 offset */ 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 &= ~(ADC_JOFR4_JOFFSET4); 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if ADC1 Channel_18 is selected enable VBAT Channel */ 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && (sConfigInjected->InjectedChannel == ADC_CHANNEL_VBAT)) 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the VBAT channel*/ 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_VBATE; 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if ADC1 Channel_16 or Channel_17 is selected enable TSVREFE Channel(Temperature sensor and VRE 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && ((sConfigInjected->InjectedChannel == ADC_CHANNEL_TEMPSENSOR) || 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the TSVREFE channel*/ ARM GAS /tmp/cce1ybXB.s page 18 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_TSVREFE; 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Configures the ADC multi-mode 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param multimode pointer to an ADC_MultiModeTypeDef structure that contains 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for multimode. 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_MultiModeConfigChannel(ADC_HandleTypeDef* hadc, ADC_MultiModeTypeDef* m 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_MODE(multimode->Mode)); 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_DMA_ACCESS_MODE(multimode->DMAAccessMode)); 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLING_DELAY(multimode->TwoSamplingDelay)); 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC mode */ 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_MULTI); 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the ADC DMA access mode */ 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_DMA); 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set delay between two sampling phases */ 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_DELAY); 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @} ARM GAS /tmp/cce1ybXB.s page 19 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA transfer complete callback. 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAConvCplt(DMA_HandleTypeDef *hdma) 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update state machine on conversion status if not in error state */ 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL | HAL_ADC_STATE_ERROR_DMA)) 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine */ 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Determine whether any further conversion upcoming on group regular */ 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by external trigger, continuous mode or scan sequence on going. */ 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* The test of scan sequence on going is done either with scan */ 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* sequence disabled or with end of conversion flag set to */ 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* of end of sequence. */ 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(ADC_IS_SOFTWARE_START_REGULAR(hadc) && 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) ) 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC end of single conversion interrupt on group regular */ 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: Overrun interrupt was enabled with EOC interrupt in */ 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* HAL_ADC_Start_IT(), but is not disabled here because can be used */ 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by overrun IRQ process below. */ 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC); 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY); 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conversion complete callback */ 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ConvCpltCallback(hadc); 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Call DMA error callback */ 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferErrorCallback(hdma); 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA half transfer complete callback. ARM GAS /tmp/cce1ybXB.s page 20 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAHalfConvCplt(DMA_HandleTypeDef *hdma) 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conversion complete callback */ 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ConvHalfCpltCallback(hadc); 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA error callback 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAError(DMA_HandleTypeDef *hdma) 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 27 .loc 1 1077 0 28 .cfi_startproc 29 @ args = 0, pretend = 0, frame = 0 30 @ frame_needed = 0, uses_anonymous_args = 0 31 .LVL0: 32 0000 08B5 push {r3, lr} 33 .LCFI0: 34 .cfi_def_cfa_offset 8 35 .cfi_offset 3, -8 36 .cfi_offset 14, -4 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; 37 .loc 1 1078 0 38 0002 806B ldr r0, [r0, #56] 39 .LVL1: 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->State= HAL_ADC_STATE_ERROR_DMA; 40 .loc 1 1079 0 41 0004 4023 movs r3, #64 42 0006 0364 str r3, [r0, #64] 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC error code to DMA error */ 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->ErrorCode |= HAL_ADC_ERROR_DMA; 43 .loc 1 1081 0 44 0008 436C ldr r3, [r0, #68] 45 000a 43F00403 orr r3, r3, #4 46 000e 4364 str r3, [r0, #68] 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ErrorCallback(hadc); 47 .loc 1 1082 0 48 0010 FFF7FEFF bl HAL_ADC_ErrorCallback 49 .LVL2: 50 0014 08BD pop {r3, pc} 51 .cfi_endproc 52 .LFE144: 54 .section .text.ADC_MultiModeDMAHalfConvCplt,"ax",%progbits 55 .align 1 56 .syntax unified 57 .thumb 58 .thumb_func 59 .fpu fpv4-sp-d16 61 ADC_MultiModeDMAHalfConvCplt: ARM GAS /tmp/cce1ybXB.s page 21 62 .LFB143: 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef* hadc = ( ADC_HandleTypeDef* )((DMA_HandleTypeDef* )hdma)->Parent; 63 .loc 1 1064 0 64 .cfi_startproc 65 @ args = 0, pretend = 0, frame = 0 66 @ frame_needed = 0, uses_anonymous_args = 0 67 .LVL3: 68 0000 08B5 push {r3, lr} 69 .LCFI1: 70 .cfi_def_cfa_offset 8 71 .cfi_offset 3, -8 72 .cfi_offset 14, -4 73 .LVL4: 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 74 .loc 1 1067 0 75 0002 806B ldr r0, [r0, #56] 76 .LVL5: 77 0004 FFF7FEFF bl HAL_ADC_ConvHalfCpltCallback 78 .LVL6: 79 0008 08BD pop {r3, pc} 80 .cfi_endproc 81 .LFE143: 83 .section .text.ADC_MultiModeDMAConvCplt,"ax",%progbits 84 .align 1 85 .syntax unified 86 .thumb 87 .thumb_func 88 .fpu fpv4-sp-d16 90 ADC_MultiModeDMAConvCplt: 91 .LFB142: 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 92 .loc 1 1011 0 93 .cfi_startproc 94 @ args = 0, pretend = 0, frame = 0 95 @ frame_needed = 0, uses_anonymous_args = 0 96 .LVL7: 97 0000 08B5 push {r3, lr} 98 .LCFI2: 99 .cfi_def_cfa_offset 8 100 .cfi_offset 3, -8 101 .cfi_offset 14, -4 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 102 .loc 1 1013 0 103 0002 836B ldr r3, [r0, #56] 104 .LVL8: 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 105 .loc 1 1016 0 106 0004 1A6C ldr r2, [r3, #64] 107 0006 12F0500F tst r2, #80 108 000a 26D1 bne .L6 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 109 .loc 1 1019 0 110 000c 1A6C ldr r2, [r3, #64] 111 000e 42F40072 orr r2, r2, #512 112 0012 1A64 str r2, [r3, #64] 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 113 .loc 1 1027 0 ARM GAS /tmp/cce1ybXB.s page 22 114 0014 1A68 ldr r2, [r3] 115 0016 9168 ldr r1, [r2, #8] 116 0018 11F0405F tst r1, #805306368 117 001c 19D1 bne .L7 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 118 .loc 1 1028 0 discriminator 1 119 001e 197E ldrb r1, [r3, #24] @ zero_extendqisi2 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 120 .loc 1 1027 0 discriminator 1 121 0020 B9B9 cbnz r1, .L7 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) ) 122 .loc 1 1029 0 123 0022 D16A ldr r1, [r2, #44] 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 124 .loc 1 1028 0 125 0024 11F4700F tst r1, #15728640 126 0028 03D0 beq .L8 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 127 .loc 1 1030 0 128 002a 9168 ldr r1, [r2, #8] 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) ) 129 .loc 1 1029 0 130 002c 11F4806F tst r1, #1024 131 0030 0FD1 bne .L7 132 .L8: 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 133 .loc 1 1036 0 134 0032 5168 ldr r1, [r2, #4] 135 0034 21F02001 bic r1, r1, #32 136 0038 5160 str r1, [r2, #4] 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 137 .loc 1 1039 0 138 003a 1A6C ldr r2, [r3, #64] 139 003c 22F48072 bic r2, r2, #256 140 0040 1A64 str r2, [r3, #64] 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 141 .loc 1 1041 0 142 0042 1A6C ldr r2, [r3, #64] 143 0044 12F4805F tst r2, #4096 144 0048 03D1 bne .L7 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 145 .loc 1 1043 0 146 004a 1A6C ldr r2, [r3, #64] 147 004c 42F00102 orr r2, r2, #1 148 0050 1A64 str r2, [r3, #64] 149 .L7: 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 150 .loc 1 1048 0 151 0052 1846 mov r0, r3 152 .LVL9: 153 0054 FFF7FEFF bl HAL_ADC_ConvCpltCallback 154 .LVL10: 155 0058 08BD pop {r3, pc} 156 .LVL11: 157 .L6: 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 158 .loc 1 1053 0 ARM GAS /tmp/cce1ybXB.s page 23 159 005a 9B6B ldr r3, [r3, #56] 160 .LVL12: 161 005c DB6C ldr r3, [r3, #76] 162 005e 9847 blx r3 163 .LVL13: 164 0060 08BD pop {r3, pc} 165 .cfi_endproc 166 .LFE142: 168 .section .text.HAL_ADCEx_InjectedStart,"ax",%progbits 169 .align 1 170 .global HAL_ADCEx_InjectedStart 171 .syntax unified 172 .thumb 173 .thumb_func 174 .fpu fpv4-sp-d16 176 HAL_ADCEx_InjectedStart: 177 .LFB130: 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 178 .loc 1 160 0 179 .cfi_startproc 180 @ args = 0, pretend = 0, frame = 8 181 @ frame_needed = 0, uses_anonymous_args = 0 182 @ link register save eliminated. 183 .LVL14: 184 0000 82B0 sub sp, sp, #8 185 .LCFI3: 186 .cfi_def_cfa_offset 8 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 187 .loc 1 161 0 188 0002 0023 movs r3, #0 189 0004 0193 str r3, [sp, #4] 190 .LVL15: 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 191 .loc 1 166 0 192 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 193 000a 012B cmp r3, #1 194 000c 5CD0 beq .L18 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 195 .loc 1 166 0 is_stmt 0 discriminator 2 196 000e 0123 movs r3, #1 197 0010 80F83C30 strb r3, [r0, #60] 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 198 .loc 1 172 0 is_stmt 1 discriminator 2 199 0014 0368 ldr r3, [r0] 200 0016 9A68 ldr r2, [r3, #8] 201 0018 12F0010F tst r2, #1 202 001c 13D1 bne .L13 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 203 .loc 1 175 0 204 001e 9A68 ldr r2, [r3, #8] 205 0020 42F00102 orr r2, r2, #1 206 0024 9A60 str r2, [r3, #8] 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 207 .loc 1 179 0 208 0026 2F4B ldr r3, .L27 209 0028 1B68 ldr r3, [r3] 210 002a 2F4A ldr r2, .L27+4 ARM GAS /tmp/cce1ybXB.s page 24 211 002c A2FB0323 umull r2, r3, r2, r3 212 0030 9B0C lsrs r3, r3, #18 213 0032 03EB4303 add r3, r3, r3, lsl #1 214 0036 0193 str r3, [sp, #4] 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 215 .loc 1 180 0 216 0038 02E0 b .L14 217 .L15: 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 218 .loc 1 182 0 219 003a 019B ldr r3, [sp, #4] 220 003c 013B subs r3, r3, #1 221 003e 0193 str r3, [sp, #4] 222 .L14: 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 223 .loc 1 180 0 224 0040 019B ldr r3, [sp, #4] 225 0042 002B cmp r3, #0 226 0044 F9D1 bne .L15 227 .L13: 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 228 .loc 1 187 0 229 0046 0268 ldr r2, [r0] 230 0048 9368 ldr r3, [r2, #8] 231 004a 13F0010F tst r3, #1 232 004e 3ED0 beq .L19 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 233 .loc 1 192 0 234 0050 036C ldr r3, [r0, #64] 235 0052 23F44053 bic r3, r3, #12288 236 0056 23F00103 bic r3, r3, #1 237 005a 43F48053 orr r3, r3, #4096 238 005e 0364 str r3, [r0, #64] 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 239 .loc 1 200 0 240 0060 036C ldr r3, [r0, #64] 241 0062 13F4807F tst r3, #256 242 0066 01D1 bne .L16 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 243 .loc 1 203 0 244 0068 0023 movs r3, #0 245 006a 4364 str r3, [r0, #68] 246 .L16: 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 247 .loc 1 209 0 248 006c 0023 movs r3, #0 249 006e 80F83C30 strb r3, [r0, #60] 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 250 .loc 1 213 0 251 0072 6FF00403 mvn r3, #4 252 0076 1360 str r3, [r2] 253 .LVL16: 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 254 .loc 1 221 0 255 0078 1C4B ldr r3, .L27+8 256 007a 5B68 ldr r3, [r3, #4] 257 007c 13F01F0F tst r3, #31 ARM GAS /tmp/cce1ybXB.s page 25 258 0080 0ED1 bne .L17 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 259 .loc 1 223 0 260 0082 0268 ldr r2, [r0] 261 0084 9168 ldr r1, [r2, #8] 262 .LVL17: 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(tmp1 && tmp2) 263 .loc 1 224 0 264 0086 5368 ldr r3, [r2, #4] 265 0088 03F48063 and r3, r3, #1024 266 .LVL18: 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 267 .loc 1 225 0 268 008c 11F4401F tst r1, #3145728 269 0090 1FD1 bne .L20 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 270 .loc 1 225 0 is_stmt 0 discriminator 1 271 0092 03BB cbnz r3, .L21 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 272 .loc 1 228 0 is_stmt 1 273 0094 9368 ldr r3, [r2, #8] 274 .LVL19: 275 0096 43F48003 orr r3, r3, #4194304 276 009a 9360 str r3, [r2, #8] 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 277 .loc 1 244 0 278 009c 0020 movs r0, #0 279 .LVL20: 280 009e 14E0 b .L12 281 .LVL21: 282 .L17: 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 283 .loc 1 233 0 284 00a0 0368 ldr r3, [r0] 285 00a2 9A68 ldr r2, [r3, #8] 286 00a4 02F44012 and r2, r2, #3145728 287 .LVL22: 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance == ADC1) && tmp1 && tmp2) 288 .loc 1 234 0 289 00a8 5968 ldr r1, [r3, #4] 290 00aa 01F48061 and r1, r1, #1024 291 .LVL23: 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 292 .loc 1 235 0 293 00ae 1048 ldr r0, .L27+12 294 .LVL24: 295 00b0 8342 cmp r3, r0 296 00b2 01D0 beq .L26 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 297 .loc 1 244 0 298 00b4 0020 movs r0, #0 299 00b6 08E0 b .L12 300 .L26: 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 301 .loc 1 235 0 discriminator 1 302 00b8 7AB9 cbnz r2, .L23 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cce1ybXB.s page 26 303 .loc 1 235 0 is_stmt 0 discriminator 2 304 00ba 81B9 cbnz r1, .L24 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 305 .loc 1 238 0 is_stmt 1 306 00bc 9A68 ldr r2, [r3, #8] 307 .LVL25: 308 00be 42F48002 orr r2, r2, #4194304 309 00c2 9A60 str r2, [r3, #8] 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 310 .loc 1 244 0 311 00c4 0020 movs r0, #0 312 00c6 00E0 b .L12 313 .LVL26: 314 .L18: 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 315 .loc 1 166 0 316 00c8 0220 movs r0, #2 317 .LVL27: 318 .L12: 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 319 .loc 1 245 0 320 00ca 02B0 add sp, sp, #8 321 .LCFI4: 322 .cfi_remember_state 323 .cfi_def_cfa_offset 0 324 @ sp needed 325 00cc 7047 bx lr 326 .LVL28: 327 .L19: 328 .LCFI5: 329 .cfi_restore_state 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 330 .loc 1 244 0 331 00ce 0020 movs r0, #0 332 .LVL29: 333 00d0 FBE7 b .L12 334 .LVL30: 335 .L20: 336 00d2 0020 movs r0, #0 337 .LVL31: 338 00d4 F9E7 b .L12 339 .LVL32: 340 .L21: 341 00d6 0020 movs r0, #0 342 .LVL33: 343 00d8 F7E7 b .L12 344 .LVL34: 345 .L23: 346 00da 0020 movs r0, #0 347 00dc F5E7 b .L12 348 .L24: 349 00de 0020 movs r0, #0 350 00e0 F3E7 b .L12 351 .L28: 352 00e2 00BF .align 2 353 .L27: 354 00e4 00000000 .word SystemCoreClock ARM GAS /tmp/cce1ybXB.s page 27 355 00e8 83DE1B43 .word 1125899907 356 00ec 00230140 .word 1073816320 357 00f0 00200140 .word 1073815552 358 .cfi_endproc 359 .LFE130: 361 .section .text.HAL_ADCEx_InjectedStart_IT,"ax",%progbits 362 .align 1 363 .global HAL_ADCEx_InjectedStart_IT 364 .syntax unified 365 .thumb 366 .thumb_func 367 .fpu fpv4-sp-d16 369 HAL_ADCEx_InjectedStart_IT: 370 .LFB131: 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 371 .loc 1 255 0 372 .cfi_startproc 373 @ args = 0, pretend = 0, frame = 8 374 @ frame_needed = 0, uses_anonymous_args = 0 375 @ link register save eliminated. 376 .LVL35: 377 0000 82B0 sub sp, sp, #8 378 .LCFI6: 379 .cfi_def_cfa_offset 8 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 380 .loc 1 256 0 381 0002 0023 movs r3, #0 382 0004 0193 str r3, [sp, #4] 383 .LVL36: 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 384 .loc 1 261 0 385 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 386 000a 012B cmp r3, #1 387 000c 61D0 beq .L36 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 388 .loc 1 261 0 is_stmt 0 discriminator 2 389 000e 0123 movs r3, #1 390 0010 80F83C30 strb r3, [r0, #60] 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 391 .loc 1 267 0 is_stmt 1 discriminator 2 392 0014 0368 ldr r3, [r0] 393 0016 9A68 ldr r2, [r3, #8] 394 0018 12F0010F tst r2, #1 395 001c 13D1 bne .L31 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 396 .loc 1 270 0 397 001e 9A68 ldr r2, [r3, #8] 398 0020 42F00102 orr r2, r2, #1 399 0024 9A60 str r2, [r3, #8] 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 400 .loc 1 274 0 401 0026 314B ldr r3, .L45 402 0028 1B68 ldr r3, [r3] 403 002a 314A ldr r2, .L45+4 404 002c A2FB0323 umull r2, r3, r2, r3 405 0030 9B0C lsrs r3, r3, #18 406 0032 03EB4303 add r3, r3, r3, lsl #1 ARM GAS /tmp/cce1ybXB.s page 28 407 0036 0193 str r3, [sp, #4] 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 408 .loc 1 275 0 409 0038 02E0 b .L32 410 .L33: 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 411 .loc 1 277 0 412 003a 019B ldr r3, [sp, #4] 413 003c 013B subs r3, r3, #1 414 003e 0193 str r3, [sp, #4] 415 .L32: 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 416 .loc 1 275 0 417 0040 019B ldr r3, [sp, #4] 418 0042 002B cmp r3, #0 419 0044 F9D1 bne .L33 420 .L31: 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 421 .loc 1 282 0 422 0046 0268 ldr r2, [r0] 423 0048 9368 ldr r3, [r2, #8] 424 004a 13F0010F tst r3, #1 425 004e 43D0 beq .L37 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 426 .loc 1 287 0 427 0050 036C ldr r3, [r0, #64] 428 0052 23F44053 bic r3, r3, #12288 429 0056 23F00103 bic r3, r3, #1 430 005a 43F48053 orr r3, r3, #4096 431 005e 0364 str r3, [r0, #64] 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 432 .loc 1 295 0 433 0060 036C ldr r3, [r0, #64] 434 0062 13F4807F tst r3, #256 435 0066 01D1 bne .L34 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 436 .loc 1 298 0 437 0068 0023 movs r3, #0 438 006a 4364 str r3, [r0, #68] 439 .L34: 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 440 .loc 1 304 0 441 006c 0023 movs r3, #0 442 006e 80F83C30 strb r3, [r0, #60] 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 443 .loc 1 308 0 444 0072 6FF00403 mvn r3, #4 445 0076 1360 str r3, [r2] 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 446 .loc 1 311 0 447 0078 0268 ldr r2, [r0] 448 007a 5368 ldr r3, [r2, #4] 449 007c 43F08003 orr r3, r3, #128 450 0080 5360 str r3, [r2, #4] 451 .LVL37: 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 452 .loc 1 319 0 ARM GAS /tmp/cce1ybXB.s page 29 453 0082 1C4B ldr r3, .L45+8 454 0084 5B68 ldr r3, [r3, #4] 455 0086 13F01F0F tst r3, #31 456 008a 0ED1 bne .L35 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 457 .loc 1 321 0 458 008c 0268 ldr r2, [r0] 459 008e 9168 ldr r1, [r2, #8] 460 .LVL38: 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if(tmp1 && tmp2) 461 .loc 1 322 0 462 0090 5368 ldr r3, [r2, #4] 463 0092 03F48063 and r3, r3, #1024 464 .LVL39: 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 465 .loc 1 323 0 466 0096 11F4401F tst r1, #3145728 467 009a 1FD1 bne .L38 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 468 .loc 1 323 0 is_stmt 0 discriminator 1 469 009c 03BB cbnz r3, .L39 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 470 .loc 1 326 0 is_stmt 1 471 009e 9368 ldr r3, [r2, #8] 472 .LVL40: 473 00a0 43F48003 orr r3, r3, #4194304 474 00a4 9360 str r3, [r2, #8] 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 475 .loc 1 342 0 476 00a6 0020 movs r0, #0 477 .LVL41: 478 00a8 14E0 b .L30 479 .LVL42: 480 .L35: 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 481 .loc 1 331 0 482 00aa 0368 ldr r3, [r0] 483 00ac 9A68 ldr r2, [r3, #8] 484 00ae 02F44012 and r2, r2, #3145728 485 .LVL43: 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if((hadc->Instance == ADC1) && tmp1 && tmp2) 486 .loc 1 332 0 487 00b2 5968 ldr r1, [r3, #4] 488 00b4 01F48061 and r1, r1, #1024 489 .LVL44: 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 490 .loc 1 333 0 491 00b8 0F48 ldr r0, .L45+12 492 .LVL45: 493 00ba 8342 cmp r3, r0 494 00bc 01D0 beq .L44 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 495 .loc 1 342 0 496 00be 0020 movs r0, #0 497 00c0 08E0 b .L30 498 .L44: 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cce1ybXB.s page 30 499 .loc 1 333 0 discriminator 1 500 00c2 7AB9 cbnz r2, .L41 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 501 .loc 1 333 0 is_stmt 0 discriminator 2 502 00c4 81B9 cbnz r1, .L42 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 503 .loc 1 336 0 is_stmt 1 504 00c6 9A68 ldr r2, [r3, #8] 505 .LVL46: 506 00c8 42F48002 orr r2, r2, #4194304 507 00cc 9A60 str r2, [r3, #8] 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 508 .loc 1 342 0 509 00ce 0020 movs r0, #0 510 00d0 00E0 b .L30 511 .LVL47: 512 .L36: 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 513 .loc 1 261 0 514 00d2 0220 movs r0, #2 515 .LVL48: 516 .L30: 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 517 .loc 1 343 0 518 00d4 02B0 add sp, sp, #8 519 .LCFI7: 520 .cfi_remember_state 521 .cfi_def_cfa_offset 0 522 @ sp needed 523 00d6 7047 bx lr 524 .LVL49: 525 .L37: 526 .LCFI8: 527 .cfi_restore_state 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 528 .loc 1 342 0 529 00d8 0020 movs r0, #0 530 .LVL50: 531 00da FBE7 b .L30 532 .LVL51: 533 .L38: 534 00dc 0020 movs r0, #0 535 .LVL52: 536 00de F9E7 b .L30 537 .LVL53: 538 .L39: 539 00e0 0020 movs r0, #0 540 .LVL54: 541 00e2 F7E7 b .L30 542 .LVL55: 543 .L41: 544 00e4 0020 movs r0, #0 545 00e6 F5E7 b .L30 546 .L42: 547 00e8 0020 movs r0, #0 548 00ea F3E7 b .L30 549 .L46: ARM GAS /tmp/cce1ybXB.s page 31 550 .align 2 551 .L45: 552 00ec 00000000 .word SystemCoreClock 553 00f0 83DE1B43 .word 1125899907 554 00f4 00230140 .word 1073816320 555 00f8 00200140 .word 1073815552 556 .cfi_endproc 557 .LFE131: 559 .section .text.HAL_ADCEx_InjectedStop,"ax",%progbits 560 .align 1 561 .global HAL_ADCEx_InjectedStop 562 .syntax unified 563 .thumb 564 .thumb_func 565 .fpu fpv4-sp-d16 567 HAL_ADCEx_InjectedStop: 568 .LFB132: 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 569 .loc 1 358 0 570 .cfi_startproc 571 @ args = 0, pretend = 0, frame = 0 572 @ frame_needed = 0, uses_anonymous_args = 0 573 @ link register save eliminated. 574 .LVL56: 575 0000 0346 mov r3, r0 576 .LVL57: 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 577 .loc 1 365 0 578 0002 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 579 0006 012A cmp r2, #1 580 0008 29D0 beq .L51 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 581 .loc 1 365 0 is_stmt 0 discriminator 2 582 000a 0122 movs r2, #1 583 000c 80F83C20 strb r2, [r0, #60] 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) 584 .loc 1 373 0 is_stmt 1 discriminator 2 585 0010 026C ldr r2, [r0, #64] 586 0012 12F4807F tst r2, #256 587 0016 17D1 bne .L49 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 588 .loc 1 374 0 discriminator 1 589 0018 0268 ldr r2, [r0] 590 001a 5168 ldr r1, [r2, #4] 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) 591 .loc 1 373 0 discriminator 1 592 001c 11F4806F tst r1, #1024 593 0020 12D1 bne .L49 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 594 .loc 1 378 0 595 0022 9168 ldr r1, [r2, #8] 596 0024 21F00101 bic r1, r1, #1 597 0028 9160 str r1, [r2, #8] 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 598 .loc 1 381 0 599 002a 0268 ldr r2, [r0] 600 002c 9268 ldr r2, [r2, #8] ARM GAS /tmp/cce1ybXB.s page 32 601 002e 12F0010F tst r2, #1 602 0032 12D1 bne .L52 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 603 .loc 1 384 0 604 0034 026C ldr r2, [r0, #64] 605 0036 22F48852 bic r2, r2, #4352 606 003a 22F00102 bic r2, r2, #1 607 003e 42F00102 orr r2, r2, #1 608 0042 0264 str r2, [r0, #64] 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 609 .loc 1 359 0 610 0044 0020 movs r0, #0 611 .LVL58: 612 0046 04E0 b .L50 613 .LVL59: 614 .L49: 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 615 .loc 1 392 0 616 0048 1A6C ldr r2, [r3, #64] 617 004a 42F02002 orr r2, r2, #32 618 004e 1A64 str r2, [r3, #64] 619 .LVL60: 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 620 .loc 1 394 0 621 0050 0120 movs r0, #1 622 .LVL61: 623 .L50: 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 624 .loc 1 398 0 625 0052 0022 movs r2, #0 626 0054 83F83C20 strb r2, [r3, #60] 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 627 .loc 1 401 0 628 0058 7047 bx lr 629 .LVL62: 630 .L52: 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 631 .loc 1 359 0 632 005a 0020 movs r0, #0 633 .LVL63: 634 005c F9E7 b .L50 635 .LVL64: 636 .L51: 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 637 .loc 1 365 0 638 005e 0220 movs r0, #2 639 .LVL65: 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 640 .loc 1 402 0 641 0060 7047 bx lr 642 .cfi_endproc 643 .LFE132: 645 .section .text.HAL_ADCEx_InjectedPollForConversion,"ax",%progbits 646 .align 1 647 .global HAL_ADCEx_InjectedPollForConversion 648 .syntax unified 649 .thumb ARM GAS /tmp/cce1ybXB.s page 33 650 .thumb_func 651 .fpu fpv4-sp-d16 653 HAL_ADCEx_InjectedPollForConversion: 654 .LFB133: 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tickstart = 0U; 655 .loc 1 412 0 656 .cfi_startproc 657 @ args = 0, pretend = 0, frame = 0 658 @ frame_needed = 0, uses_anonymous_args = 0 659 .LVL66: 660 0000 70B5 push {r4, r5, r6, lr} 661 .LCFI9: 662 .cfi_def_cfa_offset 16 663 .cfi_offset 4, -16 664 .cfi_offset 5, -12 665 .cfi_offset 6, -8 666 .cfi_offset 14, -4 667 0002 0446 mov r4, r0 668 0004 0D46 mov r5, r1 669 .LVL67: 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 670 .loc 1 416 0 671 0006 FFF7FEFF bl HAL_GetTick 672 .LVL68: 673 000a 0646 mov r6, r0 674 .LVL69: 675 .L55: 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 676 .loc 1 419 0 677 000c 2368 ldr r3, [r4] 678 000e 1A68 ldr r2, [r3] 679 0010 12F0040F tst r2, #4 680 0014 0FD1 bne .L67 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 681 .loc 1 422 0 682 0016 B5F1FF3F cmp r5, #-1 683 001a F7D0 beq .L55 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 684 .loc 1 424 0 685 001c 25B1 cbz r5, .L56 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 686 .loc 1 424 0 is_stmt 0 discriminator 1 687 001e FFF7FEFF bl HAL_GetTick 688 .LVL70: 689 0022 801B subs r0, r0, r6 690 0024 8542 cmp r5, r0 691 0026 F1D2 bcs .L55 692 .L56: 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 693 .loc 1 426 0 is_stmt 1 694 0028 0423 movs r3, #4 695 002a 2364 str r3, [r4, #64] 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 696 .loc 1 428 0 697 002c 0023 movs r3, #0 698 002e 84F83C30 strb r3, [r4, #60] 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cce1ybXB.s page 34 699 .loc 1 429 0 700 0032 0320 movs r0, #3 701 0034 70BD pop {r4, r5, r6, pc} 702 .LVL71: 703 .L67: 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 704 .loc 1 435 0 705 0036 6FF00C02 mvn r2, #12 706 003a 1A60 str r2, [r3] 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 707 .loc 1 438 0 708 003c 236C ldr r3, [r4, #64] 709 003e 43F40053 orr r3, r3, #8192 710 0042 2364 str r3, [r4, #64] 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 711 .loc 1 446 0 712 0044 2368 ldr r3, [r4] 713 0046 9A68 ldr r2, [r3, #8] 714 0048 12F4401F tst r2, #3145728 715 004c 1FD1 bne .L60 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) && 716 .loc 1 447 0 discriminator 1 717 004e 9A6B ldr r2, [r3, #56] 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 718 .loc 1 446 0 discriminator 1 719 0050 12F4401F tst r2, #3145728 720 0054 03D0 beq .L59 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 721 .loc 1 448 0 722 0056 9A68 ldr r2, [r3, #8] 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS) ) && 723 .loc 1 447 0 724 0058 12F4806F tst r2, #1024 725 005c 19D1 bne .L61 726 .L59: 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 727 .loc 1 449 0 728 005e 5A68 ldr r2, [r3, #4] 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 729 .loc 1 448 0 730 0060 12F4806F tst r2, #1024 731 0064 17D1 bne .L62 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) ) ) ) 732 .loc 1 450 0 733 0066 9B68 ldr r3, [r3, #8] 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 734 .loc 1 449 0 735 0068 13F0405F tst r3, #805306368 736 006c 15D1 bne .L63 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 737 .loc 1 451 0 738 006e 237E ldrb r3, [r4, #24] @ zero_extendqisi2 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) ) ) ) 739 .loc 1 450 0 740 0070 ABB9 cbnz r3, .L64 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 741 .loc 1 454 0 ARM GAS /tmp/cce1ybXB.s page 35 742 0072 236C ldr r3, [r4, #64] 743 0074 23F48053 bic r3, r3, #4096 744 0078 2364 str r3, [r4, #64] 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 745 .loc 1 456 0 746 007a 236C ldr r3, [r4, #64] 747 007c 13F4807F tst r3, #256 748 0080 0FD1 bne .L65 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 749 .loc 1 458 0 750 0082 236C ldr r3, [r4, #64] 751 0084 43F00103 orr r3, r3, #1 752 0088 2364 str r3, [r4, #64] 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 753 .loc 1 463 0 754 008a 0020 movs r0, #0 755 008c 70BD pop {r4, r5, r6, pc} 756 .LVL72: 757 .L60: 758 008e 0020 movs r0, #0 759 0090 70BD pop {r4, r5, r6, pc} 760 .LVL73: 761 .L61: 762 0092 0020 movs r0, #0 763 0094 70BD pop {r4, r5, r6, pc} 764 .LVL74: 765 .L62: 766 0096 0020 movs r0, #0 767 0098 70BD pop {r4, r5, r6, pc} 768 .LVL75: 769 .L63: 770 009a 0020 movs r0, #0 771 009c 70BD pop {r4, r5, r6, pc} 772 .LVL76: 773 .L64: 774 009e 0020 movs r0, #0 775 00a0 70BD pop {r4, r5, r6, pc} 776 .LVL77: 777 .L65: 778 00a2 0020 movs r0, #0 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 779 .loc 1 464 0 780 00a4 70BD pop {r4, r5, r6, pc} 781 .cfi_endproc 782 .LFE133: 784 .section .text.HAL_ADCEx_InjectedStop_IT,"ax",%progbits 785 .align 1 786 .global HAL_ADCEx_InjectedStop_IT 787 .syntax unified 788 .thumb 789 .thumb_func 790 .fpu fpv4-sp-d16 792 HAL_ADCEx_InjectedStop_IT: 793 .LFB134: 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 794 .loc 1 479 0 795 .cfi_startproc ARM GAS /tmp/cce1ybXB.s page 36 796 @ args = 0, pretend = 0, frame = 0 797 @ frame_needed = 0, uses_anonymous_args = 0 798 @ link register save eliminated. 799 .LVL78: 800 0000 0346 mov r3, r0 801 .LVL79: 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 802 .loc 1 486 0 803 0002 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 804 0006 012A cmp r2, #1 805 0008 2DD0 beq .L72 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 806 .loc 1 486 0 is_stmt 0 discriminator 2 807 000a 0122 movs r2, #1 808 000c 80F83C20 strb r2, [r0, #60] 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) 809 .loc 1 494 0 is_stmt 1 discriminator 2 810 0010 026C ldr r2, [r0, #64] 811 0012 12F4807F tst r2, #256 812 0016 1BD1 bne .L70 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 813 .loc 1 495 0 discriminator 1 814 0018 0268 ldr r2, [r0] 815 001a 5168 ldr r1, [r2, #4] 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) ) 816 .loc 1 494 0 discriminator 1 817 001c 11F4806F tst r1, #1024 818 0020 16D1 bne .L70 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 819 .loc 1 499 0 820 0022 9168 ldr r1, [r2, #8] 821 0024 21F00101 bic r1, r1, #1 822 0028 9160 str r1, [r2, #8] 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 823 .loc 1 502 0 824 002a 0268 ldr r2, [r0] 825 002c 9168 ldr r1, [r2, #8] 826 002e 11F0010F tst r1, #1 827 0032 16D1 bne .L73 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 828 .loc 1 505 0 829 0034 5168 ldr r1, [r2, #4] 830 0036 21F08001 bic r1, r1, #128 831 003a 5160 str r1, [r2, #4] 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 832 .loc 1 508 0 833 003c 026C ldr r2, [r0, #64] 834 003e 22F48852 bic r2, r2, #4352 835 0042 22F00102 bic r2, r2, #1 836 0046 42F00102 orr r2, r2, #1 837 004a 0264 str r2, [r0, #64] 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 838 .loc 1 480 0 839 004c 0020 movs r0, #0 840 .LVL80: 841 004e 04E0 b .L71 842 .LVL81: ARM GAS /tmp/cce1ybXB.s page 37 843 .L70: 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 844 .loc 1 516 0 845 0050 1A6C ldr r2, [r3, #64] 846 0052 42F02002 orr r2, r2, #32 847 0056 1A64 str r2, [r3, #64] 848 .LVL82: 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 849 .loc 1 518 0 850 0058 0120 movs r0, #1 851 .LVL83: 852 .L71: 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 853 .loc 1 522 0 854 005a 0022 movs r2, #0 855 005c 83F83C20 strb r2, [r3, #60] 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 856 .loc 1 525 0 857 0060 7047 bx lr 858 .LVL84: 859 .L73: 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 860 .loc 1 480 0 861 0062 0020 movs r0, #0 862 .LVL85: 863 0064 F9E7 b .L71 864 .LVL86: 865 .L72: 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 866 .loc 1 486 0 867 0066 0220 movs r0, #2 868 .LVL87: 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 869 .loc 1 526 0 870 0068 7047 bx lr 871 .cfi_endproc 872 .LFE134: 874 .section .text.HAL_ADCEx_InjectedGetValue,"ax",%progbits 875 .align 1 876 .global HAL_ADCEx_InjectedGetValue 877 .syntax unified 878 .thumb 879 .thumb_func 880 .fpu fpv4-sp-d16 882 HAL_ADCEx_InjectedGetValue: 883 .LFB135: 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t tmp = 0U; 884 .loc 1 541 0 885 .cfi_startproc 886 @ args = 0, pretend = 0, frame = 8 887 @ frame_needed = 0, uses_anonymous_args = 0 888 @ link register save eliminated. 889 .LVL88: 890 0000 82B0 sub sp, sp, #8 891 .LCFI10: 892 .cfi_def_cfa_offset 8 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cce1ybXB.s page 38 893 .loc 1 542 0 894 0002 0023 movs r3, #0 895 0004 0193 str r3, [sp, #4] 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 896 .loc 1 549 0 897 0006 0368 ldr r3, [r0] 898 0008 6FF00402 mvn r2, #4 899 000c 1A60 str r2, [r3] 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 900 .loc 1 552 0 901 000e 0139 subs r1, r1, #1 902 .LVL89: 903 0010 0329 cmp r1, #3 904 0012 06D8 bhi .L75 905 0014 DFE801F0 tbb [pc, r1] 906 .L77: 907 0018 10 .byte (.L76-.L77)/2 908 0019 0C .byte (.L78-.L77)/2 909 001a 08 .byte (.L79-.L77)/2 910 001b 02 .byte (.L80-.L77)/2 911 .p2align 1 912 .L80: 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 913 .loc 1 556 0 914 001c 0368 ldr r3, [r0] 915 001e 9B6C ldr r3, [r3, #72] 916 0020 0193 str r3, [sp, #4] 917 .L75: 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 918 .loc 1 577 0 919 0022 0198 ldr r0, [sp, #4] 920 .LVL90: 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 921 .loc 1 578 0 922 0024 02B0 add sp, sp, #8 923 .LCFI11: 924 .cfi_remember_state 925 .cfi_def_cfa_offset 0 926 @ sp needed 927 0026 7047 bx lr 928 .LVL91: 929 .L79: 930 .LCFI12: 931 .cfi_restore_state 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 932 .loc 1 561 0 933 0028 0368 ldr r3, [r0] 934 002a 5B6C ldr r3, [r3, #68] 935 002c 0193 str r3, [sp, #4] 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_2: 936 .loc 1 563 0 937 002e F8E7 b .L75 938 .L78: 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 939 .loc 1 566 0 940 0030 0368 ldr r3, [r0] 941 0032 1B6C ldr r3, [r3, #64] ARM GAS /tmp/cce1ybXB.s page 39 942 0034 0193 str r3, [sp, #4] 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_1: 943 .loc 1 568 0 944 0036 F4E7 b .L75 945 .L76: 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 946 .loc 1 571 0 947 0038 0368 ldr r3, [r0] 948 003a DB6B ldr r3, [r3, #60] 949 003c 0193 str r3, [sp, #4] 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 950 .loc 1 573 0 951 003e F0E7 b .L75 952 .cfi_endproc 953 .LFE135: 955 .section .text.HAL_ADCEx_MultiModeStart_DMA,"ax",%progbits 956 .align 1 957 .global HAL_ADCEx_MultiModeStart_DMA 958 .syntax unified 959 .thumb 960 .thumb_func 961 .fpu fpv4-sp-d16 963 HAL_ADCEx_MultiModeStart_DMA: 964 .LFB136: 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 965 .loc 1 592 0 966 .cfi_startproc 967 @ args = 0, pretend = 0, frame = 8 968 @ frame_needed = 0, uses_anonymous_args = 0 969 .LVL92: 970 0000 10B5 push {r4, lr} 971 .LCFI13: 972 .cfi_def_cfa_offset 8 973 .cfi_offset 4, -8 974 .cfi_offset 14, -4 975 0002 82B0 sub sp, sp, #8 976 .LCFI14: 977 .cfi_def_cfa_offset 16 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 978 .loc 1 593 0 979 0004 0023 movs r3, #0 980 0006 0193 str r3, [sp, #4] 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 981 .loc 1 602 0 982 0008 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 983 000c 012B cmp r3, #1 984 000e 72D0 beq .L92 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 985 .loc 1 602 0 is_stmt 0 discriminator 2 986 0010 0123 movs r3, #1 987 0012 80F83C30 strb r3, [r0, #60] 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 988 .loc 1 606 0 is_stmt 1 discriminator 2 989 0016 0368 ldr r3, [r0] 990 0018 9C68 ldr r4, [r3, #8] 991 001a 14F0010F tst r4, #1 992 001e 13D1 bne .L84 ARM GAS /tmp/cce1ybXB.s page 40 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 993 .loc 1 609 0 994 0020 9C68 ldr r4, [r3, #8] 995 0022 44F00104 orr r4, r4, #1 996 0026 9C60 str r4, [r3, #8] 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while(counter != 0U) 997 .loc 1 613 0 998 0028 364B ldr r3, .L96 999 002a 1C68 ldr r4, [r3] 1000 002c 364B ldr r3, .L96+4 1001 002e A3FB0434 umull r3, r4, r3, r4 1002 0032 A40C lsrs r4, r4, #18 1003 0034 04EB4404 add r4, r4, r4, lsl #1 1004 0038 0194 str r4, [sp, #4] 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1005 .loc 1 614 0 1006 003a 02E0 b .L85 1007 .L86: 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1008 .loc 1 616 0 1009 003c 019C ldr r4, [sp, #4] 1010 003e 013C subs r4, r4, #1 1011 0040 0194 str r4, [sp, #4] 1012 .L85: 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1013 .loc 1 614 0 1014 0042 019C ldr r4, [sp, #4] 1015 0044 002C cmp r4, #0 1016 0046 F9D1 bne .L86 1017 .L84: 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1018 .loc 1 621 0 1019 0048 0368 ldr r3, [r0] 1020 004a 9C68 ldr r4, [r3, #8] 1021 004c 14F0010F tst r4, #1 1022 0050 54D0 beq .L93 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1023 .loc 1 626 0 1024 0052 046C ldr r4, [r0, #64] 1025 0054 24F4E064 bic r4, r4, #1792 1026 0058 24F00104 bic r4, r4, #1 1027 005c 44F48074 orr r4, r4, #256 1028 0060 0464 str r4, [r0, #64] 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1029 .loc 1 632 0 1030 0062 5B68 ldr r3, [r3, #4] 1031 0064 13F4806F tst r3, #1024 1032 0068 05D0 beq .L87 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1033 .loc 1 634 0 1034 006a 036C ldr r3, [r0, #64] 1035 006c 23F44053 bic r3, r3, #12288 1036 0070 43F48053 orr r3, r3, #4096 1037 0074 0364 str r3, [r0, #64] 1038 .L87: 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1039 .loc 1 638 0 ARM GAS /tmp/cce1ybXB.s page 41 1040 0076 036C ldr r3, [r0, #64] 1041 0078 13F4805F tst r3, #4096 1042 007c 32D0 beq .L88 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1043 .loc 1 641 0 1044 007e 436C ldr r3, [r0, #68] 1045 0080 23F00603 bic r3, r3, #6 1046 0084 4364 str r3, [r0, #68] 1047 .L89: 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1048 .loc 1 652 0 1049 0086 0023 movs r3, #0 1050 0088 80F83C30 strb r3, [r0, #60] 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1051 .loc 1 655 0 1052 008c 836B ldr r3, [r0, #56] 1053 008e 1F4C ldr r4, .L96+8 1054 0090 DC63 str r4, [r3, #60] 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1055 .loc 1 658 0 1056 0092 836B ldr r3, [r0, #56] 1057 0094 1E4C ldr r4, .L96+12 1058 0096 1C64 str r4, [r3, #64] 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1059 .loc 1 661 0 1060 0098 836B ldr r3, [r0, #56] 1061 009a 1E4C ldr r4, .L96+16 1062 009c DC64 str r4, [r3, #76] 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1063 .loc 1 668 0 1064 009e 0368 ldr r3, [r0] 1065 00a0 6FF00204 mvn r4, #2 1066 00a4 1C60 str r4, [r3] 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1067 .loc 1 671 0 1068 00a6 0468 ldr r4, [r0] 1069 00a8 6368 ldr r3, [r4, #4] 1070 00aa 43F08063 orr r3, r3, #67108864 1071 00ae 6360 str r3, [r4, #4] 1072 .LVL93: 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1073 .loc 1 678 0 1074 00b0 90F83030 ldrb r3, [r0, #48] @ zero_extendqisi2 1075 00b4 CBB1 cbz r3, .L90 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1076 .loc 1 681 0 1077 00b6 184C ldr r4, .L96+20 1078 00b8 6368 ldr r3, [r4, #4] 1079 00ba 43F40053 orr r3, r3, #8192 1080 00be 6360 str r3, [r4, #4] 1081 .L91: 1082 00c0 1346 mov r3, r2 1083 00c2 0A46 mov r2, r1 1084 .LVL94: 1085 00c4 0446 mov r4, r0 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1086 .loc 1 690 0 ARM GAS /tmp/cce1ybXB.s page 42 1087 00c6 1549 ldr r1, .L96+24 1088 .LVL95: 1089 00c8 806B ldr r0, [r0, #56] 1090 .LVL96: 1091 00ca FFF7FEFF bl HAL_DMA_Start_IT 1092 .LVL97: 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1093 .loc 1 693 0 1094 00ce 2368 ldr r3, [r4] 1095 00d0 9A68 ldr r2, [r3, #8] 1096 00d2 12F0405F tst r2, #805306368 1097 00d6 13D1 bne .L94 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1098 .loc 1 696 0 1099 00d8 9A68 ldr r2, [r3, #8] 1100 00da 42F08042 orr r2, r2, #1073741824 1101 00de 9A60 str r2, [r3, #8] 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1102 .loc 1 701 0 1103 00e0 0020 movs r0, #0 1104 00e2 09E0 b .L83 1105 .LVL98: 1106 .L88: 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1107 .loc 1 646 0 1108 00e4 0023 movs r3, #0 1109 00e6 4364 str r3, [r0, #68] 1110 00e8 CDE7 b .L89 1111 .LVL99: 1112 .L90: 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1113 .loc 1 686 0 1114 00ea 0B4C ldr r4, .L96+20 1115 00ec 6368 ldr r3, [r4, #4] 1116 00ee 23F40053 bic r3, r3, #8192 1117 00f2 6360 str r3, [r4, #4] 1118 00f4 E4E7 b .L91 1119 .LVL100: 1120 .L92: 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1121 .loc 1 602 0 1122 00f6 0220 movs r0, #2 1123 .LVL101: 1124 .L83: 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1125 .loc 1 702 0 1126 00f8 02B0 add sp, sp, #8 1127 .LCFI15: 1128 .cfi_remember_state 1129 .cfi_def_cfa_offset 8 1130 @ sp needed 1131 00fa 10BD pop {r4, pc} 1132 .LVL102: 1133 .L93: 1134 .LCFI16: 1135 .cfi_restore_state 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cce1ybXB.s page 43 1136 .loc 1 701 0 1137 00fc 0020 movs r0, #0 1138 .LVL103: 1139 00fe FBE7 b .L83 1140 .LVL104: 1141 .L94: 1142 0100 0020 movs r0, #0 1143 0102 F9E7 b .L83 1144 .L97: 1145 .align 2 1146 .L96: 1147 0104 00000000 .word SystemCoreClock 1148 0108 83DE1B43 .word 1125899907 1149 010c 00000000 .word ADC_MultiModeDMAConvCplt 1150 0110 00000000 .word ADC_MultiModeDMAHalfConvCplt 1151 0114 00000000 .word ADC_MultiModeDMAError 1152 0118 00230140 .word 1073816320 1153 011c 08230140 .word 1073816328 1154 .cfi_endproc 1155 .LFE136: 1157 .section .text.HAL_ADCEx_MultiModeStop_DMA,"ax",%progbits 1158 .align 1 1159 .global HAL_ADCEx_MultiModeStop_DMA 1160 .syntax unified 1161 .thumb 1162 .thumb_func 1163 .fpu fpv4-sp-d16 1165 HAL_ADCEx_MultiModeStop_DMA: 1166 .LFB137: 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1167 .loc 1 711 0 1168 .cfi_startproc 1169 @ args = 0, pretend = 0, frame = 0 1170 @ frame_needed = 0, uses_anonymous_args = 0 1171 .LVL105: 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1172 .loc 1 719 0 1173 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1174 0004 012B cmp r3, #1 1175 0006 29D0 beq .L101 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1176 .loc 1 711 0 discriminator 2 1177 0008 10B5 push {r4, lr} 1178 .LCFI17: 1179 .cfi_def_cfa_offset 8 1180 .cfi_offset 4, -8 1181 .cfi_offset 14, -4 1182 000a 0446 mov r4, r0 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1183 .loc 1 719 0 discriminator 2 1184 000c 0123 movs r3, #1 1185 000e 80F83C30 strb r3, [r0, #60] 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1186 .loc 1 723 0 discriminator 2 1187 0012 0268 ldr r2, [r0] 1188 0014 9368 ldr r3, [r2, #8] 1189 0016 23F00103 bic r3, r3, #1 ARM GAS /tmp/cce1ybXB.s page 44 1190 001a 9360 str r3, [r2, #8] 1191 .LVL106: 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1192 .loc 1 731 0 discriminator 2 1193 001c 0368 ldr r3, [r0] 1194 001e 9B68 ldr r3, [r3, #8] 1195 0020 13F0010F tst r3, #1 1196 0024 04D0 beq .L107 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1197 .loc 1 712 0 1198 0026 0020 movs r0, #0 1199 .LVL107: 1200 .L100: 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1201 .loc 1 750 0 1202 0028 0023 movs r3, #0 1203 002a 84F83C30 strb r3, [r4, #60] 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1204 .loc 1 753 0 1205 002e 10BD pop {r4, pc} 1206 .LVL108: 1207 .L107: 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1208 .loc 1 734 0 1209 0030 0B4A ldr r2, .L108 1210 0032 5368 ldr r3, [r2, #4] 1211 0034 23F40053 bic r3, r3, #8192 1212 0038 5360 str r3, [r2, #4] 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1213 .loc 1 738 0 1214 003a 806B ldr r0, [r0, #56] 1215 .LVL109: 1216 003c FFF7FEFF bl HAL_DMA_Abort 1217 .LVL110: 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1218 .loc 1 741 0 1219 0040 2268 ldr r2, [r4] 1220 0042 5368 ldr r3, [r2, #4] 1221 0044 23F08063 bic r3, r3, #67108864 1222 0048 5360 str r3, [r2, #4] 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1223 .loc 1 744 0 1224 004a 236C ldr r3, [r4, #64] 1225 004c 23F48853 bic r3, r3, #4352 1226 0050 23F00103 bic r3, r3, #1 1227 0054 43F00103 orr r3, r3, #1 1228 0058 2364 str r3, [r4, #64] 1229 005a E5E7 b .L100 1230 .LVL111: 1231 .L101: 1232 .LCFI18: 1233 .cfi_def_cfa_offset 0 1234 .cfi_restore 4 1235 .cfi_restore 14 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1236 .loc 1 719 0 1237 005c 0220 movs r0, #2 ARM GAS /tmp/cce1ybXB.s page 45 1238 .LVL112: 1239 005e 7047 bx lr 1240 .L109: 1241 .align 2 1242 .L108: 1243 0060 00230140 .word 1073816320 1244 .cfi_endproc 1245 .LFE137: 1247 .section .text.HAL_ADCEx_MultiModeGetValue,"ax",%progbits 1248 .align 1 1249 .global HAL_ADCEx_MultiModeGetValue 1250 .syntax unified 1251 .thumb 1252 .thumb_func 1253 .fpu fpv4-sp-d16 1255 HAL_ADCEx_MultiModeGetValue: 1256 .LFB138: 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1257 .loc 1 764 0 1258 .cfi_startproc 1259 @ args = 0, pretend = 0, frame = 0 1260 @ frame_needed = 0, uses_anonymous_args = 0 1261 @ link register save eliminated. 1262 .LVL113: 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1263 .loc 1 773 0 1264 0000 014B ldr r3, .L111 1265 0002 9868 ldr r0, [r3, #8] 1266 .LVL114: 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1267 .loc 1 774 0 1268 0004 7047 bx lr 1269 .L112: 1270 0006 00BF .align 2 1271 .L111: 1272 0008 00230140 .word 1073816320 1273 .cfi_endproc 1274 .LFE138: 1276 .section .text.HAL_ADCEx_InjectedConvCpltCallback,"ax",%progbits 1277 .align 1 1278 .weak HAL_ADCEx_InjectedConvCpltCallback 1279 .syntax unified 1280 .thumb 1281 .thumb_func 1282 .fpu fpv4-sp-d16 1284 HAL_ADCEx_InjectedConvCpltCallback: 1285 .LFB139: 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Prevent unused argument(s) compilation warning */ 1286 .loc 1 783 0 1287 .cfi_startproc 1288 @ args = 0, pretend = 0, frame = 0 1289 @ frame_needed = 0, uses_anonymous_args = 0 1290 @ link register save eliminated. 1291 .LVL115: 1292 0000 7047 bx lr 1293 .cfi_endproc 1294 .LFE139: ARM GAS /tmp/cce1ybXB.s page 46 1296 .section .text.HAL_ADCEx_InjectedConfigChannel,"ax",%progbits 1297 .align 1 1298 .global HAL_ADCEx_InjectedConfigChannel 1299 .syntax unified 1300 .thumb 1301 .thumb_func 1302 .fpu fpv4-sp-d16 1304 HAL_ADCEx_InjectedConfigChannel: 1305 .LFB140: 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1306 .loc 1 800 0 1307 .cfi_startproc 1308 @ args = 0, pretend = 0, frame = 0 1309 @ frame_needed = 0, uses_anonymous_args = 0 1310 @ link register save eliminated. 1311 .LVL116: 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1312 .loc 1 829 0 1313 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1314 0004 012B cmp r3, #1 1315 0006 00F0F980 beq .L131 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1316 .loc 1 800 0 discriminator 2 1317 000a 30B4 push {r4, r5} 1318 .LCFI19: 1319 .cfi_def_cfa_offset 8 1320 .cfi_offset 4, -8 1321 .cfi_offset 5, -4 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1322 .loc 1 829 0 discriminator 2 1323 000c 0123 movs r3, #1 1324 000e 80F83C30 strb r3, [r0, #60] 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1325 .loc 1 832 0 discriminator 2 1326 0012 0B68 ldr r3, [r1] 1327 0014 092B cmp r3, #9 1328 0016 7DD9 bls .L116 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1329 .loc 1 835 0 1330 0018 0568 ldr r5, [r0] 1331 001a EA68 ldr r2, [r5, #12] 1332 001c 9BB2 uxth r3, r3 1333 001e 03EB4303 add r3, r3, r3, lsl #1 1334 0022 1E3B subs r3, r3, #30 1335 0024 0724 movs r4, #7 1336 0026 04FA03F3 lsl r3, r4, r3 1337 002a 22EA0303 bic r3, r2, r3 1338 002e EB60 str r3, [r5, #12] 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1339 .loc 1 838 0 1340 0030 0568 ldr r5, [r0] 1341 0032 EA68 ldr r2, [r5, #12] 1342 0034 8C68 ldr r4, [r1, #8] 1343 0036 0B88 ldrh r3, [r1] 1344 0038 03EB4303 add r3, r3, r3, lsl #1 1345 003c 1E3B subs r3, r3, #30 1346 003e 04FA03F3 lsl r3, r4, r3 ARM GAS /tmp/cce1ybXB.s page 47 1347 0042 1343 orrs r3, r3, r2 1348 0044 EB60 str r3, [r5, #12] 1349 .L117: 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 1350 .loc 1 850 0 1351 0046 0268 ldr r2, [r0] 1352 0048 936B ldr r3, [r2, #56] 1353 004a 23F44013 bic r3, r3, #3145728 1354 004e 9363 str r3, [r2, #56] 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1355 .loc 1 851 0 1356 0050 0468 ldr r4, [r0] 1357 0052 A36B ldr r3, [r4, #56] 1358 0054 0A69 ldr r2, [r1, #16] 1359 0056 013A subs r2, r2, #1 1360 0058 43EA0253 orr r3, r3, r2, lsl #20 1361 005c A363 str r3, [r4, #56] 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1362 .loc 1 856 0 1363 005e 0568 ldr r5, [r0] 1364 0060 AA6B ldr r2, [r5, #56] 1365 0062 4B68 ldr r3, [r1, #4] 1366 0064 0C69 ldr r4, [r1, #16] 1367 0066 1B1B subs r3, r3, r4 1368 0068 DBB2 uxtb r3, r3 1369 006a 0333 adds r3, r3, #3 1370 006c DBB2 uxtb r3, r3 1371 006e 03EB8303 add r3, r3, r3, lsl #2 1372 0072 1F24 movs r4, #31 1373 0074 04FA03F3 lsl r3, r4, r3 1374 0078 22EA0303 bic r3, r2, r3 1375 007c AB63 str r3, [r5, #56] 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1376 .loc 1 859 0 1377 007e 0568 ldr r5, [r0] 1378 0080 AA6B ldr r2, [r5, #56] 1379 0082 4B68 ldr r3, [r1, #4] 1380 0084 0C69 ldr r4, [r1, #16] 1381 0086 1B1B subs r3, r3, r4 1382 0088 DBB2 uxtb r3, r3 1383 008a 0333 adds r3, r3, #3 1384 008c DBB2 uxtb r3, r3 1385 008e 03EB8303 add r3, r3, r3, lsl #2 1386 0092 0C88 ldrh r4, [r1] 1387 0094 04FA03F3 lsl r3, r4, r3 1388 0098 1343 orrs r3, r3, r2 1389 009a AB63 str r3, [r5, #56] 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1390 .loc 1 866 0 1391 009c 8A69 ldr r2, [r1, #24] 1392 009e 584B ldr r3, .L140 1393 00a0 9A42 cmp r2, r3 1394 00a2 4DD0 beq .L118 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 1395 .loc 1 869 0 1396 00a4 0268 ldr r2, [r0] 1397 00a6 9368 ldr r3, [r2, #8] ARM GAS /tmp/cce1ybXB.s page 48 1398 00a8 23F47023 bic r3, r3, #983040 1399 00ac 9360 str r3, [r2, #8] 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1400 .loc 1 870 0 1401 00ae 0268 ldr r2, [r0] 1402 00b0 9368 ldr r3, [r2, #8] 1403 00b2 8C69 ldr r4, [r1, #24] 1404 00b4 2343 orrs r3, r3, r4 1405 00b6 9360 str r3, [r2, #8] 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 1406 .loc 1 873 0 1407 00b8 0268 ldr r2, [r0] 1408 00ba 9368 ldr r3, [r2, #8] 1409 00bc 23F44013 bic r3, r3, #3145728 1410 00c0 9360 str r3, [r2, #8] 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1411 .loc 1 874 0 1412 00c2 0268 ldr r2, [r0] 1413 00c4 9368 ldr r3, [r2, #8] 1414 00c6 CC69 ldr r4, [r1, #28] 1415 00c8 2343 orrs r3, r3, r4 1416 00ca 9360 str r3, [r2, #8] 1417 .L119: 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1418 .loc 1 883 0 1419 00cc 4B7D ldrb r3, [r1, #21] @ zero_extendqisi2 1420 00ce 002B cmp r3, #0 1421 00d0 41D0 beq .L120 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1422 .loc 1 886 0 1423 00d2 0268 ldr r2, [r0] 1424 00d4 5368 ldr r3, [r2, #4] 1425 00d6 43F48063 orr r3, r3, #1024 1426 00da 5360 str r3, [r2, #4] 1427 .L121: 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1428 .loc 1 894 0 1429 00dc 0B7D ldrb r3, [r1, #20] @ zero_extendqisi2 1430 00de 002B cmp r3, #0 1431 00e0 3FD0 beq .L122 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1432 .loc 1 897 0 1433 00e2 0268 ldr r2, [r0] 1434 00e4 5368 ldr r3, [r2, #4] 1435 00e6 43F48053 orr r3, r3, #4096 1436 00ea 5360 str r3, [r2, #4] 1437 .L123: 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1438 .loc 1 905 0 1439 00ec 4B68 ldr r3, [r1, #4] 1440 00ee 022B cmp r3, #2 1441 00f0 57D0 beq .L125 1442 00f2 032B cmp r3, #3 1443 00f4 62D0 beq .L126 1444 00f6 012B cmp r3, #1 1445 00f8 39D0 beq .L137 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; ARM GAS /tmp/cce1ybXB.s page 49 1446 .loc 1 924 0 1447 00fa 0268 ldr r2, [r0] 1448 00fc 136A ldr r3, [r2, #32] 1449 00fe 23F47F63 bic r3, r3, #4080 1450 0102 23F00F03 bic r3, r3, #15 1451 0106 1362 str r3, [r2, #32] 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1452 .loc 1 925 0 1453 0108 0268 ldr r2, [r0] 1454 010a 136A ldr r3, [r2, #32] 1455 010c CC68 ldr r4, [r1, #12] 1456 010e 2343 orrs r3, r3, r4 1457 0110 1362 str r3, [r2, #32] 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1458 .loc 1 926 0 1459 0112 38E0 b .L128 1460 .L116: 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1461 .loc 1 843 0 1462 0114 0568 ldr r5, [r0] 1463 0116 2A69 ldr r2, [r5, #16] 1464 0118 9BB2 uxth r3, r3 1465 011a 03EB4303 add r3, r3, r3, lsl #1 1466 011e 0724 movs r4, #7 1467 0120 04FA03F3 lsl r3, r4, r3 1468 0124 22EA0303 bic r3, r2, r3 1469 0128 2B61 str r3, [r5, #16] 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1470 .loc 1 846 0 1471 012a 0568 ldr r5, [r0] 1472 012c 2A69 ldr r2, [r5, #16] 1473 012e 8C68 ldr r4, [r1, #8] 1474 0130 0B88 ldrh r3, [r1] 1475 0132 03EB4303 add r3, r3, r3, lsl #1 1476 0136 04FA03F3 lsl r3, r4, r3 1477 013a 1343 orrs r3, r3, r2 1478 013c 2B61 str r3, [r5, #16] 1479 013e 82E7 b .L117 1480 .L118: 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 1481 .loc 1 879 0 1482 0140 0268 ldr r2, [r0] 1483 0142 9368 ldr r3, [r2, #8] 1484 0144 23F47023 bic r3, r3, #983040 1485 0148 9360 str r3, [r2, #8] 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1486 .loc 1 880 0 1487 014a 0268 ldr r2, [r0] 1488 014c 9368 ldr r3, [r2, #8] 1489 014e 23F44013 bic r3, r3, #3145728 1490 0152 9360 str r3, [r2, #8] 1491 0154 BAE7 b .L119 1492 .L120: 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1493 .loc 1 891 0 1494 0156 0268 ldr r2, [r0] 1495 0158 5368 ldr r3, [r2, #4] ARM GAS /tmp/cce1ybXB.s page 50 1496 015a 23F48063 bic r3, r3, #1024 1497 015e 5360 str r3, [r2, #4] 1498 0160 BCE7 b .L121 1499 .L122: 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1500 .loc 1 902 0 1501 0162 0268 ldr r2, [r0] 1502 0164 5368 ldr r3, [r2, #4] 1503 0166 23F48053 bic r3, r3, #4096 1504 016a 5360 str r3, [r2, #4] 1505 016c BEE7 b .L123 1506 .L137: 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 1507 .loc 1 909 0 1508 016e 0268 ldr r2, [r0] 1509 0170 5369 ldr r3, [r2, #20] 1510 0172 23F47F63 bic r3, r3, #4080 1511 0176 23F00F03 bic r3, r3, #15 1512 017a 5361 str r3, [r2, #20] 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1513 .loc 1 910 0 1514 017c 0268 ldr r2, [r0] 1515 017e 5369 ldr r3, [r2, #20] 1516 0180 CC68 ldr r4, [r1, #12] 1517 0182 2343 orrs r3, r3, r4 1518 0184 5361 str r3, [r2, #20] 1519 .L128: 1520 .LVL117: 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1521 .loc 1 935 0 1522 0186 0268 ldr r2, [r0] 1523 0188 1E4B ldr r3, .L140+4 1524 018a 9A42 cmp r2, r3 1525 018c 23D0 beq .L138 1526 .L129: 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1527 .loc 1 942 0 1528 018e 0268 ldr r2, [r0] 1529 0190 1C4B ldr r3, .L140+4 1530 0192 9A42 cmp r2, r3 1531 0194 28D0 beq .L139 1532 .L130: 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1533 .loc 1 949 0 1534 0196 0023 movs r3, #0 1535 0198 80F83C30 strb r3, [r0, #60] 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1536 .loc 1 952 0 1537 019c 1846 mov r0, r3 1538 .LVL118: 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1539 .loc 1 953 0 1540 019e 30BC pop {r4, r5} 1541 .LCFI20: 1542 .cfi_remember_state 1543 .cfi_restore 5 1544 .cfi_restore 4 ARM GAS /tmp/cce1ybXB.s page 51 1545 .cfi_def_cfa_offset 0 1546 01a0 7047 bx lr 1547 .LVL119: 1548 .L125: 1549 .LCFI21: 1550 .cfi_restore_state 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 1551 .loc 1 914 0 1552 01a2 0268 ldr r2, [r0] 1553 01a4 9369 ldr r3, [r2, #24] 1554 01a6 23F47F63 bic r3, r3, #4080 1555 01aa 23F00F03 bic r3, r3, #15 1556 01ae 9361 str r3, [r2, #24] 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1557 .loc 1 915 0 1558 01b0 0268 ldr r2, [r0] 1559 01b2 9369 ldr r3, [r2, #24] 1560 01b4 CC68 ldr r4, [r1, #12] 1561 01b6 2343 orrs r3, r3, r4 1562 01b8 9361 str r3, [r2, #24] 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 3U: 1563 .loc 1 916 0 1564 01ba E4E7 b .L128 1565 .L126: 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 1566 .loc 1 919 0 1567 01bc 0268 ldr r2, [r0] 1568 01be D369 ldr r3, [r2, #28] 1569 01c0 23F47F63 bic r3, r3, #4080 1570 01c4 23F00F03 bic r3, r3, #15 1571 01c8 D361 str r3, [r2, #28] 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1572 .loc 1 920 0 1573 01ca 0268 ldr r2, [r0] 1574 01cc D369 ldr r3, [r2, #28] 1575 01ce CC68 ldr r4, [r1, #12] 1576 01d0 2343 orrs r3, r3, r4 1577 01d2 D361 str r3, [r2, #28] 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 1578 .loc 1 921 0 1579 01d4 D7E7 b .L128 1580 .LVL120: 1581 .L138: 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1582 .loc 1 935 0 discriminator 1 1583 01d6 0B68 ldr r3, [r1] 1584 01d8 122B cmp r3, #18 1585 01da D8D1 bne .L129 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1586 .loc 1 938 0 1587 01dc 0A4A ldr r2, .L140+8 1588 01de 5368 ldr r3, [r2, #4] 1589 01e0 43F48003 orr r3, r3, #4194304 1590 01e4 5360 str r3, [r2, #4] 1591 01e6 D2E7 b .L129 1592 .L139: 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cce1ybXB.s page 52 1593 .loc 1 942 0 discriminator 1 1594 01e8 0B68 ldr r3, [r1] 1595 01ea 103B subs r3, r3, #16 1596 01ec 012B cmp r3, #1 1597 01ee D2D8 bhi .L130 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1598 .loc 1 945 0 1599 01f0 054A ldr r2, .L140+8 1600 01f2 5368 ldr r3, [r2, #4] 1601 01f4 43F40003 orr r3, r3, #8388608 1602 01f8 5360 str r3, [r2, #4] 1603 01fa CCE7 b .L130 1604 .LVL121: 1605 .L131: 1606 .LCFI22: 1607 .cfi_def_cfa_offset 0 1608 .cfi_restore 4 1609 .cfi_restore 5 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1610 .loc 1 829 0 1611 01fc 0220 movs r0, #2 1612 .LVL122: 1613 01fe 7047 bx lr 1614 .L141: 1615 .align 2 1616 .L140: 1617 0200 01000F00 .word 983041 1618 0204 00200140 .word 1073815552 1619 0208 00230140 .word 1073816320 1620 .cfi_endproc 1621 .LFE140: 1623 .section .text.HAL_ADCEx_MultiModeConfigChannel,"ax",%progbits 1624 .align 1 1625 .global HAL_ADCEx_MultiModeConfigChannel 1626 .syntax unified 1627 .thumb 1628 .thumb_func 1629 .fpu fpv4-sp-d16 1631 HAL_ADCEx_MultiModeConfigChannel: 1632 .LFB141: 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1633 .loc 1 964 0 1634 .cfi_startproc 1635 @ args = 0, pretend = 0, frame = 0 1636 @ frame_needed = 0, uses_anonymous_args = 0 1637 @ link register save eliminated. 1638 .LVL123: 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1639 .loc 1 974 0 1640 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1641 0004 012B cmp r3, #1 1642 0006 23D0 beq .L144 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1643 .loc 1 964 0 discriminator 2 1644 0008 10B4 push {r4} 1645 .LCFI23: 1646 .cfi_def_cfa_offset 4 ARM GAS /tmp/cce1ybXB.s page 53 1647 .cfi_offset 4, -4 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1648 .loc 1 974 0 discriminator 2 1649 000a 0123 movs r3, #1 1650 000c 80F83C30 strb r3, [r0, #60] 1651 .LVL124: 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 1652 .loc 1 982 0 discriminator 2 1653 0010 104B ldr r3, .L149 1654 0012 5A68 ldr r2, [r3, #4] 1655 0014 22F01F02 bic r2, r2, #31 1656 0018 5A60 str r2, [r3, #4] 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1657 .loc 1 983 0 discriminator 2 1658 001a 5A68 ldr r2, [r3, #4] 1659 001c 0C68 ldr r4, [r1] 1660 001e 2243 orrs r2, r2, r4 1661 0020 5A60 str r2, [r3, #4] 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 1662 .loc 1 986 0 discriminator 2 1663 0022 5A68 ldr r2, [r3, #4] 1664 0024 22F44042 bic r2, r2, #49152 1665 0028 5A60 str r2, [r3, #4] 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1666 .loc 1 987 0 discriminator 2 1667 002a 5A68 ldr r2, [r3, #4] 1668 002c 4C68 ldr r4, [r1, #4] 1669 002e 2243 orrs r2, r2, r4 1670 0030 5A60 str r2, [r3, #4] 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 1671 .loc 1 990 0 discriminator 2 1672 0032 5A68 ldr r2, [r3, #4] 1673 0034 22F47062 bic r2, r2, #3840 1674 0038 5A60 str r2, [r3, #4] 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1675 .loc 1 991 0 discriminator 2 1676 003a 5A68 ldr r2, [r3, #4] 1677 003c 8968 ldr r1, [r1, #8] 1678 .LVL125: 1679 003e 0A43 orrs r2, r2, r1 1680 0040 5A60 str r2, [r3, #4] 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1681 .loc 1 994 0 discriminator 2 1682 0042 0023 movs r3, #0 1683 0044 80F83C30 strb r3, [r0, #60] 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1684 .loc 1 997 0 discriminator 2 1685 0048 1846 mov r0, r3 1686 .LVL126: 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1687 .loc 1 998 0 discriminator 2 1688 004a 5DF8044B ldr r4, [sp], #4 1689 .LCFI24: 1690 .cfi_restore 4 1691 .cfi_def_cfa_offset 0 1692 004e 7047 bx lr 1693 .LVL127: ARM GAS /tmp/cce1ybXB.s page 54 1694 .L144: 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1695 .loc 1 974 0 1696 0050 0220 movs r0, #2 1697 .LVL128: 1698 0052 7047 bx lr 1699 .L150: 1700 .align 2 1701 .L149: 1702 0054 00230140 .word 1073816320 1703 .cfi_endproc 1704 .LFE141: 1706 .text 1707 .Letext0: 1708 .file 2 "/usr/include/newlib/machine/_default_types.h" 1709 .file 3 "/usr/include/newlib/sys/_stdint.h" 1710 .file 4 "Drivers/CMSIS/Include/core_cm4.h" 1711 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 1712 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h" 1713 .file 7 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 1714 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 1715 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h" 1716 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h" 1717 .file 11 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h" 1718 .file 12 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" ARM GAS /tmp/cce1ybXB.s page 55 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f4xx_hal_adc_ex.c /tmp/cce1ybXB.s:18 .text.ADC_MultiModeDMAError:0000000000000000 $t /tmp/cce1ybXB.s:24 .text.ADC_MultiModeDMAError:0000000000000000 ADC_MultiModeDMAError /tmp/cce1ybXB.s:55 .text.ADC_MultiModeDMAHalfConvCplt:0000000000000000 $t /tmp/cce1ybXB.s:61 .text.ADC_MultiModeDMAHalfConvCplt:0000000000000000 ADC_MultiModeDMAHalfConvCplt /tmp/cce1ybXB.s:84 .text.ADC_MultiModeDMAConvCplt:0000000000000000 $t /tmp/cce1ybXB.s:90 .text.ADC_MultiModeDMAConvCplt:0000000000000000 ADC_MultiModeDMAConvCplt /tmp/cce1ybXB.s:169 .text.HAL_ADCEx_InjectedStart:0000000000000000 $t /tmp/cce1ybXB.s:176 .text.HAL_ADCEx_InjectedStart:0000000000000000 HAL_ADCEx_InjectedStart /tmp/cce1ybXB.s:354 .text.HAL_ADCEx_InjectedStart:00000000000000e4 $d /tmp/cce1ybXB.s:362 .text.HAL_ADCEx_InjectedStart_IT:0000000000000000 $t /tmp/cce1ybXB.s:369 .text.HAL_ADCEx_InjectedStart_IT:0000000000000000 HAL_ADCEx_InjectedStart_IT /tmp/cce1ybXB.s:552 .text.HAL_ADCEx_InjectedStart_IT:00000000000000ec $d /tmp/cce1ybXB.s:560 .text.HAL_ADCEx_InjectedStop:0000000000000000 $t /tmp/cce1ybXB.s:567 .text.HAL_ADCEx_InjectedStop:0000000000000000 HAL_ADCEx_InjectedStop /tmp/cce1ybXB.s:646 .text.HAL_ADCEx_InjectedPollForConversion:0000000000000000 $t /tmp/cce1ybXB.s:653 .text.HAL_ADCEx_InjectedPollForConversion:0000000000000000 HAL_ADCEx_InjectedPollForConversion /tmp/cce1ybXB.s:785 .text.HAL_ADCEx_InjectedStop_IT:0000000000000000 $t /tmp/cce1ybXB.s:792 .text.HAL_ADCEx_InjectedStop_IT:0000000000000000 HAL_ADCEx_InjectedStop_IT /tmp/cce1ybXB.s:875 .text.HAL_ADCEx_InjectedGetValue:0000000000000000 $t /tmp/cce1ybXB.s:882 .text.HAL_ADCEx_InjectedGetValue:0000000000000000 HAL_ADCEx_InjectedGetValue /tmp/cce1ybXB.s:907 .text.HAL_ADCEx_InjectedGetValue:0000000000000018 $d /tmp/cce1ybXB.s:911 .text.HAL_ADCEx_InjectedGetValue:000000000000001c $t /tmp/cce1ybXB.s:956 .text.HAL_ADCEx_MultiModeStart_DMA:0000000000000000 $t /tmp/cce1ybXB.s:963 .text.HAL_ADCEx_MultiModeStart_DMA:0000000000000000 HAL_ADCEx_MultiModeStart_DMA /tmp/cce1ybXB.s:1147 .text.HAL_ADCEx_MultiModeStart_DMA:0000000000000104 $d /tmp/cce1ybXB.s:1158 .text.HAL_ADCEx_MultiModeStop_DMA:0000000000000000 $t /tmp/cce1ybXB.s:1165 .text.HAL_ADCEx_MultiModeStop_DMA:0000000000000000 HAL_ADCEx_MultiModeStop_DMA /tmp/cce1ybXB.s:1243 .text.HAL_ADCEx_MultiModeStop_DMA:0000000000000060 $d /tmp/cce1ybXB.s:1248 .text.HAL_ADCEx_MultiModeGetValue:0000000000000000 $t /tmp/cce1ybXB.s:1255 .text.HAL_ADCEx_MultiModeGetValue:0000000000000000 HAL_ADCEx_MultiModeGetValue /tmp/cce1ybXB.s:1272 .text.HAL_ADCEx_MultiModeGetValue:0000000000000008 $d /tmp/cce1ybXB.s:1277 .text.HAL_ADCEx_InjectedConvCpltCallback:0000000000000000 $t /tmp/cce1ybXB.s:1284 .text.HAL_ADCEx_InjectedConvCpltCallback:0000000000000000 HAL_ADCEx_InjectedConvCpltCallback /tmp/cce1ybXB.s:1297 .text.HAL_ADCEx_InjectedConfigChannel:0000000000000000 $t /tmp/cce1ybXB.s:1304 .text.HAL_ADCEx_InjectedConfigChannel:0000000000000000 HAL_ADCEx_InjectedConfigChannel /tmp/cce1ybXB.s:1617 .text.HAL_ADCEx_InjectedConfigChannel:0000000000000200 $d /tmp/cce1ybXB.s:1624 .text.HAL_ADCEx_MultiModeConfigChannel:0000000000000000 $t /tmp/cce1ybXB.s:1631 .text.HAL_ADCEx_MultiModeConfigChannel:0000000000000000 HAL_ADCEx_MultiModeConfigChannel /tmp/cce1ybXB.s:1702 .text.HAL_ADCEx_MultiModeConfigChannel:0000000000000054 $d .debug_frame:0000000000000010 $d UNDEFINED SYMBOLS HAL_ADC_ErrorCallback HAL_ADC_ConvHalfCpltCallback HAL_ADC_ConvCpltCallback SystemCoreClock HAL_GetTick HAL_DMA_Start_IT HAL_DMA_Abort