ARM GAS /tmp/cckeduGo.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal_adc_ex.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c" 20 .section .text.ADC_MultiModeDMAError,"ax",%progbits 21 .align 1 22 .syntax unified 23 .thumb 24 .thumb_func 26 ADC_MultiModeDMAError: 27 .LVL0: 28 .LFB253: 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 **** ****************************************************************************** 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @attention 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * Copyright (c) 2017 STMicroelectronics. 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * All rights reserved. 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * This software is licensed under terms that can be found in the LICENSE file 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * in the root directory of this software component. 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ****************************************************************************** 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @verbatim 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ============================================================================== 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ##### How to use this driver ##### 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ============================================================================== 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#)Initialize the ADC low level resources by implementing the HAL_ADC_MspInit(): 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) Enable the ADC interface clock using __HAL_RCC_ADC_CLK_ENABLE() 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) ADC pins configuration 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the clock for the ADC GPIOs using the following function: 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_RCC_GPIOx_CLK_ENABLE() 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure these ADC pins in analog mode using HAL_GPIO_Init() ARM GAS /tmp/cckeduGo.s page 2 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (##) In case of using interrupts (e.g. HAL_ADC_Start_IT()) 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure the ADC interrupt priority using HAL_NVIC_SetPriority() 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the ADC IRQ handler using HAL_NVIC_EnableIRQ() 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) In ADC IRQ handler, call HAL_ADC_IRQHandler() 35: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()) 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Enable the DMAx interface clock using __HAL_RCC_DMAx_CLK_ENABLE() 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure and enable two DMA streams stream for managing data 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** transfer from peripheral to memory (output stream) 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Associate the initialized DMA handle to the ADC DMA handle 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** using __HAL_LINKDMA() 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+++) Configure the priority and enable the NVIC for the transfer complete 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** interrupt on the two DMA Streams. The output stream should have higher 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** priority than the input stream. 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Configure the ADC Prescaler, conversion resolution and data alignment 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** using the HAL_ADC_Init() function. 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Configure the ADC Injected channels group features, use HAL_ADC_Init() 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** and HAL_ADC_ConfigChannel() functions. 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (#) Three operation modes are available within this driver: 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Polling mode IO operation *** 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ================================= 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_InjectedStart() 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Wait for end of conversion using HAL_ADC_PollForConversion(), at this stage 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** user can specify the value of timeout according to his end application 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) To read the ADC converted values, use the HAL_ADCEx_InjectedGetValue() function. 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop the ADC peripheral using HAL_ADCEx_InjectedStop() 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Interrupt mode IO operation *** 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =================================== 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start the ADC peripheral using HAL_ADCEx_InjectedStart_IT() 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Use HAL_ADC_IRQHandler() called under ADC_IRQHandler() Interrupt subroutine 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) At ADC end of conversion HAL_ADCEx_InjectedConvCpltCallback() function is executed and u 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedConvCpltCallbac 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) In case of ADC Error, HAL_ADCEx_InjectedErrorCallback() function is executed and user ca 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** add his own code by customization of function pointer HAL_ADCEx_InjectedErrorCallback 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop the ADC peripheral using HAL_ADCEx_InjectedStop_IT() 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** *** Multi mode ADCs Regular channels configuration *** 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ====================================================== 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Select the Multi mode ADC regular channels features (dual or triple mode) 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** and configure the DMA mode using HAL_ADCEx_MultiModeConfigChannel() functions. 77: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 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** of data to be transferred at each end of conversion 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Read the ADCs converted values using the HAL_ADCEx_MultiModeGetValue() function. 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @endverbatim 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Includes ------------------------------------------------------------------*/ 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #include "stm32f4xx_hal.h" 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 3 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @addtogroup STM32F4xx_HAL_Driver 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @defgroup ADCEx ADCEx 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief ADC Extended driver modules 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 **** #ifdef HAL_ADC_MODULE_ENABLED 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private typedef -----------------------------------------------------------*/ 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private define ------------------------------------------------------------*/ 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private macro -------------------------------------------------------------*/ 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private variables ---------------------------------------------------------*/ 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @addtogroup ADCEx_Private_Functions 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Private function prototypes -----------------------------------------------*/ 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAConvCplt(DMA_HandleTypeDef *hdma); 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAError(DMA_HandleTypeDef *hdma); 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAHalfConvCplt(DMA_HandleTypeDef *hdma); 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @} 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Exported functions --------------------------------------------------------*/ 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** @defgroup ADCEx_Exported_Functions ADC Exported Functions 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 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 **** /** @defgroup ADCEx_Exported_Functions_Group1 Extended features functions 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Extended features functions 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @verbatim 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =============================================================================== 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ##### Extended features functions ##### 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** =============================================================================== 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** [..] This section provides functions allowing to: 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start conversion of injected channel. 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop conversion of injected channel. 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Start multimode and enable DMA transfer. 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Stop multimode and disable DMA transfer. 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Get result of injected channel conversion. 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Get result of multimode conversion. 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Configure injected channels. 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (+) Configure multimode. 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** @endverbatim 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @{ 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Enables the selected ADC software start conversion of the injected channels. 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status ARM GAS /tmp/cckeduGo.s page 4 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStart(ADC_HandleTypeDef *hadc) 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the ADC peripheral */ 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for ADC stabilization time */ 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to injected group conversion results */ 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to injected operation */ 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_INJ_BUSY); 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if a regular conversion is ongoing */ 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On this device, there is no ADC error code fields related to */ 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* conversions on group injected only. In case of conversion on */ 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* going on group regular, no error code is reset. */ 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 5 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if Multimode enabled */ 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC error code to ADC IP internal error */ 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 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 **** * @brief Enables the interrupt and starts ADC conversion of injected channels. 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status. 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStart_IT(ADC_HandleTypeDef *hadc) 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the ADC peripheral */ ARM GAS /tmp/cckeduGo.s page 6 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for ADC stabilization time */ 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to injected group conversion results */ 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to injected operation */ 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_INJ_BUSY); 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if a regular conversion is ongoing */ 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On this device, there is no ADC error code fields related to */ 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* conversions on group injected only. In case of conversion on */ 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* going on group regular, no error code is reset. */ 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable end of conversion interrupt for injected channels */ 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_JEOC); 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if Multimode enabled */ 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(tmpADC_Common->CCR, ADC_CCR_MULTI)) 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cckeduGo.s page 7 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp1 = HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_JEXTEN); 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for injected group */ 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= ADC_CR2_JSWSTART; 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC error code to ADC IP internal error */ 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Stop conversion of injected channels. Disable ADC peripheral if 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * no regular conversion is on going. 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If ADC must be disabled and if conversion is on going on 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * regular group, function HAL_ADC_Stop must be used to stop both 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * injected and regular groups, and disable the ADC. 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If injected group mode auto-injection is enabled, 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * function HAL_ADC_Stop must be used. 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note In case of auto-injection mode, HAL_ADC_Stop must be used. 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc ADC handle 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStop(ADC_HandleTypeDef *hadc) 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion and disable ADC peripheral */ 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conditioned to: */ 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - No conversion on the other group (regular group) is intended to */ ARM GAS /tmp/cckeduGo.s page 8 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* continue (injected and regular groups stop conversion and ADC disable */ 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* are common) */ 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - In case of auto-injection mode, HAL_ADC_Stop must be used. */ 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (((hadc->State & HAL_ADC_STATE_REG_BUSY) == RESET) && 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_ERROR; 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Poll for injected conversion complete 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param Timeout Timeout value in millisecond. 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedPollForConversion(ADC_HandleTypeDef *hadc, uint32_t Timeout) 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tickstart = 0U; 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Get tick */ 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tickstart = HAL_GetTick(); 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check End of conversion flag */ 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_JEOC))) 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check for the Timeout */ 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (Timeout != HAL_MAX_DELAY) 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* New check to avoid false timeout detection in case of preemption */ ARM GAS /tmp/cckeduGo.s page 9 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (!(__HAL_ADC_GET_FLAG(hadc, ADC_FLAG_JEOC))) 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->State = HAL_ADC_STATE_TIMEOUT; 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag */ 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JSTRT | ADC_FLAG_JEOC); 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine */ 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_INJ_EOC); 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Determine whether any further conversion upcoming on group injected */ 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by external trigger, continuous mode or scan sequence on going. */ 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* The test of scan sequence on going is done either with scan */ 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* sequence disabled or with end of conversion flag set to */ 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* of end of sequence. */ 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (ADC_IS_SOFTWARE_START_INJECTED(hadc) && 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_INJ_BUSY); 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_REG_BUSY)) 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return ADC state */ 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Stop conversion of injected channels, disable interruption of 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * end-of-conversion. Disable ADC peripheral if no regular conversion 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * is on going. 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If ADC must be disabled and if conversion is on going on 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * regular group, function HAL_ADC_Stop must be used to stop both 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * injected and regular groups, and disable the ADC. 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note If injected group mode auto-injection is enabled, 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * function HAL_ADC_Stop must be used. 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc ADC handle 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedStop_IT(ADC_HandleTypeDef *hadc) 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cckeduGo.s page 10 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion and disable ADC peripheral */ 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conditioned to: */ 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - No conversion on the other group (regular group) is intended to */ 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* continue (injected and regular groups stop conversion and ADC disable */ 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* are common) */ 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - In case of auto-injection mode, HAL_ADC_Stop must be used. */ 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (((hadc->State & HAL_ADC_STATE_REG_BUSY) == RESET) && 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC end of conversion interrupt for injected channels */ 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_JEOC); 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_CONFIG); 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_ERROR; 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 **** /* Process unlocked */ 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Gets the converted value from data register of injected channel. 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param InjectedRank the ADC injected rank. 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * This parameter can be one of the following values: 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_1: Injected Channel1 selected 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_2: Injected Channel2 selected 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_3: Injected Channel3 selected ARM GAS /tmp/cckeduGo.s page 11 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @arg ADC_INJECTED_RANK_4: Injected Channel4 selected 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t HAL_ADCEx_InjectedGetValue(ADC_HandleTypeDef *hadc, uint32_t InjectedRank) 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t tmp = 0U; 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_RANK(InjectedRank)); 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear injected group conversion flag to have similar behaviour as */ 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* regular group: reading data register also clears end of conversion flag. */ 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_JEOC); 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return the selected ADC converted value */ 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** switch (InjectedRank) 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_4: 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR4; 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_3: 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR3; 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_2: 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR2; 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_1: 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = hadc->Instance->JDR1; 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp; 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 588: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 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @note Caution: This function must be used only with the ADC master. 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 594: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 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param Length The length of data to be transferred from ADC peripheral to memory. 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 598: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 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; ARM GAS /tmp/cckeduGo.s page 12 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.ContinuousConvMode)); 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC peripheral is disabled in order to enable it and wait during 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** Tstab time the ADC's stabilization */ 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance->CR2 & ADC_CR2_ADON) != ADC_CR2_ADON) 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the Peripheral */ 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE(hadc); 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Delay for temperature sensor stabilization time */ 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Compute number of CPU cycles to wait for */ 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter = (ADC_STAB_DELAY_US * (SystemCoreClock / 1000000U)); 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** counter--; 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Start conversion if ADC is effectively enabled */ 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_SET(hadc->Instance->CR2, ADC_CR2_ADON)) 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Clear state bitfield related to regular group conversion results */ 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* - Set state bitfield related to regular group operation */ 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY); 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* If conversions on group regular are also triggering group injected, */ 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* update ADC state. */ 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (READ_BIT(hadc->Instance->CR1, ADC_CR1_JAUTO) != RESET) 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 641: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); 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* State machine update: Check if an injected conversion is ongoing */ 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_SET(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC error code fields related to conversions on group regular */ 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->ErrorCode, (HAL_ADC_ERROR_OVR | HAL_ADC_ERROR_DMA)); 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset ADC all error code fields */ 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_CLEAR_ERRORCODE(hadc); 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Unlock before starting ADC conversions: in case of potential */ ARM GAS /tmp/cckeduGo.s page 13 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* interruption, to let the process to ADC IRQ Handler. */ 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA transfer complete callback */ 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferCpltCallback = ADC_MultiModeDMAConvCplt; 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA half transfer complete callback */ 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferHalfCpltCallback = ADC_MultiModeDMAHalfConvCplt; 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the DMA error callback */ 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferErrorCallback = ADC_MultiModeDMAError ; 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Manage ADC and DMA start: ADC overrun interruption, DMA start, ADC */ 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* start (in case of SW start): */ 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear regular group conversion flag and overrun flag */ 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (To ensure of no unknown state from potential previous ADC operations) */ 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_CLEAR_FLAG(hadc, ADC_FLAG_EOC); 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable ADC overrun interrupt */ 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_ENABLE_IT(hadc, ADC_IT_OVR); 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (hadc->Init.DMAContinuousRequests != DISABLE) 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC DMA request after last transfer */ 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_DDS; 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC EOC rising on each regular channel conversion */ 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~ADC_CCR_DDS; 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the DMA Stream */ 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_DMA_Start_IT(hadc->DMA_Handle, (uint32_t)&tmpADC_Common->CDR, (uint32_t)pD 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if no external trigger present enable software conversion of regular channels */ 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance->CR2 & ADC_CR2_EXTEN) == RESET) 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC software conversion for regular group */ 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= (uint32_t)ADC_CR2_SWSTART; 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine to error */ 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_ERROR_INTERNAL); 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC error code to ADC IP internal error */ 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->ErrorCode, HAL_ADC_ERROR_INTERNAL); 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 14 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Disables ADC DMA (multi-ADC mode) and disables ADC peripheral 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_MultiModeStop_DMA(ADC_HandleTypeDef *hadc) 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_ALL_INSTANCE(hadc->Instance)); 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Stop potential conversion on going, on regular and injected groups */ 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC peripheral */ 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE(hadc); 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check if ADC is effectively disabled */ 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_ADON)) 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC DMA mode for multimode */ 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~ADC_CCR_DDS; 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the DMA channel (in case of DMA in circular mode or stop while */ 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* DMA transfer is on going) */ 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp_hal_status = HAL_DMA_Abort(hadc->DMA_Handle); 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC overrun interrupt */ 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_OVR); 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_STATE_CLR_SET(hadc->State, 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY); 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmp_hal_status; 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** ARM GAS /tmp/cckeduGo.s page 15 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Returns the last ADC1, ADC2 and ADC3 regular conversions results 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * data in the selected multi mode. 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval The converted data value. 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t HAL_ADCEx_MultiModeGetValue(ADC_HandleTypeDef *hadc) 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Prevent unused argument(s) compilation warning */ 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** UNUSED(hadc); 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return the multi mode conversion value */ 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return tmpADC_Common->CDR; 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Injected conversion complete callback in non blocking mode 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __weak void HAL_ADCEx_InjectedConvCpltCallback(ADC_HandleTypeDef *hadc) 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Prevent unused argument(s) compilation warning */ 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** UNUSED(hadc); 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* NOTE : This function Should not be modified, when the callback is needed, 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** the HAL_ADC_InjectedConvCpltCallback could be implemented in the user file 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Configures for the selected ADC injected channel its corresponding 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * rank in the sequencer and its sample time. 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param sConfigInjected ADC configuration structure for injected channel. 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_InjectedConfigChannel(ADC_HandleTypeDef *hadc, ADC_InjectionConfTypeDef 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #ifdef USE_FULL_ASSERT 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp = 0U; 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #endif /* USE_FULL_ASSERT */ 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_CHANNEL(sConfigInjected->InjectedChannel)); ARM GAS /tmp/cckeduGo.s page 16 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_RANK(sConfigInjected->InjectedRank)); 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLE_TIME(sConfigInjected->InjectedSamplingTime)); 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_INJEC_TRIG(sConfigInjected->ExternalTrigInjecConv)); 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_LENGTH(sConfigInjected->InjectedNbrOfConversion)); 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->AutoInjectedConv)); 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->InjectedDiscontinuousConvMode)); 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #ifdef USE_FULL_ASSERT 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp = ADC_GET_RESOLUTION(hadc); 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_RANGE(tmp, sConfigInjected->InjectedOffset)); 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** #endif /* USE_FULL_ASSERT */ 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->ExternalTrigInjecConv != ADC_INJECTED_SOFTWARE_START) 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_INJEC_TRIG_EDGE(sConfigInjected->ExternalTrigInjecConvEdge)); 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if ADC_Channel_10 ... ADC_Channel_18 is selected */ 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->InjectedChannel > ADC_CHANNEL_9) 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old sample time */ 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR1 &= ~ADC_SMPR1(ADC_SMPR1_SMP10, sConfigInjected->InjectedChannel); 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the new sample time */ 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR1 |= ADC_SMPR1(sConfigInjected->InjectedSamplingTime, sConfigInjected->Inje 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else /* ADC_Channel include in ADC_Channel_[0..9] */ 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old sample time */ 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR2 &= ~ADC_SMPR2(ADC_SMPR2_SMP0, sConfigInjected->InjectedChannel); 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the new sample time */ 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->SMPR2 |= ADC_SMPR2(sConfigInjected->InjectedSamplingTime, sConfigInjected->Inje 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /*---------------------------- ADCx JSQR Configuration -----------------*/ 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR &= ~(ADC_JSQR_JL); 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Rank configuration */ 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Clear the old SQx bits for the selected rank */ 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR &= ~ADC_JSQR(ADC_JSQR_JSQ1, sConfigInjected->InjectedRank, sConfigInjected-> 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the SQx bits for the selected rank */ 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_JSQR(sConfigInjected->InjectedChannel, sConfigInjected->InjectedRank, 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable external trigger if trigger selection is different of software */ 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* start. */ 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: This configuration keeps the hardware feature of parameter */ 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* ExternalTrigConvEdge "trigger edge none" equivalent to */ 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* software start. */ 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->ExternalTrigInjecConv != ADC_INJECTED_SOFTWARE_START) 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cckeduGo.s page 17 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Select external trigger to start conversion */ 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTSEL); 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Select external trigger polarity */ 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Reset the external trigger */ 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTSEL); 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->AutoInjectedConv != DISABLE) 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC automatic injected group conversion */ 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 |= ADC_CR1_JAUTO; 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC automatic injected group conversion */ 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 &= ~(ADC_CR1_JAUTO); 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (sConfigInjected->InjectedDiscontinuousConvMode != DISABLE) 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the selected ADC injected discontinuous mode */ 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 |= ADC_CR1_JDISCEN; 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable the selected ADC injected discontinuous mode */ 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR1 &= ~(ADC_CR1_JDISCEN); 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** switch (sConfigInjected->InjectedRank) 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 1U: 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 1 offset */ 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 &= ~(ADC_JOFR1_JOFFSET1); 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 2U: 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 2 offset */ 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 &= ~(ADC_JOFR2_JOFFSET2); 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 3U: 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 3 offset */ 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 &= ~(ADC_JOFR3_JOFFSET3); 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set injected channel 4 offset */ 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 &= ~(ADC_JOFR4_JOFFSET4); ARM GAS /tmp/cckeduGo.s page 18 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* if ADC1 Channel_18 is selected enable VBAT Channel */ 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && (sConfigInjected->InjectedChannel == ADC_CHANNEL_VBAT)) 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the VBAT channel*/ 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_VBATE; 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 959: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 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && ((sConfigInjected->InjectedChannel == ADC_CHANNEL_TEMPSENSOR) || 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Enable the TSVREFE channel*/ 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= ADC_CCR_TSVREFE; 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 **** /* Process unlocked */ 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief Configures the ADC multi-mode 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hadc pointer to a ADC_HandleTypeDef structure that contains 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified ADC. 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param multimode pointer to an ADC_MultiModeTypeDef structure that contains 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for multimode. 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval HAL status 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef HAL_ADCEx_MultiModeConfigChannel(ADC_HandleTypeDef *hadc, ADC_MultiModeTypeDef *m 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_MODE(multimode->Mode)); 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_DMA_ACCESS_MODE(multimode->DMAAccessMode)); 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLING_DELAY(multimode->TwoSamplingDelay)); 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process locked */ 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_LOCK(hadc); 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Pointer to the common control register to which is belonging hadc */ 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* (Depending on STM32F4 product, there may be up to 3 ADC and 1 common */ 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* control register) */ 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common = ADC_COMMON_REGISTER(hadc); 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC mode */ ARM GAS /tmp/cckeduGo.s page 19 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_MULTI); 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set the ADC DMA access mode */ 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_DMA); 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set delay between two sampling phases */ 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR &= ~(ADC_CCR_DELAY); 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_UNLOCK(hadc); 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Return function status */ 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_OK; 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @} 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA transfer complete callback. 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAConvCplt(DMA_HandleTypeDef *hdma) 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update state machine on conversion status if not in error state */ 1034: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)) 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Update ADC state machine */ 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_REG_EOC); 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Determine whether any further conversion upcoming on group regular */ 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by external trigger, continuous mode or scan sequence on going. */ 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: On STM32F4, there is no independent flag of end of sequence. */ 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* The test of scan sequence on going is done either with scan */ 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* sequence disabled or with end of conversion flag set to */ 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* of end of sequence. */ 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Disable ADC end of single conversion interrupt on group regular */ 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Note: Overrun interrupt was enabled with EOC interrupt in */ 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* HAL_ADC_Start_IT(), but is not disabled here because can be used */ 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* by overrun IRQ process below. */ 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __HAL_ADC_DISABLE_IT(hadc, ADC_IT_EOC); 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC state */ ARM GAS /tmp/cckeduGo.s page 20 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** CLEAR_BIT(hadc->State, HAL_ADC_STATE_REG_BUSY); 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (HAL_IS_BIT_CLR(hadc->State, HAL_ADC_STATE_INJ_BUSY)) 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** SET_BIT(hadc->State, HAL_ADC_STATE_READY); 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conversion complete callback */ 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ConvCpltCallback(hadc); 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** else 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Call DMA error callback */ 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->DMA_Handle->XferErrorCallback(hdma); 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA half transfer complete callback. 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAHalfConvCplt(DMA_HandleTypeDef *hdma) 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conversion complete callback */ 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ConvHalfCpltCallback(hadc); 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /** 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @brief DMA error callback 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * the configuration information for the specified DMA module. 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** * @retval None 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** */ 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** static void ADC_MultiModeDMAError(DMA_HandleTypeDef *hdma) 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 29 .loc 1 1095 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 .loc 1 1095 1 is_stmt 0 view .LVU1 34 0000 08B5 push {r3, lr} 35 .LCFI0: 36 .cfi_def_cfa_offset 8 37 .cfi_offset 3, -8 38 .cfi_offset 14, -4 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 39 .loc 1 1096 3 is_stmt 1 view .LVU2 40 .loc 1 1096 22 is_stmt 0 view .LVU3 41 0002 806B ldr r0, [r0, #56] 42 .LVL1: 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->State = HAL_ADC_STATE_ERROR_DMA; 43 .loc 1 1097 3 is_stmt 1 view .LVU4 44 .loc 1 1097 15 is_stmt 0 view .LVU5 ARM GAS /tmp/cckeduGo.s page 21 45 0004 4023 movs r3, #64 46 0006 0364 str r3, [r0, #64] 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Set ADC error code to DMA error */ 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->ErrorCode |= HAL_ADC_ERROR_DMA; 47 .loc 1 1099 3 is_stmt 1 view .LVU6 48 .loc 1 1099 7 is_stmt 0 view .LVU7 49 0008 436C ldr r3, [r0, #68] 50 .loc 1 1099 19 view .LVU8 51 000a 43F00403 orr r3, r3, #4 52 000e 4364 str r3, [r0, #68] 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_ErrorCallback(hadc); 53 .loc 1 1100 3 is_stmt 1 view .LVU9 54 0010 FFF7FEFF bl HAL_ADC_ErrorCallback 55 .LVL2: 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 56 .loc 1 1101 1 is_stmt 0 view .LVU10 57 0014 08BD pop {r3, pc} 58 .cfi_endproc 59 .LFE253: 61 .section .text.ADC_MultiModeDMAHalfConvCplt,"ax",%progbits 62 .align 1 63 .syntax unified 64 .thumb 65 .thumb_func 67 ADC_MultiModeDMAHalfConvCplt: 68 .LVL3: 69 .LFB252: 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 70 .loc 1 1082 1 is_stmt 1 view -0 71 .cfi_startproc 72 @ args = 0, pretend = 0, frame = 0 73 @ frame_needed = 0, uses_anonymous_args = 0 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_HandleTypeDef *hadc = (ADC_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 74 .loc 1 1082 1 is_stmt 0 view .LVU12 75 0000 08B5 push {r3, lr} 76 .LCFI1: 77 .cfi_def_cfa_offset 8 78 .cfi_offset 3, -8 79 .cfi_offset 14, -4 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Conversion complete callback */ 80 .loc 1 1083 3 is_stmt 1 view .LVU13 81 .LVL4: 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 82 .loc 1 1085 3 view .LVU14 83 0002 806B ldr r0, [r0, #56] 84 .LVL5: 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 85 .loc 1 1085 3 is_stmt 0 view .LVU15 86 0004 FFF7FEFF bl HAL_ADC_ConvHalfCpltCallback 87 .LVL6: 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 88 .loc 1 1086 1 view .LVU16 89 0008 08BD pop {r3, pc} 90 .cfi_endproc 91 .LFE252: 93 .section .text.ADC_MultiModeDMAConvCplt,"ax",%progbits 94 .align 1 ARM GAS /tmp/cckeduGo.s page 22 95 .syntax unified 96 .thumb 97 .thumb_func 99 ADC_MultiModeDMAConvCplt: 100 .LVL7: 101 .LFB251: 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 102 .loc 1 1029 1 is_stmt 1 view -0 103 .cfi_startproc 104 @ args = 0, pretend = 0, frame = 0 105 @ frame_needed = 0, uses_anonymous_args = 0 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Retrieve ADC handle corresponding to current DMA handle */ 106 .loc 1 1029 1 is_stmt 0 view .LVU18 107 0000 08B5 push {r3, lr} 108 .LCFI2: 109 .cfi_def_cfa_offset 8 110 .cfi_offset 3, -8 111 .cfi_offset 14, -4 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 112 .loc 1 1031 3 is_stmt 1 view .LVU19 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 113 .loc 1 1031 22 is_stmt 0 view .LVU20 114 0002 836B ldr r3, [r0, #56] 115 .LVL8: 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 116 .loc 1 1034 3 is_stmt 1 view .LVU21 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 117 .loc 1 1034 7 is_stmt 0 view .LVU22 118 0004 1A6C ldr r2, [r3, #64] 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 119 .loc 1 1034 6 view .LVU23 120 0006 12F0500F tst r2, #80 121 000a 26D1 bne .L6 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 122 .loc 1 1037 5 is_stmt 1 view .LVU24 123 000c 1A6C ldr r2, [r3, #64] 124 000e 42F40072 orr r2, r2, #512 125 0012 1A64 str r2, [r3, #64] 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 126 .loc 1 1045 5 view .LVU25 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 127 .loc 1 1045 9 is_stmt 0 view .LVU26 128 0014 1A68 ldr r2, [r3] 129 0016 9168 ldr r1, [r2, #8] 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 130 .loc 1 1045 8 view .LVU27 131 0018 11F0405F tst r1, #805306368 132 001c 19D1 bne .L7 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 133 .loc 1 1046 20 view .LVU28 134 001e 197E ldrb r1, [r3, #24] @ zero_extendqisi2 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE) && 135 .loc 1 1045 63 discriminator 1 view .LVU29 136 0020 B9B9 cbnz r1, .L7 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 137 .loc 1 1047 10 view .LVU30 138 0022 D16A ldr r1, [r2, #44] ARM GAS /tmp/cckeduGo.s page 23 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->SQR1, ADC_SQR1_L) || 139 .loc 1 1046 63 view .LVU31 140 0024 11F4700F tst r1, #15728640 141 0028 03D0 beq .L8 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 142 .loc 1 1048 10 view .LVU32 143 002a 9168 ldr r1, [r2, #8] 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS))) 144 .loc 1 1047 59 view .LVU33 145 002c 11F4806F tst r1, #1024 146 0030 0FD1 bne .L7 147 .L8: 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 148 .loc 1 1054 7 is_stmt 1 view .LVU34 149 0032 5168 ldr r1, [r2, #4] 150 0034 21F02001 bic r1, r1, #32 151 0038 5160 str r1, [r2, #4] 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 152 .loc 1 1057 7 view .LVU35 153 003a 1A6C ldr r2, [r3, #64] 154 003c 22F48072 bic r2, r2, #256 155 0040 1A64 str r2, [r3, #64] 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 156 .loc 1 1059 7 view .LVU36 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 157 .loc 1 1059 11 is_stmt 0 view .LVU37 158 0042 1A6C ldr r2, [r3, #64] 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 159 .loc 1 1059 10 view .LVU38 160 0044 12F4805F tst r2, #4096 161 0048 03D1 bne .L7 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 162 .loc 1 1061 9 is_stmt 1 view .LVU39 163 004a 1A6C ldr r2, [r3, #64] 164 004c 42F00102 orr r2, r2, #1 165 0050 1A64 str r2, [r3, #64] 166 .L7: 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 167 .loc 1 1066 5 view .LVU40 168 0052 1846 mov r0, r3 169 .LVL9: 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 170 .loc 1 1066 5 is_stmt 0 view .LVU41 171 0054 FFF7FEFF bl HAL_ADC_ConvCpltCallback 172 .LVL10: 173 .L5: 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 174 .loc 1 1073 1 view .LVU42 175 0058 08BD pop {r3, pc} 176 .LVL11: 177 .L6: 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 178 .loc 1 1071 5 is_stmt 1 view .LVU43 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 179 .loc 1 1071 9 is_stmt 0 view .LVU44 180 005a 9B6B ldr r3, [r3, #56] 181 .LVL12: ARM GAS /tmp/cckeduGo.s page 24 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 182 .loc 1 1071 21 view .LVU45 183 005c DB6C ldr r3, [r3, #76] 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 184 .loc 1 1071 5 view .LVU46 185 005e 9847 blx r3 186 .LVL13: 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 187 .loc 1 1073 1 view .LVU47 188 0060 FAE7 b .L5 189 .cfi_endproc 190 .LFE251: 192 .section .text.HAL_ADCEx_InjectedStart,"ax",%progbits 193 .align 1 194 .global HAL_ADCEx_InjectedStart 195 .syntax unified 196 .thumb 197 .thumb_func 199 HAL_ADCEx_InjectedStart: 200 .LVL14: 201 .LFB239: 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 202 .loc 1 147 1 is_stmt 1 view -0 203 .cfi_startproc 204 @ args = 0, pretend = 0, frame = 8 205 @ frame_needed = 0, uses_anonymous_args = 0 206 @ link register save eliminated. 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 207 .loc 1 147 1 is_stmt 0 view .LVU49 208 0000 82B0 sub sp, sp, #8 209 .LCFI3: 210 .cfi_def_cfa_offset 8 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 211 .loc 1 148 3 is_stmt 1 view .LVU50 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 212 .loc 1 148 17 is_stmt 0 view .LVU51 213 0002 0023 movs r3, #0 214 0004 0193 str r3, [sp, #4] 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 215 .loc 1 149 3 is_stmt 1 view .LVU52 216 .LVL15: 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 217 .loc 1 150 3 view .LVU53 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 218 .loc 1 153 3 view .LVU54 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 219 .loc 1 153 3 view .LVU55 220 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 221 000a 012B cmp r3, #1 222 000c 67D0 beq .L19 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 223 .loc 1 153 3 discriminator 2 view .LVU56 224 000e 0123 movs r3, #1 225 0010 80F83C30 strb r3, [r0, #60] 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 226 .loc 1 153 3 discriminator 2 view .LVU57 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cckeduGo.s page 25 227 .loc 1 159 3 view .LVU58 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 228 .loc 1 159 12 is_stmt 0 view .LVU59 229 0014 0368 ldr r3, [r0] 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 230 .loc 1 159 22 view .LVU60 231 0016 9A68 ldr r2, [r3, #8] 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 232 .loc 1 159 6 view .LVU61 233 0018 12F0010F tst r2, #1 234 001c 13D1 bne .L13 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 235 .loc 1 162 5 is_stmt 1 view .LVU62 236 001e 9A68 ldr r2, [r3, #8] 237 0020 42F00102 orr r2, r2, #1 238 0024 9A60 str r2, [r3, #8] 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 239 .loc 1 166 5 view .LVU63 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 240 .loc 1 166 53 is_stmt 0 view .LVU64 241 0026 334B ldr r3, .L27 242 0028 1B68 ldr r3, [r3] 243 002a 334A ldr r2, .L27+4 244 002c A2FB0323 umull r2, r3, r2, r3 245 0030 9B0C lsrs r3, r3, #18 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 246 .loc 1 166 34 view .LVU65 247 0032 03EB4303 add r3, r3, r3, lsl #1 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 248 .loc 1 166 13 view .LVU66 249 0036 0193 str r3, [sp, #4] 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 250 .loc 1 167 5 is_stmt 1 view .LVU67 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 251 .loc 1 167 11 is_stmt 0 view .LVU68 252 0038 02E0 b .L14 253 .L15: 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 254 .loc 1 169 7 is_stmt 1 view .LVU69 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 255 .loc 1 169 14 is_stmt 0 view .LVU70 256 003a 019B ldr r3, [sp, #4] 257 003c 013B subs r3, r3, #1 258 003e 0193 str r3, [sp, #4] 259 .L14: 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 260 .loc 1 167 20 is_stmt 1 view .LVU71 261 0040 019B ldr r3, [sp, #4] 262 0042 002B cmp r3, #0 263 0044 F9D1 bne .L15 264 .L13: 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 265 .loc 1 174 3 view .LVU72 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 266 .loc 1 174 7 is_stmt 0 view .LVU73 267 0046 0268 ldr r2, [r0] 268 0048 9368 ldr r3, [r2, #8] ARM GAS /tmp/cckeduGo.s page 26 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 269 .loc 1 174 6 view .LVU74 270 004a 13F0010F tst r3, #1 271 004e 3BD0 beq .L16 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 272 .loc 1 179 5 is_stmt 1 view .LVU75 273 0050 036C ldr r3, [r0, #64] 274 0052 23F44053 bic r3, r3, #12288 275 0056 23F00103 bic r3, r3, #1 276 005a 43F48053 orr r3, r3, #4096 277 005e 0364 str r3, [r0, #64] 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 278 .loc 1 187 5 view .LVU76 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 279 .loc 1 187 9 is_stmt 0 view .LVU77 280 0060 036C ldr r3, [r0, #64] 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 281 .loc 1 187 8 view .LVU78 282 0062 13F4807F tst r3, #256 283 0066 01D1 bne .L17 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 284 .loc 1 190 7 is_stmt 1 view .LVU79 285 0068 0023 movs r3, #0 286 006a 4364 str r3, [r0, #68] 287 .L17: 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 288 .loc 1 196 5 view .LVU80 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 289 .loc 1 196 5 view .LVU81 290 006c 0023 movs r3, #0 291 006e 80F83C30 strb r3, [r0, #60] 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 292 .loc 1 196 5 view .LVU82 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 293 .loc 1 200 5 view .LVU83 294 0072 6FF00403 mvn r3, #4 295 0076 1360 str r3, [r2] 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 296 .loc 1 205 5 view .LVU84 297 .LVL16: 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 298 .loc 1 208 5 view .LVU85 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 299 .loc 1 208 9 is_stmt 0 view .LVU86 300 0078 204B ldr r3, .L27+8 301 007a 5B68 ldr r3, [r3, #4] 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 302 .loc 1 208 8 view .LVU87 303 007c 13F01F0F tst r3, #31 304 0080 0ED1 bne .L18 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 305 .loc 1 210 7 is_stmt 1 view .LVU88 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 306 .loc 1 210 14 is_stmt 0 view .LVU89 307 0082 0268 ldr r2, [r0] 308 0084 9168 ldr r1, [r2, #8] 309 .LVL17: ARM GAS /tmp/cckeduGo.s page 27 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 310 .loc 1 211 7 is_stmt 1 view .LVU90 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 311 .loc 1 211 14 is_stmt 0 view .LVU91 312 0086 5368 ldr r3, [r2, #4] 313 0088 03F48063 and r3, r3, #1024 314 .LVL18: 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 315 .loc 1 212 7 is_stmt 1 view .LVU92 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 316 .loc 1 212 10 is_stmt 0 view .LVU93 317 008c 11F4401F tst r1, #3145728 318 0090 27D1 bne .L20 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 319 .loc 1 212 16 discriminator 1 view .LVU94 320 0092 43BB cbnz r3, .L21 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 321 .loc 1 215 9 is_stmt 1 view .LVU95 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 322 .loc 1 215 23 is_stmt 0 view .LVU96 323 0094 9368 ldr r3, [r2, #8] 324 .LVL19: 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 325 .loc 1 215 29 view .LVU97 326 0096 43F48003 orr r3, r3, #4194304 327 009a 9360 str r3, [r2, #8] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 328 .loc 1 239 10 view .LVU98 329 009c 0020 movs r0, #0 330 .LVL20: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 331 .loc 1 239 10 view .LVU99 332 009e 1CE0 b .L12 333 .LVL21: 334 .L18: 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 335 .loc 1 220 7 is_stmt 1 view .LVU100 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 336 .loc 1 220 14 is_stmt 0 view .LVU101 337 00a0 0368 ldr r3, [r0] 338 00a2 9A68 ldr r2, [r3, #8] 339 00a4 02F44012 and r2, r2, #3145728 340 .LVL22: 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 341 .loc 1 221 7 is_stmt 1 view .LVU102 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 342 .loc 1 221 14 is_stmt 0 view .LVU103 343 00a8 5968 ldr r1, [r3, #4] 344 00aa 01F48061 and r1, r1, #1024 345 .LVL23: 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 346 .loc 1 222 7 is_stmt 1 view .LVU104 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 347 .loc 1 222 10 is_stmt 0 view .LVU105 348 00ae 1448 ldr r0, .L27+12 349 .LVL24: 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { ARM GAS /tmp/cckeduGo.s page 28 350 .loc 1 222 10 view .LVU106 351 00b0 8342 cmp r3, r0 352 00b2 01D0 beq .L26 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 353 .loc 1 239 10 view .LVU107 354 00b4 0020 movs r0, #0 355 00b6 10E0 b .L12 356 .L26: 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 357 .loc 1 222 36 discriminator 1 view .LVU108 358 00b8 BAB9 cbnz r2, .L23 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 359 .loc 1 222 44 discriminator 2 view .LVU109 360 00ba C1B9 cbnz r1, .L24 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 361 .loc 1 225 9 is_stmt 1 view .LVU110 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 362 .loc 1 225 23 is_stmt 0 view .LVU111 363 00bc 9A68 ldr r2, [r3, #8] 364 .LVL25: 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 365 .loc 1 225 29 view .LVU112 366 00be 42F48002 orr r2, r2, #4194304 367 00c2 9A60 str r2, [r3, #8] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 368 .loc 1 239 10 view .LVU113 369 00c4 0020 movs r0, #0 370 00c6 08E0 b .L12 371 .LVL26: 372 .L16: 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 373 .loc 1 232 5 is_stmt 1 view .LVU114 374 00c8 036C ldr r3, [r0, #64] 375 00ca 43F01003 orr r3, r3, #16 376 00ce 0364 str r3, [r0, #64] 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 377 .loc 1 235 5 view .LVU115 378 00d0 436C ldr r3, [r0, #68] 379 00d2 43F00103 orr r3, r3, #1 380 00d6 4364 str r3, [r0, #68] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 381 .loc 1 239 10 is_stmt 0 view .LVU116 382 00d8 0020 movs r0, #0 383 .LVL27: 384 .L12: 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 385 .loc 1 240 1 view .LVU117 386 00da 02B0 add sp, sp, #8 387 .LCFI4: 388 .cfi_remember_state 389 .cfi_def_cfa_offset 0 390 @ sp needed 391 00dc 7047 bx lr 392 .LVL28: 393 .L19: 394 .LCFI5: 395 .cfi_restore_state ARM GAS /tmp/cckeduGo.s page 29 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 396 .loc 1 153 3 discriminator 1 view .LVU118 397 00de 0220 movs r0, #2 398 .LVL29: 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 399 .loc 1 153 3 discriminator 1 view .LVU119 400 00e0 FBE7 b .L12 401 .LVL30: 402 .L20: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 403 .loc 1 239 10 view .LVU120 404 00e2 0020 movs r0, #0 405 .LVL31: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 406 .loc 1 239 10 view .LVU121 407 00e4 F9E7 b .L12 408 .LVL32: 409 .L21: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 410 .loc 1 239 10 view .LVU122 411 00e6 0020 movs r0, #0 412 .LVL33: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 413 .loc 1 239 10 view .LVU123 414 00e8 F7E7 b .L12 415 .LVL34: 416 .L23: 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 417 .loc 1 239 10 view .LVU124 418 00ea 0020 movs r0, #0 419 00ec F5E7 b .L12 420 .L24: 421 00ee 0020 movs r0, #0 422 00f0 F3E7 b .L12 423 .L28: 424 00f2 00BF .align 2 425 .L27: 426 00f4 00000000 .word SystemCoreClock 427 00f8 83DE1B43 .word 1125899907 428 00fc 00230140 .word 1073816320 429 0100 00200140 .word 1073815552 430 .cfi_endproc 431 .LFE239: 433 .section .text.HAL_ADCEx_InjectedStart_IT,"ax",%progbits 434 .align 1 435 .global HAL_ADCEx_InjectedStart_IT 436 .syntax unified 437 .thumb 438 .thumb_func 440 HAL_ADCEx_InjectedStart_IT: 441 .LVL35: 442 .LFB240: 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 443 .loc 1 250 1 is_stmt 1 view -0 444 .cfi_startproc 445 @ args = 0, pretend = 0, frame = 8 446 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cckeduGo.s page 30 447 @ link register save eliminated. 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 448 .loc 1 250 1 is_stmt 0 view .LVU126 449 0000 82B0 sub sp, sp, #8 450 .LCFI6: 451 .cfi_def_cfa_offset 8 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 452 .loc 1 251 3 is_stmt 1 view .LVU127 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tmp1 = 0U, tmp2 = 0U; 453 .loc 1 251 17 is_stmt 0 view .LVU128 454 0002 0023 movs r3, #0 455 0004 0193 str r3, [sp, #4] 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 456 .loc 1 252 3 is_stmt 1 view .LVU129 457 .LVL36: 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 458 .loc 1 253 3 view .LVU130 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 459 .loc 1 256 3 view .LVU131 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 460 .loc 1 256 3 view .LVU132 461 0006 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 462 000a 012B cmp r3, #1 463 000c 6CD0 beq .L37 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 464 .loc 1 256 3 discriminator 2 view .LVU133 465 000e 0123 movs r3, #1 466 0010 80F83C30 strb r3, [r0, #60] 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 467 .loc 1 256 3 discriminator 2 view .LVU134 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 468 .loc 1 262 3 view .LVU135 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 469 .loc 1 262 12 is_stmt 0 view .LVU136 470 0014 0368 ldr r3, [r0] 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 471 .loc 1 262 22 view .LVU137 472 0016 9A68 ldr r2, [r3, #8] 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 473 .loc 1 262 6 view .LVU138 474 0018 12F0010F tst r2, #1 475 001c 13D1 bne .L31 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 476 .loc 1 265 5 is_stmt 1 view .LVU139 477 001e 9A68 ldr r2, [r3, #8] 478 0020 42F00102 orr r2, r2, #1 479 0024 9A60 str r2, [r3, #8] 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 480 .loc 1 269 5 view .LVU140 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 481 .loc 1 269 53 is_stmt 0 view .LVU141 482 0026 354B ldr r3, .L45 483 0028 1B68 ldr r3, [r3] 484 002a 354A ldr r2, .L45+4 485 002c A2FB0323 umull r2, r3, r2, r3 486 0030 9B0C lsrs r3, r3, #18 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) ARM GAS /tmp/cckeduGo.s page 31 487 .loc 1 269 34 view .LVU142 488 0032 03EB4303 add r3, r3, r3, lsl #1 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 489 .loc 1 269 13 view .LVU143 490 0036 0193 str r3, [sp, #4] 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 491 .loc 1 270 5 is_stmt 1 view .LVU144 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 492 .loc 1 270 11 is_stmt 0 view .LVU145 493 0038 02E0 b .L32 494 .L33: 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 495 .loc 1 272 7 is_stmt 1 view .LVU146 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 496 .loc 1 272 14 is_stmt 0 view .LVU147 497 003a 019B ldr r3, [sp, #4] 498 003c 013B subs r3, r3, #1 499 003e 0193 str r3, [sp, #4] 500 .L32: 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 501 .loc 1 270 20 is_stmt 1 view .LVU148 502 0040 019B ldr r3, [sp, #4] 503 0042 002B cmp r3, #0 504 0044 F9D1 bne .L33 505 .L31: 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 506 .loc 1 277 3 view .LVU149 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 507 .loc 1 277 7 is_stmt 0 view .LVU150 508 0046 0268 ldr r2, [r0] 509 0048 9368 ldr r3, [r2, #8] 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 510 .loc 1 277 6 view .LVU151 511 004a 13F0010F tst r3, #1 512 004e 40D0 beq .L34 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_INJ_EOC, 513 .loc 1 282 5 is_stmt 1 view .LVU152 514 0050 036C ldr r3, [r0, #64] 515 0052 23F44053 bic r3, r3, #12288 516 0056 23F00103 bic r3, r3, #1 517 005a 43F48053 orr r3, r3, #4096 518 005e 0364 str r3, [r0, #64] 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 519 .loc 1 290 5 view .LVU153 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 520 .loc 1 290 9 is_stmt 0 view .LVU154 521 0060 036C ldr r3, [r0, #64] 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 522 .loc 1 290 8 view .LVU155 523 0062 13F4807F tst r3, #256 524 0066 01D1 bne .L35 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 525 .loc 1 293 7 is_stmt 1 view .LVU156 526 0068 0023 movs r3, #0 527 006a 4364 str r3, [r0, #68] 528 .L35: 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 32 529 .loc 1 299 5 view .LVU157 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 530 .loc 1 299 5 view .LVU158 531 006c 0023 movs r3, #0 532 006e 80F83C30 strb r3, [r0, #60] 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 533 .loc 1 299 5 view .LVU159 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 534 .loc 1 303 5 view .LVU160 535 0072 6FF00403 mvn r3, #4 536 0076 1360 str r3, [r2] 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 537 .loc 1 306 5 view .LVU161 538 0078 0268 ldr r2, [r0] 539 007a 5368 ldr r3, [r2, #4] 540 007c 43F08003 orr r3, r3, #128 541 0080 5360 str r3, [r2, #4] 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 542 .loc 1 311 5 view .LVU162 543 .LVL37: 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 544 .loc 1 314 5 view .LVU163 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 545 .loc 1 314 9 is_stmt 0 view .LVU164 546 0082 204B ldr r3, .L45+8 547 0084 5B68 ldr r3, [r3, #4] 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 548 .loc 1 314 8 view .LVU165 549 0086 13F01F0F tst r3, #31 550 008a 0ED1 bne .L36 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 551 .loc 1 316 7 is_stmt 1 view .LVU166 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 552 .loc 1 316 14 is_stmt 0 view .LVU167 553 008c 0268 ldr r2, [r0] 554 008e 9168 ldr r1, [r2, #8] 555 .LVL38: 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 556 .loc 1 317 7 is_stmt 1 view .LVU168 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if (tmp1 && tmp2) 557 .loc 1 317 14 is_stmt 0 view .LVU169 558 0090 5368 ldr r3, [r2, #4] 559 0092 03F48063 and r3, r3, #1024 560 .LVL39: 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 561 .loc 1 318 7 is_stmt 1 view .LVU170 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 562 .loc 1 318 10 is_stmt 0 view .LVU171 563 0096 11F4401F tst r1, #3145728 564 009a 27D1 bne .L38 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 565 .loc 1 318 16 discriminator 1 view .LVU172 566 009c 43BB cbnz r3, .L39 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 567 .loc 1 321 9 is_stmt 1 view .LVU173 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 568 .loc 1 321 23 is_stmt 0 view .LVU174 ARM GAS /tmp/cckeduGo.s page 33 569 009e 9368 ldr r3, [r2, #8] 570 .LVL40: 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 571 .loc 1 321 29 view .LVU175 572 00a0 43F48003 orr r3, r3, #4194304 573 00a4 9360 str r3, [r2, #8] 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 574 .loc 1 345 10 view .LVU176 575 00a6 0020 movs r0, #0 576 .LVL41: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 577 .loc 1 345 10 view .LVU177 578 00a8 1CE0 b .L30 579 .LVL42: 580 .L36: 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 581 .loc 1 326 7 is_stmt 1 view .LVU178 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmp2 = HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO); 582 .loc 1 326 14 is_stmt 0 view .LVU179 583 00aa 0368 ldr r3, [r0] 584 00ac 9A68 ldr r2, [r3, #8] 585 00ae 02F44012 and r2, r2, #3145728 586 .LVL43: 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 587 .loc 1 327 7 is_stmt 1 view .LVU180 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** if ((hadc->Instance == ADC1) && tmp1 && tmp2) 588 .loc 1 327 14 is_stmt 0 view .LVU181 589 00b2 5968 ldr r1, [r3, #4] 590 00b4 01F48061 and r1, r1, #1024 591 .LVL44: 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 592 .loc 1 328 7 is_stmt 1 view .LVU182 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 593 .loc 1 328 10 is_stmt 0 view .LVU183 594 00b8 1348 ldr r0, .L45+12 595 .LVL45: 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 596 .loc 1 328 10 view .LVU184 597 00ba 8342 cmp r3, r0 598 00bc 01D0 beq .L44 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 599 .loc 1 345 10 view .LVU185 600 00be 0020 movs r0, #0 601 00c0 10E0 b .L30 602 .L44: 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 603 .loc 1 328 36 discriminator 1 view .LVU186 604 00c2 BAB9 cbnz r2, .L41 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 605 .loc 1 328 44 discriminator 2 view .LVU187 606 00c4 C1B9 cbnz r1, .L42 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 607 .loc 1 331 9 is_stmt 1 view .LVU188 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 608 .loc 1 331 23 is_stmt 0 view .LVU189 609 00c6 9A68 ldr r2, [r3, #8] 610 .LVL46: ARM GAS /tmp/cckeduGo.s page 34 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 611 .loc 1 331 29 view .LVU190 612 00c8 42F48002 orr r2, r2, #4194304 613 00cc 9A60 str r2, [r3, #8] 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 614 .loc 1 345 10 view .LVU191 615 00ce 0020 movs r0, #0 616 00d0 08E0 b .L30 617 .LVL47: 618 .L34: 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 619 .loc 1 338 5 is_stmt 1 view .LVU192 620 00d2 036C ldr r3, [r0, #64] 621 00d4 43F01003 orr r3, r3, #16 622 00d8 0364 str r3, [r0, #64] 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 623 .loc 1 341 5 view .LVU193 624 00da 436C ldr r3, [r0, #68] 625 00dc 43F00103 orr r3, r3, #1 626 00e0 4364 str r3, [r0, #68] 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 627 .loc 1 345 10 is_stmt 0 view .LVU194 628 00e2 0020 movs r0, #0 629 .LVL48: 630 .L30: 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 631 .loc 1 346 1 view .LVU195 632 00e4 02B0 add sp, sp, #8 633 .LCFI7: 634 .cfi_remember_state 635 .cfi_def_cfa_offset 0 636 @ sp needed 637 00e6 7047 bx lr 638 .LVL49: 639 .L37: 640 .LCFI8: 641 .cfi_restore_state 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 642 .loc 1 256 3 discriminator 1 view .LVU196 643 00e8 0220 movs r0, #2 644 .LVL50: 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 645 .loc 1 256 3 discriminator 1 view .LVU197 646 00ea FBE7 b .L30 647 .LVL51: 648 .L38: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 649 .loc 1 345 10 view .LVU198 650 00ec 0020 movs r0, #0 651 .LVL52: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 652 .loc 1 345 10 view .LVU199 653 00ee F9E7 b .L30 654 .LVL53: 655 .L39: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 656 .loc 1 345 10 view .LVU200 ARM GAS /tmp/cckeduGo.s page 35 657 00f0 0020 movs r0, #0 658 .LVL54: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 659 .loc 1 345 10 view .LVU201 660 00f2 F7E7 b .L30 661 .LVL55: 662 .L41: 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 663 .loc 1 345 10 view .LVU202 664 00f4 0020 movs r0, #0 665 00f6 F5E7 b .L30 666 .L42: 667 00f8 0020 movs r0, #0 668 00fa F3E7 b .L30 669 .L46: 670 .align 2 671 .L45: 672 00fc 00000000 .word SystemCoreClock 673 0100 83DE1B43 .word 1125899907 674 0104 00230140 .word 1073816320 675 0108 00200140 .word 1073815552 676 .cfi_endproc 677 .LFE240: 679 .section .text.HAL_ADCEx_InjectedStop,"ax",%progbits 680 .align 1 681 .global HAL_ADCEx_InjectedStop 682 .syntax unified 683 .thumb 684 .thumb_func 686 HAL_ADCEx_InjectedStop: 687 .LVL56: 688 .LFB241: 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 689 .loc 1 361 1 is_stmt 1 view -0 690 .cfi_startproc 691 @ args = 0, pretend = 0, frame = 0 692 @ frame_needed = 0, uses_anonymous_args = 0 693 @ link register save eliminated. 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 694 .loc 1 361 1 is_stmt 0 view .LVU204 695 0000 0346 mov r3, r0 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 696 .loc 1 362 3 is_stmt 1 view .LVU205 697 .LVL57: 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 698 .loc 1 365 3 view .LVU206 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 699 .loc 1 368 3 view .LVU207 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 700 .loc 1 368 3 view .LVU208 701 0002 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 702 0006 012A cmp r2, #1 703 0008 29D0 beq .L51 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 704 .loc 1 368 3 discriminator 2 view .LVU209 705 000a 0122 movs r2, #1 706 000c 80F83C20 strb r2, [r0, #60] ARM GAS /tmp/cckeduGo.s page 36 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 707 .loc 1 368 3 discriminator 2 view .LVU210 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 708 .loc 1 376 3 view .LVU211 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 709 .loc 1 376 13 is_stmt 0 view .LVU212 710 0010 026C ldr r2, [r0, #64] 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 711 .loc 1 376 6 view .LVU213 712 0012 12F4807F tst r2, #256 713 0016 17D1 bne .L49 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 714 .loc 1 377 7 view .LVU214 715 0018 0268 ldr r2, [r0] 716 001a 5168 ldr r1, [r2, #4] 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 717 .loc 1 376 58 discriminator 1 view .LVU215 718 001c 11F4806F tst r1, #1024 719 0020 12D1 bne .L49 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 720 .loc 1 381 5 is_stmt 1 view .LVU216 721 0022 9168 ldr r1, [r2, #8] 722 0024 21F00101 bic r1, r1, #1 723 0028 9160 str r1, [r2, #8] 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 724 .loc 1 384 5 view .LVU217 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 725 .loc 1 384 9 is_stmt 0 view .LVU218 726 002a 0268 ldr r2, [r0] 727 002c 9268 ldr r2, [r2, #8] 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 728 .loc 1 384 8 view .LVU219 729 002e 12F0010F tst r2, #1 730 0032 12D1 bne .L52 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 731 .loc 1 387 7 is_stmt 1 view .LVU220 732 0034 026C ldr r2, [r0, #64] 733 0036 22F48852 bic r2, r2, #4352 734 003a 22F00102 bic r2, r2, #1 735 003e 42F00102 orr r2, r2, #1 736 0042 0264 str r2, [r0, #64] 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 737 .loc 1 362 21 is_stmt 0 view .LVU221 738 0044 0020 movs r0, #0 739 .LVL58: 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 740 .loc 1 362 21 view .LVU222 741 0046 04E0 b .L50 742 .LVL59: 743 .L49: 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 744 .loc 1 395 5 is_stmt 1 view .LVU223 745 0048 1A6C ldr r2, [r3, #64] 746 004a 42F02002 orr r2, r2, #32 747 004e 1A64 str r2, [r3, #64] 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 748 .loc 1 397 5 view .LVU224 ARM GAS /tmp/cckeduGo.s page 37 749 .LVL60: 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 750 .loc 1 397 20 is_stmt 0 view .LVU225 751 0050 0120 movs r0, #1 752 .LVL61: 753 .L50: 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 754 .loc 1 401 3 is_stmt 1 view .LVU226 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 755 .loc 1 401 3 view .LVU227 756 0052 0022 movs r2, #0 757 0054 83F83C20 strb r2, [r3, #60] 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 758 .loc 1 401 3 view .LVU228 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 759 .loc 1 404 3 view .LVU229 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 760 .loc 1 404 10 is_stmt 0 view .LVU230 761 0058 7047 bx lr 762 .LVL62: 763 .L52: 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 764 .loc 1 362 21 view .LVU231 765 005a 0020 movs r0, #0 766 .LVL63: 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 767 .loc 1 362 21 view .LVU232 768 005c F9E7 b .L50 769 .LVL64: 770 .L51: 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 771 .loc 1 368 3 discriminator 1 view .LVU233 772 005e 0220 movs r0, #2 773 .LVL65: 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 774 .loc 1 405 1 view .LVU234 775 0060 7047 bx lr 776 .cfi_endproc 777 .LFE241: 779 .section .text.HAL_ADCEx_InjectedPollForConversion,"ax",%progbits 780 .align 1 781 .global HAL_ADCEx_InjectedPollForConversion 782 .syntax unified 783 .thumb 784 .thumb_func 786 HAL_ADCEx_InjectedPollForConversion: 787 .LVL66: 788 .LFB242: 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tickstart = 0U; 789 .loc 1 415 1 is_stmt 1 view -0 790 .cfi_startproc 791 @ args = 0, pretend = 0, frame = 0 792 @ frame_needed = 0, uses_anonymous_args = 0 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** uint32_t tickstart = 0U; 793 .loc 1 415 1 is_stmt 0 view .LVU236 794 0000 70B5 push {r4, r5, r6, lr} 795 .LCFI9: ARM GAS /tmp/cckeduGo.s page 38 796 .cfi_def_cfa_offset 16 797 .cfi_offset 4, -16 798 .cfi_offset 5, -12 799 .cfi_offset 6, -8 800 .cfi_offset 14, -4 801 0002 0446 mov r4, r0 802 0004 0D46 mov r5, r1 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 803 .loc 1 416 3 is_stmt 1 view .LVU237 804 .LVL67: 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 805 .loc 1 419 3 view .LVU238 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 806 .loc 1 419 15 is_stmt 0 view .LVU239 807 0006 FFF7FEFF bl HAL_GetTick 808 .LVL68: 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 809 .loc 1 419 15 view .LVU240 810 000a 0646 mov r6, r0 811 .LVL69: 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 812 .loc 1 422 3 is_stmt 1 view .LVU241 813 .L55: 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 814 .loc 1 422 10 view .LVU242 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 815 .loc 1 422 12 is_stmt 0 view .LVU243 816 000c 2368 ldr r3, [r4] 817 000e 1A68 ldr r2, [r3] 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 818 .loc 1 422 10 view .LVU244 819 0010 12F0040F tst r2, #4 820 0014 15D1 bne .L67 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 821 .loc 1 425 5 is_stmt 1 view .LVU245 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 822 .loc 1 425 8 is_stmt 0 view .LVU246 823 0016 B5F1FF3F cmp r5, #-1 824 001a F7D0 beq .L55 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 825 .loc 1 427 7 is_stmt 1 view .LVU247 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 826 .loc 1 427 10 is_stmt 0 view .LVU248 827 001c 5DB9 cbnz r5, .L68 828 .L56: 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 829 .loc 1 430 9 is_stmt 1 view .LVU249 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 830 .loc 1 430 15 is_stmt 0 view .LVU250 831 001e 2368 ldr r3, [r4] 832 0020 1B68 ldr r3, [r3] 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 833 .loc 1 430 12 view .LVU251 834 0022 13F0040F tst r3, #4 835 0026 F1D1 bne .L55 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 836 .loc 1 432 11 is_stmt 1 view .LVU252 ARM GAS /tmp/cckeduGo.s page 39 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Process unlocked */ 837 .loc 1 432 23 is_stmt 0 view .LVU253 838 0028 0423 movs r3, #4 839 002a 2364 str r3, [r4, #64] 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 840 .loc 1 434 11 is_stmt 1 view .LVU254 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 841 .loc 1 434 11 view .LVU255 842 002c 0023 movs r3, #0 843 002e 84F83C30 strb r3, [r4, #60] 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** return HAL_TIMEOUT; 844 .loc 1 434 11 view .LVU256 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 845 .loc 1 435 11 view .LVU257 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 846 .loc 1 435 18 is_stmt 0 view .LVU258 847 0032 0320 movs r0, #3 848 0034 31E0 b .L58 849 .L68: 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 850 .loc 1 427 32 discriminator 1 view .LVU259 851 0036 FFF7FEFF bl HAL_GetTick 852 .LVL70: 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 853 .loc 1 427 46 discriminator 1 view .LVU260 854 003a 801B subs r0, r0, r6 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 855 .loc 1 427 27 discriminator 1 view .LVU261 856 003c A842 cmp r0, r5 857 003e E5D9 bls .L55 858 0040 EDE7 b .L56 859 .L67: 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 860 .loc 1 442 3 is_stmt 1 view .LVU262 861 0042 6FF00C02 mvn r2, #12 862 0046 1A60 str r2, [r3] 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 863 .loc 1 445 3 view .LVU263 864 0048 236C ldr r3, [r4, #64] 865 004a 43F40053 orr r3, r3, #8192 866 004e 2364 str r3, [r4, #64] 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 867 .loc 1 453 3 view .LVU264 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 868 .loc 1 453 7 is_stmt 0 view .LVU265 869 0050 2368 ldr r3, [r4] 870 0052 9A68 ldr r2, [r3, #8] 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 871 .loc 1 453 6 view .LVU266 872 0054 12F4401F tst r2, #3145728 873 0058 1ED1 bne .L61 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 874 .loc 1 454 8 view .LVU267 875 005a 9A6B ldr r2, [r3, #56] 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->JSQR, ADC_JSQR_JL) || 876 .loc 1 453 63 discriminator 1 view .LVU268 877 005c 12F4401F tst r2, #3145728 ARM GAS /tmp/cckeduGo.s page 40 878 0060 03D0 beq .L60 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 879 .loc 1 455 8 view .LVU269 880 0062 9A68 ldr r2, [r3, #8] 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR2, ADC_CR2_EOCS)) && 881 .loc 1 454 59 view .LVU270 882 0064 12F4806F tst r2, #1024 883 0068 18D1 bne .L62 884 .L60: 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 885 .loc 1 456 8 view .LVU271 886 006a 5A68 ldr r2, [r3, #4] 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO) && 887 .loc 1 455 59 view .LVU272 888 006c 12F4806F tst r2, #1024 889 0070 16D1 bne .L63 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 890 .loc 1 457 9 view .LVU273 891 0072 9B68 ldr r3, [r3, #8] 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (ADC_IS_SOFTWARE_START_REGULAR(hadc) && 892 .loc 1 456 59 view .LVU274 893 0074 13F0405F tst r3, #805306368 894 0078 14D1 bne .L64 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 895 .loc 1 458 20 view .LVU275 896 007a 207E ldrb r0, [r4, #24] @ zero_extendqisi2 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** (hadc->Init.ContinuousConvMode == DISABLE)))) 897 .loc 1 457 51 view .LVU276 898 007c A0B9 cbnz r0, .L65 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 899 .loc 1 461 5 is_stmt 1 view .LVU277 900 007e 236C ldr r3, [r4, #64] 901 0080 23F48053 bic r3, r3, #4096 902 0084 2364 str r3, [r4, #64] 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 903 .loc 1 463 5 view .LVU278 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 904 .loc 1 463 9 is_stmt 0 view .LVU279 905 0086 236C ldr r3, [r4, #64] 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 906 .loc 1 463 8 view .LVU280 907 0088 13F4807F tst r3, #256 908 008c 05D1 bne .L58 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 909 .loc 1 465 7 is_stmt 1 view .LVU281 910 008e 236C ldr r3, [r4, #64] 911 0090 43F00103 orr r3, r3, #1 912 0094 2364 str r3, [r4, #64] 913 0096 00E0 b .L58 914 .L61: 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 915 .loc 1 470 10 is_stmt 0 view .LVU282 916 0098 0020 movs r0, #0 917 .L58: 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 918 .loc 1 471 1 view .LVU283 919 009a 70BD pop {r4, r5, r6, pc} ARM GAS /tmp/cckeduGo.s page 41 920 .LVL71: 921 .L62: 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 922 .loc 1 470 10 view .LVU284 923 009c 0020 movs r0, #0 924 009e FCE7 b .L58 925 .L63: 926 00a0 0020 movs r0, #0 927 00a2 FAE7 b .L58 928 .L64: 929 00a4 0020 movs r0, #0 930 00a6 F8E7 b .L58 931 .L65: 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 932 .loc 1 470 10 view .LVU285 933 00a8 0020 movs r0, #0 934 00aa F6E7 b .L58 935 .cfi_endproc 936 .LFE242: 938 .section .text.HAL_ADCEx_InjectedStop_IT,"ax",%progbits 939 .align 1 940 .global HAL_ADCEx_InjectedStop_IT 941 .syntax unified 942 .thumb 943 .thumb_func 945 HAL_ADCEx_InjectedStop_IT: 946 .LVL72: 947 .LFB243: 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 948 .loc 1 486 1 is_stmt 1 view -0 949 .cfi_startproc 950 @ args = 0, pretend = 0, frame = 0 951 @ frame_needed = 0, uses_anonymous_args = 0 952 @ link register save eliminated. 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 953 .loc 1 486 1 is_stmt 0 view .LVU287 954 0000 0346 mov r3, r0 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 955 .loc 1 487 3 is_stmt 1 view .LVU288 956 .LVL73: 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 957 .loc 1 490 3 view .LVU289 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 958 .loc 1 493 3 view .LVU290 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 959 .loc 1 493 3 view .LVU291 960 0002 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 961 0006 012A cmp r2, #1 962 0008 2DD0 beq .L73 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 963 .loc 1 493 3 discriminator 2 view .LVU292 964 000a 0122 movs r2, #1 965 000c 80F83C20 strb r2, [r0, #60] 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 966 .loc 1 493 3 discriminator 2 view .LVU293 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 967 .loc 1 501 3 view .LVU294 ARM GAS /tmp/cckeduGo.s page 42 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 968 .loc 1 501 13 is_stmt 0 view .LVU295 969 0010 026C ldr r2, [r0, #64] 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 970 .loc 1 501 6 view .LVU296 971 0012 12F4807F tst r2, #256 972 0016 1BD1 bne .L71 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 973 .loc 1 502 7 view .LVU297 974 0018 0268 ldr r2, [r0] 975 001a 5168 ldr r1, [r2, #4] 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_IS_BIT_CLR(hadc->Instance->CR1, ADC_CR1_JAUTO)) 976 .loc 1 501 58 discriminator 1 view .LVU298 977 001c 11F4806F tst r1, #1024 978 0020 16D1 bne .L71 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 979 .loc 1 506 5 is_stmt 1 view .LVU299 980 0022 9168 ldr r1, [r2, #8] 981 0024 21F00101 bic r1, r1, #1 982 0028 9160 str r1, [r2, #8] 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 983 .loc 1 509 5 view .LVU300 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 984 .loc 1 509 9 is_stmt 0 view .LVU301 985 002a 0268 ldr r2, [r0] 986 002c 9168 ldr r1, [r2, #8] 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 987 .loc 1 509 8 view .LVU302 988 002e 11F0010F tst r1, #1 989 0032 16D1 bne .L74 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 990 .loc 1 512 7 is_stmt 1 view .LVU303 991 0034 5168 ldr r1, [r2, #4] 992 0036 21F08001 bic r1, r1, #128 993 003a 5160 str r1, [r2, #4] 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 994 .loc 1 515 7 view .LVU304 995 003c 026C ldr r2, [r0, #64] 996 003e 22F48852 bic r2, r2, #4352 997 0042 22F00102 bic r2, r2, #1 998 0046 42F00102 orr r2, r2, #1 999 004a 0264 str r2, [r0, #64] 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1000 .loc 1 487 21 is_stmt 0 view .LVU305 1001 004c 0020 movs r0, #0 1002 .LVL74: 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1003 .loc 1 487 21 view .LVU306 1004 004e 04E0 b .L72 1005 .LVL75: 1006 .L71: 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1007 .loc 1 523 5 is_stmt 1 view .LVU307 1008 0050 1A6C ldr r2, [r3, #64] 1009 0052 42F02002 orr r2, r2, #32 1010 0056 1A64 str r2, [r3, #64] 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cckeduGo.s page 43 1011 .loc 1 525 5 view .LVU308 1012 .LVL76: 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1013 .loc 1 525 20 is_stmt 0 view .LVU309 1014 0058 0120 movs r0, #1 1015 .LVL77: 1016 .L72: 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1017 .loc 1 529 3 is_stmt 1 view .LVU310 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1018 .loc 1 529 3 view .LVU311 1019 005a 0022 movs r2, #0 1020 005c 83F83C20 strb r2, [r3, #60] 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1021 .loc 1 529 3 view .LVU312 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1022 .loc 1 532 3 view .LVU313 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1023 .loc 1 532 10 is_stmt 0 view .LVU314 1024 0060 7047 bx lr 1025 .LVL78: 1026 .L74: 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1027 .loc 1 487 21 view .LVU315 1028 0062 0020 movs r0, #0 1029 .LVL79: 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1030 .loc 1 487 21 view .LVU316 1031 0064 F9E7 b .L72 1032 .LVL80: 1033 .L73: 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1034 .loc 1 493 3 discriminator 1 view .LVU317 1035 0066 0220 movs r0, #2 1036 .LVL81: 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1037 .loc 1 533 1 view .LVU318 1038 0068 7047 bx lr 1039 .cfi_endproc 1040 .LFE243: 1042 .section .text.HAL_ADCEx_InjectedGetValue,"ax",%progbits 1043 .align 1 1044 .global HAL_ADCEx_InjectedGetValue 1045 .syntax unified 1046 .thumb 1047 .thumb_func 1049 HAL_ADCEx_InjectedGetValue: 1050 .LVL82: 1051 .LFB244: 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t tmp = 0U; 1052 .loc 1 548 1 is_stmt 1 view -0 1053 .cfi_startproc 1054 @ args = 0, pretend = 0, frame = 8 1055 @ frame_needed = 0, uses_anonymous_args = 0 1056 @ link register save eliminated. 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t tmp = 0U; 1057 .loc 1 548 1 is_stmt 0 view .LVU320 ARM GAS /tmp/cckeduGo.s page 44 1058 0000 82B0 sub sp, sp, #8 1059 .LCFI10: 1060 .cfi_def_cfa_offset 8 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1061 .loc 1 549 3 is_stmt 1 view .LVU321 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1062 .loc 1 549 17 is_stmt 0 view .LVU322 1063 0002 0023 movs r3, #0 1064 0004 0193 str r3, [sp, #4] 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1065 .loc 1 552 3 is_stmt 1 view .LVU323 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1066 .loc 1 556 3 view .LVU324 1067 0006 0368 ldr r3, [r0] 1068 0008 6FF00402 mvn r2, #4 1069 000c 1A60 str r2, [r3] 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1070 .loc 1 559 3 view .LVU325 1071 000e 0139 subs r1, r1, #1 1072 .LVL83: 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1073 .loc 1 559 3 is_stmt 0 view .LVU326 1074 0010 0329 cmp r1, #3 1075 0012 06D8 bhi .L76 1076 0014 DFE801F0 tbb [pc, r1] 1077 .L78: 1078 0018 10 .byte (.L81-.L78)/2 1079 0019 0C .byte (.L80-.L78)/2 1080 001a 08 .byte (.L79-.L78)/2 1081 001b 02 .byte (.L77-.L78)/2 1082 .p2align 1 1083 .L77: 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1084 .loc 1 563 7 is_stmt 1 view .LVU327 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1085 .loc 1 563 18 is_stmt 0 view .LVU328 1086 001c 0368 ldr r3, [r0] 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1087 .loc 1 563 28 view .LVU329 1088 001e 9B6C ldr r3, [r3, #72] 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1089 .loc 1 563 11 view .LVU330 1090 0020 0193 str r3, [sp, #4] 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_3: 1091 .loc 1 565 5 is_stmt 1 view .LVU331 1092 .L76: 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1093 .loc 1 584 3 view .LVU332 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1094 .loc 1 584 10 is_stmt 0 view .LVU333 1095 0022 0198 ldr r0, [sp, #4] 1096 .LVL84: 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1097 .loc 1 585 1 view .LVU334 1098 0024 02B0 add sp, sp, #8 1099 .LCFI11: 1100 .cfi_remember_state ARM GAS /tmp/cckeduGo.s page 45 1101 .cfi_def_cfa_offset 0 1102 @ sp needed 1103 0026 7047 bx lr 1104 .LVL85: 1105 .L79: 1106 .LCFI12: 1107 .cfi_restore_state 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1108 .loc 1 568 7 is_stmt 1 view .LVU335 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1109 .loc 1 568 18 is_stmt 0 view .LVU336 1110 0028 0368 ldr r3, [r0] 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1111 .loc 1 568 28 view .LVU337 1112 002a 5B6C ldr r3, [r3, #68] 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1113 .loc 1 568 11 view .LVU338 1114 002c 0193 str r3, [sp, #4] 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_2: 1115 .loc 1 570 5 is_stmt 1 view .LVU339 1116 002e F8E7 b .L76 1117 .L80: 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1118 .loc 1 573 7 view .LVU340 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1119 .loc 1 573 18 is_stmt 0 view .LVU341 1120 0030 0368 ldr r3, [r0] 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1121 .loc 1 573 28 view .LVU342 1122 0032 1B6C ldr r3, [r3, #64] 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1123 .loc 1 573 11 view .LVU343 1124 0034 0193 str r3, [sp, #4] 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case ADC_INJECTED_RANK_1: 1125 .loc 1 575 5 is_stmt 1 view .LVU344 1126 0036 F4E7 b .L76 1127 .L81: 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1128 .loc 1 578 7 view .LVU345 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1129 .loc 1 578 18 is_stmt 0 view .LVU346 1130 0038 0368 ldr r3, [r0] 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1131 .loc 1 578 28 view .LVU347 1132 003a DB6B ldr r3, [r3, #60] 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1133 .loc 1 578 11 view .LVU348 1134 003c 0193 str r3, [sp, #4] 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 1135 .loc 1 580 5 is_stmt 1 view .LVU349 1136 003e F0E7 b .L76 1137 .cfi_endproc 1138 .LFE244: 1140 .section .text.HAL_ADCEx_MultiModeStart_DMA,"ax",%progbits 1141 .align 1 1142 .global HAL_ADCEx_MultiModeStart_DMA 1143 .syntax unified ARM GAS /tmp/cckeduGo.s page 46 1144 .thumb 1145 .thumb_func 1147 HAL_ADCEx_MultiModeStart_DMA: 1148 .LVL86: 1149 .LFB245: 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 1150 .loc 1 599 1 view -0 1151 .cfi_startproc 1152 @ args = 0, pretend = 0, frame = 8 1153 @ frame_needed = 0, uses_anonymous_args = 0 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** __IO uint32_t counter = 0U; 1154 .loc 1 599 1 is_stmt 0 view .LVU351 1155 0000 10B5 push {r4, lr} 1156 .LCFI13: 1157 .cfi_def_cfa_offset 8 1158 .cfi_offset 4, -8 1159 .cfi_offset 14, -4 1160 0002 82B0 sub sp, sp, #8 1161 .LCFI14: 1162 .cfi_def_cfa_offset 16 1163 0004 1346 mov r3, r2 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1164 .loc 1 600 3 is_stmt 1 view .LVU352 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1165 .loc 1 600 17 is_stmt 0 view .LVU353 1166 0006 0022 movs r2, #0 1167 .LVL87: 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1168 .loc 1 600 17 view .LVU354 1169 0008 0192 str r2, [sp, #4] 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1170 .loc 1 601 3 is_stmt 1 view .LVU355 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 1171 .loc 1 602 3 view .LVU356 1172 .LVL88: 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_TRIG_EDGE(hadc->Init.ExternalTrigConvEdge)); 1173 .loc 1 604 3 view .LVU357 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(hadc->Init.DMAContinuousRequests)); 1174 .loc 1 605 3 view .LVU358 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1175 .loc 1 606 3 view .LVU359 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1176 .loc 1 609 3 view .LVU360 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1177 .loc 1 609 3 view .LVU361 1178 000a 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 1179 000e 012A cmp r2, #1 1180 0010 7BD0 beq .L95 1181 0012 0446 mov r4, r0 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1182 .loc 1 609 3 discriminator 2 view .LVU362 1183 0014 0122 movs r2, #1 1184 0016 80F83C20 strb r2, [r0, #60] 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1185 .loc 1 609 3 discriminator 2 view .LVU363 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1186 .loc 1 613 3 view .LVU364 ARM GAS /tmp/cckeduGo.s page 47 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1187 .loc 1 613 12 is_stmt 0 view .LVU365 1188 001a 0268 ldr r2, [r0] 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1189 .loc 1 613 22 view .LVU366 1190 001c 9068 ldr r0, [r2, #8] 1191 .LVL89: 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1192 .loc 1 613 6 view .LVU367 1193 001e 10F0010F tst r0, #1 1194 0022 13D1 bne .L86 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1195 .loc 1 616 5 is_stmt 1 view .LVU368 1196 0024 9068 ldr r0, [r2, #8] 1197 0026 40F00100 orr r0, r0, #1 1198 002a 9060 str r0, [r2, #8] 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 1199 .loc 1 620 5 view .LVU369 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 1200 .loc 1 620 53 is_stmt 0 view .LVU370 1201 002c 384A ldr r2, .L97 1202 002e 1068 ldr r0, [r2] 1203 0030 384A ldr r2, .L97+4 1204 0032 A2FB0020 umull r2, r0, r2, r0 1205 0036 800C lsrs r0, r0, #18 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 1206 .loc 1 620 34 view .LVU371 1207 0038 00EB4000 add r0, r0, r0, lsl #1 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** while (counter != 0U) 1208 .loc 1 620 13 view .LVU372 1209 003c 0190 str r0, [sp, #4] 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1210 .loc 1 621 5 is_stmt 1 view .LVU373 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1211 .loc 1 621 11 is_stmt 0 view .LVU374 1212 003e 02E0 b .L87 1213 .L88: 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1214 .loc 1 623 7 is_stmt 1 view .LVU375 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1215 .loc 1 623 14 is_stmt 0 view .LVU376 1216 0040 0198 ldr r0, [sp, #4] 1217 0042 0138 subs r0, r0, #1 1218 0044 0190 str r0, [sp, #4] 1219 .L87: 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1220 .loc 1 621 20 is_stmt 1 view .LVU377 1221 0046 0198 ldr r0, [sp, #4] 1222 0048 0028 cmp r0, #0 1223 004a F9D1 bne .L88 1224 .L86: 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1225 .loc 1 628 3 view .LVU378 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1226 .loc 1 628 7 is_stmt 0 view .LVU379 1227 004c 2268 ldr r2, [r4] 1228 004e 9068 ldr r0, [r2, #8] ARM GAS /tmp/cckeduGo.s page 48 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1229 .loc 1 628 6 view .LVU380 1230 0050 10F0010F tst r0, #1 1231 0054 4ED0 beq .L89 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_READY | HAL_ADC_STATE_REG_EOC | HAL_ADC_STATE_REG_OVR, 1232 .loc 1 633 5 is_stmt 1 view .LVU381 1233 0056 206C ldr r0, [r4, #64] 1234 0058 20F4E060 bic r0, r0, #1792 1235 005c 20F00100 bic r0, r0, #1 1236 0060 40F48070 orr r0, r0, #256 1237 0064 2064 str r0, [r4, #64] 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1238 .loc 1 639 5 view .LVU382 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1239 .loc 1 639 9 is_stmt 0 view .LVU383 1240 0066 5268 ldr r2, [r2, #4] 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1241 .loc 1 639 8 view .LVU384 1242 0068 12F4806F tst r2, #1024 1243 006c 05D0 beq .L90 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1244 .loc 1 641 7 is_stmt 1 view .LVU385 1245 006e 226C ldr r2, [r4, #64] 1246 0070 22F44052 bic r2, r2, #12288 1247 0074 42F48052 orr r2, r2, #4096 1248 0078 2264 str r2, [r4, #64] 1249 .L90: 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1250 .loc 1 645 5 view .LVU386 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1251 .loc 1 645 9 is_stmt 0 view .LVU387 1252 007a 226C ldr r2, [r4, #64] 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1253 .loc 1 645 8 view .LVU388 1254 007c 12F4805F tst r2, #4096 1255 0080 2FD0 beq .L91 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1256 .loc 1 648 7 is_stmt 1 view .LVU389 1257 0082 626C ldr r2, [r4, #68] 1258 0084 22F00602 bic r2, r2, #6 1259 0088 6264 str r2, [r4, #68] 1260 .L92: 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1261 .loc 1 659 5 view .LVU390 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1262 .loc 1 659 5 view .LVU391 1263 008a 0022 movs r2, #0 1264 008c 84F83C20 strb r2, [r4, #60] 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1265 .loc 1 659 5 view .LVU392 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1266 .loc 1 662 5 view .LVU393 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1267 .loc 1 662 9 is_stmt 0 view .LVU394 1268 0090 A26B ldr r2, [r4, #56] 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1269 .loc 1 662 40 view .LVU395 ARM GAS /tmp/cckeduGo.s page 49 1270 0092 2148 ldr r0, .L97+8 1271 0094 D063 str r0, [r2, #60] 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1272 .loc 1 665 5 is_stmt 1 view .LVU396 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1273 .loc 1 665 9 is_stmt 0 view .LVU397 1274 0096 A26B ldr r2, [r4, #56] 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1275 .loc 1 665 44 view .LVU398 1276 0098 2048 ldr r0, .L97+12 1277 009a 1064 str r0, [r2, #64] 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1278 .loc 1 668 5 is_stmt 1 view .LVU399 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1279 .loc 1 668 9 is_stmt 0 view .LVU400 1280 009c A26B ldr r2, [r4, #56] 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1281 .loc 1 668 41 view .LVU401 1282 009e 2048 ldr r0, .L97+16 1283 00a0 D064 str r0, [r2, #76] 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1284 .loc 1 675 5 is_stmt 1 view .LVU402 1285 00a2 2268 ldr r2, [r4] 1286 00a4 6FF00200 mvn r0, #2 1287 00a8 1060 str r0, [r2] 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1288 .loc 1 678 5 view .LVU403 1289 00aa 2068 ldr r0, [r4] 1290 00ac 4268 ldr r2, [r0, #4] 1291 00ae 42F08062 orr r2, r2, #67108864 1292 00b2 4260 str r2, [r0, #4] 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1293 .loc 1 683 5 view .LVU404 1294 .LVL90: 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1295 .loc 1 685 5 view .LVU405 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1296 .loc 1 685 19 is_stmt 0 view .LVU406 1297 00b4 94F83020 ldrb r2, [r4, #48] @ zero_extendqisi2 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1298 .loc 1 685 8 view .LVU407 1299 00b8 B2B1 cbz r2, .L93 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1300 .loc 1 688 7 is_stmt 1 view .LVU408 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1301 .loc 1 688 20 is_stmt 0 view .LVU409 1302 00ba 1A48 ldr r0, .L97+20 1303 00bc 4268 ldr r2, [r0, #4] 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1304 .loc 1 688 26 view .LVU410 1305 00be 42F40052 orr r2, r2, #8192 1306 00c2 4260 str r2, [r0, #4] 1307 .L94: 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1308 .loc 1 697 5 is_stmt 1 view .LVU411 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1309 .loc 1 697 22 is_stmt 0 view .LVU412 ARM GAS /tmp/cckeduGo.s page 50 1310 00c4 0A46 mov r2, r1 1311 00c6 1849 ldr r1, .L97+24 1312 .LVL91: 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1313 .loc 1 697 22 view .LVU413 1314 00c8 A06B ldr r0, [r4, #56] 1315 00ca FFF7FEFF bl HAL_DMA_Start_IT 1316 .LVL92: 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1317 .loc 1 700 5 is_stmt 1 view .LVU414 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1318 .loc 1 700 14 is_stmt 0 view .LVU415 1319 00ce 2368 ldr r3, [r4] 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1320 .loc 1 700 24 view .LVU416 1321 00d0 9A68 ldr r2, [r3, #8] 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1322 .loc 1 700 8 view .LVU417 1323 00d2 12F0405F tst r2, #805306368 1324 00d6 16D1 bne .L85 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1325 .loc 1 703 7 is_stmt 1 view .LVU418 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1326 .loc 1 703 21 is_stmt 0 view .LVU419 1327 00d8 9A68 ldr r2, [r3, #8] 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1328 .loc 1 703 27 view .LVU420 1329 00da 42F08042 orr r2, r2, #1073741824 1330 00de 9A60 str r2, [r3, #8] 1331 00e0 11E0 b .L85 1332 .LVL93: 1333 .L91: 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1334 .loc 1 653 7 is_stmt 1 view .LVU421 1335 00e2 0022 movs r2, #0 1336 00e4 6264 str r2, [r4, #68] 1337 00e6 D0E7 b .L92 1338 .LVL94: 1339 .L93: 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1340 .loc 1 693 7 view .LVU422 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1341 .loc 1 693 20 is_stmt 0 view .LVU423 1342 00e8 0E48 ldr r0, .L97+20 1343 00ea 4268 ldr r2, [r0, #4] 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1344 .loc 1 693 26 view .LVU424 1345 00ec 22F40052 bic r2, r2, #8192 1346 00f0 4260 str r2, [r0, #4] 1347 00f2 E7E7 b .L94 1348 .LVL95: 1349 .L89: 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1350 .loc 1 709 5 is_stmt 1 view .LVU425 1351 00f4 236C ldr r3, [r4, #64] 1352 .LVL96: 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 51 1353 .loc 1 709 5 is_stmt 0 view .LVU426 1354 00f6 43F01003 orr r3, r3, #16 1355 00fa 2364 str r3, [r4, #64] 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1356 .loc 1 712 5 is_stmt 1 view .LVU427 1357 00fc 636C ldr r3, [r4, #68] 1358 00fe 43F00103 orr r3, r3, #1 1359 0102 6364 str r3, [r4, #68] 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Check the parameters */ 1360 .loc 1 602 21 is_stmt 0 view .LVU428 1361 0104 0020 movs r0, #0 1362 .LVL97: 1363 .L85: 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1364 .loc 1 717 1 view .LVU429 1365 0106 02B0 add sp, sp, #8 1366 .LCFI15: 1367 .cfi_remember_state 1368 .cfi_def_cfa_offset 8 1369 @ sp needed 1370 0108 10BD pop {r4, pc} 1371 .LVL98: 1372 .L95: 1373 .LCFI16: 1374 .cfi_restore_state 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1375 .loc 1 609 3 discriminator 1 view .LVU430 1376 010a 0220 movs r0, #2 1377 .LVL99: 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1378 .loc 1 609 3 discriminator 1 view .LVU431 1379 010c FBE7 b .L85 1380 .L98: 1381 010e 00BF .align 2 1382 .L97: 1383 0110 00000000 .word SystemCoreClock 1384 0114 83DE1B43 .word 1125899907 1385 0118 00000000 .word ADC_MultiModeDMAConvCplt 1386 011c 00000000 .word ADC_MultiModeDMAHalfConvCplt 1387 0120 00000000 .word ADC_MultiModeDMAError 1388 0124 00230140 .word 1073816320 1389 0128 08230140 .word 1073816328 1390 .cfi_endproc 1391 .LFE245: 1393 .section .text.HAL_ADCEx_MultiModeStop_DMA,"ax",%progbits 1394 .align 1 1395 .global HAL_ADCEx_MultiModeStop_DMA 1396 .syntax unified 1397 .thumb 1398 .thumb_func 1400 HAL_ADCEx_MultiModeStop_DMA: 1401 .LVL100: 1402 .LFB246: 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1403 .loc 1 726 1 is_stmt 1 view -0 1404 .cfi_startproc 1405 @ args = 0, pretend = 0, frame = 0 ARM GAS /tmp/cckeduGo.s page 52 1406 @ frame_needed = 0, uses_anonymous_args = 0 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1407 .loc 1 727 3 view .LVU433 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1408 .loc 1 728 3 view .LVU434 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1409 .loc 1 731 3 view .LVU435 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1410 .loc 1 734 3 view .LVU436 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1411 .loc 1 734 3 view .LVU437 1412 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 1413 0004 012B cmp r3, #1 1414 0006 29D0 beq .L102 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_StatusTypeDef tmp_hal_status = HAL_OK; 1415 .loc 1 726 1 is_stmt 0 view .LVU438 1416 0008 10B5 push {r4, lr} 1417 .LCFI17: 1418 .cfi_def_cfa_offset 8 1419 .cfi_offset 4, -8 1420 .cfi_offset 14, -4 1421 000a 0446 mov r4, r0 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1422 .loc 1 734 3 is_stmt 1 discriminator 2 view .LVU439 1423 000c 0123 movs r3, #1 1424 000e 80F83C30 strb r3, [r0, #60] 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1425 .loc 1 734 3 discriminator 2 view .LVU440 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1426 .loc 1 738 3 view .LVU441 1427 0012 0268 ldr r2, [r0] 1428 0014 9368 ldr r3, [r2, #8] 1429 0016 23F00103 bic r3, r3, #1 1430 001a 9360 str r3, [r2, #8] 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1431 .loc 1 743 3 view .LVU442 1432 .LVL101: 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1433 .loc 1 746 3 view .LVU443 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1434 .loc 1 746 7 is_stmt 0 view .LVU444 1435 001c 0368 ldr r3, [r0] 1436 001e 9B68 ldr r3, [r3, #8] 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1437 .loc 1 746 6 view .LVU445 1438 0020 13F0010F tst r3, #1 1439 0024 04D0 beq .L108 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1440 .loc 1 727 21 view .LVU446 1441 0026 0020 movs r0, #0 1442 .LVL102: 1443 .L101: 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1444 .loc 1 765 3 is_stmt 1 view .LVU447 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1445 .loc 1 765 3 view .LVU448 1446 0028 0023 movs r3, #0 ARM GAS /tmp/cckeduGo.s page 53 1447 002a 84F83C30 strb r3, [r4, #60] 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1448 .loc 1 765 3 view .LVU449 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1449 .loc 1 768 3 view .LVU450 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1450 .loc 1 769 1 is_stmt 0 view .LVU451 1451 002e 10BD pop {r4, pc} 1452 .LVL103: 1453 .L108: 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1454 .loc 1 749 5 is_stmt 1 view .LVU452 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1455 .loc 1 749 18 is_stmt 0 view .LVU453 1456 0030 0B4A ldr r2, .L109 1457 0032 5368 ldr r3, [r2, #4] 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1458 .loc 1 749 24 view .LVU454 1459 0034 23F40053 bic r3, r3, #8192 1460 0038 5360 str r3, [r2, #4] 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1461 .loc 1 753 5 is_stmt 1 view .LVU455 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1462 .loc 1 753 22 is_stmt 0 view .LVU456 1463 003a 806B ldr r0, [r0, #56] 1464 .LVL104: 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1465 .loc 1 753 22 view .LVU457 1466 003c FFF7FEFF bl HAL_DMA_Abort 1467 .LVL105: 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1468 .loc 1 756 5 is_stmt 1 view .LVU458 1469 0040 2268 ldr r2, [r4] 1470 0042 5368 ldr r3, [r2, #4] 1471 0044 23F08063 bic r3, r3, #67108864 1472 0048 5360 str r3, [r2, #4] 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** HAL_ADC_STATE_REG_BUSY | HAL_ADC_STATE_INJ_BUSY, 1473 .loc 1 759 5 view .LVU459 1474 004a 236C ldr r3, [r4, #64] 1475 004c 23F48853 bic r3, r3, #4352 1476 0050 23F00103 bic r3, r3, #1 1477 0054 43F00103 orr r3, r3, #1 1478 0058 2364 str r3, [r4, #64] 1479 005a E5E7 b .L101 1480 .LVL106: 1481 .L102: 1482 .LCFI18: 1483 .cfi_def_cfa_offset 0 1484 .cfi_restore 4 1485 .cfi_restore 14 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1486 .loc 1 734 3 is_stmt 0 discriminator 1 view .LVU460 1487 005c 0220 movs r0, #2 1488 .LVL107: 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1489 .loc 1 769 1 view .LVU461 1490 005e 7047 bx lr ARM GAS /tmp/cckeduGo.s page 54 1491 .L110: 1492 .align 2 1493 .L109: 1494 0060 00230140 .word 1073816320 1495 .cfi_endproc 1496 .LFE246: 1498 .section .text.HAL_ADCEx_MultiModeGetValue,"ax",%progbits 1499 .align 1 1500 .global HAL_ADCEx_MultiModeGetValue 1501 .syntax unified 1502 .thumb 1503 .thumb_func 1505 HAL_ADCEx_MultiModeGetValue: 1506 .LVL108: 1507 .LFB247: 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ADC_Common_TypeDef *tmpADC_Common; 1508 .loc 1 779 1 is_stmt 1 view -0 1509 .cfi_startproc 1510 @ args = 0, pretend = 0, frame = 0 1511 @ frame_needed = 0, uses_anonymous_args = 0 1512 @ link register save eliminated. 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1513 .loc 1 780 3 view .LVU463 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1514 .loc 1 783 3 view .LVU464 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1515 .loc 1 788 3 view .LVU465 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1516 .loc 1 791 3 view .LVU466 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1517 .loc 1 791 23 is_stmt 0 view .LVU467 1518 0000 014B ldr r3, .L112 1519 0002 9868 ldr r0, [r3, #8] 1520 .LVL109: 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1521 .loc 1 792 1 view .LVU468 1522 0004 7047 bx lr 1523 .L113: 1524 0006 00BF .align 2 1525 .L112: 1526 0008 00230140 .word 1073816320 1527 .cfi_endproc 1528 .LFE247: 1530 .section .text.HAL_ADCEx_InjectedConvCpltCallback,"ax",%progbits 1531 .align 1 1532 .weak HAL_ADCEx_InjectedConvCpltCallback 1533 .syntax unified 1534 .thumb 1535 .thumb_func 1537 HAL_ADCEx_InjectedConvCpltCallback: 1538 .LVL110: 1539 .LFB248: 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* Prevent unused argument(s) compilation warning */ 1540 .loc 1 801 1 is_stmt 1 view -0 1541 .cfi_startproc 1542 @ args = 0, pretend = 0, frame = 0 1543 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cckeduGo.s page 55 1544 @ link register save eliminated. 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** /* NOTE : This function Should not be modified, when the callback is needed, 1545 .loc 1 803 3 view .LVU470 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1546 .loc 1 807 1 is_stmt 0 view .LVU471 1547 0000 7047 bx lr 1548 .cfi_endproc 1549 .LFE248: 1551 .section .text.HAL_ADCEx_InjectedConfigChannel,"ax",%progbits 1552 .align 1 1553 .global HAL_ADCEx_InjectedConfigChannel 1554 .syntax unified 1555 .thumb 1556 .thumb_func 1558 HAL_ADCEx_InjectedConfigChannel: 1559 .LVL111: 1560 .LFB249: 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1561 .loc 1 818 1 is_stmt 1 view -0 1562 .cfi_startproc 1563 @ args = 0, pretend = 0, frame = 0 1564 @ frame_needed = 0, uses_anonymous_args = 0 1565 @ link register save eliminated. 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1566 .loc 1 825 3 view .LVU473 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_RANK(sConfigInjected->InjectedRank)); 1567 .loc 1 828 3 view .LVU474 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLE_TIME(sConfigInjected->InjectedSamplingTime)); 1568 .loc 1 829 3 view .LVU475 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_EXT_INJEC_TRIG(sConfigInjected->ExternalTrigInjecConv)); 1569 .loc 1 830 3 view .LVU476 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_INJECTED_LENGTH(sConfigInjected->InjectedNbrOfConversion)); 1570 .loc 1 831 3 view .LVU477 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->AutoInjectedConv)); 1571 .loc 1 832 3 view .LVU478 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_FUNCTIONAL_STATE(sConfigInjected->InjectedDiscontinuousConvMode)); 1572 .loc 1 833 3 view .LVU479 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1573 .loc 1 834 3 view .LVU480 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1574 .loc 1 841 3 view .LVU481 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1575 .loc 1 843 5 view .LVU482 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1576 .loc 1 847 3 view .LVU483 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1577 .loc 1 847 3 view .LVU484 1578 0000 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2 1579 0004 012A cmp r2, #1 1580 0006 00F0F480 beq .L132 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1581 .loc 1 818 1 is_stmt 0 view .LVU485 1582 000a 30B4 push {r4, r5} 1583 .LCFI19: 1584 .cfi_def_cfa_offset 8 1585 .cfi_offset 4, -8 1586 .cfi_offset 5, -4 ARM GAS /tmp/cckeduGo.s page 56 1587 000c 0346 mov r3, r0 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1588 .loc 1 847 3 is_stmt 1 discriminator 2 view .LVU486 1589 000e 0122 movs r2, #1 1590 0010 80F83C20 strb r2, [r0, #60] 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1591 .loc 1 847 3 discriminator 2 view .LVU487 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1592 .loc 1 850 3 view .LVU488 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1593 .loc 1 850 22 is_stmt 0 view .LVU489 1594 0014 0A68 ldr r2, [r1] 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1595 .loc 1 850 6 view .LVU490 1596 0016 092A cmp r2, #9 1597 0018 40F28980 bls .L117 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1598 .loc 1 853 5 is_stmt 1 view .LVU491 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1599 .loc 1 853 9 is_stmt 0 view .LVU492 1600 001c 0568 ldr r5, [r0] 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1601 .loc 1 853 19 view .LVU493 1602 001e E868 ldr r0, [r5, #12] 1603 .LVL112: 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1604 .loc 1 853 31 view .LVU494 1605 0020 92B2 uxth r2, r2 1606 0022 02EB4202 add r2, r2, r2, lsl #1 1607 0026 1E3A subs r2, r2, #30 1608 0028 0724 movs r4, #7 1609 002a 04FA02F2 lsl r2, r4, r2 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1610 .loc 1 853 27 view .LVU495 1611 002e 20EA0202 bic r2, r0, r2 1612 0032 EA60 str r2, [r5, #12] 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1613 .loc 1 856 5 is_stmt 1 view .LVU496 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1614 .loc 1 856 9 is_stmt 0 view .LVU497 1615 0034 1D68 ldr r5, [r3] 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1616 .loc 1 856 19 view .LVU498 1617 0036 E868 ldr r0, [r5, #12] 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1618 .loc 1 856 30 view .LVU499 1619 0038 8C68 ldr r4, [r1, #8] 1620 003a 0A88 ldrh r2, [r1] 1621 003c 02EB4202 add r2, r2, r2, lsl #1 1622 0040 1E3A subs r2, r2, #30 1623 0042 9440 lsls r4, r4, r2 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1624 .loc 1 856 27 view .LVU500 1625 0044 2043 orrs r0, r0, r4 1626 0046 E860 str r0, [r5, #12] 1627 .L118: 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); ARM GAS /tmp/cckeduGo.s page 57 1628 .loc 1 868 3 is_stmt 1 view .LVU501 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 1629 .loc 1 868 7 is_stmt 0 view .LVU502 1630 0048 1868 ldr r0, [r3] 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 1631 .loc 1 868 17 view .LVU503 1632 004a 826B ldr r2, [r0, #56] 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JSQR |= ADC_SQR1(sConfigInjected->InjectedNbrOfConversion); 1633 .loc 1 868 24 view .LVU504 1634 004c 22F44012 bic r2, r2, #3145728 1635 0050 8263 str r2, [r0, #56] 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1636 .loc 1 869 3 is_stmt 1 view .LVU505 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1637 .loc 1 869 7 is_stmt 0 view .LVU506 1638 0052 1C68 ldr r4, [r3] 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1639 .loc 1 869 17 view .LVU507 1640 0054 A26B ldr r2, [r4, #56] 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1641 .loc 1 869 28 view .LVU508 1642 0056 0869 ldr r0, [r1, #16] 1643 0058 0138 subs r0, r0, #1 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1644 .loc 1 869 24 view .LVU509 1645 005a 42EA0052 orr r2, r2, r0, lsl #20 1646 005e A263 str r2, [r4, #56] 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1647 .loc 1 874 3 is_stmt 1 view .LVU510 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1648 .loc 1 874 7 is_stmt 0 view .LVU511 1649 0060 1C68 ldr r4, [r3] 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1650 .loc 1 874 17 view .LVU512 1651 0062 A06B ldr r0, [r4, #56] 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1652 .loc 1 874 28 view .LVU513 1653 0064 4A68 ldr r2, [r1, #4] 1654 0066 0D69 ldr r5, [r1, #16] 1655 0068 521B subs r2, r2, r5 1656 006a D2B2 uxtb r2, r2 1657 006c 0332 adds r2, r2, #3 1658 006e D2B2 uxtb r2, r2 1659 0070 02EB8202 add r2, r2, r2, lsl #2 1660 0074 4FF01F0C mov ip, #31 1661 0078 0CFA02F2 lsl r2, ip, r2 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1662 .loc 1 874 24 view .LVU514 1663 007c 20EA0202 bic r2, r0, r2 1664 0080 A263 str r2, [r4, #56] 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1665 .loc 1 877 3 is_stmt 1 view .LVU515 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1666 .loc 1 877 7 is_stmt 0 view .LVU516 1667 0082 1C68 ldr r4, [r3] 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1668 .loc 1 877 17 view .LVU517 ARM GAS /tmp/cckeduGo.s page 58 1669 0084 A06B ldr r0, [r4, #56] 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1670 .loc 1 877 27 view .LVU518 1671 0086 4A68 ldr r2, [r1, #4] 1672 0088 0D69 ldr r5, [r1, #16] 1673 008a 521B subs r2, r2, r5 1674 008c D2B2 uxtb r2, r2 1675 008e 0332 adds r2, r2, #3 1676 0090 D2B2 uxtb r2, r2 1677 0092 02EB8202 add r2, r2, r2, lsl #2 1678 0096 B1F800C0 ldrh ip, [r1] 1679 009a 0CFA02F2 lsl r2, ip, r2 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1680 .loc 1 877 24 view .LVU519 1681 009e 0243 orrs r2, r2, r0 1682 00a0 A263 str r2, [r4, #56] 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1683 .loc 1 884 3 is_stmt 1 view .LVU520 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1684 .loc 1 884 22 is_stmt 0 view .LVU521 1685 00a2 8869 ldr r0, [r1, #24] 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1686 .loc 1 884 6 view .LVU522 1687 00a4 544A ldr r2, .L139 1688 00a6 9042 cmp r0, r2 1689 00a8 56D0 beq .L119 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 1690 .loc 1 887 5 is_stmt 1 view .LVU523 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 1691 .loc 1 887 9 is_stmt 0 view .LVU524 1692 00aa 1868 ldr r0, [r3] 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 1693 .loc 1 887 19 view .LVU525 1694 00ac 8268 ldr r2, [r0, #8] 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConv; 1695 .loc 1 887 25 view .LVU526 1696 00ae 22F47022 bic r2, r2, #983040 1697 00b2 8260 str r2, [r0, #8] 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1698 .loc 1 888 5 is_stmt 1 view .LVU527 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1699 .loc 1 888 9 is_stmt 0 view .LVU528 1700 00b4 1868 ldr r0, [r3] 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1701 .loc 1 888 19 view .LVU529 1702 00b6 8268 ldr r2, [r0, #8] 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1703 .loc 1 888 44 view .LVU530 1704 00b8 8C69 ldr r4, [r1, #24] 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1705 .loc 1 888 25 view .LVU531 1706 00ba 2243 orrs r2, r2, r4 1707 00bc 8260 str r2, [r0, #8] 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 1708 .loc 1 891 5 is_stmt 1 view .LVU532 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 1709 .loc 1 891 9 is_stmt 0 view .LVU533 ARM GAS /tmp/cckeduGo.s page 59 1710 00be 1868 ldr r0, [r3] 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 1711 .loc 1 891 19 view .LVU534 1712 00c0 8268 ldr r2, [r0, #8] 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 |= sConfigInjected->ExternalTrigInjecConvEdge; 1713 .loc 1 891 25 view .LVU535 1714 00c2 22F44012 bic r2, r2, #3145728 1715 00c6 8260 str r2, [r0, #8] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1716 .loc 1 892 5 is_stmt 1 view .LVU536 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1717 .loc 1 892 9 is_stmt 0 view .LVU537 1718 00c8 1868 ldr r0, [r3] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1719 .loc 1 892 19 view .LVU538 1720 00ca 8268 ldr r2, [r0, #8] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1721 .loc 1 892 43 view .LVU539 1722 00cc CC69 ldr r4, [r1, #28] 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1723 .loc 1 892 25 view .LVU540 1724 00ce 2243 orrs r2, r2, r4 1725 00d0 8260 str r2, [r0, #8] 1726 .L120: 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1727 .loc 1 901 3 is_stmt 1 view .LVU541 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1728 .loc 1 901 22 is_stmt 0 view .LVU542 1729 00d2 4A7D ldrb r2, [r1, #21] @ zero_extendqisi2 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1730 .loc 1 901 6 view .LVU543 1731 00d4 002A cmp r2, #0 1732 00d6 4AD0 beq .L121 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1733 .loc 1 904 5 is_stmt 1 view .LVU544 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1734 .loc 1 904 9 is_stmt 0 view .LVU545 1735 00d8 1868 ldr r0, [r3] 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1736 .loc 1 904 19 view .LVU546 1737 00da 4268 ldr r2, [r0, #4] 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1738 .loc 1 904 25 view .LVU547 1739 00dc 42F48062 orr r2, r2, #1024 1740 00e0 4260 str r2, [r0, #4] 1741 .L122: 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1742 .loc 1 912 3 is_stmt 1 view .LVU548 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1743 .loc 1 912 22 is_stmt 0 view .LVU549 1744 00e2 0A7D ldrb r2, [r1, #20] @ zero_extendqisi2 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1745 .loc 1 912 6 view .LVU550 1746 00e4 002A cmp r2, #0 1747 00e6 48D0 beq .L123 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1748 .loc 1 915 5 is_stmt 1 view .LVU551 ARM GAS /tmp/cckeduGo.s page 60 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1749 .loc 1 915 9 is_stmt 0 view .LVU552 1750 00e8 1868 ldr r0, [r3] 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1751 .loc 1 915 19 view .LVU553 1752 00ea 4268 ldr r2, [r0, #4] 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1753 .loc 1 915 25 view .LVU554 1754 00ec 42F48052 orr r2, r2, #4096 1755 00f0 4260 str r2, [r0, #4] 1756 .L124: 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1757 .loc 1 923 3 is_stmt 1 view .LVU555 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1758 .loc 1 923 26 is_stmt 0 view .LVU556 1759 00f2 4A68 ldr r2, [r1, #4] 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1760 .loc 1 923 3 view .LVU557 1761 00f4 022A cmp r2, #2 1762 00f6 46D0 beq .L125 1763 00f8 032A cmp r2, #3 1764 00fa 4FD0 beq .L126 1765 00fc 012A cmp r2, #1 1766 00fe 58D1 bne .L127 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 1767 .loc 1 927 7 is_stmt 1 view .LVU558 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 1768 .loc 1 927 11 is_stmt 0 view .LVU559 1769 0100 1868 ldr r0, [r3] 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 1770 .loc 1 927 21 view .LVU560 1771 0102 4269 ldr r2, [r0, #20] 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR1 |= sConfigInjected->InjectedOffset; 1772 .loc 1 927 29 view .LVU561 1773 0104 6FF30B02 bfc r2, #0, #12 1774 0108 4261 str r2, [r0, #20] 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1775 .loc 1 928 7 is_stmt 1 view .LVU562 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1776 .loc 1 928 11 is_stmt 0 view .LVU563 1777 010a 1868 ldr r0, [r3] 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1778 .loc 1 928 21 view .LVU564 1779 010c 4269 ldr r2, [r0, #20] 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1780 .loc 1 928 47 view .LVU565 1781 010e CC68 ldr r4, [r1, #12] 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1782 .loc 1 928 29 view .LVU566 1783 0110 2243 orrs r2, r2, r4 1784 0112 4261 str r2, [r0, #20] 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 2U: 1785 .loc 1 929 7 is_stmt 1 view .LVU567 1786 .L128: 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1787 .loc 1 950 3 view .LVU568 1788 .LVL113: ARM GAS /tmp/cckeduGo.s page 61 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1789 .loc 1 953 3 view .LVU569 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1790 .loc 1 953 12 is_stmt 0 view .LVU570 1791 0114 1868 ldr r0, [r3] 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1792 .loc 1 953 6 view .LVU571 1793 0116 394A ldr r2, .L139+4 1794 0118 9042 cmp r0, r2 1795 011a 55D0 beq .L137 1796 .L129: 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1797 .loc 1 960 3 is_stmt 1 view .LVU572 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1798 .loc 1 960 12 is_stmt 0 view .LVU573 1799 011c 1868 ldr r0, [r3] 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1800 .loc 1 960 6 view .LVU574 1801 011e 374A ldr r2, .L139+4 1802 0120 9042 cmp r0, r2 1803 0122 5AD0 beq .L138 1804 .LVL114: 1805 .L130: 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1806 .loc 1 967 3 is_stmt 1 view .LVU575 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1807 .loc 1 967 3 view .LVU576 1808 0124 0020 movs r0, #0 1809 0126 83F83C00 strb r0, [r3, #60] 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1810 .loc 1 967 3 view .LVU577 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1811 .loc 1 970 3 view .LVU578 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1812 .loc 1 971 1 is_stmt 0 view .LVU579 1813 012a 30BC pop {r4, r5} 1814 .LCFI20: 1815 .cfi_remember_state 1816 .cfi_restore 5 1817 .cfi_restore 4 1818 .cfi_def_cfa_offset 0 1819 012c 7047 bx lr 1820 .LVL115: 1821 .L117: 1822 .LCFI21: 1823 .cfi_restore_state 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1824 .loc 1 861 5 is_stmt 1 view .LVU580 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1825 .loc 1 861 9 is_stmt 0 view .LVU581 1826 012e 0568 ldr r5, [r0] 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1827 .loc 1 861 19 view .LVU582 1828 0130 2869 ldr r0, [r5, #16] 1829 .LVL116: 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1830 .loc 1 861 31 view .LVU583 ARM GAS /tmp/cckeduGo.s page 62 1831 0132 92B2 uxth r2, r2 1832 0134 02EB4202 add r2, r2, r2, lsl #1 1833 0138 0724 movs r4, #7 1834 013a 04FA02F2 lsl r2, r4, r2 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1835 .loc 1 861 27 view .LVU584 1836 013e 20EA0202 bic r2, r0, r2 1837 0142 2A61 str r2, [r5, #16] 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1838 .loc 1 864 5 is_stmt 1 view .LVU585 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1839 .loc 1 864 9 is_stmt 0 view .LVU586 1840 0144 1D68 ldr r5, [r3] 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1841 .loc 1 864 19 view .LVU587 1842 0146 2869 ldr r0, [r5, #16] 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1843 .loc 1 864 30 view .LVU588 1844 0148 8C68 ldr r4, [r1, #8] 1845 014a 0A88 ldrh r2, [r1] 1846 014c 02EB4202 add r2, r2, r2, lsl #1 1847 0150 9440 lsls r4, r4, r2 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1848 .loc 1 864 27 view .LVU589 1849 0152 2043 orrs r0, r0, r4 1850 0154 2861 str r0, [r5, #16] 1851 0156 77E7 b .L118 1852 .L119: 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 1853 .loc 1 897 5 is_stmt 1 view .LVU590 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 1854 .loc 1 897 9 is_stmt 0 view .LVU591 1855 0158 1868 ldr r0, [r3] 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 1856 .loc 1 897 19 view .LVU592 1857 015a 8268 ldr r2, [r0, #8] 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->CR2 &= ~(ADC_CR2_JEXTEN); 1858 .loc 1 897 25 view .LVU593 1859 015c 22F47022 bic r2, r2, #983040 1860 0160 8260 str r2, [r0, #8] 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1861 .loc 1 898 5 is_stmt 1 view .LVU594 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1862 .loc 1 898 9 is_stmt 0 view .LVU595 1863 0162 1868 ldr r0, [r3] 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1864 .loc 1 898 19 view .LVU596 1865 0164 8268 ldr r2, [r0, #8] 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1866 .loc 1 898 25 view .LVU597 1867 0166 22F44012 bic r2, r2, #3145728 1868 016a 8260 str r2, [r0, #8] 1869 016c B1E7 b .L120 1870 .L121: 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1871 .loc 1 909 5 is_stmt 1 view .LVU598 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } ARM GAS /tmp/cckeduGo.s page 63 1872 .loc 1 909 9 is_stmt 0 view .LVU599 1873 016e 1868 ldr r0, [r3] 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1874 .loc 1 909 19 view .LVU600 1875 0170 4268 ldr r2, [r0, #4] 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1876 .loc 1 909 25 view .LVU601 1877 0172 22F48062 bic r2, r2, #1024 1878 0176 4260 str r2, [r0, #4] 1879 0178 B3E7 b .L122 1880 .L123: 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1881 .loc 1 920 5 is_stmt 1 view .LVU602 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1882 .loc 1 920 9 is_stmt 0 view .LVU603 1883 017a 1868 ldr r0, [r3] 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1884 .loc 1 920 19 view .LVU604 1885 017c 4268 ldr r2, [r0, #4] 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1886 .loc 1 920 25 view .LVU605 1887 017e 22F48052 bic r2, r2, #4096 1888 0182 4260 str r2, [r0, #4] 1889 0184 B5E7 b .L124 1890 .L125: 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 1891 .loc 1 932 7 is_stmt 1 view .LVU606 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 1892 .loc 1 932 11 is_stmt 0 view .LVU607 1893 0186 1868 ldr r0, [r3] 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 1894 .loc 1 932 21 view .LVU608 1895 0188 8269 ldr r2, [r0, #24] 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR2 |= sConfigInjected->InjectedOffset; 1896 .loc 1 932 29 view .LVU609 1897 018a 6FF30B02 bfc r2, #0, #12 1898 018e 8261 str r2, [r0, #24] 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1899 .loc 1 933 7 is_stmt 1 view .LVU610 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1900 .loc 1 933 11 is_stmt 0 view .LVU611 1901 0190 1868 ldr r0, [r3] 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1902 .loc 1 933 21 view .LVU612 1903 0192 8269 ldr r2, [r0, #24] 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1904 .loc 1 933 47 view .LVU613 1905 0194 CC68 ldr r4, [r1, #12] 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1906 .loc 1 933 29 view .LVU614 1907 0196 2243 orrs r2, r2, r4 1908 0198 8261 str r2, [r0, #24] 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** case 3U: 1909 .loc 1 934 7 is_stmt 1 view .LVU615 1910 019a BBE7 b .L128 1911 .L126: 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; ARM GAS /tmp/cckeduGo.s page 64 1912 .loc 1 937 7 view .LVU616 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 1913 .loc 1 937 11 is_stmt 0 view .LVU617 1914 019c 1868 ldr r0, [r3] 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 1915 .loc 1 937 21 view .LVU618 1916 019e C269 ldr r2, [r0, #28] 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR3 |= sConfigInjected->InjectedOffset; 1917 .loc 1 937 29 view .LVU619 1918 01a0 6FF30B02 bfc r2, #0, #12 1919 01a4 C261 str r2, [r0, #28] 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1920 .loc 1 938 7 is_stmt 1 view .LVU620 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1921 .loc 1 938 11 is_stmt 0 view .LVU621 1922 01a6 1868 ldr r0, [r3] 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1923 .loc 1 938 21 view .LVU622 1924 01a8 C269 ldr r2, [r0, #28] 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1925 .loc 1 938 47 view .LVU623 1926 01aa CC68 ldr r4, [r1, #12] 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1927 .loc 1 938 29 view .LVU624 1928 01ac 2243 orrs r2, r2, r4 1929 01ae C261 str r2, [r0, #28] 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** default: 1930 .loc 1 939 7 is_stmt 1 view .LVU625 1931 01b0 B0E7 b .L128 1932 .L127: 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 1933 .loc 1 942 7 view .LVU626 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 1934 .loc 1 942 11 is_stmt 0 view .LVU627 1935 01b2 1868 ldr r0, [r3] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 1936 .loc 1 942 21 view .LVU628 1937 01b4 026A ldr r2, [r0, #32] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** hadc->Instance->JOFR4 |= sConfigInjected->InjectedOffset; 1938 .loc 1 942 29 view .LVU629 1939 01b6 6FF30B02 bfc r2, #0, #12 1940 01ba 0262 str r2, [r0, #32] 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1941 .loc 1 943 7 is_stmt 1 view .LVU630 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1942 .loc 1 943 11 is_stmt 0 view .LVU631 1943 01bc 1868 ldr r0, [r3] 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1944 .loc 1 943 21 view .LVU632 1945 01be 026A ldr r2, [r0, #32] 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1946 .loc 1 943 47 view .LVU633 1947 01c0 CC68 ldr r4, [r1, #12] 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** break; 1948 .loc 1 943 29 view .LVU634 1949 01c2 2243 orrs r2, r2, r4 1950 01c4 0262 str r2, [r0, #32] ARM GAS /tmp/cckeduGo.s page 65 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1951 .loc 1 944 7 is_stmt 1 view .LVU635 1952 01c6 A5E7 b .L128 1953 .LVL117: 1954 .L137: 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1955 .loc 1 953 51 is_stmt 0 discriminator 1 view .LVU636 1956 01c8 0A68 ldr r2, [r1] 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1957 .loc 1 953 32 discriminator 1 view .LVU637 1958 01ca 122A cmp r2, #18 1959 01cc A6D1 bne .L129 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1960 .loc 1 956 5 is_stmt 1 view .LVU638 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1961 .loc 1 956 18 is_stmt 0 view .LVU639 1962 01ce 0C48 ldr r0, .L139+8 1963 01d0 4268 ldr r2, [r0, #4] 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1964 .loc 1 956 24 view .LVU640 1965 01d2 42F48002 orr r2, r2, #4194304 1966 01d6 4260 str r2, [r0, #4] 1967 01d8 A0E7 b .L129 1968 .L138: 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1969 .loc 1 960 52 discriminator 1 view .LVU641 1970 01da 0A68 ldr r2, [r1] 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1971 .loc 1 960 32 discriminator 1 view .LVU642 1972 01dc 0949 ldr r1, .L139+12 1973 .LVL118: 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1974 .loc 1 960 32 discriminator 1 view .LVU643 1975 01de 8A42 cmp r2, r1 1976 01e0 01D0 beq .L131 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** { 1977 .loc 1 960 97 discriminator 2 view .LVU644 1978 01e2 112A cmp r2, #17 1979 01e4 9ED1 bne .L130 1980 .L131: 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1981 .loc 1 963 5 is_stmt 1 view .LVU645 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1982 .loc 1 963 18 is_stmt 0 view .LVU646 1983 01e6 0649 ldr r1, .L139+8 1984 01e8 4A68 ldr r2, [r1, #4] 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 1985 .loc 1 963 24 view .LVU647 1986 01ea 42F40002 orr r2, r2, #8388608 1987 01ee 4A60 str r2, [r1, #4] 1988 01f0 98E7 b .L130 1989 .LVL119: 1990 .L132: 1991 .LCFI22: 1992 .cfi_def_cfa_offset 0 1993 .cfi_restore 4 1994 .cfi_restore 5 ARM GAS /tmp/cckeduGo.s page 66 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1995 .loc 1 847 3 discriminator 1 view .LVU648 1996 01f2 0220 movs r0, #2 1997 .LVL120: 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 1998 .loc 1 971 1 view .LVU649 1999 01f4 7047 bx lr 2000 .L140: 2001 01f6 00BF .align 2 2002 .L139: 2003 01f8 01000F00 .word 983041 2004 01fc 00200140 .word 1073815552 2005 0200 00230140 .word 1073816320 2006 0204 12000010 .word 268435474 2007 .cfi_endproc 2008 .LFE249: 2010 .section .text.HAL_ADCEx_MultiModeConfigChannel,"ax",%progbits 2011 .align 1 2012 .global HAL_ADCEx_MultiModeConfigChannel 2013 .syntax unified 2014 .thumb 2015 .thumb_func 2017 HAL_ADCEx_MultiModeConfigChannel: 2018 .LVL121: 2019 .LFB250: 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2020 .loc 1 982 1 is_stmt 1 view -0 2021 .cfi_startproc 2022 @ args = 0, pretend = 0, frame = 0 2023 @ frame_needed = 0, uses_anonymous_args = 0 2024 @ link register save eliminated. 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2025 .loc 1 984 3 view .LVU651 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_DMA_ACCESS_MODE(multimode->DMAAccessMode)); 2026 .loc 1 987 3 view .LVU652 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** assert_param(IS_ADC_SAMPLING_DELAY(multimode->TwoSamplingDelay)); 2027 .loc 1 988 3 view .LVU653 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2028 .loc 1 989 3 view .LVU654 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2029 .loc 1 992 3 view .LVU655 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2030 .loc 1 992 3 view .LVU656 2031 0000 90F83C30 ldrb r3, [r0, #60] @ zero_extendqisi2 2032 0004 012B cmp r3, #1 2033 0006 23D0 beq .L143 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2034 .loc 1 982 1 is_stmt 0 view .LVU657 2035 0008 10B4 push {r4} 2036 .LCFI23: 2037 .cfi_def_cfa_offset 4 2038 .cfi_offset 4, -4 2039 000a 0246 mov r2, r0 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2040 .loc 1 992 3 is_stmt 1 discriminator 2 view .LVU658 2041 000c 0123 movs r3, #1 2042 000e 80F83C30 strb r3, [r0, #60] ARM GAS /tmp/cckeduGo.s page 67 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2043 .loc 1 992 3 discriminator 2 view .LVU659 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2044 .loc 1 997 3 view .LVU660 2045 .LVL122: 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 2046 .loc 1 1000 3 view .LVU661 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 2047 .loc 1 1000 16 is_stmt 0 view .LVU662 2048 0012 104B ldr r3, .L148 2049 0014 5868 ldr r0, [r3, #4] 2050 .LVL123: 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->Mode; 2051 .loc 1 1000 22 view .LVU663 2052 0016 20F01F00 bic r0, r0, #31 2053 001a 5860 str r0, [r3, #4] 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2054 .loc 1 1001 3 is_stmt 1 view .LVU664 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2055 .loc 1 1001 16 is_stmt 0 view .LVU665 2056 001c 5868 ldr r0, [r3, #4] 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2057 .loc 1 1001 22 view .LVU666 2058 001e 0C68 ldr r4, [r1] 2059 0020 2043 orrs r0, r0, r4 2060 0022 5860 str r0, [r3, #4] 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 2061 .loc 1 1004 3 is_stmt 1 view .LVU667 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 2062 .loc 1 1004 16 is_stmt 0 view .LVU668 2063 0024 5868 ldr r0, [r3, #4] 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->DMAAccessMode; 2064 .loc 1 1004 22 view .LVU669 2065 0026 20F44040 bic r0, r0, #49152 2066 002a 5860 str r0, [r3, #4] 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2067 .loc 1 1005 3 is_stmt 1 view .LVU670 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2068 .loc 1 1005 16 is_stmt 0 view .LVU671 2069 002c 5868 ldr r0, [r3, #4] 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2070 .loc 1 1005 22 view .LVU672 2071 002e 4C68 ldr r4, [r1, #4] 2072 0030 2043 orrs r0, r0, r4 2073 0032 5860 str r0, [r3, #4] 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 2074 .loc 1 1008 3 is_stmt 1 view .LVU673 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 2075 .loc 1 1008 16 is_stmt 0 view .LVU674 2076 0034 5868 ldr r0, [r3, #4] 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** tmpADC_Common->CCR |= multimode->TwoSamplingDelay; 2077 .loc 1 1008 22 view .LVU675 2078 0036 20F47060 bic r0, r0, #3840 2079 003a 5860 str r0, [r3, #4] 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2080 .loc 1 1009 3 is_stmt 1 view .LVU676 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** ARM GAS /tmp/cckeduGo.s page 68 2081 .loc 1 1009 16 is_stmt 0 view .LVU677 2082 003c 5868 ldr r0, [r3, #4] 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2083 .loc 1 1009 34 view .LVU678 2084 003e 8968 ldr r1, [r1, #8] 2085 .LVL124: 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2086 .loc 1 1009 22 view .LVU679 2087 0040 0143 orrs r1, r1, r0 2088 0042 5960 str r1, [r3, #4] 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2089 .loc 1 1012 3 is_stmt 1 view .LVU680 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2090 .loc 1 1012 3 view .LVU681 2091 0044 0020 movs r0, #0 2092 0046 82F83C00 strb r0, [r2, #60] 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2093 .loc 1 1012 3 view .LVU682 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** } 2094 .loc 1 1015 3 view .LVU683 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2095 .loc 1 1016 1 is_stmt 0 view .LVU684 2096 004a 5DF8044B ldr r4, [sp], #4 2097 .LCFI24: 2098 .cfi_restore 4 2099 .cfi_def_cfa_offset 0 2100 004e 7047 bx lr 2101 .LVL125: 2102 .L143: 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2103 .loc 1 992 3 discriminator 1 view .LVU685 2104 0050 0220 movs r0, #2 2105 .LVL126: 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c **** 2106 .loc 1 1016 1 view .LVU686 2107 0052 7047 bx lr 2108 .L149: 2109 .align 2 2110 .L148: 2111 0054 00230140 .word 1073816320 2112 .cfi_endproc 2113 .LFE250: 2115 .text 2116 .Letext0: 2117 .file 2 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" 2118 .file 3 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f429xx.h" 2119 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 2120 .file 5 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 2121 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h" 2122 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h" 2123 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h" 2124 .file 9 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 2125 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" ARM GAS /tmp/cckeduGo.s page 69 DEFINED SYMBOLS *ABS*:00000000 stm32f4xx_hal_adc_ex.c /tmp/cckeduGo.s:21 .text.ADC_MultiModeDMAError:00000000 $t /tmp/cckeduGo.s:26 .text.ADC_MultiModeDMAError:00000000 ADC_MultiModeDMAError /tmp/cckeduGo.s:62 .text.ADC_MultiModeDMAHalfConvCplt:00000000 $t /tmp/cckeduGo.s:67 .text.ADC_MultiModeDMAHalfConvCplt:00000000 ADC_MultiModeDMAHalfConvCplt /tmp/cckeduGo.s:94 .text.ADC_MultiModeDMAConvCplt:00000000 $t /tmp/cckeduGo.s:99 .text.ADC_MultiModeDMAConvCplt:00000000 ADC_MultiModeDMAConvCplt /tmp/cckeduGo.s:193 .text.HAL_ADCEx_InjectedStart:00000000 $t /tmp/cckeduGo.s:199 .text.HAL_ADCEx_InjectedStart:00000000 HAL_ADCEx_InjectedStart /tmp/cckeduGo.s:426 .text.HAL_ADCEx_InjectedStart:000000f4 $d /tmp/cckeduGo.s:434 .text.HAL_ADCEx_InjectedStart_IT:00000000 $t /tmp/cckeduGo.s:440 .text.HAL_ADCEx_InjectedStart_IT:00000000 HAL_ADCEx_InjectedStart_IT /tmp/cckeduGo.s:672 .text.HAL_ADCEx_InjectedStart_IT:000000fc $d /tmp/cckeduGo.s:680 .text.HAL_ADCEx_InjectedStop:00000000 $t /tmp/cckeduGo.s:686 .text.HAL_ADCEx_InjectedStop:00000000 HAL_ADCEx_InjectedStop /tmp/cckeduGo.s:780 .text.HAL_ADCEx_InjectedPollForConversion:00000000 $t /tmp/cckeduGo.s:786 .text.HAL_ADCEx_InjectedPollForConversion:00000000 HAL_ADCEx_InjectedPollForConversion /tmp/cckeduGo.s:939 .text.HAL_ADCEx_InjectedStop_IT:00000000 $t /tmp/cckeduGo.s:945 .text.HAL_ADCEx_InjectedStop_IT:00000000 HAL_ADCEx_InjectedStop_IT /tmp/cckeduGo.s:1043 .text.HAL_ADCEx_InjectedGetValue:00000000 $t /tmp/cckeduGo.s:1049 .text.HAL_ADCEx_InjectedGetValue:00000000 HAL_ADCEx_InjectedGetValue /tmp/cckeduGo.s:1078 .text.HAL_ADCEx_InjectedGetValue:00000018 $d /tmp/cckeduGo.s:1082 .text.HAL_ADCEx_InjectedGetValue:0000001c $t /tmp/cckeduGo.s:1141 .text.HAL_ADCEx_MultiModeStart_DMA:00000000 $t /tmp/cckeduGo.s:1147 .text.HAL_ADCEx_MultiModeStart_DMA:00000000 HAL_ADCEx_MultiModeStart_DMA /tmp/cckeduGo.s:1383 .text.HAL_ADCEx_MultiModeStart_DMA:00000110 $d /tmp/cckeduGo.s:1394 .text.HAL_ADCEx_MultiModeStop_DMA:00000000 $t /tmp/cckeduGo.s:1400 .text.HAL_ADCEx_MultiModeStop_DMA:00000000 HAL_ADCEx_MultiModeStop_DMA /tmp/cckeduGo.s:1494 .text.HAL_ADCEx_MultiModeStop_DMA:00000060 $d /tmp/cckeduGo.s:1499 .text.HAL_ADCEx_MultiModeGetValue:00000000 $t /tmp/cckeduGo.s:1505 .text.HAL_ADCEx_MultiModeGetValue:00000000 HAL_ADCEx_MultiModeGetValue /tmp/cckeduGo.s:1526 .text.HAL_ADCEx_MultiModeGetValue:00000008 $d /tmp/cckeduGo.s:1531 .text.HAL_ADCEx_InjectedConvCpltCallback:00000000 $t /tmp/cckeduGo.s:1537 .text.HAL_ADCEx_InjectedConvCpltCallback:00000000 HAL_ADCEx_InjectedConvCpltCallback /tmp/cckeduGo.s:1552 .text.HAL_ADCEx_InjectedConfigChannel:00000000 $t /tmp/cckeduGo.s:1558 .text.HAL_ADCEx_InjectedConfigChannel:00000000 HAL_ADCEx_InjectedConfigChannel /tmp/cckeduGo.s:2003 .text.HAL_ADCEx_InjectedConfigChannel:000001f8 $d /tmp/cckeduGo.s:2011 .text.HAL_ADCEx_MultiModeConfigChannel:00000000 $t /tmp/cckeduGo.s:2017 .text.HAL_ADCEx_MultiModeConfigChannel:00000000 HAL_ADCEx_MultiModeConfigChannel /tmp/cckeduGo.s:2111 .text.HAL_ADCEx_MultiModeConfigChannel:00000054 $d UNDEFINED SYMBOLS HAL_ADC_ErrorCallback HAL_ADC_ConvHalfCpltCallback HAL_ADC_ConvCpltCallback SystemCoreClock HAL_GetTick HAL_DMA_Start_IT HAL_DMA_Abort