ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.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, 6 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal_tim_ex.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.HAL_TIMEx_HallSensor_Init,"ax",%progbits 20 .align 1 21 .global HAL_TIMEx_HallSensor_Init 22 .syntax unified 23 .thumb 24 .thumb_func 26 HAL_TIMEx_HallSensor_Init: 27 .LFB235: 28 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @file stm32f4xx_hal_tim_ex.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM HAL module driver. 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * functionalities of the Timer Extended peripheral: 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * + Time Hall Sensor Interface Initialization 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * + Time Hall Sensor Interface Start 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * + Time Complementary signal break and dead time configuration 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * + Time Master and Slave synchronization configuration 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * + Timer remapping capabilities configuration 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ****************************************************************************** 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @attention 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * Copyright (c) 2016 STMicroelectronics. 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * All rights reserved. 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This software is licensed under terms that can be found in the LICENSE file 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * in the root directory of this software component. 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ****************************************************************************** 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### TIMER Extended features ##### 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** The Timer Extended features include: 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Complementary outputs with programmable dead-time for : ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 2 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Output Compare 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) PWM generation (Edge and Center-aligned Mode) 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) One-pulse mode output 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Synchronization circuit to control the timer with external signals and to 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** interconnect several timers together. 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Break input to put the timer output signals in reset state or in a known state. 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Supports incremental (quadrature) encoder and hall-sensor circuitry for 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** positioning purposes 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### How to use this driver ##### 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Initialize the TIM low level resources by implementing the following functions 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** depending on the selected feature: 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Hall Sensor output : HAL_TIMEx_HallSensor_MspInit() 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Initialize the TIM low level resources : 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE(); 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (##) TIM pins configuration 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+++) Enable the clock for the TIM GPIOs using the following function: 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_RCC_GPIOx_CLK_ENABLE(); 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init(); 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) The external Clock can be configured, if needed (the default clock is the 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** internal clock from the APBx), using the following function: 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ConfigClockSource, the clock configuration should be done before 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** any start function. 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Configure the TIM in the desired functioning mode using one of the 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** initialization function of this driver: 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) HAL_TIMEx_HallSensor_Init() and HAL_TIMEx_ConfigCommutEvent(): to use the 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Timer Hall Sensor Interface and the commutation event with the corresponding 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Interrupt and DMA request if needed (Note that One Timer is used to interface 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** with the Hall sensor Interface and another Timer should be used to use 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the commutation event). 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (#) Activate the TIM peripheral using one of the start functions: 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Complementary Output Compare : HAL_TIMEx_OCN_Start(), HAL_TIMEx_OCN_Start_DMA(), 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_OCN_Start_IT() 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Complementary PWM generation : HAL_TIMEx_PWMN_Start(), HAL_TIMEx_PWMN_Start_DMA(), 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_PWMN_Start_IT() 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Complementary One-pulse mode output : HAL_TIMEx_OnePulseN_Start(), HAL_TIMEx_OnePul 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (++) Hall Sensor output : HAL_TIMEx_HallSensor_Start(), HAL_TIMEx_HallSensor_Start_DMA() 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_HallSensor_Start_IT(). 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ****************************************************************************** 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Includes ------------------------------------------------------------------*/ 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #include "stm32f4xx_hal.h" 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @addtogroup STM32F4xx_HAL_Driver 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx TIMEx ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 3 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM Extended HAL module driver 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #ifdef HAL_TIM_MODULE_ENABLED 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private typedef -----------------------------------------------------------*/ 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private define ------------------------------------------------------------*/ 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private macros ------------------------------------------------------------*/ 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private variables ---------------------------------------------------------*/ 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private function prototypes -----------------------------------------------*/ 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma); 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma); 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState); 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Exported functions --------------------------------------------------------*/ 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions TIM Extended Exported Functions 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group1 Extended Timer Hall Sensor functions 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Timer Hall Sensor functions 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Timer Hall Sensor functions ##### 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides functions allowing to: 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Initialize and configure TIM HAL Sensor. 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) De-initialize TIM HAL Sensor. 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Hall Sensor Interface. 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Hall Sensor Interface. 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Hall Sensor Interface and enable interrupts. 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Hall Sensor Interface and disable interrupts. 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Hall Sensor Interface and enable DMA transfers. 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Hall Sensor Interface and disable DMA transfers. 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Initializes the TIM Hall Sensor Interface and initialize the associated handle. 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note When the timer instance is initialized in Hall Sensor Interface mode, 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * timer channels 1 and channel 2 are reserved and cannot be used for 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * other purpose. 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param sConfig TIM Hall Sensor configuration structure 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sC 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 29 .loc 1 139 1 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 40 32 @ frame_needed = 1, uses_anonymous_args = 0 33 0000 80B5 push {r7, lr} ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 4 34 .LCFI0: 35 .cfi_def_cfa_offset 8 36 .cfi_offset 7, -8 37 .cfi_offset 14, -4 38 0002 8AB0 sub sp, sp, #40 39 .LCFI1: 40 .cfi_def_cfa_offset 48 41 0004 00AF add r7, sp, #0 42 .LCFI2: 43 .cfi_def_cfa_register 7 44 0006 7860 str r0, [r7, #4] 45 0008 3960 str r1, [r7] 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_OC_InitTypeDef OC_Config; 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM handle allocation */ 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (htim == NULL) 46 .loc 1 143 6 47 000a 7B68 ldr r3, [r7, #4] 48 000c 002B cmp r3, #0 49 000e 01D1 bne .L2 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 50 .loc 1 145 12 51 0010 0123 movs r3, #1 52 0012 9AE0 b .L5 53 .L2: 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_IC_POLARITY(sConfig->IC1Polarity)); 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_IC_PRESCALER(sConfig->IC1Prescaler)); 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_IC_FILTER(sConfig->IC1Filter)); 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (htim->State == HAL_TIM_STATE_RESET) 54 .loc 1 157 11 55 0014 7B68 ldr r3, [r7, #4] 56 0016 93F83D30 ldrb r3, [r3, #61] 57 001a DBB2 uxtb r3, r3 58 .loc 1 157 6 59 001c 002B cmp r3, #0 60 001e 06D1 bne .L4 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Allocate lock resource and initialize it */ 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Lock = HAL_UNLOCKED; 61 .loc 1 160 16 62 0020 7B68 ldr r3, [r7, #4] 63 0022 0022 movs r2, #0 64 0024 83F83C20 strb r2, [r3, #60] 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Reset interrupt callbacks to legacy week callbacks */ 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_ResetCallback(htim); 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 5 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (htim->HallSensor_MspInitCallback == NULL) 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC */ 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->HallSensor_MspInitCallback(htim); 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_HallSensor_MspInit(htim); 65 .loc 1 174 5 66 0028 7868 ldr r0, [r7, #4] 67 002a FFF7FEFF bl HAL_TIMEx_HallSensor_MspInit 68 .L4: 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM state */ 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_BUSY; 69 .loc 1 179 15 70 002e 7B68 ldr r3, [r7, #4] 71 0030 0222 movs r2, #2 72 0032 83F83D20 strb r2, [r3, #61] 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Configure the Time base in the Encoder Mode */ 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_Base_SetConfig(htim->Instance, &htim->Init); 73 .loc 1 182 3 74 0036 7B68 ldr r3, [r7, #4] 75 0038 1A68 ldr r2, [r3] 76 003a 7B68 ldr r3, [r7, #4] 77 003c 0433 adds r3, r3, #4 78 003e 1946 mov r1, r3 79 0040 1046 mov r0, r2 80 0042 FFF7FEFF bl TIM_Base_SetConfig 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Configure the Channel 1 as Input Channel to interface with the three Outputs of the Hall sens 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_TI1_SetConfig(htim->Instance, sConfig->IC1Polarity, TIM_ICSELECTION_TRC, sConfig->IC1Filter); 81 .loc 1 185 3 82 0046 7B68 ldr r3, [r7, #4] 83 0048 1868 ldr r0, [r3] 84 004a 3B68 ldr r3, [r7] 85 004c 1968 ldr r1, [r3] 86 004e 3B68 ldr r3, [r7] 87 0050 9B68 ldr r3, [r3, #8] 88 0052 0322 movs r2, #3 89 0054 FFF7FEFF bl TIM_TI1_SetConfig 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Reset the IC1PSC Bits */ 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; 90 .loc 1 188 7 91 0058 7B68 ldr r3, [r7, #4] 92 005a 1B68 ldr r3, [r3] 93 .loc 1 188 25 94 005c 9A69 ldr r2, [r3, #24] 95 .loc 1 188 7 96 005e 7B68 ldr r3, [r7, #4] 97 0060 1B68 ldr r3, [r3] 98 .loc 1 188 25 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 6 99 0062 22F00C02 bic r2, r2, #12 100 0066 9A61 str r2, [r3, #24] 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the IC1PSC value */ 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CCMR1 |= sConfig->IC1Prescaler; 101 .loc 1 190 7 102 0068 7B68 ldr r3, [r7, #4] 103 006a 1B68 ldr r3, [r3] 104 .loc 1 190 25 105 006c 9969 ldr r1, [r3, #24] 106 .loc 1 190 35 107 006e 3B68 ldr r3, [r7] 108 0070 5A68 ldr r2, [r3, #4] 109 .loc 1 190 7 110 0072 7B68 ldr r3, [r7, #4] 111 0074 1B68 ldr r3, [r3] 112 .loc 1 190 25 113 0076 0A43 orrs r2, r2, r1 114 0078 9A61 str r2, [r3, #24] 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Hall sensor interface (XOR function of the three inputs) */ 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= TIM_CR2_TI1S; 115 .loc 1 193 7 116 007a 7B68 ldr r3, [r7, #4] 117 007c 1B68 ldr r3, [r3] 118 .loc 1 193 23 119 007e 5A68 ldr r2, [r3, #4] 120 .loc 1 193 7 121 0080 7B68 ldr r3, [r7, #4] 122 0082 1B68 ldr r3, [r3] 123 .loc 1 193 23 124 0084 42F08002 orr r2, r2, #128 125 0088 5A60 str r2, [r3, #4] 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the TIM_TS_TI1F_ED signal as Input trigger for the TIM */ 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR &= ~TIM_SMCR_TS; 126 .loc 1 196 7 127 008a 7B68 ldr r3, [r7, #4] 128 008c 1B68 ldr r3, [r3] 129 .loc 1 196 24 130 008e 9A68 ldr r2, [r3, #8] 131 .loc 1 196 7 132 0090 7B68 ldr r3, [r7, #4] 133 0092 1B68 ldr r3, [r3] 134 .loc 1 196 24 135 0094 22F07002 bic r2, r2, #112 136 0098 9A60 str r2, [r3, #8] 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR |= TIM_TS_TI1F_ED; 137 .loc 1 197 7 138 009a 7B68 ldr r3, [r7, #4] 139 009c 1B68 ldr r3, [r3] 140 .loc 1 197 24 141 009e 9A68 ldr r2, [r3, #8] 142 .loc 1 197 7 143 00a0 7B68 ldr r3, [r7, #4] 144 00a2 1B68 ldr r3, [r3] 145 .loc 1 197 24 146 00a4 42F04002 orr r2, r2, #64 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 7 147 00a8 9A60 str r2, [r3, #8] 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Use the TIM_TS_TI1F_ED signal to reset the TIM counter each edge detection */ 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR &= ~TIM_SMCR_SMS; 148 .loc 1 200 7 149 00aa 7B68 ldr r3, [r7, #4] 150 00ac 1B68 ldr r3, [r3] 151 .loc 1 200 24 152 00ae 9A68 ldr r2, [r3, #8] 153 .loc 1 200 7 154 00b0 7B68 ldr r3, [r7, #4] 155 00b2 1B68 ldr r3, [r3] 156 .loc 1 200 24 157 00b4 22F00702 bic r2, r2, #7 158 00b8 9A60 str r2, [r3, #8] 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR |= TIM_SLAVEMODE_RESET; 159 .loc 1 201 7 160 00ba 7B68 ldr r3, [r7, #4] 161 00bc 1B68 ldr r3, [r3] 162 .loc 1 201 24 163 00be 9A68 ldr r2, [r3, #8] 164 .loc 1 201 7 165 00c0 7B68 ldr r3, [r7, #4] 166 00c2 1B68 ldr r3, [r3] 167 .loc 1 201 24 168 00c4 42F00402 orr r2, r2, #4 169 00c8 9A60 str r2, [r3, #8] 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Program channel 2 in PWM 2 mode with the desired Commutation_Delay*/ 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCFastMode = TIM_OCFAST_DISABLE; 170 .loc 1 204 24 171 00ca 0023 movs r3, #0 172 00cc FB61 str r3, [r7, #28] 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCIdleState = TIM_OCIDLESTATE_RESET; 173 .loc 1 205 25 174 00ce 0023 movs r3, #0 175 00d0 3B62 str r3, [r7, #32] 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCMode = TIM_OCMODE_PWM2; 176 .loc 1 206 20 177 00d2 7023 movs r3, #112 178 00d4 FB60 str r3, [r7, #12] 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCNIdleState = TIM_OCNIDLESTATE_RESET; 179 .loc 1 207 26 180 00d6 0023 movs r3, #0 181 00d8 7B62 str r3, [r7, #36] 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCNPolarity = TIM_OCNPOLARITY_HIGH; 182 .loc 1 208 25 183 00da 0023 movs r3, #0 184 00dc BB61 str r3, [r7, #24] 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.OCPolarity = TIM_OCPOLARITY_HIGH; 185 .loc 1 209 24 186 00de 0023 movs r3, #0 187 00e0 7B61 str r3, [r7, #20] 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** OC_Config.Pulse = sConfig->Commutation_Delay; 188 .loc 1 210 28 189 00e2 3B68 ldr r3, [r7] 190 00e4 DB68 ldr r3, [r3, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 8 191 .loc 1 210 19 192 00e6 3B61 str r3, [r7, #16] 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_OC2_SetConfig(htim->Instance, &OC_Config); 193 .loc 1 212 3 194 00e8 7B68 ldr r3, [r7, #4] 195 00ea 1B68 ldr r3, [r3] 196 00ec 07F10C02 add r2, r7, #12 197 00f0 1146 mov r1, r2 198 00f2 1846 mov r0, r3 199 00f4 FFF7FEFF bl TIM_OC2_SetConfig 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select OC2REF as trigger output on TRGO: write the MMS bits in the TIMx_CR2 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** register to 101 */ 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 &= ~TIM_CR2_MMS; 200 .loc 1 216 7 201 00f8 7B68 ldr r3, [r7, #4] 202 00fa 1B68 ldr r3, [r3] 203 .loc 1 216 23 204 00fc 5A68 ldr r2, [r3, #4] 205 .loc 1 216 7 206 00fe 7B68 ldr r3, [r7, #4] 207 0100 1B68 ldr r3, [r3] 208 .loc 1 216 23 209 0102 22F07002 bic r2, r2, #112 210 0106 5A60 str r2, [r3, #4] 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= TIM_TRGO_OC2REF; 211 .loc 1 217 7 212 0108 7B68 ldr r3, [r7, #4] 213 010a 1B68 ldr r3, [r3] 214 .loc 1 217 23 215 010c 5A68 ldr r2, [r3, #4] 216 .loc 1 217 7 217 010e 7B68 ldr r3, [r7, #4] 218 0110 1B68 ldr r3, [r3] 219 .loc 1 217 23 220 0112 42F05002 orr r2, r2, #80 221 0116 5A60 str r2, [r3, #4] 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Initialize the DMA burst operation state */ 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->DMABurstState = HAL_DMA_BURST_STATE_READY; 222 .loc 1 220 23 223 0118 7B68 ldr r3, [r7, #4] 224 011a 0122 movs r2, #1 225 011c 83F84620 strb r2, [r3, #70] 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Initialize the TIM channels state */ 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 226 .loc 1 223 3 227 0120 7B68 ldr r3, [r7, #4] 228 0122 0122 movs r2, #1 229 0124 83F83E20 strb r2, [r3, #62] 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 230 .loc 1 224 3 231 0128 7B68 ldr r3, [r7, #4] 232 012a 0122 movs r2, #1 233 012c 83F83F20 strb r2, [r3, #63] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 9 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 234 .loc 1 225 3 235 0130 7B68 ldr r3, [r7, #4] 236 0132 0122 movs r2, #1 237 0134 83F84220 strb r2, [r3, #66] 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 238 .loc 1 226 3 239 0138 7B68 ldr r3, [r7, #4] 240 013a 0122 movs r2, #1 241 013c 83F84320 strb r2, [r3, #67] 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Initialize the TIM state*/ 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_READY; 242 .loc 1 229 15 243 0140 7B68 ldr r3, [r7, #4] 244 0142 0122 movs r2, #1 245 0144 83F83D20 strb r2, [r3, #61] 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 246 .loc 1 231 10 247 0148 0023 movs r3, #0 248 .L5: 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 249 .loc 1 232 1 discriminator 1 250 014a 1846 mov r0, r3 251 014c 2837 adds r7, r7, #40 252 .LCFI3: 253 .cfi_def_cfa_offset 8 254 014e BD46 mov sp, r7 255 .LCFI4: 256 .cfi_def_cfa_register 13 257 @ sp needed 258 0150 80BD pop {r7, pc} 259 .cfi_endproc 260 .LFE235: 262 .section .text.HAL_TIMEx_HallSensor_DeInit,"ax",%progbits 263 .align 1 264 .global HAL_TIMEx_HallSensor_DeInit 265 .syntax unified 266 .thumb 267 .thumb_func 269 HAL_TIMEx_HallSensor_DeInit: 270 .LFB236: 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief DeInitializes the TIM Hall Sensor interface 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim) 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 271 .loc 1 240 1 272 .cfi_startproc 273 @ args = 0, pretend = 0, frame = 8 274 @ frame_needed = 1, uses_anonymous_args = 0 275 0000 80B5 push {r7, lr} 276 .LCFI5: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 10 277 .cfi_def_cfa_offset 8 278 .cfi_offset 7, -8 279 .cfi_offset 14, -4 280 0002 82B0 sub sp, sp, #8 281 .LCFI6: 282 .cfi_def_cfa_offset 16 283 0004 00AF add r7, sp, #0 284 .LCFI7: 285 .cfi_def_cfa_register 7 286 0006 7860 str r0, [r7, #4] 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_INSTANCE(htim->Instance)); 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_BUSY; 287 .loc 1 244 15 288 0008 7B68 ldr r3, [r7, #4] 289 000a 0222 movs r2, #2 290 000c 83F83D20 strb r2, [r3, #61] 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Peripheral Clock */ 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 291 .loc 1 247 3 292 0010 7B68 ldr r3, [r7, #4] 293 0012 1B68 ldr r3, [r3] 294 0014 1A6A ldr r2, [r3, #32] 295 0016 41F21113 movw r3, #4369 296 001a 1340 ands r3, r3, r2 297 001c 002B cmp r3, #0 298 001e 0FD1 bne .L7 299 .loc 1 247 3 is_stmt 0 discriminator 1 300 0020 7B68 ldr r3, [r7, #4] 301 0022 1B68 ldr r3, [r3] 302 0024 1A6A ldr r2, [r3, #32] 303 0026 40F24443 movw r3, #1092 304 002a 1340 ands r3, r3, r2 305 002c 002B cmp r3, #0 306 002e 07D1 bne .L7 307 .loc 1 247 3 discriminator 2 308 0030 7B68 ldr r3, [r7, #4] 309 0032 1B68 ldr r3, [r3] 310 0034 1A68 ldr r2, [r3] 311 0036 7B68 ldr r3, [r7, #4] 312 0038 1B68 ldr r3, [r3] 313 003a 22F00102 bic r2, r2, #1 314 003e 1A60 str r2, [r3] 315 .L7: 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (htim->HallSensor_MspDeInitCallback == NULL) 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* DeInit the low level hardware */ 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->HallSensor_MspDeInitCallback(htim); 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_HallSensor_MspDeInit(htim); ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 11 316 .loc 1 258 3 is_stmt 1 317 0040 7868 ldr r0, [r7, #4] 318 0042 FFF7FEFF bl HAL_TIMEx_HallSensor_MspDeInit 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the DMA burst operation state */ 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; 319 .loc 1 262 23 320 0046 7B68 ldr r3, [r7, #4] 321 0048 0022 movs r2, #0 322 004a 83F84620 strb r2, [r3, #70] 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the TIM channels state */ 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); 323 .loc 1 265 3 324 004e 7B68 ldr r3, [r7, #4] 325 0050 0022 movs r2, #0 326 0052 83F83E20 strb r2, [r3, #62] 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); 327 .loc 1 266 3 328 0056 7B68 ldr r3, [r7, #4] 329 0058 0022 movs r2, #0 330 005a 83F83F20 strb r2, [r3, #63] 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); 331 .loc 1 267 3 332 005e 7B68 ldr r3, [r7, #4] 333 0060 0022 movs r2, #0 334 0062 83F84220 strb r2, [r3, #66] 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); 335 .loc 1 268 3 336 0066 7B68 ldr r3, [r7, #4] 337 0068 0022 movs r2, #0 338 006a 83F84320 strb r2, [r3, #67] 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change TIM state */ 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_RESET; 339 .loc 1 271 15 340 006e 7B68 ldr r3, [r7, #4] 341 0070 0022 movs r2, #0 342 0072 83F83D20 strb r2, [r3, #61] 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Release Lock */ 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 343 .loc 1 274 3 344 0076 7B68 ldr r3, [r7, #4] 345 0078 0022 movs r2, #0 346 007a 83F83C20 strb r2, [r3, #60] 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 347 .loc 1 276 10 348 007e 0023 movs r3, #0 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 349 .loc 1 277 1 350 0080 1846 mov r0, r3 351 0082 0837 adds r7, r7, #8 352 .LCFI8: 353 .cfi_def_cfa_offset 8 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 12 354 0084 BD46 mov sp, r7 355 .LCFI9: 356 .cfi_def_cfa_register 13 357 @ sp needed 358 0086 80BD pop {r7, pc} 359 .cfi_endproc 360 .LFE236: 362 .section .text.HAL_TIMEx_HallSensor_MspInit,"ax",%progbits 363 .align 1 364 .weak HAL_TIMEx_HallSensor_MspInit 365 .syntax unified 366 .thumb 367 .thumb_func 369 HAL_TIMEx_HallSensor_MspInit: 370 .LFB237: 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Initializes the TIM Hall Sensor MSP. 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __weak void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim) 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 371 .loc 1 285 1 372 .cfi_startproc 373 @ args = 0, pretend = 0, frame = 8 374 @ frame_needed = 1, uses_anonymous_args = 0 375 @ link register save eliminated. 376 0000 80B4 push {r7} 377 .LCFI10: 378 .cfi_def_cfa_offset 4 379 .cfi_offset 7, -4 380 0002 83B0 sub sp, sp, #12 381 .LCFI11: 382 .cfi_def_cfa_offset 16 383 0004 00AF add r7, sp, #0 384 .LCFI12: 385 .cfi_def_cfa_register 7 386 0006 7860 str r0, [r7, #4] 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Prevent unused argument(s) compilation warning */ 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** UNUSED(htim); 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* NOTE : This function should not be modified, when the callback is needed, 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the HAL_TIMEx_HallSensor_MspInit could be implemented in the user file 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 387 .loc 1 292 1 388 0008 00BF nop 389 000a 0C37 adds r7, r7, #12 390 .LCFI13: 391 .cfi_def_cfa_offset 4 392 000c BD46 mov sp, r7 393 .LCFI14: 394 .cfi_def_cfa_register 13 395 @ sp needed 396 000e 5DF8047B ldr r7, [sp], #4 397 .LCFI15: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 13 398 .cfi_restore 7 399 .cfi_def_cfa_offset 0 400 0012 7047 bx lr 401 .cfi_endproc 402 .LFE237: 404 .section .text.HAL_TIMEx_HallSensor_MspDeInit,"ax",%progbits 405 .align 1 406 .weak HAL_TIMEx_HallSensor_MspDeInit 407 .syntax unified 408 .thumb 409 .thumb_func 411 HAL_TIMEx_HallSensor_MspDeInit: 412 .LFB238: 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief DeInitializes TIM Hall Sensor MSP. 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __weak void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim) 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 413 .loc 1 300 1 414 .cfi_startproc 415 @ args = 0, pretend = 0, frame = 8 416 @ frame_needed = 1, uses_anonymous_args = 0 417 @ link register save eliminated. 418 0000 80B4 push {r7} 419 .LCFI16: 420 .cfi_def_cfa_offset 4 421 .cfi_offset 7, -4 422 0002 83B0 sub sp, sp, #12 423 .LCFI17: 424 .cfi_def_cfa_offset 16 425 0004 00AF add r7, sp, #0 426 .LCFI18: 427 .cfi_def_cfa_register 7 428 0006 7860 str r0, [r7, #4] 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Prevent unused argument(s) compilation warning */ 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** UNUSED(htim); 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* NOTE : This function should not be modified, when the callback is needed, 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the HAL_TIMEx_HallSensor_MspDeInit could be implemented in the user file 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 429 .loc 1 307 1 430 0008 00BF nop 431 000a 0C37 adds r7, r7, #12 432 .LCFI19: 433 .cfi_def_cfa_offset 4 434 000c BD46 mov sp, r7 435 .LCFI20: 436 .cfi_def_cfa_register 13 437 @ sp needed 438 000e 5DF8047B ldr r7, [sp], #4 439 .LCFI21: 440 .cfi_restore 7 441 .cfi_def_cfa_offset 0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 14 442 0012 7047 bx lr 443 .cfi_endproc 444 .LFE238: 446 .section .text.HAL_TIMEx_HallSensor_Start,"ax",%progbits 447 .align 1 448 .global HAL_TIMEx_HallSensor_Start 449 .syntax unified 450 .thumb 451 .thumb_func 453 HAL_TIMEx_HallSensor_Start: 454 .LFB239: 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Hall Sensor Interface. 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim) 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 455 .loc 1 315 1 456 .cfi_startproc 457 @ args = 0, pretend = 0, frame = 16 458 @ frame_needed = 1, uses_anonymous_args = 0 459 0000 80B5 push {r7, lr} 460 .LCFI22: 461 .cfi_def_cfa_offset 8 462 .cfi_offset 7, -8 463 .cfi_offset 14, -4 464 0002 84B0 sub sp, sp, #16 465 .LCFI23: 466 .cfi_def_cfa_offset 24 467 0004 00AF add r7, sp, #0 468 .LCFI24: 469 .cfi_def_cfa_register 7 470 0006 7860 str r0, [r7, #4] 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); 471 .loc 1 317 31 472 0008 7B68 ldr r3, [r7, #4] 473 000a 93F83E30 ldrb r3, [r3, #62] 474 000e FB73 strb r3, [r7, #15] 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); 475 .loc 1 318 31 476 0010 7B68 ldr r3, [r7, #4] 477 0012 93F83F30 ldrb r3, [r3, #63] 478 0016 BB73 strb r3, [r7, #14] 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 479 .loc 1 319 31 480 0018 7B68 ldr r3, [r7, #4] 481 001a 93F84230 ldrb r3, [r3, #66] 482 001e 7B73 strb r3, [r7, #13] 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 483 .loc 1 320 31 484 0020 7B68 ldr r3, [r7, #4] 485 0022 93F84330 ldrb r3, [r3, #67] 486 0026 3B73 strb r3, [r7, #12] 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 15 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM channels state */ 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 487 .loc 1 326 6 488 0028 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 489 002a 012B cmp r3, #1 490 002c 08D1 bne .L12 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) 491 .loc 1 327 7 492 002e BB7B ldrb r3, [r7, #14] @ zero_extendqisi2 493 0030 012B cmp r3, #1 494 0032 05D1 bne .L12 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 495 .loc 1 328 7 496 0034 7B7B ldrb r3, [r7, #13] @ zero_extendqisi2 497 0036 012B cmp r3, #1 498 0038 02D1 bne .L12 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) 499 .loc 1 329 7 500 003a 3B7B ldrb r3, [r7, #12] @ zero_extendqisi2 501 003c 012B cmp r3, #1 502 003e 01D0 beq .L13 503 .L12: 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 504 .loc 1 331 12 505 0040 0123 movs r3, #1 506 0042 59E0 b .L14 507 .L13: 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 508 .loc 1 335 3 509 0044 7B68 ldr r3, [r7, #4] 510 0046 0222 movs r2, #2 511 0048 83F83E20 strb r2, [r3, #62] 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 512 .loc 1 336 3 513 004c 7B68 ldr r3, [r7, #4] 514 004e 0222 movs r2, #2 515 0050 83F83F20 strb r2, [r3, #63] 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 516 .loc 1 337 3 517 0054 7B68 ldr r3, [r7, #4] 518 0056 0222 movs r2, #2 519 0058 83F84220 strb r2, [r3, #66] 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 520 .loc 1 338 3 521 005c 7B68 ldr r3, [r7, #4] 522 005e 0222 movs r2, #2 523 0060 83F84320 strb r2, [r3, #67] 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Input Capture channel 1 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 16 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); 524 .loc 1 343 3 525 0064 7B68 ldr r3, [r7, #4] 526 0066 1B68 ldr r3, [r3] 527 0068 0122 movs r2, #1 528 006a 0021 movs r1, #0 529 006c 1846 mov r0, r3 530 006e FFF7FEFF bl TIM_CCxChannelCmd 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 531 .loc 1 346 7 532 0072 7B68 ldr r3, [r7, #4] 533 0074 1B68 ldr r3, [r3] 534 .loc 1 346 6 535 0076 224A ldr r2, .L19 536 0078 9342 cmp r3, r2 537 007a 22D0 beq .L15 538 .loc 1 346 7 discriminator 1 539 007c 7B68 ldr r3, [r7, #4] 540 007e 1B68 ldr r3, [r3] 541 0080 B3F1804F cmp r3, #1073741824 542 0084 1DD0 beq .L15 543 .loc 1 346 7 is_stmt 0 discriminator 2 544 0086 7B68 ldr r3, [r7, #4] 545 0088 1B68 ldr r3, [r3] 546 008a 1E4A ldr r2, .L19+4 547 008c 9342 cmp r3, r2 548 008e 18D0 beq .L15 549 .loc 1 346 7 discriminator 3 550 0090 7B68 ldr r3, [r7, #4] 551 0092 1B68 ldr r3, [r3] 552 0094 1C4A ldr r2, .L19+8 553 0096 9342 cmp r3, r2 554 0098 13D0 beq .L15 555 .loc 1 346 7 discriminator 4 556 009a 7B68 ldr r3, [r7, #4] 557 009c 1B68 ldr r3, [r3] 558 009e 1B4A ldr r2, .L19+12 559 00a0 9342 cmp r3, r2 560 00a2 0ED0 beq .L15 561 .loc 1 346 7 discriminator 5 562 00a4 7B68 ldr r3, [r7, #4] 563 00a6 1B68 ldr r3, [r3] 564 00a8 194A ldr r2, .L19+16 565 00aa 9342 cmp r3, r2 566 00ac 09D0 beq .L15 567 .loc 1 346 7 discriminator 6 568 00ae 7B68 ldr r3, [r7, #4] 569 00b0 1B68 ldr r3, [r3] 570 00b2 184A ldr r2, .L19+20 571 00b4 9342 cmp r3, r2 572 00b6 04D0 beq .L15 573 .loc 1 346 7 discriminator 7 574 00b8 7B68 ldr r3, [r7, #4] 575 00ba 1B68 ldr r3, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 17 576 00bc 164A ldr r2, .L19+24 577 00be 9342 cmp r3, r2 578 00c0 11D1 bne .L16 579 .L15: 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 580 .loc 1 348 19 is_stmt 1 581 00c2 7B68 ldr r3, [r7, #4] 582 00c4 1B68 ldr r3, [r3] 583 .loc 1 348 29 584 00c6 9B68 ldr r3, [r3, #8] 585 .loc 1 348 13 586 00c8 03F00703 and r3, r3, #7 587 00cc BB60 str r3, [r7, #8] 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 588 .loc 1 349 8 589 00ce BB68 ldr r3, [r7, #8] 590 00d0 062B cmp r3, #6 591 00d2 10D0 beq .L18 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 592 .loc 1 351 7 593 00d4 7B68 ldr r3, [r7, #4] 594 00d6 1B68 ldr r3, [r3] 595 00d8 1A68 ldr r2, [r3] 596 00da 7B68 ldr r3, [r7, #4] 597 00dc 1B68 ldr r3, [r3] 598 00de 42F00102 orr r2, r2, #1 599 00e2 1A60 str r2, [r3] 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 600 .loc 1 349 8 601 00e4 07E0 b .L18 602 .L16: 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 603 .loc 1 356 5 604 00e6 7B68 ldr r3, [r7, #4] 605 00e8 1B68 ldr r3, [r3] 606 00ea 1A68 ldr r2, [r3] 607 00ec 7B68 ldr r3, [r7, #4] 608 00ee 1B68 ldr r3, [r3] 609 00f0 42F00102 orr r2, r2, #1 610 00f4 1A60 str r2, [r3] 611 .L18: 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 612 .loc 1 360 10 613 00f6 0023 movs r3, #0 614 .L14: 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 615 .loc 1 361 1 616 00f8 1846 mov r0, r3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 18 617 00fa 1037 adds r7, r7, #16 618 .LCFI25: 619 .cfi_def_cfa_offset 8 620 00fc BD46 mov sp, r7 621 .LCFI26: 622 .cfi_def_cfa_register 13 623 @ sp needed 624 00fe 80BD pop {r7, pc} 625 .L20: 626 .align 2 627 .L19: 628 0100 00000140 .word 1073807360 629 0104 00040040 .word 1073742848 630 0108 00080040 .word 1073743872 631 010c 000C0040 .word 1073744896 632 0110 00040140 .word 1073808384 633 0114 00400140 .word 1073823744 634 0118 00180040 .word 1073747968 635 .cfi_endproc 636 .LFE239: 638 .section .text.HAL_TIMEx_HallSensor_Stop,"ax",%progbits 639 .align 1 640 .global HAL_TIMEx_HallSensor_Stop 641 .syntax unified 642 .thumb 643 .thumb_func 645 HAL_TIMEx_HallSensor_Stop: 646 .LFB240: 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Hall sensor Interface. 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim) 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 647 .loc 1 369 1 648 .cfi_startproc 649 @ args = 0, pretend = 0, frame = 8 650 @ frame_needed = 1, uses_anonymous_args = 0 651 0000 80B5 push {r7, lr} 652 .LCFI27: 653 .cfi_def_cfa_offset 8 654 .cfi_offset 7, -8 655 .cfi_offset 14, -4 656 0002 82B0 sub sp, sp, #8 657 .LCFI28: 658 .cfi_def_cfa_offset 16 659 0004 00AF add r7, sp, #0 660 .LCFI29: 661 .cfi_def_cfa_register 7 662 0006 7860 str r0, [r7, #4] 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Input Capture channels 1, 2 and 3 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 19 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); 663 .loc 1 376 3 664 0008 7B68 ldr r3, [r7, #4] 665 000a 1B68 ldr r3, [r3] 666 000c 0022 movs r2, #0 667 000e 0021 movs r1, #0 668 0010 1846 mov r0, r3 669 0012 FFF7FEFF bl TIM_CCxChannelCmd 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 670 .loc 1 379 3 671 0016 7B68 ldr r3, [r7, #4] 672 0018 1B68 ldr r3, [r3] 673 001a 1A6A ldr r2, [r3, #32] 674 001c 41F21113 movw r3, #4369 675 0020 1340 ands r3, r3, r2 676 0022 002B cmp r3, #0 677 0024 0FD1 bne .L22 678 .loc 1 379 3 is_stmt 0 discriminator 1 679 0026 7B68 ldr r3, [r7, #4] 680 0028 1B68 ldr r3, [r3] 681 002a 1A6A ldr r2, [r3, #32] 682 002c 40F24443 movw r3, #1092 683 0030 1340 ands r3, r3, r2 684 0032 002B cmp r3, #0 685 0034 07D1 bne .L22 686 .loc 1 379 3 discriminator 2 687 0036 7B68 ldr r3, [r7, #4] 688 0038 1B68 ldr r3, [r3] 689 003a 1A68 ldr r2, [r3] 690 003c 7B68 ldr r3, [r7, #4] 691 003e 1B68 ldr r3, [r3] 692 0040 22F00102 bic r2, r2, #1 693 0044 1A60 str r2, [r3] 694 .L22: 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 695 .loc 1 382 3 is_stmt 1 696 0046 7B68 ldr r3, [r7, #4] 697 0048 0122 movs r2, #1 698 004a 83F83E20 strb r2, [r3, #62] 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 699 .loc 1 383 3 700 004e 7B68 ldr r3, [r7, #4] 701 0050 0122 movs r2, #1 702 0052 83F83F20 strb r2, [r3, #63] 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 703 .loc 1 384 3 704 0056 7B68 ldr r3, [r7, #4] 705 0058 0122 movs r2, #1 706 005a 83F84220 strb r2, [r3, #66] 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 707 .loc 1 385 3 708 005e 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 20 709 0060 0122 movs r2, #1 710 0062 83F84320 strb r2, [r3, #67] 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 711 .loc 1 388 10 712 0066 0023 movs r3, #0 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 713 .loc 1 389 1 714 0068 1846 mov r0, r3 715 006a 0837 adds r7, r7, #8 716 .LCFI30: 717 .cfi_def_cfa_offset 8 718 006c BD46 mov sp, r7 719 .LCFI31: 720 .cfi_def_cfa_register 13 721 @ sp needed 722 006e 80BD pop {r7, pc} 723 .cfi_endproc 724 .LFE240: 726 .section .text.HAL_TIMEx_HallSensor_Start_IT,"ax",%progbits 727 .align 1 728 .global HAL_TIMEx_HallSensor_Start_IT 729 .syntax unified 730 .thumb 731 .thumb_func 733 HAL_TIMEx_HallSensor_Start_IT: 734 .LFB241: 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Hall Sensor Interface in interrupt mode. 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim) 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 735 .loc 1 397 1 736 .cfi_startproc 737 @ args = 0, pretend = 0, frame = 16 738 @ frame_needed = 1, uses_anonymous_args = 0 739 0000 80B5 push {r7, lr} 740 .LCFI32: 741 .cfi_def_cfa_offset 8 742 .cfi_offset 7, -8 743 .cfi_offset 14, -4 744 0002 84B0 sub sp, sp, #16 745 .LCFI33: 746 .cfi_def_cfa_offset 24 747 0004 00AF add r7, sp, #0 748 .LCFI34: 749 .cfi_def_cfa_register 7 750 0006 7860 str r0, [r7, #4] 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); 751 .loc 1 399 31 752 0008 7B68 ldr r3, [r7, #4] 753 000a 93F83E30 ldrb r3, [r3, #62] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 21 754 000e FB73 strb r3, [r7, #15] 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); 755 .loc 1 400 31 756 0010 7B68 ldr r3, [r7, #4] 757 0012 93F83F30 ldrb r3, [r3, #63] 758 0016 BB73 strb r3, [r7, #14] 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 759 .loc 1 401 31 760 0018 7B68 ldr r3, [r7, #4] 761 001a 93F84230 ldrb r3, [r3, #66] 762 001e 7B73 strb r3, [r7, #13] 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 763 .loc 1 402 31 764 0020 7B68 ldr r3, [r7, #4] 765 0022 93F84330 ldrb r3, [r3, #67] 766 0026 3B73 strb r3, [r7, #12] 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM channels state */ 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 767 .loc 1 408 6 768 0028 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 769 002a 012B cmp r3, #1 770 002c 08D1 bne .L25 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) 771 .loc 1 409 7 772 002e BB7B ldrb r3, [r7, #14] @ zero_extendqisi2 773 0030 012B cmp r3, #1 774 0032 05D1 bne .L25 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 775 .loc 1 410 7 776 0034 7B7B ldrb r3, [r7, #13] @ zero_extendqisi2 777 0036 012B cmp r3, #1 778 0038 02D1 bne .L25 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) 779 .loc 1 411 7 780 003a 3B7B ldrb r3, [r7, #12] @ zero_extendqisi2 781 003c 012B cmp r3, #1 782 003e 01D0 beq .L26 783 .L25: 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 784 .loc 1 413 12 785 0040 0123 movs r3, #1 786 0042 61E0 b .L27 787 .L26: 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 788 .loc 1 417 3 789 0044 7B68 ldr r3, [r7, #4] 790 0046 0222 movs r2, #2 791 0048 83F83E20 strb r2, [r3, #62] 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 22 792 .loc 1 418 3 793 004c 7B68 ldr r3, [r7, #4] 794 004e 0222 movs r2, #2 795 0050 83F83F20 strb r2, [r3, #63] 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 796 .loc 1 419 3 797 0054 7B68 ldr r3, [r7, #4] 798 0056 0222 movs r2, #2 799 0058 83F84220 strb r2, [r3, #66] 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 800 .loc 1 420 3 801 005c 7B68 ldr r3, [r7, #4] 802 005e 0222 movs r2, #2 803 0060 83F84320 strb r2, [r3, #67] 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the capture compare Interrupts 1 event */ 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); 804 .loc 1 423 3 805 0064 7B68 ldr r3, [r7, #4] 806 0066 1B68 ldr r3, [r3] 807 0068 DA68 ldr r2, [r3, #12] 808 006a 7B68 ldr r3, [r7, #4] 809 006c 1B68 ldr r3, [r3] 810 006e 42F00202 orr r2, r2, #2 811 0072 DA60 str r2, [r3, #12] 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Input Capture channel 1 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); 812 .loc 1 428 3 813 0074 7B68 ldr r3, [r7, #4] 814 0076 1B68 ldr r3, [r3] 815 0078 0122 movs r2, #1 816 007a 0021 movs r1, #0 817 007c 1846 mov r0, r3 818 007e FFF7FEFF bl TIM_CCxChannelCmd 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 819 .loc 1 431 7 820 0082 7B68 ldr r3, [r7, #4] 821 0084 1B68 ldr r3, [r3] 822 .loc 1 431 6 823 0086 224A ldr r2, .L32 824 0088 9342 cmp r3, r2 825 008a 22D0 beq .L28 826 .loc 1 431 7 discriminator 1 827 008c 7B68 ldr r3, [r7, #4] 828 008e 1B68 ldr r3, [r3] 829 0090 B3F1804F cmp r3, #1073741824 830 0094 1DD0 beq .L28 831 .loc 1 431 7 is_stmt 0 discriminator 2 832 0096 7B68 ldr r3, [r7, #4] 833 0098 1B68 ldr r3, [r3] 834 009a 1E4A ldr r2, .L32+4 835 009c 9342 cmp r3, r2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 23 836 009e 18D0 beq .L28 837 .loc 1 431 7 discriminator 3 838 00a0 7B68 ldr r3, [r7, #4] 839 00a2 1B68 ldr r3, [r3] 840 00a4 1C4A ldr r2, .L32+8 841 00a6 9342 cmp r3, r2 842 00a8 13D0 beq .L28 843 .loc 1 431 7 discriminator 4 844 00aa 7B68 ldr r3, [r7, #4] 845 00ac 1B68 ldr r3, [r3] 846 00ae 1B4A ldr r2, .L32+12 847 00b0 9342 cmp r3, r2 848 00b2 0ED0 beq .L28 849 .loc 1 431 7 discriminator 5 850 00b4 7B68 ldr r3, [r7, #4] 851 00b6 1B68 ldr r3, [r3] 852 00b8 194A ldr r2, .L32+16 853 00ba 9342 cmp r3, r2 854 00bc 09D0 beq .L28 855 .loc 1 431 7 discriminator 6 856 00be 7B68 ldr r3, [r7, #4] 857 00c0 1B68 ldr r3, [r3] 858 00c2 184A ldr r2, .L32+20 859 00c4 9342 cmp r3, r2 860 00c6 04D0 beq .L28 861 .loc 1 431 7 discriminator 7 862 00c8 7B68 ldr r3, [r7, #4] 863 00ca 1B68 ldr r3, [r3] 864 00cc 164A ldr r2, .L32+24 865 00ce 9342 cmp r3, r2 866 00d0 11D1 bne .L29 867 .L28: 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 868 .loc 1 433 19 is_stmt 1 869 00d2 7B68 ldr r3, [r7, #4] 870 00d4 1B68 ldr r3, [r3] 871 .loc 1 433 29 872 00d6 9B68 ldr r3, [r3, #8] 873 .loc 1 433 13 874 00d8 03F00703 and r3, r3, #7 875 00dc BB60 str r3, [r7, #8] 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 876 .loc 1 434 8 877 00de BB68 ldr r3, [r7, #8] 878 00e0 062B cmp r3, #6 879 00e2 10D0 beq .L31 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 880 .loc 1 436 7 881 00e4 7B68 ldr r3, [r7, #4] 882 00e6 1B68 ldr r3, [r3] 883 00e8 1A68 ldr r2, [r3] 884 00ea 7B68 ldr r3, [r7, #4] 885 00ec 1B68 ldr r3, [r3] 886 00ee 42F00102 orr r2, r2, #1 887 00f2 1A60 str r2, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 24 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 888 .loc 1 434 8 889 00f4 07E0 b .L31 890 .L29: 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 891 .loc 1 441 5 892 00f6 7B68 ldr r3, [r7, #4] 893 00f8 1B68 ldr r3, [r3] 894 00fa 1A68 ldr r2, [r3] 895 00fc 7B68 ldr r3, [r7, #4] 896 00fe 1B68 ldr r3, [r3] 897 0100 42F00102 orr r2, r2, #1 898 0104 1A60 str r2, [r3] 899 .L31: 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 900 .loc 1 445 10 901 0106 0023 movs r3, #0 902 .L27: 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 903 .loc 1 446 1 904 0108 1846 mov r0, r3 905 010a 1037 adds r7, r7, #16 906 .LCFI35: 907 .cfi_def_cfa_offset 8 908 010c BD46 mov sp, r7 909 .LCFI36: 910 .cfi_def_cfa_register 13 911 @ sp needed 912 010e 80BD pop {r7, pc} 913 .L33: 914 .align 2 915 .L32: 916 0110 00000140 .word 1073807360 917 0114 00040040 .word 1073742848 918 0118 00080040 .word 1073743872 919 011c 000C0040 .word 1073744896 920 0120 00040140 .word 1073808384 921 0124 00400140 .word 1073823744 922 0128 00180040 .word 1073747968 923 .cfi_endproc 924 .LFE241: 926 .section .text.HAL_TIMEx_HallSensor_Stop_IT,"ax",%progbits 927 .align 1 928 .global HAL_TIMEx_HallSensor_Stop_IT 929 .syntax unified 930 .thumb 931 .thumb_func 933 HAL_TIMEx_HallSensor_Stop_IT: 934 .LFB242: 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 25 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Hall Sensor Interface in interrupt mode. 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim) 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 935 .loc 1 454 1 936 .cfi_startproc 937 @ args = 0, pretend = 0, frame = 8 938 @ frame_needed = 1, uses_anonymous_args = 0 939 0000 80B5 push {r7, lr} 940 .LCFI37: 941 .cfi_def_cfa_offset 8 942 .cfi_offset 7, -8 943 .cfi_offset 14, -4 944 0002 82B0 sub sp, sp, #8 945 .LCFI38: 946 .cfi_def_cfa_offset 16 947 0004 00AF add r7, sp, #0 948 .LCFI39: 949 .cfi_def_cfa_register 7 950 0006 7860 str r0, [r7, #4] 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Input Capture channel 1 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); 951 .loc 1 461 3 952 0008 7B68 ldr r3, [r7, #4] 953 000a 1B68 ldr r3, [r3] 954 000c 0022 movs r2, #0 955 000e 0021 movs r1, #0 956 0010 1846 mov r0, r3 957 0012 FFF7FEFF bl TIM_CCxChannelCmd 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the capture compare Interrupts event */ 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); 958 .loc 1 464 3 959 0016 7B68 ldr r3, [r7, #4] 960 0018 1B68 ldr r3, [r3] 961 001a DA68 ldr r2, [r3, #12] 962 001c 7B68 ldr r3, [r7, #4] 963 001e 1B68 ldr r3, [r3] 964 0020 22F00202 bic r2, r2, #2 965 0024 DA60 str r2, [r3, #12] 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 966 .loc 1 467 3 967 0026 7B68 ldr r3, [r7, #4] 968 0028 1B68 ldr r3, [r3] 969 002a 1A6A ldr r2, [r3, #32] 970 002c 41F21113 movw r3, #4369 971 0030 1340 ands r3, r3, r2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 26 972 0032 002B cmp r3, #0 973 0034 0FD1 bne .L35 974 .loc 1 467 3 is_stmt 0 discriminator 1 975 0036 7B68 ldr r3, [r7, #4] 976 0038 1B68 ldr r3, [r3] 977 003a 1A6A ldr r2, [r3, #32] 978 003c 40F24443 movw r3, #1092 979 0040 1340 ands r3, r3, r2 980 0042 002B cmp r3, #0 981 0044 07D1 bne .L35 982 .loc 1 467 3 discriminator 2 983 0046 7B68 ldr r3, [r7, #4] 984 0048 1B68 ldr r3, [r3] 985 004a 1A68 ldr r2, [r3] 986 004c 7B68 ldr r3, [r7, #4] 987 004e 1B68 ldr r3, [r3] 988 0050 22F00102 bic r2, r2, #1 989 0054 1A60 str r2, [r3] 990 .L35: 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 991 .loc 1 470 3 is_stmt 1 992 0056 7B68 ldr r3, [r7, #4] 993 0058 0122 movs r2, #1 994 005a 83F83E20 strb r2, [r3, #62] 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 995 .loc 1 471 3 996 005e 7B68 ldr r3, [r7, #4] 997 0060 0122 movs r2, #1 998 0062 83F83F20 strb r2, [r3, #63] 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 999 .loc 1 472 3 1000 0066 7B68 ldr r3, [r7, #4] 1001 0068 0122 movs r2, #1 1002 006a 83F84220 strb r2, [r3, #66] 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 1003 .loc 1 473 3 1004 006e 7B68 ldr r3, [r7, #4] 1005 0070 0122 movs r2, #1 1006 0072 83F84320 strb r2, [r3, #67] 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 1007 .loc 1 476 10 1008 0076 0023 movs r3, #0 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1009 .loc 1 477 1 1010 0078 1846 mov r0, r3 1011 007a 0837 adds r7, r7, #8 1012 .LCFI40: 1013 .cfi_def_cfa_offset 8 1014 007c BD46 mov sp, r7 1015 .LCFI41: 1016 .cfi_def_cfa_register 13 1017 @ sp needed 1018 007e 80BD pop {r7, pc} ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 27 1019 .cfi_endproc 1020 .LFE242: 1022 .section .text.HAL_TIMEx_HallSensor_Start_DMA,"ax",%progbits 1023 .align 1 1024 .global HAL_TIMEx_HallSensor_Start_DMA 1025 .syntax unified 1026 .thumb 1027 .thumb_func 1029 HAL_TIMEx_HallSensor_Start_DMA: 1030 .LFB243: 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Hall Sensor Interface in DMA mode. 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param pData The destination Buffer address. 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Length The length of data to be transferred from TIM peripheral to memory. 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1031 .loc 1 487 1 1032 .cfi_startproc 1033 @ args = 0, pretend = 0, frame = 24 1034 @ frame_needed = 1, uses_anonymous_args = 0 1035 0000 80B5 push {r7, lr} 1036 .LCFI42: 1037 .cfi_def_cfa_offset 8 1038 .cfi_offset 7, -8 1039 .cfi_offset 14, -4 1040 0002 86B0 sub sp, sp, #24 1041 .LCFI43: 1042 .cfi_def_cfa_offset 32 1043 0004 00AF add r7, sp, #0 1044 .LCFI44: 1045 .cfi_def_cfa_register 7 1046 0006 F860 str r0, [r7, #12] 1047 0008 B960 str r1, [r7, #8] 1048 000a 1346 mov r3, r2 1049 000c FB80 strh r3, [r7, #6] @ movhi 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); 1050 .loc 1 489 31 1051 000e FB68 ldr r3, [r7, #12] 1052 0010 93F83E30 ldrb r3, [r3, #62] 1053 0014 FB75 strb r3, [r7, #23] 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 1054 .loc 1 490 31 1055 0016 FB68 ldr r3, [r7, #12] 1056 0018 93F84230 ldrb r3, [r3, #66] 1057 001c BB75 strb r3, [r7, #22] 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channel state */ 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) 1058 .loc 1 496 6 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 28 1059 001e FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 1060 0020 022B cmp r3, #2 1061 0022 02D0 beq .L38 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY)) 1062 .loc 1 497 7 1063 0024 BB7D ldrb r3, [r7, #22] @ zero_extendqisi2 1064 0026 022B cmp r3, #2 1065 0028 01D1 bne .L39 1066 .L38: 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_BUSY; 1067 .loc 1 499 12 1068 002a 0223 movs r3, #2 1069 002c 86E0 b .L40 1070 .L39: 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) 1071 .loc 1 501 11 1072 002e FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 1073 0030 012B cmp r3, #1 1074 0032 34D1 bne .L41 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY)) 1075 .loc 1 502 12 1076 0034 BB7D ldrb r3, [r7, #22] @ zero_extendqisi2 1077 0036 012B cmp r3, #1 1078 0038 31D1 bne .L41 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((pData == NULL) && (Length > 0U)) 1079 .loc 1 504 8 1080 003a BB68 ldr r3, [r7, #8] 1081 003c 002B cmp r3, #0 1082 003e 04D1 bne .L42 1083 .loc 1 504 25 discriminator 1 1084 0040 FB88 ldrh r3, [r7, #6] 1085 0042 002B cmp r3, #0 1086 0044 01D0 beq .L42 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 1087 .loc 1 506 14 1088 0046 0123 movs r3, #1 1089 0048 78E0 b .L40 1090 .L42: 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 1091 .loc 1 510 7 1092 004a FB68 ldr r3, [r7, #12] 1093 004c 0222 movs r2, #2 1094 004e 83F83E20 strb r2, [r3, #62] 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 1095 .loc 1 511 7 1096 0052 FB68 ldr r3, [r7, #12] 1097 0054 0222 movs r2, #2 1098 0056 83F84220 strb r2, [r3, #66] 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1099 .loc 1 504 8 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 29 1100 005a 00BF nop 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Input Capture channel 1 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); 1101 .loc 1 522 3 1102 005c FB68 ldr r3, [r7, #12] 1103 005e 1B68 ldr r3, [r3] 1104 0060 0122 movs r2, #1 1105 0062 0021 movs r1, #0 1106 0064 1846 mov r0, r3 1107 0066 FFF7FEFF bl TIM_CCxChannelCmd 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA Input Capture 1 Callbacks */ 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; 1108 .loc 1 525 13 1109 006a FB68 ldr r3, [r7, #12] 1110 006c 5B6A ldr r3, [r3, #36] 1111 .loc 1 525 48 1112 006e 354A ldr r2, .L50 1113 0070 DA63 str r2, [r3, #60] 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; 1114 .loc 1 526 13 1115 0072 FB68 ldr r3, [r7, #12] 1116 0074 5B6A ldr r3, [r3, #36] 1117 .loc 1 526 52 1118 0076 344A ldr r2, .L50+4 1119 0078 1A64 str r2, [r3, #64] 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; 1120 .loc 1 528 13 1121 007a FB68 ldr r3, [r7, #12] 1122 007c 5B6A ldr r3, [r3, #36] 1123 .loc 1 528 49 1124 007e 334A ldr r2, .L50+8 1125 0080 DA64 str r2, [r3, #76] 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream for Capture 1*/ 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData 1126 .loc 1 531 7 1127 0082 FB68 ldr r3, [r7, #12] 1128 0084 586A ldr r0, [r3, #36] 1129 .loc 1 531 67 1130 0086 FB68 ldr r3, [r7, #12] 1131 0088 1B68 ldr r3, [r3] 1132 .loc 1 531 62 1133 008a 3433 adds r3, r3, #52 1134 .loc 1 531 7 1135 008c 1946 mov r1, r3 1136 008e BA68 ldr r2, [r7, #8] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 30 1137 0090 FB88 ldrh r3, [r7, #6] 1138 0092 FFF7FEFF bl HAL_DMA_Start_IT 1139 0096 0346 mov r3, r0 1140 .loc 1 531 6 1141 0098 002B cmp r3, #0 1142 009a 04D0 beq .L44 1143 009c 01E0 b .L49 1144 .L41: 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1145 .loc 1 516 12 1146 009e 0123 movs r3, #1 1147 00a0 4CE0 b .L40 1148 .L49: 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 1149 .loc 1 534 12 1150 00a2 0123 movs r3, #1 1151 00a4 4AE0 b .L40 1152 .L44: 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the capture compare 1 Interrupt */ 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); 1153 .loc 1 537 3 1154 00a6 FB68 ldr r3, [r7, #12] 1155 00a8 1B68 ldr r3, [r3] 1156 00aa DA68 ldr r2, [r3, #12] 1157 00ac FB68 ldr r3, [r7, #12] 1158 00ae 1B68 ldr r3, [r3] 1159 00b0 42F40072 orr r2, r2, #512 1160 00b4 DA60 str r2, [r3, #12] 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 1161 .loc 1 540 7 1162 00b6 FB68 ldr r3, [r7, #12] 1163 00b8 1B68 ldr r3, [r3] 1164 .loc 1 540 6 1165 00ba 254A ldr r2, .L50+12 1166 00bc 9342 cmp r3, r2 1167 00be 22D0 beq .L45 1168 .loc 1 540 7 discriminator 1 1169 00c0 FB68 ldr r3, [r7, #12] 1170 00c2 1B68 ldr r3, [r3] 1171 00c4 B3F1804F cmp r3, #1073741824 1172 00c8 1DD0 beq .L45 1173 .loc 1 540 7 is_stmt 0 discriminator 2 1174 00ca FB68 ldr r3, [r7, #12] 1175 00cc 1B68 ldr r3, [r3] 1176 00ce 214A ldr r2, .L50+16 1177 00d0 9342 cmp r3, r2 1178 00d2 18D0 beq .L45 1179 .loc 1 540 7 discriminator 3 1180 00d4 FB68 ldr r3, [r7, #12] 1181 00d6 1B68 ldr r3, [r3] 1182 00d8 1F4A ldr r2, .L50+20 1183 00da 9342 cmp r3, r2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 31 1184 00dc 13D0 beq .L45 1185 .loc 1 540 7 discriminator 4 1186 00de FB68 ldr r3, [r7, #12] 1187 00e0 1B68 ldr r3, [r3] 1188 00e2 1E4A ldr r2, .L50+24 1189 00e4 9342 cmp r3, r2 1190 00e6 0ED0 beq .L45 1191 .loc 1 540 7 discriminator 5 1192 00e8 FB68 ldr r3, [r7, #12] 1193 00ea 1B68 ldr r3, [r3] 1194 00ec 1C4A ldr r2, .L50+28 1195 00ee 9342 cmp r3, r2 1196 00f0 09D0 beq .L45 1197 .loc 1 540 7 discriminator 6 1198 00f2 FB68 ldr r3, [r7, #12] 1199 00f4 1B68 ldr r3, [r3] 1200 00f6 1B4A ldr r2, .L50+32 1201 00f8 9342 cmp r3, r2 1202 00fa 04D0 beq .L45 1203 .loc 1 540 7 discriminator 7 1204 00fc FB68 ldr r3, [r7, #12] 1205 00fe 1B68 ldr r3, [r3] 1206 0100 194A ldr r2, .L50+36 1207 0102 9342 cmp r3, r2 1208 0104 11D1 bne .L46 1209 .L45: 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 1210 .loc 1 542 19 is_stmt 1 1211 0106 FB68 ldr r3, [r7, #12] 1212 0108 1B68 ldr r3, [r3] 1213 .loc 1 542 29 1214 010a 9B68 ldr r3, [r3, #8] 1215 .loc 1 542 13 1216 010c 03F00703 and r3, r3, #7 1217 0110 3B61 str r3, [r7, #16] 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 1218 .loc 1 543 8 1219 0112 3B69 ldr r3, [r7, #16] 1220 0114 062B cmp r3, #6 1221 0116 10D0 beq .L48 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 1222 .loc 1 545 7 1223 0118 FB68 ldr r3, [r7, #12] 1224 011a 1B68 ldr r3, [r3] 1225 011c 1A68 ldr r2, [r3] 1226 011e FB68 ldr r3, [r7, #12] 1227 0120 1B68 ldr r3, [r3] 1228 0122 42F00102 orr r2, r2, #1 1229 0126 1A60 str r2, [r3] 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 1230 .loc 1 543 8 1231 0128 07E0 b .L48 1232 .L46: 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 32 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 1233 .loc 1 550 5 1234 012a FB68 ldr r3, [r7, #12] 1235 012c 1B68 ldr r3, [r3] 1236 012e 1A68 ldr r2, [r3] 1237 0130 FB68 ldr r3, [r7, #12] 1238 0132 1B68 ldr r3, [r3] 1239 0134 42F00102 orr r2, r2, #1 1240 0138 1A60 str r2, [r3] 1241 .L48: 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 1242 .loc 1 554 10 1243 013a 0023 movs r3, #0 1244 .L40: 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1245 .loc 1 555 1 1246 013c 1846 mov r0, r3 1247 013e 1837 adds r7, r7, #24 1248 .LCFI45: 1249 .cfi_def_cfa_offset 8 1250 0140 BD46 mov sp, r7 1251 .LCFI46: 1252 .cfi_def_cfa_register 13 1253 @ sp needed 1254 0142 80BD pop {r7, pc} 1255 .L51: 1256 .align 2 1257 .L50: 1258 0144 00000000 .word TIM_DMACaptureCplt 1259 0148 00000000 .word TIM_DMACaptureHalfCplt 1260 014c 00000000 .word TIM_DMAError 1261 0150 00000140 .word 1073807360 1262 0154 00040040 .word 1073742848 1263 0158 00080040 .word 1073743872 1264 015c 000C0040 .word 1073744896 1265 0160 00040140 .word 1073808384 1266 0164 00400140 .word 1073823744 1267 0168 00180040 .word 1073747968 1268 .cfi_endproc 1269 .LFE243: 1271 .section .text.HAL_TIMEx_HallSensor_Stop_DMA,"ax",%progbits 1272 .align 1 1273 .global HAL_TIMEx_HallSensor_Stop_DMA 1274 .syntax unified 1275 .thumb 1276 .thumb_func 1278 HAL_TIMEx_HallSensor_Stop_DMA: 1279 .LFB244: 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Hall Sensor Interface in DMA mode. 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor Interface handle ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 33 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim) 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1280 .loc 1 563 1 1281 .cfi_startproc 1282 @ args = 0, pretend = 0, frame = 8 1283 @ frame_needed = 1, uses_anonymous_args = 0 1284 0000 80B5 push {r7, lr} 1285 .LCFI47: 1286 .cfi_def_cfa_offset 8 1287 .cfi_offset 7, -8 1288 .cfi_offset 14, -4 1289 0002 82B0 sub sp, sp, #8 1290 .LCFI48: 1291 .cfi_def_cfa_offset 16 1292 0004 00AF add r7, sp, #0 1293 .LCFI49: 1294 .cfi_def_cfa_register 7 1295 0006 7860 str r0, [r7, #4] 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Input Capture channel 1 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_2 and TIM_CHANNEL_3) */ 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); 1296 .loc 1 570 3 1297 0008 7B68 ldr r3, [r7, #4] 1298 000a 1B68 ldr r3, [r3] 1299 000c 0022 movs r2, #0 1300 000e 0021 movs r1, #0 1301 0010 1846 mov r0, r3 1302 0012 FFF7FEFF bl TIM_CCxChannelCmd 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the capture compare Interrupts 1 event */ 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); 1303 .loc 1 574 3 1304 0016 7B68 ldr r3, [r7, #4] 1305 0018 1B68 ldr r3, [r3] 1306 001a DA68 ldr r2, [r3, #12] 1307 001c 7B68 ldr r3, [r7, #4] 1308 001e 1B68 ldr r3, [r3] 1309 0020 22F40072 bic r2, r2, #512 1310 0024 DA60 str r2, [r3, #12] 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); 1311 .loc 1 576 9 1312 0026 7B68 ldr r3, [r7, #4] 1313 0028 5B6A ldr r3, [r3, #36] 1314 002a 1846 mov r0, r3 1315 002c FFF7FEFF bl HAL_DMA_Abort_IT 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 1316 .loc 1 579 3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 34 1317 0030 7B68 ldr r3, [r7, #4] 1318 0032 1B68 ldr r3, [r3] 1319 0034 1A6A ldr r2, [r3, #32] 1320 0036 41F21113 movw r3, #4369 1321 003a 1340 ands r3, r3, r2 1322 003c 002B cmp r3, #0 1323 003e 0FD1 bne .L53 1324 .loc 1 579 3 is_stmt 0 discriminator 1 1325 0040 7B68 ldr r3, [r7, #4] 1326 0042 1B68 ldr r3, [r3] 1327 0044 1A6A ldr r2, [r3, #32] 1328 0046 40F24443 movw r3, #1092 1329 004a 1340 ands r3, r3, r2 1330 004c 002B cmp r3, #0 1331 004e 07D1 bne .L53 1332 .loc 1 579 3 discriminator 2 1333 0050 7B68 ldr r3, [r7, #4] 1334 0052 1B68 ldr r3, [r3] 1335 0054 1A68 ldr r2, [r3] 1336 0056 7B68 ldr r3, [r7, #4] 1337 0058 1B68 ldr r3, [r3] 1338 005a 22F00102 bic r2, r2, #1 1339 005e 1A60 str r2, [r3] 1340 .L53: 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channel state */ 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 1341 .loc 1 582 3 is_stmt 1 1342 0060 7B68 ldr r3, [r7, #4] 1343 0062 0122 movs r2, #1 1344 0064 83F83E20 strb r2, [r3, #62] 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 1345 .loc 1 583 3 1346 0068 7B68 ldr r3, [r7, #4] 1347 006a 0122 movs r2, #1 1348 006c 83F84220 strb r2, [r3, #66] 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 1349 .loc 1 586 10 1350 0070 0023 movs r3, #0 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1351 .loc 1 587 1 1352 0072 1846 mov r0, r3 1353 0074 0837 adds r7, r7, #8 1354 .LCFI50: 1355 .cfi_def_cfa_offset 8 1356 0076 BD46 mov sp, r7 1357 .LCFI51: 1358 .cfi_def_cfa_register 13 1359 @ sp needed 1360 0078 80BD pop {r7, pc} 1361 .cfi_endproc 1362 .LFE244: 1364 .section .text.HAL_TIMEx_OCN_Start,"ax",%progbits 1365 .align 1 1366 .global HAL_TIMEx_OCN_Start ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 35 1367 .syntax unified 1368 .thumb 1369 .thumb_func 1371 HAL_TIMEx_OCN_Start: 1372 .LFB245: 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group2 Extended Timer Complementary Output Compare functions 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Timer Complementary Output Compare functions 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Timer Complementary Output Compare functions ##### 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides functions allowing to: 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Output Compare/PWM. 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Output Compare/PWM. 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Output Compare/PWM and enable interrupts. 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Output Compare/PWM and disable interrupts. 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Output Compare/PWM and enable DMA transfers. 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Output Compare/PWM and disable DMA transfers. 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Output Compare signal generation on the complementary 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * output. 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Output Compare handle 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be enabled 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1373 .loc 1 625 1 1374 .cfi_startproc 1375 @ args = 0, pretend = 0, frame = 16 1376 @ frame_needed = 1, uses_anonymous_args = 0 1377 0000 80B5 push {r7, lr} 1378 .LCFI52: 1379 .cfi_def_cfa_offset 8 1380 .cfi_offset 7, -8 1381 .cfi_offset 14, -4 1382 0002 84B0 sub sp, sp, #16 1383 .LCFI53: 1384 .cfi_def_cfa_offset 24 1385 0004 00AF add r7, sp, #0 1386 .LCFI54: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 36 1387 .cfi_def_cfa_register 7 1388 0006 7860 str r0, [r7, #4] 1389 0008 3960 str r1, [r7] 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM complementary channel state */ 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) 1390 .loc 1 632 46 1391 000a 3B68 ldr r3, [r7] 1392 000c 002B cmp r3, #0 1393 000e 09D1 bne .L56 1394 .loc 1 632 7 discriminator 1 1395 0010 7B68 ldr r3, [r7, #4] 1396 0012 93F84230 ldrb r3, [r3, #66] 1397 0016 DBB2 uxtb r3, r3 1398 .loc 1 632 46 discriminator 1 1399 0018 012B cmp r3, #1 1400 001a 14BF ite ne 1401 001c 0123 movne r3, #1 1402 001e 0023 moveq r3, #0 1403 0020 DBB2 uxtb r3, r3 1404 0022 22E0 b .L57 1405 .L56: 1406 .loc 1 632 46 is_stmt 0 discriminator 2 1407 0024 3B68 ldr r3, [r7] 1408 0026 042B cmp r3, #4 1409 0028 09D1 bne .L58 1410 .loc 1 632 7 is_stmt 1 discriminator 4 1411 002a 7B68 ldr r3, [r7, #4] 1412 002c 93F84330 ldrb r3, [r3, #67] 1413 0030 DBB2 uxtb r3, r3 1414 .loc 1 632 46 discriminator 4 1415 0032 012B cmp r3, #1 1416 0034 14BF ite ne 1417 0036 0123 movne r3, #1 1418 0038 0023 moveq r3, #0 1419 003a DBB2 uxtb r3, r3 1420 003c 15E0 b .L57 1421 .L58: 1422 .loc 1 632 46 is_stmt 0 discriminator 5 1423 003e 3B68 ldr r3, [r7] 1424 0040 082B cmp r3, #8 1425 0042 09D1 bne .L60 1426 .loc 1 632 7 is_stmt 1 discriminator 7 1427 0044 7B68 ldr r3, [r7, #4] 1428 0046 93F84430 ldrb r3, [r3, #68] 1429 004a DBB2 uxtb r3, r3 1430 .loc 1 632 46 discriminator 7 1431 004c 012B cmp r3, #1 1432 004e 14BF ite ne 1433 0050 0123 movne r3, #1 1434 0052 0023 moveq r3, #0 1435 0054 DBB2 uxtb r3, r3 1436 0056 08E0 b .L57 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 37 1437 .L60: 1438 .loc 1 632 7 discriminator 8 1439 0058 7B68 ldr r3, [r7, #4] 1440 005a 93F84530 ldrb r3, [r3, #69] 1441 005e DBB2 uxtb r3, r3 1442 .loc 1 632 46 discriminator 8 1443 0060 012B cmp r3, #1 1444 0062 14BF ite ne 1445 0064 0123 movne r3, #1 1446 0066 0023 moveq r3, #0 1447 0068 DBB2 uxtb r3, r3 1448 .L57: 1449 .loc 1 632 6 discriminator 12 1450 006a 002B cmp r3, #0 1451 006c 01D0 beq .L62 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 1452 .loc 1 634 12 1453 006e 0123 movs r3, #1 1454 0070 6DE0 b .L63 1455 .L62: 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 1456 .loc 1 638 3 1457 0072 3B68 ldr r3, [r7] 1458 0074 002B cmp r3, #0 1459 0076 04D1 bne .L64 1460 .loc 1 638 3 is_stmt 0 discriminator 1 1461 0078 7B68 ldr r3, [r7, #4] 1462 007a 0222 movs r2, #2 1463 007c 83F84220 strb r2, [r3, #66] 1464 0080 13E0 b .L65 1465 .L64: 1466 .loc 1 638 3 discriminator 2 1467 0082 3B68 ldr r3, [r7] 1468 0084 042B cmp r3, #4 1469 0086 04D1 bne .L66 1470 .loc 1 638 3 discriminator 3 1471 0088 7B68 ldr r3, [r7, #4] 1472 008a 0222 movs r2, #2 1473 008c 83F84320 strb r2, [r3, #67] 1474 0090 0BE0 b .L65 1475 .L66: 1476 .loc 1 638 3 discriminator 4 1477 0092 3B68 ldr r3, [r7] 1478 0094 082B cmp r3, #8 1479 0096 04D1 bne .L68 1480 .loc 1 638 3 discriminator 6 1481 0098 7B68 ldr r3, [r7, #4] 1482 009a 0222 movs r2, #2 1483 009c 83F84420 strb r2, [r3, #68] 1484 00a0 03E0 b .L65 1485 .L68: 1486 .loc 1 638 3 discriminator 7 1487 00a2 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 38 1488 00a4 0222 movs r2, #2 1489 00a6 83F84520 strb r2, [r3, #69] 1490 .L65: 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Capture compare channel N */ 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 1491 .loc 1 641 3 is_stmt 1 1492 00aa 7B68 ldr r3, [r7, #4] 1493 00ac 1B68 ldr r3, [r3] 1494 00ae 0422 movs r2, #4 1495 00b0 3968 ldr r1, [r7] 1496 00b2 1846 mov r0, r3 1497 00b4 FFF7FEFF bl TIM_CCxNChannelCmd 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 1498 .loc 1 644 3 1499 00b8 7B68 ldr r3, [r7, #4] 1500 00ba 1B68 ldr r3, [r3] 1501 00bc 5A6C ldr r2, [r3, #68] 1502 00be 7B68 ldr r3, [r7, #4] 1503 00c0 1B68 ldr r3, [r3] 1504 00c2 42F40042 orr r2, r2, #32768 1505 00c6 5A64 str r2, [r3, #68] 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 1506 .loc 1 647 7 1507 00c8 7B68 ldr r3, [r7, #4] 1508 00ca 1B68 ldr r3, [r3] 1509 .loc 1 647 6 1510 00cc 224A ldr r2, .L74 1511 00ce 9342 cmp r3, r2 1512 00d0 22D0 beq .L70 1513 .loc 1 647 7 discriminator 1 1514 00d2 7B68 ldr r3, [r7, #4] 1515 00d4 1B68 ldr r3, [r3] 1516 00d6 B3F1804F cmp r3, #1073741824 1517 00da 1DD0 beq .L70 1518 .loc 1 647 7 is_stmt 0 discriminator 2 1519 00dc 7B68 ldr r3, [r7, #4] 1520 00de 1B68 ldr r3, [r3] 1521 00e0 1E4A ldr r2, .L74+4 1522 00e2 9342 cmp r3, r2 1523 00e4 18D0 beq .L70 1524 .loc 1 647 7 discriminator 3 1525 00e6 7B68 ldr r3, [r7, #4] 1526 00e8 1B68 ldr r3, [r3] 1527 00ea 1D4A ldr r2, .L74+8 1528 00ec 9342 cmp r3, r2 1529 00ee 13D0 beq .L70 1530 .loc 1 647 7 discriminator 4 1531 00f0 7B68 ldr r3, [r7, #4] 1532 00f2 1B68 ldr r3, [r3] 1533 00f4 1B4A ldr r2, .L74+12 1534 00f6 9342 cmp r3, r2 1535 00f8 0ED0 beq .L70 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 39 1536 .loc 1 647 7 discriminator 5 1537 00fa 7B68 ldr r3, [r7, #4] 1538 00fc 1B68 ldr r3, [r3] 1539 00fe 1A4A ldr r2, .L74+16 1540 0100 9342 cmp r3, r2 1541 0102 09D0 beq .L70 1542 .loc 1 647 7 discriminator 6 1543 0104 7B68 ldr r3, [r7, #4] 1544 0106 1B68 ldr r3, [r3] 1545 0108 184A ldr r2, .L74+20 1546 010a 9342 cmp r3, r2 1547 010c 04D0 beq .L70 1548 .loc 1 647 7 discriminator 7 1549 010e 7B68 ldr r3, [r7, #4] 1550 0110 1B68 ldr r3, [r3] 1551 0112 174A ldr r2, .L74+24 1552 0114 9342 cmp r3, r2 1553 0116 11D1 bne .L71 1554 .L70: 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 1555 .loc 1 649 19 is_stmt 1 1556 0118 7B68 ldr r3, [r7, #4] 1557 011a 1B68 ldr r3, [r3] 1558 .loc 1 649 29 1559 011c 9B68 ldr r3, [r3, #8] 1560 .loc 1 649 13 1561 011e 03F00703 and r3, r3, #7 1562 0122 FB60 str r3, [r7, #12] 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 1563 .loc 1 650 8 1564 0124 FB68 ldr r3, [r7, #12] 1565 0126 062B cmp r3, #6 1566 0128 10D0 beq .L73 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 1567 .loc 1 652 7 1568 012a 7B68 ldr r3, [r7, #4] 1569 012c 1B68 ldr r3, [r3] 1570 012e 1A68 ldr r2, [r3] 1571 0130 7B68 ldr r3, [r7, #4] 1572 0132 1B68 ldr r3, [r3] 1573 0134 42F00102 orr r2, r2, #1 1574 0138 1A60 str r2, [r3] 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 1575 .loc 1 650 8 1576 013a 07E0 b .L73 1577 .L71: 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 1578 .loc 1 657 5 1579 013c 7B68 ldr r3, [r7, #4] 1580 013e 1B68 ldr r3, [r3] 1581 0140 1A68 ldr r2, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 40 1582 0142 7B68 ldr r3, [r7, #4] 1583 0144 1B68 ldr r3, [r3] 1584 0146 42F00102 orr r2, r2, #1 1585 014a 1A60 str r2, [r3] 1586 .L73: 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 1587 .loc 1 661 10 1588 014c 0023 movs r3, #0 1589 .L63: 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1590 .loc 1 662 1 1591 014e 1846 mov r0, r3 1592 0150 1037 adds r7, r7, #16 1593 .LCFI55: 1594 .cfi_def_cfa_offset 8 1595 0152 BD46 mov sp, r7 1596 .LCFI56: 1597 .cfi_def_cfa_register 13 1598 @ sp needed 1599 0154 80BD pop {r7, pc} 1600 .L75: 1601 0156 00BF .align 2 1602 .L74: 1603 0158 00000140 .word 1073807360 1604 015c 00040040 .word 1073742848 1605 0160 00080040 .word 1073743872 1606 0164 000C0040 .word 1073744896 1607 0168 00040140 .word 1073808384 1608 016c 00400140 .word 1073823744 1609 0170 00180040 .word 1073747968 1610 .cfi_endproc 1611 .LFE245: 1613 .section .text.HAL_TIMEx_OCN_Stop,"ax",%progbits 1614 .align 1 1615 .global HAL_TIMEx_OCN_Stop 1616 .syntax unified 1617 .thumb 1618 .thumb_func 1620 HAL_TIMEx_OCN_Stop: 1621 .LFB246: 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Output Compare signal generation on the complementary 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * output. 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 41 1622 .loc 1 676 1 1623 .cfi_startproc 1624 @ args = 0, pretend = 0, frame = 8 1625 @ frame_needed = 1, uses_anonymous_args = 0 1626 0000 80B5 push {r7, lr} 1627 .LCFI57: 1628 .cfi_def_cfa_offset 8 1629 .cfi_offset 7, -8 1630 .cfi_offset 14, -4 1631 0002 82B0 sub sp, sp, #8 1632 .LCFI58: 1633 .cfi_def_cfa_offset 16 1634 0004 00AF add r7, sp, #0 1635 .LCFI59: 1636 .cfi_def_cfa_register 7 1637 0006 7860 str r0, [r7, #4] 1638 0008 3960 str r1, [r7] 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Capture compare channel N */ 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 1639 .loc 1 681 3 1640 000a 7B68 ldr r3, [r7, #4] 1641 000c 1B68 ldr r3, [r3] 1642 000e 0022 movs r2, #0 1643 0010 3968 ldr r1, [r7] 1644 0012 1846 mov r0, r3 1645 0014 FFF7FEFF bl TIM_CCxNChannelCmd 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 1646 .loc 1 684 3 1647 0018 7B68 ldr r3, [r7, #4] 1648 001a 1B68 ldr r3, [r3] 1649 001c 1A6A ldr r2, [r3, #32] 1650 001e 41F21113 movw r3, #4369 1651 0022 1340 ands r3, r3, r2 1652 0024 002B cmp r3, #0 1653 0026 0FD1 bne .L77 1654 .loc 1 684 3 is_stmt 0 discriminator 1 1655 0028 7B68 ldr r3, [r7, #4] 1656 002a 1B68 ldr r3, [r3] 1657 002c 1A6A ldr r2, [r3, #32] 1658 002e 40F24443 movw r3, #1092 1659 0032 1340 ands r3, r3, r2 1660 0034 002B cmp r3, #0 1661 0036 07D1 bne .L77 1662 .loc 1 684 3 discriminator 2 1663 0038 7B68 ldr r3, [r7, #4] 1664 003a 1B68 ldr r3, [r3] 1665 003c 5A6C ldr r2, [r3, #68] 1666 003e 7B68 ldr r3, [r7, #4] 1667 0040 1B68 ldr r3, [r3] 1668 0042 22F40042 bic r2, r2, #32768 1669 0046 5A64 str r2, [r3, #68] 1670 .L77: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 42 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 1671 .loc 1 687 3 is_stmt 1 1672 0048 7B68 ldr r3, [r7, #4] 1673 004a 1B68 ldr r3, [r3] 1674 004c 1A6A ldr r2, [r3, #32] 1675 004e 41F21113 movw r3, #4369 1676 0052 1340 ands r3, r3, r2 1677 0054 002B cmp r3, #0 1678 0056 0FD1 bne .L78 1679 .loc 1 687 3 is_stmt 0 discriminator 1 1680 0058 7B68 ldr r3, [r7, #4] 1681 005a 1B68 ldr r3, [r3] 1682 005c 1A6A ldr r2, [r3, #32] 1683 005e 40F24443 movw r3, #1092 1684 0062 1340 ands r3, r3, r2 1685 0064 002B cmp r3, #0 1686 0066 07D1 bne .L78 1687 .loc 1 687 3 discriminator 2 1688 0068 7B68 ldr r3, [r7, #4] 1689 006a 1B68 ldr r3, [r3] 1690 006c 1A68 ldr r2, [r3] 1691 006e 7B68 ldr r3, [r7, #4] 1692 0070 1B68 ldr r3, [r3] 1693 0072 22F00102 bic r2, r2, #1 1694 0076 1A60 str r2, [r3] 1695 .L78: 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 1696 .loc 1 690 3 is_stmt 1 1697 0078 3B68 ldr r3, [r7] 1698 007a 002B cmp r3, #0 1699 007c 04D1 bne .L79 1700 .loc 1 690 3 is_stmt 0 discriminator 1 1701 007e 7B68 ldr r3, [r7, #4] 1702 0080 0122 movs r2, #1 1703 0082 83F84220 strb r2, [r3, #66] 1704 0086 13E0 b .L80 1705 .L79: 1706 .loc 1 690 3 discriminator 2 1707 0088 3B68 ldr r3, [r7] 1708 008a 042B cmp r3, #4 1709 008c 04D1 bne .L81 1710 .loc 1 690 3 discriminator 3 1711 008e 7B68 ldr r3, [r7, #4] 1712 0090 0122 movs r2, #1 1713 0092 83F84320 strb r2, [r3, #67] 1714 0096 0BE0 b .L80 1715 .L81: 1716 .loc 1 690 3 discriminator 4 1717 0098 3B68 ldr r3, [r7] 1718 009a 082B cmp r3, #8 1719 009c 04D1 bne .L83 1720 .loc 1 690 3 discriminator 6 1721 009e 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 43 1722 00a0 0122 movs r2, #1 1723 00a2 83F84420 strb r2, [r3, #68] 1724 00a6 03E0 b .L80 1725 .L83: 1726 .loc 1 690 3 discriminator 7 1727 00a8 7B68 ldr r3, [r7, #4] 1728 00aa 0122 movs r2, #1 1729 00ac 83F84520 strb r2, [r3, #69] 1730 .L80: 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 1731 .loc 1 693 10 is_stmt 1 1732 00b0 0023 movs r3, #0 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1733 .loc 1 694 1 1734 00b2 1846 mov r0, r3 1735 00b4 0837 adds r7, r7, #8 1736 .LCFI60: 1737 .cfi_def_cfa_offset 8 1738 00b6 BD46 mov sp, r7 1739 .LCFI61: 1740 .cfi_def_cfa_register 13 1741 @ sp needed 1742 00b8 80BD pop {r7, pc} 1743 .cfi_endproc 1744 .LFE246: 1746 .section .text.HAL_TIMEx_OCN_Start_IT,"ax",%progbits 1747 .align 1 1748 .global HAL_TIMEx_OCN_Start_IT 1749 .syntax unified 1750 .thumb 1751 .thumb_func 1753 HAL_TIMEx_OCN_Start_IT: 1754 .LFB247: 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Output Compare signal generation in interrupt mode 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * on the complementary output. 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM OC handle 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be enabled 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1755 .loc 1 708 1 1756 .cfi_startproc 1757 @ args = 0, pretend = 0, frame = 16 1758 @ frame_needed = 1, uses_anonymous_args = 0 1759 0000 80B5 push {r7, lr} 1760 .LCFI62: 1761 .cfi_def_cfa_offset 8 1762 .cfi_offset 7, -8 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 44 1763 .cfi_offset 14, -4 1764 0002 84B0 sub sp, sp, #16 1765 .LCFI63: 1766 .cfi_def_cfa_offset 24 1767 0004 00AF add r7, sp, #0 1768 .LCFI64: 1769 .cfi_def_cfa_register 7 1770 0006 7860 str r0, [r7, #4] 1771 0008 3960 str r1, [r7] 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 1772 .loc 1 709 21 1773 000a 0023 movs r3, #0 1774 000c FB73 strb r3, [r7, #15] 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM complementary channel state */ 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) 1775 .loc 1 716 46 1776 000e 3B68 ldr r3, [r7] 1777 0010 002B cmp r3, #0 1778 0012 09D1 bne .L87 1779 .loc 1 716 7 discriminator 1 1780 0014 7B68 ldr r3, [r7, #4] 1781 0016 93F84230 ldrb r3, [r3, #66] 1782 001a DBB2 uxtb r3, r3 1783 .loc 1 716 46 discriminator 1 1784 001c 012B cmp r3, #1 1785 001e 14BF ite ne 1786 0020 0123 movne r3, #1 1787 0022 0023 moveq r3, #0 1788 0024 DBB2 uxtb r3, r3 1789 0026 22E0 b .L88 1790 .L87: 1791 .loc 1 716 46 is_stmt 0 discriminator 2 1792 0028 3B68 ldr r3, [r7] 1793 002a 042B cmp r3, #4 1794 002c 09D1 bne .L89 1795 .loc 1 716 7 is_stmt 1 discriminator 4 1796 002e 7B68 ldr r3, [r7, #4] 1797 0030 93F84330 ldrb r3, [r3, #67] 1798 0034 DBB2 uxtb r3, r3 1799 .loc 1 716 46 discriminator 4 1800 0036 012B cmp r3, #1 1801 0038 14BF ite ne 1802 003a 0123 movne r3, #1 1803 003c 0023 moveq r3, #0 1804 003e DBB2 uxtb r3, r3 1805 0040 15E0 b .L88 1806 .L89: 1807 .loc 1 716 46 is_stmt 0 discriminator 5 1808 0042 3B68 ldr r3, [r7] 1809 0044 082B cmp r3, #8 1810 0046 09D1 bne .L91 1811 .loc 1 716 7 is_stmt 1 discriminator 7 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 45 1812 0048 7B68 ldr r3, [r7, #4] 1813 004a 93F84430 ldrb r3, [r3, #68] 1814 004e DBB2 uxtb r3, r3 1815 .loc 1 716 46 discriminator 7 1816 0050 012B cmp r3, #1 1817 0052 14BF ite ne 1818 0054 0123 movne r3, #1 1819 0056 0023 moveq r3, #0 1820 0058 DBB2 uxtb r3, r3 1821 005a 08E0 b .L88 1822 .L91: 1823 .loc 1 716 7 discriminator 8 1824 005c 7B68 ldr r3, [r7, #4] 1825 005e 93F84530 ldrb r3, [r3, #69] 1826 0062 DBB2 uxtb r3, r3 1827 .loc 1 716 46 discriminator 8 1828 0064 012B cmp r3, #1 1829 0066 14BF ite ne 1830 0068 0123 movne r3, #1 1831 006a 0023 moveq r3, #0 1832 006c DBB2 uxtb r3, r3 1833 .L88: 1834 .loc 1 716 6 discriminator 12 1835 006e 002B cmp r3, #0 1836 0070 01D0 beq .L93 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 1837 .loc 1 718 12 1838 0072 0123 movs r3, #1 1839 0074 A3E0 b .L94 1840 .L93: 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 1841 .loc 1 722 3 1842 0076 3B68 ldr r3, [r7] 1843 0078 002B cmp r3, #0 1844 007a 04D1 bne .L95 1845 .loc 1 722 3 is_stmt 0 discriminator 1 1846 007c 7B68 ldr r3, [r7, #4] 1847 007e 0222 movs r2, #2 1848 0080 83F84220 strb r2, [r3, #66] 1849 0084 13E0 b .L96 1850 .L95: 1851 .loc 1 722 3 discriminator 2 1852 0086 3B68 ldr r3, [r7] 1853 0088 042B cmp r3, #4 1854 008a 04D1 bne .L97 1855 .loc 1 722 3 discriminator 3 1856 008c 7B68 ldr r3, [r7, #4] 1857 008e 0222 movs r2, #2 1858 0090 83F84320 strb r2, [r3, #67] 1859 0094 0BE0 b .L96 1860 .L97: 1861 .loc 1 722 3 discriminator 4 1862 0096 3B68 ldr r3, [r7] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 46 1863 0098 082B cmp r3, #8 1864 009a 04D1 bne .L99 1865 .loc 1 722 3 discriminator 6 1866 009c 7B68 ldr r3, [r7, #4] 1867 009e 0222 movs r2, #2 1868 00a0 83F84420 strb r2, [r3, #68] 1869 00a4 03E0 b .L96 1870 .L99: 1871 .loc 1 722 3 discriminator 7 1872 00a6 7B68 ldr r3, [r7, #4] 1873 00a8 0222 movs r2, #2 1874 00aa 83F84520 strb r2, [r3, #69] 1875 .L96: 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 1876 .loc 1 724 3 is_stmt 1 1877 00ae 3B68 ldr r3, [r7] 1878 00b0 082B cmp r3, #8 1879 00b2 1BD0 beq .L101 1880 00b4 3B68 ldr r3, [r7] 1881 00b6 082B cmp r3, #8 1882 00b8 21D8 bhi .L102 1883 00ba 3B68 ldr r3, [r7] 1884 00bc 002B cmp r3, #0 1885 00be 03D0 beq .L103 1886 00c0 3B68 ldr r3, [r7] 1887 00c2 042B cmp r3, #4 1888 00c4 09D0 beq .L104 1889 00c6 1AE0 b .L102 1890 .L103: 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare interrupt */ 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); 1891 .loc 1 729 7 1892 00c8 7B68 ldr r3, [r7, #4] 1893 00ca 1B68 ldr r3, [r3] 1894 00cc DA68 ldr r2, [r3, #12] 1895 00ce 7B68 ldr r3, [r7, #4] 1896 00d0 1B68 ldr r3, [r3] 1897 00d2 42F00202 orr r2, r2, #2 1898 00d6 DA60 str r2, [r3, #12] 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 1899 .loc 1 730 7 1900 00d8 14E0 b .L105 1901 .L104: 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare interrupt */ 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); 1902 .loc 1 736 7 1903 00da 7B68 ldr r3, [r7, #4] 1904 00dc 1B68 ldr r3, [r3] 1905 00de DA68 ldr r2, [r3, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 47 1906 00e0 7B68 ldr r3, [r7, #4] 1907 00e2 1B68 ldr r3, [r3] 1908 00e4 42F00402 orr r2, r2, #4 1909 00e8 DA60 str r2, [r3, #12] 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 1910 .loc 1 737 7 1911 00ea 0BE0 b .L105 1912 .L101: 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare interrupt */ 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); 1913 .loc 1 743 7 1914 00ec 7B68 ldr r3, [r7, #4] 1915 00ee 1B68 ldr r3, [r3] 1916 00f0 DA68 ldr r2, [r3, #12] 1917 00f2 7B68 ldr r3, [r7, #4] 1918 00f4 1B68 ldr r3, [r3] 1919 00f6 42F00802 orr r2, r2, #8 1920 00fa DA60 str r2, [r3, #12] 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 1921 .loc 1 744 7 1922 00fc 02E0 b .L105 1923 .L102: 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 1924 .loc 1 749 14 1925 00fe 0123 movs r3, #1 1926 0100 FB73 strb r3, [r7, #15] 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 1927 .loc 1 750 7 1928 0102 00BF nop 1929 .L105: 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 1930 .loc 1 753 6 1931 0104 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 1932 0106 002B cmp r3, #0 1933 0108 58D1 bne .L106 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Break interrupt */ 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); 1934 .loc 1 756 5 1935 010a 7B68 ldr r3, [r7, #4] 1936 010c 1B68 ldr r3, [r3] 1937 010e DA68 ldr r2, [r3, #12] 1938 0110 7B68 ldr r3, [r7, #4] 1939 0112 1B68 ldr r3, [r3] 1940 0114 42F08002 orr r2, r2, #128 1941 0118 DA60 str r2, [r3, #12] 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 48 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Capture compare channel N */ 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 1942 .loc 1 759 5 1943 011a 7B68 ldr r3, [r7, #4] 1944 011c 1B68 ldr r3, [r3] 1945 011e 0422 movs r2, #4 1946 0120 3968 ldr r1, [r7] 1947 0122 1846 mov r0, r3 1948 0124 FFF7FEFF bl TIM_CCxNChannelCmd 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 1949 .loc 1 762 5 1950 0128 7B68 ldr r3, [r7, #4] 1951 012a 1B68 ldr r3, [r3] 1952 012c 5A6C ldr r2, [r3, #68] 1953 012e 7B68 ldr r3, [r7, #4] 1954 0130 1B68 ldr r3, [r3] 1955 0132 42F40042 orr r2, r2, #32768 1956 0136 5A64 str r2, [r3, #68] 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigge 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 1957 .loc 1 765 9 1958 0138 7B68 ldr r3, [r7, #4] 1959 013a 1B68 ldr r3, [r3] 1960 .loc 1 765 8 1961 013c 224A ldr r2, .L110 1962 013e 9342 cmp r3, r2 1963 0140 22D0 beq .L107 1964 .loc 1 765 9 discriminator 1 1965 0142 7B68 ldr r3, [r7, #4] 1966 0144 1B68 ldr r3, [r3] 1967 0146 B3F1804F cmp r3, #1073741824 1968 014a 1DD0 beq .L107 1969 .loc 1 765 9 is_stmt 0 discriminator 2 1970 014c 7B68 ldr r3, [r7, #4] 1971 014e 1B68 ldr r3, [r3] 1972 0150 1E4A ldr r2, .L110+4 1973 0152 9342 cmp r3, r2 1974 0154 18D0 beq .L107 1975 .loc 1 765 9 discriminator 3 1976 0156 7B68 ldr r3, [r7, #4] 1977 0158 1B68 ldr r3, [r3] 1978 015a 1D4A ldr r2, .L110+8 1979 015c 9342 cmp r3, r2 1980 015e 13D0 beq .L107 1981 .loc 1 765 9 discriminator 4 1982 0160 7B68 ldr r3, [r7, #4] 1983 0162 1B68 ldr r3, [r3] 1984 0164 1B4A ldr r2, .L110+12 1985 0166 9342 cmp r3, r2 1986 0168 0ED0 beq .L107 1987 .loc 1 765 9 discriminator 5 1988 016a 7B68 ldr r3, [r7, #4] 1989 016c 1B68 ldr r3, [r3] 1990 016e 1A4A ldr r2, .L110+16 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 49 1991 0170 9342 cmp r3, r2 1992 0172 09D0 beq .L107 1993 .loc 1 765 9 discriminator 6 1994 0174 7B68 ldr r3, [r7, #4] 1995 0176 1B68 ldr r3, [r3] 1996 0178 184A ldr r2, .L110+20 1997 017a 9342 cmp r3, r2 1998 017c 04D0 beq .L107 1999 .loc 1 765 9 discriminator 7 2000 017e 7B68 ldr r3, [r7, #4] 2001 0180 1B68 ldr r3, [r3] 2002 0182 174A ldr r2, .L110+24 2003 0184 9342 cmp r3, r2 2004 0186 11D1 bne .L108 2005 .L107: 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 2006 .loc 1 767 21 is_stmt 1 2007 0188 7B68 ldr r3, [r7, #4] 2008 018a 1B68 ldr r3, [r3] 2009 .loc 1 767 31 2010 018c 9B68 ldr r3, [r3, #8] 2011 .loc 1 767 15 2012 018e 03F00703 and r3, r3, #7 2013 0192 BB60 str r3, [r7, #8] 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 2014 .loc 1 768 10 2015 0194 BB68 ldr r3, [r7, #8] 2016 0196 062B cmp r3, #6 2017 0198 10D0 beq .L106 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 2018 .loc 1 770 9 2019 019a 7B68 ldr r3, [r7, #4] 2020 019c 1B68 ldr r3, [r3] 2021 019e 1A68 ldr r2, [r3] 2022 01a0 7B68 ldr r3, [r7, #4] 2023 01a2 1B68 ldr r3, [r3] 2024 01a4 42F00102 orr r2, r2, #1 2025 01a8 1A60 str r2, [r3] 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 2026 .loc 1 768 10 2027 01aa 07E0 b .L106 2028 .L108: 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 2029 .loc 1 775 7 2030 01ac 7B68 ldr r3, [r7, #4] 2031 01ae 1B68 ldr r3, [r3] 2032 01b0 1A68 ldr r2, [r3] 2033 01b2 7B68 ldr r3, [r7, #4] 2034 01b4 1B68 ldr r3, [r3] 2035 01b6 42F00102 orr r2, r2, #1 2036 01ba 1A60 str r2, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 50 2037 .L106: 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 2038 .loc 1 780 10 2039 01bc FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 2040 .L94: 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2041 .loc 1 781 1 2042 01be 1846 mov r0, r3 2043 01c0 1037 adds r7, r7, #16 2044 .LCFI65: 2045 .cfi_def_cfa_offset 8 2046 01c2 BD46 mov sp, r7 2047 .LCFI66: 2048 .cfi_def_cfa_register 13 2049 @ sp needed 2050 01c4 80BD pop {r7, pc} 2051 .L111: 2052 01c6 00BF .align 2 2053 .L110: 2054 01c8 00000140 .word 1073807360 2055 01cc 00040040 .word 1073742848 2056 01d0 00080040 .word 1073743872 2057 01d4 000C0040 .word 1073744896 2058 01d8 00040140 .word 1073808384 2059 01dc 00400140 .word 1073823744 2060 01e0 00180040 .word 1073747968 2061 .cfi_endproc 2062 .LFE247: 2064 .section .text.HAL_TIMEx_OCN_Stop_IT,"ax",%progbits 2065 .align 1 2066 .global HAL_TIMEx_OCN_Stop_IT 2067 .syntax unified 2068 .thumb 2069 .thumb_func 2071 HAL_TIMEx_OCN_Stop_IT: 2072 .LFB248: 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Output Compare signal generation in interrupt mode 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * on the complementary output. 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Output Compare handle 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2073 .loc 1 795 1 2074 .cfi_startproc 2075 @ args = 0, pretend = 0, frame = 16 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 51 2076 @ frame_needed = 1, uses_anonymous_args = 0 2077 0000 80B5 push {r7, lr} 2078 .LCFI67: 2079 .cfi_def_cfa_offset 8 2080 .cfi_offset 7, -8 2081 .cfi_offset 14, -4 2082 0002 84B0 sub sp, sp, #16 2083 .LCFI68: 2084 .cfi_def_cfa_offset 24 2085 0004 00AF add r7, sp, #0 2086 .LCFI69: 2087 .cfi_def_cfa_register 7 2088 0006 7860 str r0, [r7, #4] 2089 0008 3960 str r1, [r7] 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 2090 .loc 1 796 21 2091 000a 0023 movs r3, #0 2092 000c FB73 strb r3, [r7, #15] 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpccer; 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 2093 .loc 1 802 3 2094 000e 3B68 ldr r3, [r7] 2095 0010 082B cmp r3, #8 2096 0012 1BD0 beq .L113 2097 0014 3B68 ldr r3, [r7] 2098 0016 082B cmp r3, #8 2099 0018 21D8 bhi .L114 2100 001a 3B68 ldr r3, [r7] 2101 001c 002B cmp r3, #0 2102 001e 03D0 beq .L115 2103 0020 3B68 ldr r3, [r7] 2104 0022 042B cmp r3, #4 2105 0024 09D0 beq .L116 2106 0026 1AE0 b .L114 2107 .L115: 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare interrupt */ 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); 2108 .loc 1 807 7 2109 0028 7B68 ldr r3, [r7, #4] 2110 002a 1B68 ldr r3, [r3] 2111 002c DA68 ldr r2, [r3, #12] 2112 002e 7B68 ldr r3, [r7, #4] 2113 0030 1B68 ldr r3, [r3] 2114 0032 22F00202 bic r2, r2, #2 2115 0036 DA60 str r2, [r3, #12] 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2116 .loc 1 808 7 2117 0038 14E0 b .L117 2118 .L116: 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 52 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare interrupt */ 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); 2119 .loc 1 814 7 2120 003a 7B68 ldr r3, [r7, #4] 2121 003c 1B68 ldr r3, [r3] 2122 003e DA68 ldr r2, [r3, #12] 2123 0040 7B68 ldr r3, [r7, #4] 2124 0042 1B68 ldr r3, [r3] 2125 0044 22F00402 bic r2, r2, #4 2126 0048 DA60 str r2, [r3, #12] 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2127 .loc 1 815 7 2128 004a 0BE0 b .L117 2129 .L113: 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare interrupt */ 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); 2130 .loc 1 821 7 2131 004c 7B68 ldr r3, [r7, #4] 2132 004e 1B68 ldr r3, [r3] 2133 0050 DA68 ldr r2, [r3, #12] 2134 0052 7B68 ldr r3, [r7, #4] 2135 0054 1B68 ldr r3, [r3] 2136 0056 22F00802 bic r2, r2, #8 2137 005a DA60 str r2, [r3, #12] 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2138 .loc 1 822 7 2139 005c 02E0 b .L117 2140 .L114: 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 2141 .loc 1 826 14 2142 005e 0123 movs r3, #1 2143 0060 FB73 strb r3, [r7, #15] 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2144 .loc 1 827 7 2145 0062 00BF nop 2146 .L117: 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 2147 .loc 1 830 6 2148 0064 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 2149 0066 002B cmp r3, #0 2150 0068 64D1 bne .L118 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Capture compare channel N */ 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 2151 .loc 1 833 5 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 53 2152 006a 7B68 ldr r3, [r7, #4] 2153 006c 1B68 ldr r3, [r3] 2154 006e 0022 movs r2, #0 2155 0070 3968 ldr r1, [r7] 2156 0072 1846 mov r0, r3 2157 0074 FFF7FEFF bl TIM_CCxNChannelCmd 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Break interrupt (only if no more channel is active) */ 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpccer = htim->Instance->CCER; 2158 .loc 1 836 19 2159 0078 7B68 ldr r3, [r7, #4] 2160 007a 1B68 ldr r3, [r3] 2161 .loc 1 836 13 2162 007c 1B6A ldr r3, [r3, #32] 2163 007e BB60 str r3, [r7, #8] 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) 2164 .loc 1 837 18 2165 0080 BA68 ldr r2, [r7, #8] 2166 0082 40F24443 movw r3, #1092 2167 0086 1340 ands r3, r3, r2 2168 .loc 1 837 8 2169 0088 002B cmp r3, #0 2170 008a 07D1 bne .L119 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); 2171 .loc 1 839 7 2172 008c 7B68 ldr r3, [r7, #4] 2173 008e 1B68 ldr r3, [r3] 2174 0090 DA68 ldr r2, [r3, #12] 2175 0092 7B68 ldr r3, [r7, #4] 2176 0094 1B68 ldr r3, [r3] 2177 0096 22F08002 bic r2, r2, #128 2178 009a DA60 str r2, [r3, #12] 2179 .L119: 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 2180 .loc 1 843 5 2181 009c 7B68 ldr r3, [r7, #4] 2182 009e 1B68 ldr r3, [r3] 2183 00a0 1A6A ldr r2, [r3, #32] 2184 00a2 41F21113 movw r3, #4369 2185 00a6 1340 ands r3, r3, r2 2186 00a8 002B cmp r3, #0 2187 00aa 0FD1 bne .L120 2188 .loc 1 843 5 is_stmt 0 discriminator 1 2189 00ac 7B68 ldr r3, [r7, #4] 2190 00ae 1B68 ldr r3, [r3] 2191 00b0 1A6A ldr r2, [r3, #32] 2192 00b2 40F24443 movw r3, #1092 2193 00b6 1340 ands r3, r3, r2 2194 00b8 002B cmp r3, #0 2195 00ba 07D1 bne .L120 2196 .loc 1 843 5 discriminator 2 2197 00bc 7B68 ldr r3, [r7, #4] 2198 00be 1B68 ldr r3, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 54 2199 00c0 5A6C ldr r2, [r3, #68] 2200 00c2 7B68 ldr r3, [r7, #4] 2201 00c4 1B68 ldr r3, [r3] 2202 00c6 22F40042 bic r2, r2, #32768 2203 00ca 5A64 str r2, [r3, #68] 2204 .L120: 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 2205 .loc 1 846 5 is_stmt 1 2206 00cc 7B68 ldr r3, [r7, #4] 2207 00ce 1B68 ldr r3, [r3] 2208 00d0 1A6A ldr r2, [r3, #32] 2209 00d2 41F21113 movw r3, #4369 2210 00d6 1340 ands r3, r3, r2 2211 00d8 002B cmp r3, #0 2212 00da 0FD1 bne .L121 2213 .loc 1 846 5 is_stmt 0 discriminator 1 2214 00dc 7B68 ldr r3, [r7, #4] 2215 00de 1B68 ldr r3, [r3] 2216 00e0 1A6A ldr r2, [r3, #32] 2217 00e2 40F24443 movw r3, #1092 2218 00e6 1340 ands r3, r3, r2 2219 00e8 002B cmp r3, #0 2220 00ea 07D1 bne .L121 2221 .loc 1 846 5 discriminator 2 2222 00ec 7B68 ldr r3, [r7, #4] 2223 00ee 1B68 ldr r3, [r3] 2224 00f0 1A68 ldr r2, [r3] 2225 00f2 7B68 ldr r3, [r7, #4] 2226 00f4 1B68 ldr r3, [r3] 2227 00f6 22F00102 bic r2, r2, #1 2228 00fa 1A60 str r2, [r3] 2229 .L121: 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 2230 .loc 1 849 5 is_stmt 1 2231 00fc 3B68 ldr r3, [r7] 2232 00fe 002B cmp r3, #0 2233 0100 04D1 bne .L122 2234 .loc 1 849 5 is_stmt 0 discriminator 1 2235 0102 7B68 ldr r3, [r7, #4] 2236 0104 0122 movs r2, #1 2237 0106 83F84220 strb r2, [r3, #66] 2238 010a 13E0 b .L118 2239 .L122: 2240 .loc 1 849 5 discriminator 2 2241 010c 3B68 ldr r3, [r7] 2242 010e 042B cmp r3, #4 2243 0110 04D1 bne .L123 2244 .loc 1 849 5 discriminator 3 2245 0112 7B68 ldr r3, [r7, #4] 2246 0114 0122 movs r2, #1 2247 0116 83F84320 strb r2, [r3, #67] 2248 011a 0BE0 b .L118 2249 .L123: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 55 2250 .loc 1 849 5 discriminator 4 2251 011c 3B68 ldr r3, [r7] 2252 011e 082B cmp r3, #8 2253 0120 04D1 bne .L125 2254 .loc 1 849 5 discriminator 6 2255 0122 7B68 ldr r3, [r7, #4] 2256 0124 0122 movs r2, #1 2257 0126 83F84420 strb r2, [r3, #68] 2258 012a 03E0 b .L118 2259 .L125: 2260 .loc 1 849 5 discriminator 7 2261 012c 7B68 ldr r3, [r7, #4] 2262 012e 0122 movs r2, #1 2263 0130 83F84520 strb r2, [r3, #69] 2264 .L118: 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 2265 .loc 1 853 10 is_stmt 1 2266 0134 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2267 .loc 1 854 1 2268 0136 1846 mov r0, r3 2269 0138 1037 adds r7, r7, #16 2270 .LCFI70: 2271 .cfi_def_cfa_offset 8 2272 013a BD46 mov sp, r7 2273 .LCFI71: 2274 .cfi_def_cfa_register 13 2275 @ sp needed 2276 013c 80BD pop {r7, pc} 2277 .cfi_endproc 2278 .LFE248: 2280 .section .text.HAL_TIMEx_OCN_Start_DMA,"ax",%progbits 2281 .align 1 2282 .global HAL_TIMEx_OCN_Start_DMA 2283 .syntax unified 2284 .thumb 2285 .thumb_func 2287 HAL_TIMEx_OCN_Start_DMA: 2288 .LFB249: 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM Output Compare signal generation in DMA mode 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * on the complementary output. 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Output Compare handle 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be enabled 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param pData The source Buffer address. 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Length The length of data to be transferred from memory to TIM peripheral 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pDat ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 56 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2289 .loc 1 870 1 2290 .cfi_startproc 2291 @ args = 0, pretend = 0, frame = 24 2292 @ frame_needed = 1, uses_anonymous_args = 0 2293 0000 80B5 push {r7, lr} 2294 .LCFI72: 2295 .cfi_def_cfa_offset 8 2296 .cfi_offset 7, -8 2297 .cfi_offset 14, -4 2298 0002 86B0 sub sp, sp, #24 2299 .LCFI73: 2300 .cfi_def_cfa_offset 32 2301 0004 00AF add r7, sp, #0 2302 .LCFI74: 2303 .cfi_def_cfa_register 7 2304 0006 F860 str r0, [r7, #12] 2305 0008 B960 str r1, [r7, #8] 2306 000a 7A60 str r2, [r7, #4] 2307 000c 7B80 strh r3, [r7, #2] @ movhi 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 2308 .loc 1 871 21 2309 000e 0023 movs r3, #0 2310 0010 FB75 strb r3, [r7, #23] 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) 2311 .loc 1 878 46 2312 0012 BB68 ldr r3, [r7, #8] 2313 0014 002B cmp r3, #0 2314 0016 09D1 bne .L129 2315 .loc 1 878 7 discriminator 1 2316 0018 FB68 ldr r3, [r7, #12] 2317 001a 93F84230 ldrb r3, [r3, #66] 2318 001e DBB2 uxtb r3, r3 2319 .loc 1 878 46 discriminator 1 2320 0020 022B cmp r3, #2 2321 0022 0CBF ite eq 2322 0024 0123 moveq r3, #1 2323 0026 0023 movne r3, #0 2324 0028 DBB2 uxtb r3, r3 2325 002a 22E0 b .L130 2326 .L129: 2327 .loc 1 878 46 is_stmt 0 discriminator 2 2328 002c BB68 ldr r3, [r7, #8] 2329 002e 042B cmp r3, #4 2330 0030 09D1 bne .L131 2331 .loc 1 878 7 is_stmt 1 discriminator 4 2332 0032 FB68 ldr r3, [r7, #12] 2333 0034 93F84330 ldrb r3, [r3, #67] 2334 0038 DBB2 uxtb r3, r3 2335 .loc 1 878 46 discriminator 4 2336 003a 022B cmp r3, #2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 57 2337 003c 0CBF ite eq 2338 003e 0123 moveq r3, #1 2339 0040 0023 movne r3, #0 2340 0042 DBB2 uxtb r3, r3 2341 0044 15E0 b .L130 2342 .L131: 2343 .loc 1 878 46 is_stmt 0 discriminator 5 2344 0046 BB68 ldr r3, [r7, #8] 2345 0048 082B cmp r3, #8 2346 004a 09D1 bne .L133 2347 .loc 1 878 7 is_stmt 1 discriminator 7 2348 004c FB68 ldr r3, [r7, #12] 2349 004e 93F84430 ldrb r3, [r3, #68] 2350 0052 DBB2 uxtb r3, r3 2351 .loc 1 878 46 discriminator 7 2352 0054 022B cmp r3, #2 2353 0056 0CBF ite eq 2354 0058 0123 moveq r3, #1 2355 005a 0023 movne r3, #0 2356 005c DBB2 uxtb r3, r3 2357 005e 08E0 b .L130 2358 .L133: 2359 .loc 1 878 7 discriminator 8 2360 0060 FB68 ldr r3, [r7, #12] 2361 0062 93F84530 ldrb r3, [r3, #69] 2362 0066 DBB2 uxtb r3, r3 2363 .loc 1 878 46 discriminator 8 2364 0068 022B cmp r3, #2 2365 006a 0CBF ite eq 2366 006c 0123 moveq r3, #1 2367 006e 0023 movne r3, #0 2368 0070 DBB2 uxtb r3, r3 2369 .L130: 2370 .loc 1 878 6 discriminator 12 2371 0072 002B cmp r3, #0 2372 0074 01D0 beq .L135 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_BUSY; 2373 .loc 1 880 12 2374 0076 0223 movs r3, #2 2375 0078 29E1 b .L136 2376 .L135: 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) 2377 .loc 1 882 51 2378 007a BB68 ldr r3, [r7, #8] 2379 007c 002B cmp r3, #0 2380 007e 09D1 bne .L137 2381 .loc 1 882 12 discriminator 1 2382 0080 FB68 ldr r3, [r7, #12] 2383 0082 93F84230 ldrb r3, [r3, #66] 2384 0086 DBB2 uxtb r3, r3 2385 .loc 1 882 51 discriminator 1 2386 0088 012B cmp r3, #1 2387 008a 0CBF ite eq 2388 008c 0123 moveq r3, #1 2389 008e 0023 movne r3, #0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 58 2390 0090 DBB2 uxtb r3, r3 2391 0092 22E0 b .L138 2392 .L137: 2393 .loc 1 882 51 is_stmt 0 discriminator 2 2394 0094 BB68 ldr r3, [r7, #8] 2395 0096 042B cmp r3, #4 2396 0098 09D1 bne .L139 2397 .loc 1 882 12 is_stmt 1 discriminator 4 2398 009a FB68 ldr r3, [r7, #12] 2399 009c 93F84330 ldrb r3, [r3, #67] 2400 00a0 DBB2 uxtb r3, r3 2401 .loc 1 882 51 discriminator 4 2402 00a2 012B cmp r3, #1 2403 00a4 0CBF ite eq 2404 00a6 0123 moveq r3, #1 2405 00a8 0023 movne r3, #0 2406 00aa DBB2 uxtb r3, r3 2407 00ac 15E0 b .L138 2408 .L139: 2409 .loc 1 882 51 is_stmt 0 discriminator 5 2410 00ae BB68 ldr r3, [r7, #8] 2411 00b0 082B cmp r3, #8 2412 00b2 09D1 bne .L141 2413 .loc 1 882 12 is_stmt 1 discriminator 7 2414 00b4 FB68 ldr r3, [r7, #12] 2415 00b6 93F84430 ldrb r3, [r3, #68] 2416 00ba DBB2 uxtb r3, r3 2417 .loc 1 882 51 discriminator 7 2418 00bc 012B cmp r3, #1 2419 00be 0CBF ite eq 2420 00c0 0123 moveq r3, #1 2421 00c2 0023 movne r3, #0 2422 00c4 DBB2 uxtb r3, r3 2423 00c6 08E0 b .L138 2424 .L141: 2425 .loc 1 882 12 discriminator 8 2426 00c8 FB68 ldr r3, [r7, #12] 2427 00ca 93F84530 ldrb r3, [r3, #69] 2428 00ce DBB2 uxtb r3, r3 2429 .loc 1 882 51 discriminator 8 2430 00d0 012B cmp r3, #1 2431 00d2 0CBF ite eq 2432 00d4 0123 moveq r3, #1 2433 00d6 0023 movne r3, #0 2434 00d8 DBB2 uxtb r3, r3 2435 .L138: 2436 .loc 1 882 11 discriminator 12 2437 00da 002B cmp r3, #0 2438 00dc 24D0 beq .L143 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((pData == NULL) && (Length > 0U)) 2439 .loc 1 884 8 2440 00de 7B68 ldr r3, [r7, #4] 2441 00e0 002B cmp r3, #0 2442 00e2 04D1 bne .L144 2443 .loc 1 884 25 discriminator 1 2444 00e4 7B88 ldrh r3, [r7, #2] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 59 2445 00e6 002B cmp r3, #0 2446 00e8 01D0 beq .L144 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 2447 .loc 1 886 14 2448 00ea 0123 movs r3, #1 2449 00ec EFE0 b .L136 2450 .L144: 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 2451 .loc 1 890 7 2452 00ee BB68 ldr r3, [r7, #8] 2453 00f0 002B cmp r3, #0 2454 00f2 04D1 bne .L145 2455 .loc 1 890 7 is_stmt 0 discriminator 1 2456 00f4 FB68 ldr r3, [r7, #12] 2457 00f6 0222 movs r2, #2 2458 00f8 83F84220 strb r2, [r3, #66] 2459 00fc 16E0 b .L146 2460 .L145: 2461 .loc 1 890 7 discriminator 2 2462 00fe BB68 ldr r3, [r7, #8] 2463 0100 042B cmp r3, #4 2464 0102 04D1 bne .L147 2465 .loc 1 890 7 discriminator 3 2466 0104 FB68 ldr r3, [r7, #12] 2467 0106 0222 movs r2, #2 2468 0108 83F84320 strb r2, [r3, #67] 2469 010c 0EE0 b .L146 2470 .L147: 2471 .loc 1 890 7 discriminator 4 2472 010e BB68 ldr r3, [r7, #8] 2473 0110 082B cmp r3, #8 2474 0112 04D1 bne .L149 2475 .loc 1 890 7 discriminator 6 2476 0114 FB68 ldr r3, [r7, #12] 2477 0116 0222 movs r2, #2 2478 0118 83F84420 strb r2, [r3, #68] 2479 011c 06E0 b .L146 2480 .L149: 2481 .loc 1 890 7 discriminator 7 2482 011e FB68 ldr r3, [r7, #12] 2483 0120 0222 movs r2, #2 2484 0122 83F84520 strb r2, [r3, #69] 2485 0126 01E0 b .L146 2486 .L143: 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 2487 .loc 1 895 12 is_stmt 1 2488 0128 0123 movs r3, #1 2489 012a D0E0 b .L136 2490 .L146: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 60 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 2491 .loc 1 898 3 2492 012c BB68 ldr r3, [r7, #8] 2493 012e 082B cmp r3, #8 2494 0130 51D0 beq .L151 2495 0132 BB68 ldr r3, [r7, #8] 2496 0134 082B cmp r3, #8 2497 0136 72D8 bhi .L152 2498 0138 BB68 ldr r3, [r7, #8] 2499 013a 002B cmp r3, #0 2500 013c 03D0 beq .L153 2501 013e BB68 ldr r3, [r7, #8] 2502 0140 042B cmp r3, #4 2503 0142 24D0 beq .L154 2504 0144 6BE0 b .L152 2505 .L153: 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; 2506 .loc 1 903 17 2507 0146 FB68 ldr r3, [r7, #12] 2508 0148 5B6A ldr r3, [r3, #36] 2509 .loc 1 903 52 2510 014a 634A ldr r2, .L163 2511 014c DA63 str r2, [r3, #60] 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; 2512 .loc 1 904 17 2513 014e FB68 ldr r3, [r7, #12] 2514 0150 5B6A ldr r3, [r3, #36] 2515 .loc 1 904 56 2516 0152 624A ldr r2, .L163+4 2517 0154 1A64 str r2, [r3, #64] 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; 2518 .loc 1 907 17 2519 0156 FB68 ldr r3, [r7, #12] 2520 0158 5B6A ldr r3, [r3, #36] 2521 .loc 1 907 53 2522 015a 614A ldr r2, .L163+8 2523 015c DA64 str r2, [r3, #76] 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance-> 2524 .loc 1 910 11 2525 015e FB68 ldr r3, [r7, #12] 2526 0160 586A ldr r0, [r3, #36] 2527 0162 7968 ldr r1, [r7, #4] 2528 .loc 1 910 88 2529 0164 FB68 ldr r3, [r7, #12] 2530 0166 1B68 ldr r3, [r3] 2531 .loc 1 910 83 2532 0168 3433 adds r3, r3, #52 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 61 2533 .loc 1 910 11 2534 016a 1A46 mov r2, r3 2535 016c 7B88 ldrh r3, [r7, #2] 2536 016e FFF7FEFF bl HAL_DMA_Start_IT 2537 0172 0346 mov r3, r0 2538 .loc 1 910 10 2539 0174 002B cmp r3, #0 2540 0176 01D0 beq .L155 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 2541 .loc 1 914 16 2542 0178 0123 movs r3, #1 2543 017a A8E0 b .L136 2544 .L155: 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare DMA request */ 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); 2545 .loc 1 917 7 2546 017c FB68 ldr r3, [r7, #12] 2547 017e 1B68 ldr r3, [r3] 2548 0180 DA68 ldr r2, [r3, #12] 2549 0182 FB68 ldr r3, [r7, #12] 2550 0184 1B68 ldr r3, [r3] 2551 0186 42F40072 orr r2, r2, #512 2552 018a DA60 str r2, [r3, #12] 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2553 .loc 1 918 7 2554 018c 4AE0 b .L156 2555 .L154: 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; 2556 .loc 1 924 17 2557 018e FB68 ldr r3, [r7, #12] 2558 0190 9B6A ldr r3, [r3, #40] 2559 .loc 1 924 52 2560 0192 514A ldr r2, .L163 2561 0194 DA63 str r2, [r3, #60] 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; 2562 .loc 1 925 17 2563 0196 FB68 ldr r3, [r7, #12] 2564 0198 9B6A ldr r3, [r3, #40] 2565 .loc 1 925 56 2566 019a 504A ldr r2, .L163+4 2567 019c 1A64 str r2, [r3, #64] 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; 2568 .loc 1 928 17 2569 019e FB68 ldr r3, [r7, #12] 2570 01a0 9B6A ldr r3, [r3, #40] 2571 .loc 1 928 53 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 62 2572 01a2 4F4A ldr r2, .L163+8 2573 01a4 DA64 str r2, [r3, #76] 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance-> 2574 .loc 1 931 11 2575 01a6 FB68 ldr r3, [r7, #12] 2576 01a8 986A ldr r0, [r3, #40] 2577 01aa 7968 ldr r1, [r7, #4] 2578 .loc 1 931 88 2579 01ac FB68 ldr r3, [r7, #12] 2580 01ae 1B68 ldr r3, [r3] 2581 .loc 1 931 83 2582 01b0 3833 adds r3, r3, #56 2583 .loc 1 931 11 2584 01b2 1A46 mov r2, r3 2585 01b4 7B88 ldrh r3, [r7, #2] 2586 01b6 FFF7FEFF bl HAL_DMA_Start_IT 2587 01ba 0346 mov r3, r0 2588 .loc 1 931 10 2589 01bc 002B cmp r3, #0 2590 01be 01D0 beq .L157 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 2591 .loc 1 935 16 2592 01c0 0123 movs r3, #1 2593 01c2 84E0 b .L136 2594 .L157: 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare DMA request */ 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); 2595 .loc 1 938 7 2596 01c4 FB68 ldr r3, [r7, #12] 2597 01c6 1B68 ldr r3, [r3] 2598 01c8 DA68 ldr r2, [r3, #12] 2599 01ca FB68 ldr r3, [r7, #12] 2600 01cc 1B68 ldr r3, [r3] 2601 01ce 42F48062 orr r2, r2, #1024 2602 01d2 DA60 str r2, [r3, #12] 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2603 .loc 1 939 7 2604 01d4 26E0 b .L156 2605 .L151: 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; 2606 .loc 1 945 17 2607 01d6 FB68 ldr r3, [r7, #12] 2608 01d8 DB6A ldr r3, [r3, #44] 2609 .loc 1 945 52 2610 01da 3F4A ldr r2, .L163 2611 01dc DA63 str r2, [r3, #60] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 63 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; 2612 .loc 1 946 17 2613 01de FB68 ldr r3, [r7, #12] 2614 01e0 DB6A ldr r3, [r3, #44] 2615 .loc 1 946 56 2616 01e2 3E4A ldr r2, .L163+4 2617 01e4 1A64 str r2, [r3, #64] 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; 2618 .loc 1 949 17 2619 01e6 FB68 ldr r3, [r7, #12] 2620 01e8 DB6A ldr r3, [r3, #44] 2621 .loc 1 949 53 2622 01ea 3D4A ldr r2, .L163+8 2623 01ec DA64 str r2, [r3, #76] 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance-> 2624 .loc 1 952 11 2625 01ee FB68 ldr r3, [r7, #12] 2626 01f0 D86A ldr r0, [r3, #44] 2627 01f2 7968 ldr r1, [r7, #4] 2628 .loc 1 952 88 2629 01f4 FB68 ldr r3, [r7, #12] 2630 01f6 1B68 ldr r3, [r3] 2631 .loc 1 952 83 2632 01f8 3C33 adds r3, r3, #60 2633 .loc 1 952 11 2634 01fa 1A46 mov r2, r3 2635 01fc 7B88 ldrh r3, [r7, #2] 2636 01fe FFF7FEFF bl HAL_DMA_Start_IT 2637 0202 0346 mov r3, r0 2638 .loc 1 952 10 2639 0204 002B cmp r3, #0 2640 0206 01D0 beq .L158 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 2641 .loc 1 956 16 2642 0208 0123 movs r3, #1 2643 020a 60E0 b .L136 2644 .L158: 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Output Compare DMA request */ 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); 2645 .loc 1 959 7 2646 020c FB68 ldr r3, [r7, #12] 2647 020e 1B68 ldr r3, [r3] 2648 0210 DA68 ldr r2, [r3, #12] 2649 0212 FB68 ldr r3, [r7, #12] 2650 0214 1B68 ldr r3, [r3] 2651 0216 42F40062 orr r2, r2, #2048 2652 021a DA60 str r2, [r3, #12] 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2653 .loc 1 960 7 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 64 2654 021c 02E0 b .L156 2655 .L152: 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 2656 .loc 1 964 14 2657 021e 0123 movs r3, #1 2658 0220 FB75 strb r3, [r7, #23] 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2659 .loc 1 965 7 2660 0222 00BF nop 2661 .L156: 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 2662 .loc 1 968 6 2663 0224 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 2664 0226 002B cmp r3, #0 2665 0228 50D1 bne .L159 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Capture compare channel N */ 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 2666 .loc 1 971 5 2667 022a FB68 ldr r3, [r7, #12] 2668 022c 1B68 ldr r3, [r3] 2669 022e 0422 movs r2, #4 2670 0230 B968 ldr r1, [r7, #8] 2671 0232 1846 mov r0, r3 2672 0234 FFF7FEFF bl TIM_CCxNChannelCmd 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 2673 .loc 1 974 5 2674 0238 FB68 ldr r3, [r7, #12] 2675 023a 1B68 ldr r3, [r3] 2676 023c 5A6C ldr r2, [r3, #68] 2677 023e FB68 ldr r3, [r7, #12] 2678 0240 1B68 ldr r3, [r3] 2679 0242 42F40042 orr r2, r2, #32768 2680 0246 5A64 str r2, [r3, #68] 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigge 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 2681 .loc 1 977 9 2682 0248 FB68 ldr r3, [r7, #12] 2683 024a 1B68 ldr r3, [r3] 2684 .loc 1 977 8 2685 024c 254A ldr r2, .L163+12 2686 024e 9342 cmp r3, r2 2687 0250 22D0 beq .L160 2688 .loc 1 977 9 discriminator 1 2689 0252 FB68 ldr r3, [r7, #12] 2690 0254 1B68 ldr r3, [r3] 2691 0256 B3F1804F cmp r3, #1073741824 2692 025a 1DD0 beq .L160 2693 .loc 1 977 9 is_stmt 0 discriminator 2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 65 2694 025c FB68 ldr r3, [r7, #12] 2695 025e 1B68 ldr r3, [r3] 2696 0260 214A ldr r2, .L163+16 2697 0262 9342 cmp r3, r2 2698 0264 18D0 beq .L160 2699 .loc 1 977 9 discriminator 3 2700 0266 FB68 ldr r3, [r7, #12] 2701 0268 1B68 ldr r3, [r3] 2702 026a 204A ldr r2, .L163+20 2703 026c 9342 cmp r3, r2 2704 026e 13D0 beq .L160 2705 .loc 1 977 9 discriminator 4 2706 0270 FB68 ldr r3, [r7, #12] 2707 0272 1B68 ldr r3, [r3] 2708 0274 1E4A ldr r2, .L163+24 2709 0276 9342 cmp r3, r2 2710 0278 0ED0 beq .L160 2711 .loc 1 977 9 discriminator 5 2712 027a FB68 ldr r3, [r7, #12] 2713 027c 1B68 ldr r3, [r3] 2714 027e 1D4A ldr r2, .L163+28 2715 0280 9342 cmp r3, r2 2716 0282 09D0 beq .L160 2717 .loc 1 977 9 discriminator 6 2718 0284 FB68 ldr r3, [r7, #12] 2719 0286 1B68 ldr r3, [r3] 2720 0288 1B4A ldr r2, .L163+32 2721 028a 9342 cmp r3, r2 2722 028c 04D0 beq .L160 2723 .loc 1 977 9 discriminator 7 2724 028e FB68 ldr r3, [r7, #12] 2725 0290 1B68 ldr r3, [r3] 2726 0292 1A4A ldr r2, .L163+36 2727 0294 9342 cmp r3, r2 2728 0296 11D1 bne .L161 2729 .L160: 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 2730 .loc 1 979 21 is_stmt 1 2731 0298 FB68 ldr r3, [r7, #12] 2732 029a 1B68 ldr r3, [r3] 2733 .loc 1 979 31 2734 029c 9B68 ldr r3, [r3, #8] 2735 .loc 1 979 15 2736 029e 03F00703 and r3, r3, #7 2737 02a2 3B61 str r3, [r7, #16] 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 2738 .loc 1 980 10 2739 02a4 3B69 ldr r3, [r7, #16] 2740 02a6 062B cmp r3, #6 2741 02a8 10D0 beq .L159 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 2742 .loc 1 982 9 2743 02aa FB68 ldr r3, [r7, #12] 2744 02ac 1B68 ldr r3, [r3] 2745 02ae 1A68 ldr r2, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 66 2746 02b0 FB68 ldr r3, [r7, #12] 2747 02b2 1B68 ldr r3, [r3] 2748 02b4 42F00102 orr r2, r2, #1 2749 02b8 1A60 str r2, [r3] 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 2750 .loc 1 980 10 2751 02ba 07E0 b .L159 2752 .L161: 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 2753 .loc 1 987 7 2754 02bc FB68 ldr r3, [r7, #12] 2755 02be 1B68 ldr r3, [r3] 2756 02c0 1A68 ldr r2, [r3] 2757 02c2 FB68 ldr r3, [r7, #12] 2758 02c4 1B68 ldr r3, [r3] 2759 02c6 42F00102 orr r2, r2, #1 2760 02ca 1A60 str r2, [r3] 2761 .L159: 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 2762 .loc 1 992 10 2763 02cc FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 2764 .L136: 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2765 .loc 1 993 1 2766 02ce 1846 mov r0, r3 2767 02d0 1837 adds r7, r7, #24 2768 .LCFI75: 2769 .cfi_def_cfa_offset 8 2770 02d2 BD46 mov sp, r7 2771 .LCFI76: 2772 .cfi_def_cfa_register 13 2773 @ sp needed 2774 02d4 80BD pop {r7, pc} 2775 .L164: 2776 02d6 00BF .align 2 2777 .L163: 2778 02d8 00000000 .word TIM_DMADelayPulseNCplt 2779 02dc 00000000 .word TIM_DMADelayPulseHalfCplt 2780 02e0 00000000 .word TIM_DMAErrorCCxN 2781 02e4 00000140 .word 1073807360 2782 02e8 00040040 .word 1073742848 2783 02ec 00080040 .word 1073743872 2784 02f0 000C0040 .word 1073744896 2785 02f4 00040140 .word 1073808384 2786 02f8 00400140 .word 1073823744 2787 02fc 00180040 .word 1073747968 2788 .cfi_endproc 2789 .LFE249: 2791 .section .text.HAL_TIMEx_OCN_Stop_DMA,"ax",%progbits ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 67 2792 .align 1 2793 .global HAL_TIMEx_OCN_Stop_DMA 2794 .syntax unified 2795 .thumb 2796 .thumb_func 2798 HAL_TIMEx_OCN_Stop_DMA: 2799 .LFB250: 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM Output Compare signal generation in DMA mode 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * on the complementary output. 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Output Compare handle 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2800 .loc 1 1007 1 2801 .cfi_startproc 2802 @ args = 0, pretend = 0, frame = 16 2803 @ frame_needed = 1, uses_anonymous_args = 0 2804 0000 80B5 push {r7, lr} 2805 .LCFI77: 2806 .cfi_def_cfa_offset 8 2807 .cfi_offset 7, -8 2808 .cfi_offset 14, -4 2809 0002 84B0 sub sp, sp, #16 2810 .LCFI78: 2811 .cfi_def_cfa_offset 24 2812 0004 00AF add r7, sp, #0 2813 .LCFI79: 2814 .cfi_def_cfa_register 7 2815 0006 7860 str r0, [r7, #4] 2816 0008 3960 str r1, [r7] 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 2817 .loc 1 1008 21 2818 000a 0023 movs r3, #0 2819 000c FB73 strb r3, [r7, #15] 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 2820 .loc 1 1013 3 2821 000e 3B68 ldr r3, [r7] 2822 0010 082B cmp r3, #8 2823 0012 25D0 beq .L166 2824 0014 3B68 ldr r3, [r7] 2825 0016 082B cmp r3, #8 2826 0018 30D8 bhi .L167 2827 001a 3B68 ldr r3, [r7] 2828 001c 002B cmp r3, #0 2829 001e 03D0 beq .L168 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 68 2830 0020 3B68 ldr r3, [r7] 2831 0022 042B cmp r3, #4 2832 0024 0ED0 beq .L169 2833 0026 29E0 b .L167 2834 .L168: 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare DMA request */ 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); 2835 .loc 1 1018 7 2836 0028 7B68 ldr r3, [r7, #4] 2837 002a 1B68 ldr r3, [r3] 2838 002c DA68 ldr r2, [r3, #12] 2839 002e 7B68 ldr r3, [r7, #4] 2840 0030 1B68 ldr r3, [r3] 2841 0032 22F40072 bic r2, r2, #512 2842 0036 DA60 str r2, [r3, #12] 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); 2843 .loc 1 1019 13 2844 0038 7B68 ldr r3, [r7, #4] 2845 003a 5B6A ldr r3, [r3, #36] 2846 003c 1846 mov r0, r3 2847 003e FFF7FEFF bl HAL_DMA_Abort_IT 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2848 .loc 1 1020 7 2849 0042 1EE0 b .L170 2850 .L169: 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare DMA request */ 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); 2851 .loc 1 1026 7 2852 0044 7B68 ldr r3, [r7, #4] 2853 0046 1B68 ldr r3, [r3] 2854 0048 DA68 ldr r2, [r3, #12] 2855 004a 7B68 ldr r3, [r7, #4] 2856 004c 1B68 ldr r3, [r3] 2857 004e 22F48062 bic r2, r2, #1024 2858 0052 DA60 str r2, [r3, #12] 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); 2859 .loc 1 1027 13 2860 0054 7B68 ldr r3, [r7, #4] 2861 0056 9B6A ldr r3, [r3, #40] 2862 0058 1846 mov r0, r3 2863 005a FFF7FEFF bl HAL_DMA_Abort_IT 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2864 .loc 1 1028 7 2865 005e 10E0 b .L170 2866 .L166: 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Output Compare DMA request */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 69 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); 2867 .loc 1 1034 7 2868 0060 7B68 ldr r3, [r7, #4] 2869 0062 1B68 ldr r3, [r3] 2870 0064 DA68 ldr r2, [r3, #12] 2871 0066 7B68 ldr r3, [r7, #4] 2872 0068 1B68 ldr r3, [r3] 2873 006a 22F40062 bic r2, r2, #2048 2874 006e DA60 str r2, [r3, #12] 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); 2875 .loc 1 1035 13 2876 0070 7B68 ldr r3, [r7, #4] 2877 0072 DB6A ldr r3, [r3, #44] 2878 0074 1846 mov r0, r3 2879 0076 FFF7FEFF bl HAL_DMA_Abort_IT 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2880 .loc 1 1036 7 2881 007a 02E0 b .L170 2882 .L167: 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 2883 .loc 1 1040 14 2884 007c 0123 movs r3, #1 2885 007e FB73 strb r3, [r7, #15] 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 2886 .loc 1 1041 7 2887 0080 00BF nop 2888 .L170: 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 2889 .loc 1 1044 6 2890 0082 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 2891 0084 002B cmp r3, #0 2892 0086 52D1 bne .L171 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Capture compare channel N */ 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 2893 .loc 1 1047 5 2894 0088 7B68 ldr r3, [r7, #4] 2895 008a 1B68 ldr r3, [r3] 2896 008c 0022 movs r2, #0 2897 008e 3968 ldr r1, [r7] 2898 0090 1846 mov r0, r3 2899 0092 FFF7FEFF bl TIM_CCxNChannelCmd 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 2900 .loc 1 1050 5 2901 0096 7B68 ldr r3, [r7, #4] 2902 0098 1B68 ldr r3, [r3] 2903 009a 1A6A ldr r2, [r3, #32] 2904 009c 41F21113 movw r3, #4369 2905 00a0 1340 ands r3, r3, r2 2906 00a2 002B cmp r3, #0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 70 2907 00a4 0FD1 bne .L172 2908 .loc 1 1050 5 is_stmt 0 discriminator 1 2909 00a6 7B68 ldr r3, [r7, #4] 2910 00a8 1B68 ldr r3, [r3] 2911 00aa 1A6A ldr r2, [r3, #32] 2912 00ac 40F24443 movw r3, #1092 2913 00b0 1340 ands r3, r3, r2 2914 00b2 002B cmp r3, #0 2915 00b4 07D1 bne .L172 2916 .loc 1 1050 5 discriminator 2 2917 00b6 7B68 ldr r3, [r7, #4] 2918 00b8 1B68 ldr r3, [r3] 2919 00ba 5A6C ldr r2, [r3, #68] 2920 00bc 7B68 ldr r3, [r7, #4] 2921 00be 1B68 ldr r3, [r3] 2922 00c0 22F40042 bic r2, r2, #32768 2923 00c4 5A64 str r2, [r3, #68] 2924 .L172: 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 2925 .loc 1 1053 5 is_stmt 1 2926 00c6 7B68 ldr r3, [r7, #4] 2927 00c8 1B68 ldr r3, [r3] 2928 00ca 1A6A ldr r2, [r3, #32] 2929 00cc 41F21113 movw r3, #4369 2930 00d0 1340 ands r3, r3, r2 2931 00d2 002B cmp r3, #0 2932 00d4 0FD1 bne .L173 2933 .loc 1 1053 5 is_stmt 0 discriminator 1 2934 00d6 7B68 ldr r3, [r7, #4] 2935 00d8 1B68 ldr r3, [r3] 2936 00da 1A6A ldr r2, [r3, #32] 2937 00dc 40F24443 movw r3, #1092 2938 00e0 1340 ands r3, r3, r2 2939 00e2 002B cmp r3, #0 2940 00e4 07D1 bne .L173 2941 .loc 1 1053 5 discriminator 2 2942 00e6 7B68 ldr r3, [r7, #4] 2943 00e8 1B68 ldr r3, [r3] 2944 00ea 1A68 ldr r2, [r3] 2945 00ec 7B68 ldr r3, [r7, #4] 2946 00ee 1B68 ldr r3, [r3] 2947 00f0 22F00102 bic r2, r2, #1 2948 00f4 1A60 str r2, [r3] 2949 .L173: 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 2950 .loc 1 1056 5 is_stmt 1 2951 00f6 3B68 ldr r3, [r7] 2952 00f8 002B cmp r3, #0 2953 00fa 04D1 bne .L174 2954 .loc 1 1056 5 is_stmt 0 discriminator 1 2955 00fc 7B68 ldr r3, [r7, #4] 2956 00fe 0122 movs r2, #1 2957 0100 83F84220 strb r2, [r3, #66] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 71 2958 0104 13E0 b .L171 2959 .L174: 2960 .loc 1 1056 5 discriminator 2 2961 0106 3B68 ldr r3, [r7] 2962 0108 042B cmp r3, #4 2963 010a 04D1 bne .L175 2964 .loc 1 1056 5 discriminator 3 2965 010c 7B68 ldr r3, [r7, #4] 2966 010e 0122 movs r2, #1 2967 0110 83F84320 strb r2, [r3, #67] 2968 0114 0BE0 b .L171 2969 .L175: 2970 .loc 1 1056 5 discriminator 4 2971 0116 3B68 ldr r3, [r7] 2972 0118 082B cmp r3, #8 2973 011a 04D1 bne .L177 2974 .loc 1 1056 5 discriminator 6 2975 011c 7B68 ldr r3, [r7, #4] 2976 011e 0122 movs r2, #1 2977 0120 83F84420 strb r2, [r3, #68] 2978 0124 03E0 b .L171 2979 .L177: 2980 .loc 1 1056 5 discriminator 7 2981 0126 7B68 ldr r3, [r7, #4] 2982 0128 0122 movs r2, #1 2983 012a 83F84520 strb r2, [r3, #69] 2984 .L171: 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 2985 .loc 1 1060 10 is_stmt 1 2986 012e FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2987 .loc 1 1061 1 2988 0130 1846 mov r0, r3 2989 0132 1037 adds r7, r7, #16 2990 .LCFI80: 2991 .cfi_def_cfa_offset 8 2992 0134 BD46 mov sp, r7 2993 .LCFI81: 2994 .cfi_def_cfa_register 13 2995 @ sp needed 2996 0136 80BD pop {r7, pc} 2997 .cfi_endproc 2998 .LFE250: 3000 .section .text.HAL_TIMEx_PWMN_Start,"ax",%progbits 3001 .align 1 3002 .global HAL_TIMEx_PWMN_Start 3003 .syntax unified 3004 .thumb 3005 .thumb_func 3007 HAL_TIMEx_PWMN_Start: 3008 .LFB251: 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 72 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group3 Extended Timer Complementary PWM functions 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Timer Complementary PWM functions 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Timer Complementary PWM functions ##### 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides functions allowing to: 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary PWM. 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary PWM. 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary PWM and enable interrupts. 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary PWM and disable interrupts. 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary PWM and enable DMA transfers. 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary PWM and disable DMA transfers. 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Input Capture measurement. 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Input Capture. 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Input Capture and enable interrupts. 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Input Capture and disable interrupts. 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary Input Capture and enable DMA transfers. 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary Input Capture and disable DMA transfers. 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary One Pulse generation. 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary One Pulse. 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary One Pulse and enable interrupts. 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary One Pulse and disable interrupts. 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the PWM signal generation on the complementary output. 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be enabled 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 3009 .loc 1 1108 1 3010 .cfi_startproc 3011 @ args = 0, pretend = 0, frame = 16 3012 @ frame_needed = 1, uses_anonymous_args = 0 3013 0000 80B5 push {r7, lr} 3014 .LCFI82: 3015 .cfi_def_cfa_offset 8 3016 .cfi_offset 7, -8 3017 .cfi_offset 14, -4 3018 0002 84B0 sub sp, sp, #16 3019 .LCFI83: 3020 .cfi_def_cfa_offset 24 3021 0004 00AF add r7, sp, #0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 73 3022 .LCFI84: 3023 .cfi_def_cfa_register 7 3024 0006 7860 str r0, [r7, #4] 3025 0008 3960 str r1, [r7] 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM complementary channel state */ 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) 3026 .loc 1 1115 46 3027 000a 3B68 ldr r3, [r7] 3028 000c 002B cmp r3, #0 3029 000e 09D1 bne .L181 3030 .loc 1 1115 7 discriminator 1 3031 0010 7B68 ldr r3, [r7, #4] 3032 0012 93F84230 ldrb r3, [r3, #66] 3033 0016 DBB2 uxtb r3, r3 3034 .loc 1 1115 46 discriminator 1 3035 0018 012B cmp r3, #1 3036 001a 14BF ite ne 3037 001c 0123 movne r3, #1 3038 001e 0023 moveq r3, #0 3039 0020 DBB2 uxtb r3, r3 3040 0022 22E0 b .L182 3041 .L181: 3042 .loc 1 1115 46 is_stmt 0 discriminator 2 3043 0024 3B68 ldr r3, [r7] 3044 0026 042B cmp r3, #4 3045 0028 09D1 bne .L183 3046 .loc 1 1115 7 is_stmt 1 discriminator 4 3047 002a 7B68 ldr r3, [r7, #4] 3048 002c 93F84330 ldrb r3, [r3, #67] 3049 0030 DBB2 uxtb r3, r3 3050 .loc 1 1115 46 discriminator 4 3051 0032 012B cmp r3, #1 3052 0034 14BF ite ne 3053 0036 0123 movne r3, #1 3054 0038 0023 moveq r3, #0 3055 003a DBB2 uxtb r3, r3 3056 003c 15E0 b .L182 3057 .L183: 3058 .loc 1 1115 46 is_stmt 0 discriminator 5 3059 003e 3B68 ldr r3, [r7] 3060 0040 082B cmp r3, #8 3061 0042 09D1 bne .L185 3062 .loc 1 1115 7 is_stmt 1 discriminator 7 3063 0044 7B68 ldr r3, [r7, #4] 3064 0046 93F84430 ldrb r3, [r3, #68] 3065 004a DBB2 uxtb r3, r3 3066 .loc 1 1115 46 discriminator 7 3067 004c 012B cmp r3, #1 3068 004e 14BF ite ne 3069 0050 0123 movne r3, #1 3070 0052 0023 moveq r3, #0 3071 0054 DBB2 uxtb r3, r3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 74 3072 0056 08E0 b .L182 3073 .L185: 3074 .loc 1 1115 7 discriminator 8 3075 0058 7B68 ldr r3, [r7, #4] 3076 005a 93F84530 ldrb r3, [r3, #69] 3077 005e DBB2 uxtb r3, r3 3078 .loc 1 1115 46 discriminator 8 3079 0060 012B cmp r3, #1 3080 0062 14BF ite ne 3081 0064 0123 movne r3, #1 3082 0066 0023 moveq r3, #0 3083 0068 DBB2 uxtb r3, r3 3084 .L182: 3085 .loc 1 1115 6 discriminator 12 3086 006a 002B cmp r3, #0 3087 006c 01D0 beq .L187 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 3088 .loc 1 1117 12 3089 006e 0123 movs r3, #1 3090 0070 6DE0 b .L188 3091 .L187: 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 3092 .loc 1 1121 3 3093 0072 3B68 ldr r3, [r7] 3094 0074 002B cmp r3, #0 3095 0076 04D1 bne .L189 3096 .loc 1 1121 3 is_stmt 0 discriminator 1 3097 0078 7B68 ldr r3, [r7, #4] 3098 007a 0222 movs r2, #2 3099 007c 83F84220 strb r2, [r3, #66] 3100 0080 13E0 b .L190 3101 .L189: 3102 .loc 1 1121 3 discriminator 2 3103 0082 3B68 ldr r3, [r7] 3104 0084 042B cmp r3, #4 3105 0086 04D1 bne .L191 3106 .loc 1 1121 3 discriminator 3 3107 0088 7B68 ldr r3, [r7, #4] 3108 008a 0222 movs r2, #2 3109 008c 83F84320 strb r2, [r3, #67] 3110 0090 0BE0 b .L190 3111 .L191: 3112 .loc 1 1121 3 discriminator 4 3113 0092 3B68 ldr r3, [r7] 3114 0094 082B cmp r3, #8 3115 0096 04D1 bne .L193 3116 .loc 1 1121 3 discriminator 6 3117 0098 7B68 ldr r3, [r7, #4] 3118 009a 0222 movs r2, #2 3119 009c 83F84420 strb r2, [r3, #68] 3120 00a0 03E0 b .L190 3121 .L193: 3122 .loc 1 1121 3 discriminator 7 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 75 3123 00a2 7B68 ldr r3, [r7, #4] 3124 00a4 0222 movs r2, #2 3125 00a6 83F84520 strb r2, [r3, #69] 3126 .L190: 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the complementary PWM output */ 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 3127 .loc 1 1124 3 is_stmt 1 3128 00aa 7B68 ldr r3, [r7, #4] 3129 00ac 1B68 ldr r3, [r3] 3130 00ae 0422 movs r2, #4 3131 00b0 3968 ldr r1, [r7] 3132 00b2 1846 mov r0, r3 3133 00b4 FFF7FEFF bl TIM_CCxNChannelCmd 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 3134 .loc 1 1127 3 3135 00b8 7B68 ldr r3, [r7, #4] 3136 00ba 1B68 ldr r3, [r3] 3137 00bc 5A6C ldr r2, [r3, #68] 3138 00be 7B68 ldr r3, [r7, #4] 3139 00c0 1B68 ldr r3, [r3] 3140 00c2 42F40042 orr r2, r2, #32768 3141 00c6 5A64 str r2, [r3, #68] 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 3142 .loc 1 1130 7 3143 00c8 7B68 ldr r3, [r7, #4] 3144 00ca 1B68 ldr r3, [r3] 3145 .loc 1 1130 6 3146 00cc 224A ldr r2, .L199 3147 00ce 9342 cmp r3, r2 3148 00d0 22D0 beq .L195 3149 .loc 1 1130 7 discriminator 1 3150 00d2 7B68 ldr r3, [r7, #4] 3151 00d4 1B68 ldr r3, [r3] 3152 00d6 B3F1804F cmp r3, #1073741824 3153 00da 1DD0 beq .L195 3154 .loc 1 1130 7 is_stmt 0 discriminator 2 3155 00dc 7B68 ldr r3, [r7, #4] 3156 00de 1B68 ldr r3, [r3] 3157 00e0 1E4A ldr r2, .L199+4 3158 00e2 9342 cmp r3, r2 3159 00e4 18D0 beq .L195 3160 .loc 1 1130 7 discriminator 3 3161 00e6 7B68 ldr r3, [r7, #4] 3162 00e8 1B68 ldr r3, [r3] 3163 00ea 1D4A ldr r2, .L199+8 3164 00ec 9342 cmp r3, r2 3165 00ee 13D0 beq .L195 3166 .loc 1 1130 7 discriminator 4 3167 00f0 7B68 ldr r3, [r7, #4] 3168 00f2 1B68 ldr r3, [r3] 3169 00f4 1B4A ldr r2, .L199+12 3170 00f6 9342 cmp r3, r2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 76 3171 00f8 0ED0 beq .L195 3172 .loc 1 1130 7 discriminator 5 3173 00fa 7B68 ldr r3, [r7, #4] 3174 00fc 1B68 ldr r3, [r3] 3175 00fe 1A4A ldr r2, .L199+16 3176 0100 9342 cmp r3, r2 3177 0102 09D0 beq .L195 3178 .loc 1 1130 7 discriminator 6 3179 0104 7B68 ldr r3, [r7, #4] 3180 0106 1B68 ldr r3, [r3] 3181 0108 184A ldr r2, .L199+20 3182 010a 9342 cmp r3, r2 3183 010c 04D0 beq .L195 3184 .loc 1 1130 7 discriminator 7 3185 010e 7B68 ldr r3, [r7, #4] 3186 0110 1B68 ldr r3, [r3] 3187 0112 174A ldr r2, .L199+24 3188 0114 9342 cmp r3, r2 3189 0116 11D1 bne .L196 3190 .L195: 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 3191 .loc 1 1132 19 is_stmt 1 3192 0118 7B68 ldr r3, [r7, #4] 3193 011a 1B68 ldr r3, [r3] 3194 .loc 1 1132 29 3195 011c 9B68 ldr r3, [r3, #8] 3196 .loc 1 1132 13 3197 011e 03F00703 and r3, r3, #7 3198 0122 FB60 str r3, [r7, #12] 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 3199 .loc 1 1133 8 3200 0124 FB68 ldr r3, [r7, #12] 3201 0126 062B cmp r3, #6 3202 0128 10D0 beq .L198 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 3203 .loc 1 1135 7 3204 012a 7B68 ldr r3, [r7, #4] 3205 012c 1B68 ldr r3, [r3] 3206 012e 1A68 ldr r2, [r3] 3207 0130 7B68 ldr r3, [r7, #4] 3208 0132 1B68 ldr r3, [r3] 3209 0134 42F00102 orr r2, r2, #1 3210 0138 1A60 str r2, [r3] 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 3211 .loc 1 1133 8 3212 013a 07E0 b .L198 3213 .L196: 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 3214 .loc 1 1140 5 3215 013c 7B68 ldr r3, [r7, #4] 3216 013e 1B68 ldr r3, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 77 3217 0140 1A68 ldr r2, [r3] 3218 0142 7B68 ldr r3, [r7, #4] 3219 0144 1B68 ldr r3, [r3] 3220 0146 42F00102 orr r2, r2, #1 3221 014a 1A60 str r2, [r3] 3222 .L198: 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 3223 .loc 1 1144 10 3224 014c 0023 movs r3, #0 3225 .L188: 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 3226 .loc 1 1145 1 3227 014e 1846 mov r0, r3 3228 0150 1037 adds r7, r7, #16 3229 .LCFI85: 3230 .cfi_def_cfa_offset 8 3231 0152 BD46 mov sp, r7 3232 .LCFI86: 3233 .cfi_def_cfa_register 13 3234 @ sp needed 3235 0154 80BD pop {r7, pc} 3236 .L200: 3237 0156 00BF .align 2 3238 .L199: 3239 0158 00000140 .word 1073807360 3240 015c 00040040 .word 1073742848 3241 0160 00080040 .word 1073743872 3242 0164 000C0040 .word 1073744896 3243 0168 00040140 .word 1073808384 3244 016c 00400140 .word 1073823744 3245 0170 00180040 .word 1073747968 3246 .cfi_endproc 3247 .LFE251: 3249 .section .text.HAL_TIMEx_PWMN_Stop,"ax",%progbits 3250 .align 1 3251 .global HAL_TIMEx_PWMN_Stop 3252 .syntax unified 3253 .thumb 3254 .thumb_func 3256 HAL_TIMEx_PWMN_Stop: 3257 .LFB252: 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the PWM signal generation on the complementary output. 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 78 3258 .loc 1 1158 1 3259 .cfi_startproc 3260 @ args = 0, pretend = 0, frame = 8 3261 @ frame_needed = 1, uses_anonymous_args = 0 3262 0000 80B5 push {r7, lr} 3263 .LCFI87: 3264 .cfi_def_cfa_offset 8 3265 .cfi_offset 7, -8 3266 .cfi_offset 14, -4 3267 0002 82B0 sub sp, sp, #8 3268 .LCFI88: 3269 .cfi_def_cfa_offset 16 3270 0004 00AF add r7, sp, #0 3271 .LCFI89: 3272 .cfi_def_cfa_register 7 3273 0006 7860 str r0, [r7, #4] 3274 0008 3960 str r1, [r7] 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the complementary PWM output */ 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 3275 .loc 1 1163 3 3276 000a 7B68 ldr r3, [r7, #4] 3277 000c 1B68 ldr r3, [r3] 3278 000e 0022 movs r2, #0 3279 0010 3968 ldr r1, [r7] 3280 0012 1846 mov r0, r3 3281 0014 FFF7FEFF bl TIM_CCxNChannelCmd 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 3282 .loc 1 1166 3 3283 0018 7B68 ldr r3, [r7, #4] 3284 001a 1B68 ldr r3, [r3] 3285 001c 1A6A ldr r2, [r3, #32] 3286 001e 41F21113 movw r3, #4369 3287 0022 1340 ands r3, r3, r2 3288 0024 002B cmp r3, #0 3289 0026 0FD1 bne .L202 3290 .loc 1 1166 3 is_stmt 0 discriminator 1 3291 0028 7B68 ldr r3, [r7, #4] 3292 002a 1B68 ldr r3, [r3] 3293 002c 1A6A ldr r2, [r3, #32] 3294 002e 40F24443 movw r3, #1092 3295 0032 1340 ands r3, r3, r2 3296 0034 002B cmp r3, #0 3297 0036 07D1 bne .L202 3298 .loc 1 1166 3 discriminator 2 3299 0038 7B68 ldr r3, [r7, #4] 3300 003a 1B68 ldr r3, [r3] 3301 003c 5A6C ldr r2, [r3, #68] 3302 003e 7B68 ldr r3, [r7, #4] 3303 0040 1B68 ldr r3, [r3] 3304 0042 22F40042 bic r2, r2, #32768 3305 0046 5A64 str r2, [r3, #68] 3306 .L202: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 79 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 3307 .loc 1 1169 3 is_stmt 1 3308 0048 7B68 ldr r3, [r7, #4] 3309 004a 1B68 ldr r3, [r3] 3310 004c 1A6A ldr r2, [r3, #32] 3311 004e 41F21113 movw r3, #4369 3312 0052 1340 ands r3, r3, r2 3313 0054 002B cmp r3, #0 3314 0056 0FD1 bne .L203 3315 .loc 1 1169 3 is_stmt 0 discriminator 1 3316 0058 7B68 ldr r3, [r7, #4] 3317 005a 1B68 ldr r3, [r3] 3318 005c 1A6A ldr r2, [r3, #32] 3319 005e 40F24443 movw r3, #1092 3320 0062 1340 ands r3, r3, r2 3321 0064 002B cmp r3, #0 3322 0066 07D1 bne .L203 3323 .loc 1 1169 3 discriminator 2 3324 0068 7B68 ldr r3, [r7, #4] 3325 006a 1B68 ldr r3, [r3] 3326 006c 1A68 ldr r2, [r3] 3327 006e 7B68 ldr r3, [r7, #4] 3328 0070 1B68 ldr r3, [r3] 3329 0072 22F00102 bic r2, r2, #1 3330 0076 1A60 str r2, [r3] 3331 .L203: 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 3332 .loc 1 1172 3 is_stmt 1 3333 0078 3B68 ldr r3, [r7] 3334 007a 002B cmp r3, #0 3335 007c 04D1 bne .L204 3336 .loc 1 1172 3 is_stmt 0 discriminator 1 3337 007e 7B68 ldr r3, [r7, #4] 3338 0080 0122 movs r2, #1 3339 0082 83F84220 strb r2, [r3, #66] 3340 0086 13E0 b .L205 3341 .L204: 3342 .loc 1 1172 3 discriminator 2 3343 0088 3B68 ldr r3, [r7] 3344 008a 042B cmp r3, #4 3345 008c 04D1 bne .L206 3346 .loc 1 1172 3 discriminator 3 3347 008e 7B68 ldr r3, [r7, #4] 3348 0090 0122 movs r2, #1 3349 0092 83F84320 strb r2, [r3, #67] 3350 0096 0BE0 b .L205 3351 .L206: 3352 .loc 1 1172 3 discriminator 4 3353 0098 3B68 ldr r3, [r7] 3354 009a 082B cmp r3, #8 3355 009c 04D1 bne .L208 3356 .loc 1 1172 3 discriminator 6 3357 009e 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 80 3358 00a0 0122 movs r2, #1 3359 00a2 83F84420 strb r2, [r3, #68] 3360 00a6 03E0 b .L205 3361 .L208: 3362 .loc 1 1172 3 discriminator 7 3363 00a8 7B68 ldr r3, [r7, #4] 3364 00aa 0122 movs r2, #1 3365 00ac 83F84520 strb r2, [r3, #69] 3366 .L205: 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 3367 .loc 1 1175 10 is_stmt 1 3368 00b0 0023 movs r3, #0 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 3369 .loc 1 1176 1 3370 00b2 1846 mov r0, r3 3371 00b4 0837 adds r7, r7, #8 3372 .LCFI90: 3373 .cfi_def_cfa_offset 8 3374 00b6 BD46 mov sp, r7 3375 .LCFI91: 3376 .cfi_def_cfa_register 13 3377 @ sp needed 3378 00b8 80BD pop {r7, pc} 3379 .cfi_endproc 3380 .LFE252: 3382 .section .text.HAL_TIMEx_PWMN_Start_IT,"ax",%progbits 3383 .align 1 3384 .global HAL_TIMEx_PWMN_Start_IT 3385 .syntax unified 3386 .thumb 3387 .thumb_func 3389 HAL_TIMEx_PWMN_Start_IT: 3390 .LFB253: 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the PWM signal generation in interrupt mode on the 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * complementary output. 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 3391 .loc 1 1190 1 3392 .cfi_startproc 3393 @ args = 0, pretend = 0, frame = 16 3394 @ frame_needed = 1, uses_anonymous_args = 0 3395 0000 80B5 push {r7, lr} 3396 .LCFI92: 3397 .cfi_def_cfa_offset 8 3398 .cfi_offset 7, -8 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 81 3399 .cfi_offset 14, -4 3400 0002 84B0 sub sp, sp, #16 3401 .LCFI93: 3402 .cfi_def_cfa_offset 24 3403 0004 00AF add r7, sp, #0 3404 .LCFI94: 3405 .cfi_def_cfa_register 7 3406 0006 7860 str r0, [r7, #4] 3407 0008 3960 str r1, [r7] 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 3408 .loc 1 1191 21 3409 000a 0023 movs r3, #0 3410 000c FB73 strb r3, [r7, #15] 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM complementary channel state */ 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) 3411 .loc 1 1198 46 3412 000e 3B68 ldr r3, [r7] 3413 0010 002B cmp r3, #0 3414 0012 09D1 bne .L212 3415 .loc 1 1198 7 discriminator 1 3416 0014 7B68 ldr r3, [r7, #4] 3417 0016 93F84230 ldrb r3, [r3, #66] 3418 001a DBB2 uxtb r3, r3 3419 .loc 1 1198 46 discriminator 1 3420 001c 012B cmp r3, #1 3421 001e 14BF ite ne 3422 0020 0123 movne r3, #1 3423 0022 0023 moveq r3, #0 3424 0024 DBB2 uxtb r3, r3 3425 0026 22E0 b .L213 3426 .L212: 3427 .loc 1 1198 46 is_stmt 0 discriminator 2 3428 0028 3B68 ldr r3, [r7] 3429 002a 042B cmp r3, #4 3430 002c 09D1 bne .L214 3431 .loc 1 1198 7 is_stmt 1 discriminator 4 3432 002e 7B68 ldr r3, [r7, #4] 3433 0030 93F84330 ldrb r3, [r3, #67] 3434 0034 DBB2 uxtb r3, r3 3435 .loc 1 1198 46 discriminator 4 3436 0036 012B cmp r3, #1 3437 0038 14BF ite ne 3438 003a 0123 movne r3, #1 3439 003c 0023 moveq r3, #0 3440 003e DBB2 uxtb r3, r3 3441 0040 15E0 b .L213 3442 .L214: 3443 .loc 1 1198 46 is_stmt 0 discriminator 5 3444 0042 3B68 ldr r3, [r7] 3445 0044 082B cmp r3, #8 3446 0046 09D1 bne .L216 3447 .loc 1 1198 7 is_stmt 1 discriminator 7 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 82 3448 0048 7B68 ldr r3, [r7, #4] 3449 004a 93F84430 ldrb r3, [r3, #68] 3450 004e DBB2 uxtb r3, r3 3451 .loc 1 1198 46 discriminator 7 3452 0050 012B cmp r3, #1 3453 0052 14BF ite ne 3454 0054 0123 movne r3, #1 3455 0056 0023 moveq r3, #0 3456 0058 DBB2 uxtb r3, r3 3457 005a 08E0 b .L213 3458 .L216: 3459 .loc 1 1198 7 discriminator 8 3460 005c 7B68 ldr r3, [r7, #4] 3461 005e 93F84530 ldrb r3, [r3, #69] 3462 0062 DBB2 uxtb r3, r3 3463 .loc 1 1198 46 discriminator 8 3464 0064 012B cmp r3, #1 3465 0066 14BF ite ne 3466 0068 0123 movne r3, #1 3467 006a 0023 moveq r3, #0 3468 006c DBB2 uxtb r3, r3 3469 .L213: 3470 .loc 1 1198 6 discriminator 12 3471 006e 002B cmp r3, #0 3472 0070 01D0 beq .L218 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 3473 .loc 1 1200 12 3474 0072 0123 movs r3, #1 3475 0074 A3E0 b .L219 3476 .L218: 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 3477 .loc 1 1204 3 3478 0076 3B68 ldr r3, [r7] 3479 0078 002B cmp r3, #0 3480 007a 04D1 bne .L220 3481 .loc 1 1204 3 is_stmt 0 discriminator 1 3482 007c 7B68 ldr r3, [r7, #4] 3483 007e 0222 movs r2, #2 3484 0080 83F84220 strb r2, [r3, #66] 3485 0084 13E0 b .L221 3486 .L220: 3487 .loc 1 1204 3 discriminator 2 3488 0086 3B68 ldr r3, [r7] 3489 0088 042B cmp r3, #4 3490 008a 04D1 bne .L222 3491 .loc 1 1204 3 discriminator 3 3492 008c 7B68 ldr r3, [r7, #4] 3493 008e 0222 movs r2, #2 3494 0090 83F84320 strb r2, [r3, #67] 3495 0094 0BE0 b .L221 3496 .L222: 3497 .loc 1 1204 3 discriminator 4 3498 0096 3B68 ldr r3, [r7] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 83 3499 0098 082B cmp r3, #8 3500 009a 04D1 bne .L224 3501 .loc 1 1204 3 discriminator 6 3502 009c 7B68 ldr r3, [r7, #4] 3503 009e 0222 movs r2, #2 3504 00a0 83F84420 strb r2, [r3, #68] 3505 00a4 03E0 b .L221 3506 .L224: 3507 .loc 1 1204 3 discriminator 7 3508 00a6 7B68 ldr r3, [r7, #4] 3509 00a8 0222 movs r2, #2 3510 00aa 83F84520 strb r2, [r3, #69] 3511 .L221: 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 3512 .loc 1 1206 3 is_stmt 1 3513 00ae 3B68 ldr r3, [r7] 3514 00b0 082B cmp r3, #8 3515 00b2 1BD0 beq .L226 3516 00b4 3B68 ldr r3, [r7] 3517 00b6 082B cmp r3, #8 3518 00b8 21D8 bhi .L227 3519 00ba 3B68 ldr r3, [r7] 3520 00bc 002B cmp r3, #0 3521 00be 03D0 beq .L228 3522 00c0 3B68 ldr r3, [r7] 3523 00c2 042B cmp r3, #4 3524 00c4 09D0 beq .L229 3525 00c6 1AE0 b .L227 3526 .L228: 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 1 interrupt */ 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); 3527 .loc 1 1211 7 3528 00c8 7B68 ldr r3, [r7, #4] 3529 00ca 1B68 ldr r3, [r3] 3530 00cc DA68 ldr r2, [r3, #12] 3531 00ce 7B68 ldr r3, [r7, #4] 3532 00d0 1B68 ldr r3, [r3] 3533 00d2 42F00202 orr r2, r2, #2 3534 00d6 DA60 str r2, [r3, #12] 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3535 .loc 1 1212 7 3536 00d8 14E0 b .L230 3537 .L229: 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 2 interrupt */ 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); 3538 .loc 1 1218 7 3539 00da 7B68 ldr r3, [r7, #4] 3540 00dc 1B68 ldr r3, [r3] 3541 00de DA68 ldr r2, [r3, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 84 3542 00e0 7B68 ldr r3, [r7, #4] 3543 00e2 1B68 ldr r3, [r3] 3544 00e4 42F00402 orr r2, r2, #4 3545 00e8 DA60 str r2, [r3, #12] 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3546 .loc 1 1219 7 3547 00ea 0BE0 b .L230 3548 .L226: 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 3 interrupt */ 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); 3549 .loc 1 1225 7 3550 00ec 7B68 ldr r3, [r7, #4] 3551 00ee 1B68 ldr r3, [r3] 3552 00f0 DA68 ldr r2, [r3, #12] 3553 00f2 7B68 ldr r3, [r7, #4] 3554 00f4 1B68 ldr r3, [r3] 3555 00f6 42F00802 orr r2, r2, #8 3556 00fa DA60 str r2, [r3, #12] 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3557 .loc 1 1226 7 3558 00fc 02E0 b .L230 3559 .L227: 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 3560 .loc 1 1230 14 3561 00fe 0123 movs r3, #1 3562 0100 FB73 strb r3, [r7, #15] 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3563 .loc 1 1231 7 3564 0102 00BF nop 3565 .L230: 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 3566 .loc 1 1234 6 3567 0104 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 3568 0106 002B cmp r3, #0 3569 0108 58D1 bne .L231 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Break interrupt */ 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); 3570 .loc 1 1237 5 3571 010a 7B68 ldr r3, [r7, #4] 3572 010c 1B68 ldr r3, [r3] 3573 010e DA68 ldr r2, [r3, #12] 3574 0110 7B68 ldr r3, [r7, #4] 3575 0112 1B68 ldr r3, [r3] 3576 0114 42F08002 orr r2, r2, #128 3577 0118 DA60 str r2, [r3, #12] 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the complementary PWM output */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 85 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 3578 .loc 1 1240 5 3579 011a 7B68 ldr r3, [r7, #4] 3580 011c 1B68 ldr r3, [r3] 3581 011e 0422 movs r2, #4 3582 0120 3968 ldr r1, [r7] 3583 0122 1846 mov r0, r3 3584 0124 FFF7FEFF bl TIM_CCxNChannelCmd 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 3585 .loc 1 1243 5 3586 0128 7B68 ldr r3, [r7, #4] 3587 012a 1B68 ldr r3, [r3] 3588 012c 5A6C ldr r2, [r3, #68] 3589 012e 7B68 ldr r3, [r7, #4] 3590 0130 1B68 ldr r3, [r3] 3591 0132 42F40042 orr r2, r2, #32768 3592 0136 5A64 str r2, [r3, #68] 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigge 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 3593 .loc 1 1246 9 3594 0138 7B68 ldr r3, [r7, #4] 3595 013a 1B68 ldr r3, [r3] 3596 .loc 1 1246 8 3597 013c 224A ldr r2, .L235 3598 013e 9342 cmp r3, r2 3599 0140 22D0 beq .L232 3600 .loc 1 1246 9 discriminator 1 3601 0142 7B68 ldr r3, [r7, #4] 3602 0144 1B68 ldr r3, [r3] 3603 0146 B3F1804F cmp r3, #1073741824 3604 014a 1DD0 beq .L232 3605 .loc 1 1246 9 is_stmt 0 discriminator 2 3606 014c 7B68 ldr r3, [r7, #4] 3607 014e 1B68 ldr r3, [r3] 3608 0150 1E4A ldr r2, .L235+4 3609 0152 9342 cmp r3, r2 3610 0154 18D0 beq .L232 3611 .loc 1 1246 9 discriminator 3 3612 0156 7B68 ldr r3, [r7, #4] 3613 0158 1B68 ldr r3, [r3] 3614 015a 1D4A ldr r2, .L235+8 3615 015c 9342 cmp r3, r2 3616 015e 13D0 beq .L232 3617 .loc 1 1246 9 discriminator 4 3618 0160 7B68 ldr r3, [r7, #4] 3619 0162 1B68 ldr r3, [r3] 3620 0164 1B4A ldr r2, .L235+12 3621 0166 9342 cmp r3, r2 3622 0168 0ED0 beq .L232 3623 .loc 1 1246 9 discriminator 5 3624 016a 7B68 ldr r3, [r7, #4] 3625 016c 1B68 ldr r3, [r3] 3626 016e 1A4A ldr r2, .L235+16 3627 0170 9342 cmp r3, r2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 86 3628 0172 09D0 beq .L232 3629 .loc 1 1246 9 discriminator 6 3630 0174 7B68 ldr r3, [r7, #4] 3631 0176 1B68 ldr r3, [r3] 3632 0178 184A ldr r2, .L235+20 3633 017a 9342 cmp r3, r2 3634 017c 04D0 beq .L232 3635 .loc 1 1246 9 discriminator 7 3636 017e 7B68 ldr r3, [r7, #4] 3637 0180 1B68 ldr r3, [r3] 3638 0182 174A ldr r2, .L235+24 3639 0184 9342 cmp r3, r2 3640 0186 11D1 bne .L233 3641 .L232: 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 3642 .loc 1 1248 21 is_stmt 1 3643 0188 7B68 ldr r3, [r7, #4] 3644 018a 1B68 ldr r3, [r3] 3645 .loc 1 1248 31 3646 018c 9B68 ldr r3, [r3, #8] 3647 .loc 1 1248 15 3648 018e 03F00703 and r3, r3, #7 3649 0192 BB60 str r3, [r7, #8] 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 3650 .loc 1 1249 10 3651 0194 BB68 ldr r3, [r7, #8] 3652 0196 062B cmp r3, #6 3653 0198 10D0 beq .L231 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 3654 .loc 1 1251 9 3655 019a 7B68 ldr r3, [r7, #4] 3656 019c 1B68 ldr r3, [r3] 3657 019e 1A68 ldr r2, [r3] 3658 01a0 7B68 ldr r3, [r7, #4] 3659 01a2 1B68 ldr r3, [r3] 3660 01a4 42F00102 orr r2, r2, #1 3661 01a8 1A60 str r2, [r3] 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 3662 .loc 1 1249 10 3663 01aa 07E0 b .L231 3664 .L233: 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 3665 .loc 1 1256 7 3666 01ac 7B68 ldr r3, [r7, #4] 3667 01ae 1B68 ldr r3, [r3] 3668 01b0 1A68 ldr r2, [r3] 3669 01b2 7B68 ldr r3, [r7, #4] 3670 01b4 1B68 ldr r3, [r3] 3671 01b6 42F00102 orr r2, r2, #1 3672 01ba 1A60 str r2, [r3] 3673 .L231: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 87 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 3674 .loc 1 1261 10 3675 01bc FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 3676 .L219: 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 3677 .loc 1 1262 1 3678 01be 1846 mov r0, r3 3679 01c0 1037 adds r7, r7, #16 3680 .LCFI95: 3681 .cfi_def_cfa_offset 8 3682 01c2 BD46 mov sp, r7 3683 .LCFI96: 3684 .cfi_def_cfa_register 13 3685 @ sp needed 3686 01c4 80BD pop {r7, pc} 3687 .L236: 3688 01c6 00BF .align 2 3689 .L235: 3690 01c8 00000140 .word 1073807360 3691 01cc 00040040 .word 1073742848 3692 01d0 00080040 .word 1073743872 3693 01d4 000C0040 .word 1073744896 3694 01d8 00040140 .word 1073808384 3695 01dc 00400140 .word 1073823744 3696 01e0 00180040 .word 1073747968 3697 .cfi_endproc 3698 .LFE253: 3700 .section .text.HAL_TIMEx_PWMN_Stop_IT,"ax",%progbits 3701 .align 1 3702 .global HAL_TIMEx_PWMN_Stop_IT 3703 .syntax unified 3704 .thumb 3705 .thumb_func 3707 HAL_TIMEx_PWMN_Stop_IT: 3708 .LFB254: 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the PWM signal generation in interrupt mode on the 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * complementary output. 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 3709 .loc 1 1276 1 3710 .cfi_startproc 3711 @ args = 0, pretend = 0, frame = 16 3712 @ frame_needed = 1, uses_anonymous_args = 0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 88 3713 0000 80B5 push {r7, lr} 3714 .LCFI97: 3715 .cfi_def_cfa_offset 8 3716 .cfi_offset 7, -8 3717 .cfi_offset 14, -4 3718 0002 84B0 sub sp, sp, #16 3719 .LCFI98: 3720 .cfi_def_cfa_offset 24 3721 0004 00AF add r7, sp, #0 3722 .LCFI99: 3723 .cfi_def_cfa_register 7 3724 0006 7860 str r0, [r7, #4] 3725 0008 3960 str r1, [r7] 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 3726 .loc 1 1277 21 3727 000a 0023 movs r3, #0 3728 000c FB73 strb r3, [r7, #15] 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpccer; 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 3729 .loc 1 1283 3 3730 000e 3B68 ldr r3, [r7] 3731 0010 082B cmp r3, #8 3732 0012 1BD0 beq .L238 3733 0014 3B68 ldr r3, [r7] 3734 0016 082B cmp r3, #8 3735 0018 21D8 bhi .L239 3736 001a 3B68 ldr r3, [r7] 3737 001c 002B cmp r3, #0 3738 001e 03D0 beq .L240 3739 0020 3B68 ldr r3, [r7] 3740 0022 042B cmp r3, #4 3741 0024 09D0 beq .L241 3742 0026 1AE0 b .L239 3743 .L240: 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 1 interrupt */ 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); 3744 .loc 1 1288 7 3745 0028 7B68 ldr r3, [r7, #4] 3746 002a 1B68 ldr r3, [r3] 3747 002c DA68 ldr r2, [r3, #12] 3748 002e 7B68 ldr r3, [r7, #4] 3749 0030 1B68 ldr r3, [r3] 3750 0032 22F00202 bic r2, r2, #2 3751 0036 DA60 str r2, [r3, #12] 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3752 .loc 1 1289 7 3753 0038 14E0 b .L242 3754 .L241: 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 89 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 1293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 2 interrupt */ 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); 3755 .loc 1 1295 7 3756 003a 7B68 ldr r3, [r7, #4] 3757 003c 1B68 ldr r3, [r3] 3758 003e DA68 ldr r2, [r3, #12] 3759 0040 7B68 ldr r3, [r7, #4] 3760 0042 1B68 ldr r3, [r3] 3761 0044 22F00402 bic r2, r2, #4 3762 0048 DA60 str r2, [r3, #12] 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3763 .loc 1 1296 7 3764 004a 0BE0 b .L242 3765 .L238: 1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 3 interrupt */ 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); 3766 .loc 1 1302 7 3767 004c 7B68 ldr r3, [r7, #4] 3768 004e 1B68 ldr r3, [r3] 3769 0050 DA68 ldr r2, [r3, #12] 3770 0052 7B68 ldr r3, [r7, #4] 3771 0054 1B68 ldr r3, [r3] 3772 0056 22F00802 bic r2, r2, #8 3773 005a DA60 str r2, [r3, #12] 1303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3774 .loc 1 1303 7 3775 005c 02E0 b .L242 3776 .L239: 1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 3777 .loc 1 1307 14 3778 005e 0123 movs r3, #1 3779 0060 FB73 strb r3, [r7, #15] 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 3780 .loc 1 1308 7 3781 0062 00BF nop 3782 .L242: 1309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 3783 .loc 1 1311 6 3784 0064 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 3785 0066 002B cmp r3, #0 3786 0068 64D1 bne .L243 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the complementary PWM output */ 1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 3787 .loc 1 1314 5 3788 006a 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 90 3789 006c 1B68 ldr r3, [r3] 3790 006e 0022 movs r2, #0 3791 0070 3968 ldr r1, [r7] 3792 0072 1846 mov r0, r3 3793 0074 FFF7FEFF bl TIM_CCxNChannelCmd 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Break interrupt (only if no more channel is active) */ 1317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpccer = htim->Instance->CCER; 3794 .loc 1 1317 19 3795 0078 7B68 ldr r3, [r7, #4] 3796 007a 1B68 ldr r3, [r3] 3797 .loc 1 1317 13 3798 007c 1B6A ldr r3, [r3, #32] 3799 007e BB60 str r3, [r7, #8] 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) 3800 .loc 1 1318 18 3801 0080 BA68 ldr r2, [r7, #8] 3802 0082 40F24443 movw r3, #1092 3803 0086 1340 ands r3, r3, r2 3804 .loc 1 1318 8 3805 0088 002B cmp r3, #0 3806 008a 07D1 bne .L244 1319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); 3807 .loc 1 1320 7 3808 008c 7B68 ldr r3, [r7, #4] 3809 008e 1B68 ldr r3, [r3] 3810 0090 DA68 ldr r2, [r3, #12] 3811 0092 7B68 ldr r3, [r7, #4] 3812 0094 1B68 ldr r3, [r3] 3813 0096 22F08002 bic r2, r2, #128 3814 009a DA60 str r2, [r3, #12] 3815 .L244: 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 3816 .loc 1 1324 5 3817 009c 7B68 ldr r3, [r7, #4] 3818 009e 1B68 ldr r3, [r3] 3819 00a0 1A6A ldr r2, [r3, #32] 3820 00a2 41F21113 movw r3, #4369 3821 00a6 1340 ands r3, r3, r2 3822 00a8 002B cmp r3, #0 3823 00aa 0FD1 bne .L245 3824 .loc 1 1324 5 is_stmt 0 discriminator 1 3825 00ac 7B68 ldr r3, [r7, #4] 3826 00ae 1B68 ldr r3, [r3] 3827 00b0 1A6A ldr r2, [r3, #32] 3828 00b2 40F24443 movw r3, #1092 3829 00b6 1340 ands r3, r3, r2 3830 00b8 002B cmp r3, #0 3831 00ba 07D1 bne .L245 3832 .loc 1 1324 5 discriminator 2 3833 00bc 7B68 ldr r3, [r7, #4] 3834 00be 1B68 ldr r3, [r3] 3835 00c0 5A6C ldr r2, [r3, #68] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 91 3836 00c2 7B68 ldr r3, [r7, #4] 3837 00c4 1B68 ldr r3, [r3] 3838 00c6 22F40042 bic r2, r2, #32768 3839 00ca 5A64 str r2, [r3, #68] 3840 .L245: 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 3841 .loc 1 1327 5 is_stmt 1 3842 00cc 7B68 ldr r3, [r7, #4] 3843 00ce 1B68 ldr r3, [r3] 3844 00d0 1A6A ldr r2, [r3, #32] 3845 00d2 41F21113 movw r3, #4369 3846 00d6 1340 ands r3, r3, r2 3847 00d8 002B cmp r3, #0 3848 00da 0FD1 bne .L246 3849 .loc 1 1327 5 is_stmt 0 discriminator 1 3850 00dc 7B68 ldr r3, [r7, #4] 3851 00de 1B68 ldr r3, [r3] 3852 00e0 1A6A ldr r2, [r3, #32] 3853 00e2 40F24443 movw r3, #1092 3854 00e6 1340 ands r3, r3, r2 3855 00e8 002B cmp r3, #0 3856 00ea 07D1 bne .L246 3857 .loc 1 1327 5 discriminator 2 3858 00ec 7B68 ldr r3, [r7, #4] 3859 00ee 1B68 ldr r3, [r3] 3860 00f0 1A68 ldr r2, [r3] 3861 00f2 7B68 ldr r3, [r7, #4] 3862 00f4 1B68 ldr r3, [r3] 3863 00f6 22F00102 bic r2, r2, #1 3864 00fa 1A60 str r2, [r3] 3865 .L246: 1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 3866 .loc 1 1330 5 is_stmt 1 3867 00fc 3B68 ldr r3, [r7] 3868 00fe 002B cmp r3, #0 3869 0100 04D1 bne .L247 3870 .loc 1 1330 5 is_stmt 0 discriminator 1 3871 0102 7B68 ldr r3, [r7, #4] 3872 0104 0122 movs r2, #1 3873 0106 83F84220 strb r2, [r3, #66] 3874 010a 13E0 b .L243 3875 .L247: 3876 .loc 1 1330 5 discriminator 2 3877 010c 3B68 ldr r3, [r7] 3878 010e 042B cmp r3, #4 3879 0110 04D1 bne .L248 3880 .loc 1 1330 5 discriminator 3 3881 0112 7B68 ldr r3, [r7, #4] 3882 0114 0122 movs r2, #1 3883 0116 83F84320 strb r2, [r3, #67] 3884 011a 0BE0 b .L243 3885 .L248: 3886 .loc 1 1330 5 discriminator 4 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 92 3887 011c 3B68 ldr r3, [r7] 3888 011e 082B cmp r3, #8 3889 0120 04D1 bne .L250 3890 .loc 1 1330 5 discriminator 6 3891 0122 7B68 ldr r3, [r7, #4] 3892 0124 0122 movs r2, #1 3893 0126 83F84420 strb r2, [r3, #68] 3894 012a 03E0 b .L243 3895 .L250: 3896 .loc 1 1330 5 discriminator 7 3897 012c 7B68 ldr r3, [r7, #4] 3898 012e 0122 movs r2, #1 3899 0130 83F84520 strb r2, [r3, #69] 3900 .L243: 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 3901 .loc 1 1334 10 is_stmt 1 3902 0134 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 1335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 3903 .loc 1 1335 1 3904 0136 1846 mov r0, r3 3905 0138 1037 adds r7, r7, #16 3906 .LCFI100: 3907 .cfi_def_cfa_offset 8 3908 013a BD46 mov sp, r7 3909 .LCFI101: 3910 .cfi_def_cfa_register 13 3911 @ sp needed 3912 013c 80BD pop {r7, pc} 3913 .cfi_endproc 3914 .LFE254: 3916 .section .text.HAL_TIMEx_PWMN_Start_DMA,"ax",%progbits 3917 .align 1 3918 .global HAL_TIMEx_PWMN_Start_DMA 3919 .syntax unified 3920 .thumb 3921 .thumb_func 3923 HAL_TIMEx_PWMN_Start_DMA: 3924 .LFB255: 1336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM PWM signal generation in DMA mode on the 1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * complementary output 1340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be enabled 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param pData The source Buffer address. 1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Length The length of data to be transferred from memory to TIM peripheral 1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pDa 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 93 3925 .loc 1 1351 1 3926 .cfi_startproc 3927 @ args = 0, pretend = 0, frame = 24 3928 @ frame_needed = 1, uses_anonymous_args = 0 3929 0000 80B5 push {r7, lr} 3930 .LCFI102: 3931 .cfi_def_cfa_offset 8 3932 .cfi_offset 7, -8 3933 .cfi_offset 14, -4 3934 0002 86B0 sub sp, sp, #24 3935 .LCFI103: 3936 .cfi_def_cfa_offset 32 3937 0004 00AF add r7, sp, #0 3938 .LCFI104: 3939 .cfi_def_cfa_register 7 3940 0006 F860 str r0, [r7, #12] 3941 0008 B960 str r1, [r7, #8] 3942 000a 7A60 str r2, [r7, #4] 3943 000c 7B80 strh r3, [r7, #2] @ movhi 1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 3944 .loc 1 1352 21 3945 000e 0023 movs r3, #0 3946 0010 FB75 strb r3, [r7, #23] 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) 3947 .loc 1 1359 46 3948 0012 BB68 ldr r3, [r7, #8] 3949 0014 002B cmp r3, #0 3950 0016 09D1 bne .L254 3951 .loc 1 1359 7 discriminator 1 3952 0018 FB68 ldr r3, [r7, #12] 3953 001a 93F84230 ldrb r3, [r3, #66] 3954 001e DBB2 uxtb r3, r3 3955 .loc 1 1359 46 discriminator 1 3956 0020 022B cmp r3, #2 3957 0022 0CBF ite eq 3958 0024 0123 moveq r3, #1 3959 0026 0023 movne r3, #0 3960 0028 DBB2 uxtb r3, r3 3961 002a 22E0 b .L255 3962 .L254: 3963 .loc 1 1359 46 is_stmt 0 discriminator 2 3964 002c BB68 ldr r3, [r7, #8] 3965 002e 042B cmp r3, #4 3966 0030 09D1 bne .L256 3967 .loc 1 1359 7 is_stmt 1 discriminator 4 3968 0032 FB68 ldr r3, [r7, #12] 3969 0034 93F84330 ldrb r3, [r3, #67] 3970 0038 DBB2 uxtb r3, r3 3971 .loc 1 1359 46 discriminator 4 3972 003a 022B cmp r3, #2 3973 003c 0CBF ite eq ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 94 3974 003e 0123 moveq r3, #1 3975 0040 0023 movne r3, #0 3976 0042 DBB2 uxtb r3, r3 3977 0044 15E0 b .L255 3978 .L256: 3979 .loc 1 1359 46 is_stmt 0 discriminator 5 3980 0046 BB68 ldr r3, [r7, #8] 3981 0048 082B cmp r3, #8 3982 004a 09D1 bne .L258 3983 .loc 1 1359 7 is_stmt 1 discriminator 7 3984 004c FB68 ldr r3, [r7, #12] 3985 004e 93F84430 ldrb r3, [r3, #68] 3986 0052 DBB2 uxtb r3, r3 3987 .loc 1 1359 46 discriminator 7 3988 0054 022B cmp r3, #2 3989 0056 0CBF ite eq 3990 0058 0123 moveq r3, #1 3991 005a 0023 movne r3, #0 3992 005c DBB2 uxtb r3, r3 3993 005e 08E0 b .L255 3994 .L258: 3995 .loc 1 1359 7 discriminator 8 3996 0060 FB68 ldr r3, [r7, #12] 3997 0062 93F84530 ldrb r3, [r3, #69] 3998 0066 DBB2 uxtb r3, r3 3999 .loc 1 1359 46 discriminator 8 4000 0068 022B cmp r3, #2 4001 006a 0CBF ite eq 4002 006c 0123 moveq r3, #1 4003 006e 0023 movne r3, #0 4004 0070 DBB2 uxtb r3, r3 4005 .L255: 4006 .loc 1 1359 6 discriminator 12 4007 0072 002B cmp r3, #0 4008 0074 01D0 beq .L260 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_BUSY; 4009 .loc 1 1361 12 4010 0076 0223 movs r3, #2 4011 0078 29E1 b .L261 4012 .L260: 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) 4013 .loc 1 1363 51 4014 007a BB68 ldr r3, [r7, #8] 4015 007c 002B cmp r3, #0 4016 007e 09D1 bne .L262 4017 .loc 1 1363 12 discriminator 1 4018 0080 FB68 ldr r3, [r7, #12] 4019 0082 93F84230 ldrb r3, [r3, #66] 4020 0086 DBB2 uxtb r3, r3 4021 .loc 1 1363 51 discriminator 1 4022 0088 012B cmp r3, #1 4023 008a 0CBF ite eq 4024 008c 0123 moveq r3, #1 4025 008e 0023 movne r3, #0 4026 0090 DBB2 uxtb r3, r3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 95 4027 0092 22E0 b .L263 4028 .L262: 4029 .loc 1 1363 51 is_stmt 0 discriminator 2 4030 0094 BB68 ldr r3, [r7, #8] 4031 0096 042B cmp r3, #4 4032 0098 09D1 bne .L264 4033 .loc 1 1363 12 is_stmt 1 discriminator 4 4034 009a FB68 ldr r3, [r7, #12] 4035 009c 93F84330 ldrb r3, [r3, #67] 4036 00a0 DBB2 uxtb r3, r3 4037 .loc 1 1363 51 discriminator 4 4038 00a2 012B cmp r3, #1 4039 00a4 0CBF ite eq 4040 00a6 0123 moveq r3, #1 4041 00a8 0023 movne r3, #0 4042 00aa DBB2 uxtb r3, r3 4043 00ac 15E0 b .L263 4044 .L264: 4045 .loc 1 1363 51 is_stmt 0 discriminator 5 4046 00ae BB68 ldr r3, [r7, #8] 4047 00b0 082B cmp r3, #8 4048 00b2 09D1 bne .L266 4049 .loc 1 1363 12 is_stmt 1 discriminator 7 4050 00b4 FB68 ldr r3, [r7, #12] 4051 00b6 93F84430 ldrb r3, [r3, #68] 4052 00ba DBB2 uxtb r3, r3 4053 .loc 1 1363 51 discriminator 7 4054 00bc 012B cmp r3, #1 4055 00be 0CBF ite eq 4056 00c0 0123 moveq r3, #1 4057 00c2 0023 movne r3, #0 4058 00c4 DBB2 uxtb r3, r3 4059 00c6 08E0 b .L263 4060 .L266: 4061 .loc 1 1363 12 discriminator 8 4062 00c8 FB68 ldr r3, [r7, #12] 4063 00ca 93F84530 ldrb r3, [r3, #69] 4064 00ce DBB2 uxtb r3, r3 4065 .loc 1 1363 51 discriminator 8 4066 00d0 012B cmp r3, #1 4067 00d2 0CBF ite eq 4068 00d4 0123 moveq r3, #1 4069 00d6 0023 movne r3, #0 4070 00d8 DBB2 uxtb r3, r3 4071 .L263: 4072 .loc 1 1363 11 discriminator 12 4073 00da 002B cmp r3, #0 4074 00dc 24D0 beq .L268 1364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((pData == NULL) && (Length > 0U)) 4075 .loc 1 1365 8 4076 00de 7B68 ldr r3, [r7, #4] 4077 00e0 002B cmp r3, #0 4078 00e2 04D1 bne .L269 4079 .loc 1 1365 25 discriminator 1 4080 00e4 7B88 ldrh r3, [r7, #2] 4081 00e6 002B cmp r3, #0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 96 4082 00e8 01D0 beq .L269 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4083 .loc 1 1367 14 4084 00ea 0123 movs r3, #1 4085 00ec EFE0 b .L261 4086 .L269: 1368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); 4087 .loc 1 1371 7 4088 00ee BB68 ldr r3, [r7, #8] 4089 00f0 002B cmp r3, #0 4090 00f2 04D1 bne .L270 4091 .loc 1 1371 7 is_stmt 0 discriminator 1 4092 00f4 FB68 ldr r3, [r7, #12] 4093 00f6 0222 movs r2, #2 4094 00f8 83F84220 strb r2, [r3, #66] 4095 00fc 16E0 b .L271 4096 .L270: 4097 .loc 1 1371 7 discriminator 2 4098 00fe BB68 ldr r3, [r7, #8] 4099 0100 042B cmp r3, #4 4100 0102 04D1 bne .L272 4101 .loc 1 1371 7 discriminator 3 4102 0104 FB68 ldr r3, [r7, #12] 4103 0106 0222 movs r2, #2 4104 0108 83F84320 strb r2, [r3, #67] 4105 010c 0EE0 b .L271 4106 .L272: 4107 .loc 1 1371 7 discriminator 4 4108 010e BB68 ldr r3, [r7, #8] 4109 0110 082B cmp r3, #8 4110 0112 04D1 bne .L274 4111 .loc 1 1371 7 discriminator 6 4112 0114 FB68 ldr r3, [r7, #12] 4113 0116 0222 movs r2, #2 4114 0118 83F84420 strb r2, [r3, #68] 4115 011c 06E0 b .L271 4116 .L274: 4117 .loc 1 1371 7 discriminator 7 4118 011e FB68 ldr r3, [r7, #12] 4119 0120 0222 movs r2, #2 4120 0122 83F84520 strb r2, [r3, #69] 4121 0126 01E0 b .L271 4122 .L268: 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4123 .loc 1 1376 12 is_stmt 1 4124 0128 0123 movs r3, #1 4125 012a D0E0 b .L261 4126 .L271: 1377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 97 1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 4127 .loc 1 1379 3 4128 012c BB68 ldr r3, [r7, #8] 4129 012e 082B cmp r3, #8 4130 0130 51D0 beq .L276 4131 0132 BB68 ldr r3, [r7, #8] 4132 0134 082B cmp r3, #8 4133 0136 72D8 bhi .L277 4134 0138 BB68 ldr r3, [r7, #8] 4135 013a 002B cmp r3, #0 4136 013c 03D0 beq .L278 4137 013e BB68 ldr r3, [r7, #8] 4138 0140 042B cmp r3, #4 4139 0142 24D0 beq .L279 4140 0144 6BE0 b .L277 4141 .L278: 1380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 1384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; 4142 .loc 1 1384 17 4143 0146 FB68 ldr r3, [r7, #12] 4144 0148 5B6A ldr r3, [r3, #36] 4145 .loc 1 1384 52 4146 014a 634A ldr r2, .L288 4147 014c DA63 str r2, [r3, #60] 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; 4148 .loc 1 1385 17 4149 014e FB68 ldr r3, [r7, #12] 4150 0150 5B6A ldr r3, [r3, #36] 4151 .loc 1 1385 56 4152 0152 624A ldr r2, .L288+4 4153 0154 1A64 str r2, [r3, #64] 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; 4154 .loc 1 1388 17 4155 0156 FB68 ldr r3, [r7, #12] 4156 0158 5B6A ldr r3, [r3, #36] 4157 .loc 1 1388 53 4158 015a 614A ldr r2, .L288+8 4159 015c DA64 str r2, [r3, #76] 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance-> 4160 .loc 1 1391 11 4161 015e FB68 ldr r3, [r7, #12] 4162 0160 586A ldr r0, [r3, #36] 4163 0162 7968 ldr r1, [r7, #4] 4164 .loc 1 1391 88 4165 0164 FB68 ldr r3, [r7, #12] 4166 0166 1B68 ldr r3, [r3] 4167 .loc 1 1391 83 4168 0168 3433 adds r3, r3, #52 4169 .loc 1 1391 11 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 98 4170 016a 1A46 mov r2, r3 4171 016c 7B88 ldrh r3, [r7, #2] 4172 016e FFF7FEFF bl HAL_DMA_Start_IT 4173 0172 0346 mov r3, r0 4174 .loc 1 1391 10 4175 0174 002B cmp r3, #0 4176 0176 01D0 beq .L280 1392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 1393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4177 .loc 1 1395 16 4178 0178 0123 movs r3, #1 4179 017a A8E0 b .L261 4180 .L280: 1396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 1 DMA request */ 1398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); 4181 .loc 1 1398 7 4182 017c FB68 ldr r3, [r7, #12] 4183 017e 1B68 ldr r3, [r3] 4184 0180 DA68 ldr r2, [r3, #12] 4185 0182 FB68 ldr r3, [r7, #12] 4186 0184 1B68 ldr r3, [r3] 4187 0186 42F40072 orr r2, r2, #512 4188 018a DA60 str r2, [r3, #12] 1399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4189 .loc 1 1399 7 4190 018c 4AE0 b .L281 4191 .L279: 1400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 1405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; 4192 .loc 1 1405 17 4193 018e FB68 ldr r3, [r7, #12] 4194 0190 9B6A ldr r3, [r3, #40] 4195 .loc 1 1405 52 4196 0192 514A ldr r2, .L288 4197 0194 DA63 str r2, [r3, #60] 1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; 4198 .loc 1 1406 17 4199 0196 FB68 ldr r3, [r7, #12] 4200 0198 9B6A ldr r3, [r3, #40] 4201 .loc 1 1406 56 4202 019a 504A ldr r2, .L288+4 4203 019c 1A64 str r2, [r3, #64] 1407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; 4204 .loc 1 1409 17 4205 019e FB68 ldr r3, [r7, #12] 4206 01a0 9B6A ldr r3, [r3, #40] 4207 .loc 1 1409 53 4208 01a2 4F4A ldr r2, .L288+8 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 99 4209 01a4 DA64 str r2, [r3, #76] 1410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance-> 4210 .loc 1 1412 11 4211 01a6 FB68 ldr r3, [r7, #12] 4212 01a8 986A ldr r0, [r3, #40] 4213 01aa 7968 ldr r1, [r7, #4] 4214 .loc 1 1412 88 4215 01ac FB68 ldr r3, [r7, #12] 4216 01ae 1B68 ldr r3, [r3] 4217 .loc 1 1412 83 4218 01b0 3833 adds r3, r3, #56 4219 .loc 1 1412 11 4220 01b2 1A46 mov r2, r3 4221 01b4 7B88 ldrh r3, [r7, #2] 4222 01b6 FFF7FEFF bl HAL_DMA_Start_IT 4223 01ba 0346 mov r3, r0 4224 .loc 1 1412 10 4225 01bc 002B cmp r3, #0 4226 01be 01D0 beq .L282 1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4227 .loc 1 1416 16 4228 01c0 0123 movs r3, #1 4229 01c2 84E0 b .L261 4230 .L282: 1417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 2 DMA request */ 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); 4231 .loc 1 1419 7 4232 01c4 FB68 ldr r3, [r7, #12] 4233 01c6 1B68 ldr r3, [r3] 4234 01c8 DA68 ldr r2, [r3, #12] 4235 01ca FB68 ldr r3, [r7, #12] 4236 01cc 1B68 ldr r3, [r3] 4237 01ce 42F48062 orr r2, r2, #1024 4238 01d2 DA60 str r2, [r3, #12] 1420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4239 .loc 1 1420 7 4240 01d4 26E0 b .L281 4241 .L276: 1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 1424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA compare callbacks */ 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; 4242 .loc 1 1426 17 4243 01d6 FB68 ldr r3, [r7, #12] 4244 01d8 DB6A ldr r3, [r3, #44] 4245 .loc 1 1426 52 4246 01da 3F4A ldr r2, .L288 4247 01dc DA63 str r2, [r3, #60] 1427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 100 4248 .loc 1 1427 17 4249 01de FB68 ldr r3, [r7, #12] 4250 01e0 DB6A ldr r3, [r3, #44] 4251 .loc 1 1427 56 4252 01e2 3E4A ldr r2, .L288+4 4253 01e4 1A64 str r2, [r3, #64] 1428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; 4254 .loc 1 1430 17 4255 01e6 FB68 ldr r3, [r7, #12] 4256 01e8 DB6A ldr r3, [r3, #44] 4257 .loc 1 1430 53 4258 01ea 3D4A ldr r2, .L288+8 4259 01ec DA64 str r2, [r3, #76] 1431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the DMA stream */ 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance-> 4260 .loc 1 1433 11 4261 01ee FB68 ldr r3, [r7, #12] 4262 01f0 D86A ldr r0, [r3, #44] 4263 01f2 7968 ldr r1, [r7, #4] 4264 .loc 1 1433 88 4265 01f4 FB68 ldr r3, [r7, #12] 4266 01f6 1B68 ldr r3, [r3] 4267 .loc 1 1433 83 4268 01f8 3C33 adds r3, r3, #60 4269 .loc 1 1433 11 4270 01fa 1A46 mov r2, r3 4271 01fc 7B88 ldrh r3, [r7, #2] 4272 01fe FFF7FEFF bl HAL_DMA_Start_IT 4273 0202 0346 mov r3, r0 4274 .loc 1 1433 10 4275 0204 002B cmp r3, #0 4276 0206 01D0 beq .L283 1434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Length) != HAL_OK) 1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return error status */ 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4277 .loc 1 1437 16 4278 0208 0123 movs r3, #1 4279 020a 60E0 b .L261 4280 .L283: 1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 3 DMA request */ 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); 4281 .loc 1 1440 7 4282 020c FB68 ldr r3, [r7, #12] 4283 020e 1B68 ldr r3, [r3] 4284 0210 DA68 ldr r2, [r3, #12] 4285 0212 FB68 ldr r3, [r7, #12] 4286 0214 1B68 ldr r3, [r3] 4287 0216 42F40062 orr r2, r2, #2048 4288 021a DA60 str r2, [r3, #12] 1441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4289 .loc 1 1441 7 4290 021c 02E0 b .L281 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 101 4291 .L277: 1442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 1445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 4292 .loc 1 1445 14 4293 021e 0123 movs r3, #1 4294 0220 FB75 strb r3, [r7, #23] 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4295 .loc 1 1446 7 4296 0222 00BF nop 4297 .L281: 1447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 4298 .loc 1 1449 6 4299 0224 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 4300 0226 002B cmp r3, #0 4301 0228 50D1 bne .L284 1450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the complementary PWM output */ 1452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); 4302 .loc 1 1452 5 4303 022a FB68 ldr r3, [r7, #12] 4304 022c 1B68 ldr r3, [r3] 4305 022e 0422 movs r2, #4 4306 0230 B968 ldr r1, [r7, #8] 4307 0232 1846 mov r0, r3 4308 0234 FFF7FEFF bl TIM_CCxNChannelCmd 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 4309 .loc 1 1455 5 4310 0238 FB68 ldr r3, [r7, #12] 4311 023a 1B68 ldr r3, [r3] 4312 023c 5A6C ldr r2, [r3, #68] 4313 023e FB68 ldr r3, [r7, #12] 4314 0240 1B68 ldr r3, [r3] 4315 0242 42F40042 orr r2, r2, #32768 4316 0246 5A64 str r2, [r3, #68] 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigge 1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 4317 .loc 1 1458 9 4318 0248 FB68 ldr r3, [r7, #12] 4319 024a 1B68 ldr r3, [r3] 4320 .loc 1 1458 8 4321 024c 254A ldr r2, .L288+12 4322 024e 9342 cmp r3, r2 4323 0250 22D0 beq .L285 4324 .loc 1 1458 9 discriminator 1 4325 0252 FB68 ldr r3, [r7, #12] 4326 0254 1B68 ldr r3, [r3] 4327 0256 B3F1804F cmp r3, #1073741824 4328 025a 1DD0 beq .L285 4329 .loc 1 1458 9 is_stmt 0 discriminator 2 4330 025c FB68 ldr r3, [r7, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 102 4331 025e 1B68 ldr r3, [r3] 4332 0260 214A ldr r2, .L288+16 4333 0262 9342 cmp r3, r2 4334 0264 18D0 beq .L285 4335 .loc 1 1458 9 discriminator 3 4336 0266 FB68 ldr r3, [r7, #12] 4337 0268 1B68 ldr r3, [r3] 4338 026a 204A ldr r2, .L288+20 4339 026c 9342 cmp r3, r2 4340 026e 13D0 beq .L285 4341 .loc 1 1458 9 discriminator 4 4342 0270 FB68 ldr r3, [r7, #12] 4343 0272 1B68 ldr r3, [r3] 4344 0274 1E4A ldr r2, .L288+24 4345 0276 9342 cmp r3, r2 4346 0278 0ED0 beq .L285 4347 .loc 1 1458 9 discriminator 5 4348 027a FB68 ldr r3, [r7, #12] 4349 027c 1B68 ldr r3, [r3] 4350 027e 1D4A ldr r2, .L288+28 4351 0280 9342 cmp r3, r2 4352 0282 09D0 beq .L285 4353 .loc 1 1458 9 discriminator 6 4354 0284 FB68 ldr r3, [r7, #12] 4355 0286 1B68 ldr r3, [r3] 4356 0288 1B4A ldr r2, .L288+32 4357 028a 9342 cmp r3, r2 4358 028c 04D0 beq .L285 4359 .loc 1 1458 9 discriminator 7 4360 028e FB68 ldr r3, [r7, #12] 4361 0290 1B68 ldr r3, [r3] 4362 0292 1A4A ldr r2, .L288+36 4363 0294 9342 cmp r3, r2 4364 0296 11D1 bne .L286 4365 .L285: 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; 4366 .loc 1 1460 21 is_stmt 1 4367 0298 FB68 ldr r3, [r7, #12] 4368 029a 1B68 ldr r3, [r3] 4369 .loc 1 1460 31 4370 029c 9B68 ldr r3, [r3, #8] 4371 .loc 1 1460 15 4372 029e 03F00703 and r3, r3, #7 4373 02a2 3B61 str r3, [r7, #16] 1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 4374 .loc 1 1461 10 4375 02a4 3B69 ldr r3, [r7, #16] 4376 02a6 062B cmp r3, #6 4377 02a8 10D0 beq .L284 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 4378 .loc 1 1463 9 4379 02aa FB68 ldr r3, [r7, #12] 4380 02ac 1B68 ldr r3, [r3] 4381 02ae 1A68 ldr r2, [r3] 4382 02b0 FB68 ldr r3, [r7, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 103 4383 02b2 1B68 ldr r3, [r3] 4384 02b4 42F00102 orr r2, r2, #1 4385 02b8 1A60 str r2, [r3] 1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) 4386 .loc 1 1461 10 4387 02ba 07E0 b .L284 4388 .L286: 1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 1467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE(htim); 4389 .loc 1 1468 7 4390 02bc FB68 ldr r3, [r7, #12] 4391 02be 1B68 ldr r3, [r3] 4392 02c0 1A68 ldr r2, [r3] 4393 02c2 FB68 ldr r3, [r7, #12] 4394 02c4 1B68 ldr r3, [r3] 4395 02c6 42F00102 orr r2, r2, #1 4396 02ca 1A60 str r2, [r3] 4397 .L284: 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 4398 .loc 1 1473 10 4399 02cc FB7D ldrb r3, [r7, #23] @ zero_extendqisi2 4400 .L261: 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 4401 .loc 1 1474 1 4402 02ce 1846 mov r0, r3 4403 02d0 1837 adds r7, r7, #24 4404 .LCFI105: 4405 .cfi_def_cfa_offset 8 4406 02d2 BD46 mov sp, r7 4407 .LCFI106: 4408 .cfi_def_cfa_register 13 4409 @ sp needed 4410 02d4 80BD pop {r7, pc} 4411 .L289: 4412 02d6 00BF .align 2 4413 .L288: 4414 02d8 00000000 .word TIM_DMADelayPulseNCplt 4415 02dc 00000000 .word TIM_DMADelayPulseHalfCplt 4416 02e0 00000000 .word TIM_DMAErrorCCxN 4417 02e4 00000140 .word 1073807360 4418 02e8 00040040 .word 1073742848 4419 02ec 00080040 .word 1073743872 4420 02f0 000C0040 .word 1073744896 4421 02f4 00040140 .word 1073808384 4422 02f8 00400140 .word 1073823744 4423 02fc 00180040 .word 1073747968 4424 .cfi_endproc 4425 .LFE255: 4427 .section .text.HAL_TIMEx_PWMN_Stop_DMA,"ax",%progbits 4428 .align 1 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 104 4429 .global HAL_TIMEx_PWMN_Stop_DMA 4430 .syntax unified 4431 .thumb 4432 .thumb_func 4434 HAL_TIMEx_PWMN_Stop_DMA: 4435 .LFB256: 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM PWM signal generation in DMA mode on the complementary 1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * output 1479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel TIM Channel to be disabled 1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 selected 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) 1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 4436 .loc 1 1488 1 4437 .cfi_startproc 4438 @ args = 0, pretend = 0, frame = 16 4439 @ frame_needed = 1, uses_anonymous_args = 0 4440 0000 80B5 push {r7, lr} 4441 .LCFI107: 4442 .cfi_def_cfa_offset 8 4443 .cfi_offset 7, -8 4444 .cfi_offset 14, -4 4445 0002 84B0 sub sp, sp, #16 4446 .LCFI108: 4447 .cfi_def_cfa_offset 24 4448 0004 00AF add r7, sp, #0 4449 .LCFI109: 4450 .cfi_def_cfa_register 7 4451 0006 7860 str r0, [r7, #4] 4452 0008 3960 str r1, [r7] 1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef status = HAL_OK; 4453 .loc 1 1489 21 4454 000a 0023 movs r3, #0 4455 000c FB73 strb r3, [r7, #15] 1490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); 1493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** switch (Channel) 4456 .loc 1 1494 3 4457 000e 3B68 ldr r3, [r7] 4458 0010 082B cmp r3, #8 4459 0012 25D0 beq .L291 4460 0014 3B68 ldr r3, [r7] 4461 0016 082B cmp r3, #8 4462 0018 30D8 bhi .L292 4463 001a 3B68 ldr r3, [r7] 4464 001c 002B cmp r3, #0 4465 001e 03D0 beq .L293 4466 0020 3B68 ldr r3, [r7] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 105 4467 0022 042B cmp r3, #4 4468 0024 0ED0 beq .L294 4469 0026 29E0 b .L292 4470 .L293: 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_1: 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 1 DMA request */ 1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); 4471 .loc 1 1499 7 4472 0028 7B68 ldr r3, [r7, #4] 4473 002a 1B68 ldr r3, [r3] 4474 002c DA68 ldr r2, [r3, #12] 4475 002e 7B68 ldr r3, [r7, #4] 4476 0030 1B68 ldr r3, [r3] 4477 0032 22F40072 bic r2, r2, #512 4478 0036 DA60 str r2, [r3, #12] 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); 4479 .loc 1 1500 13 4480 0038 7B68 ldr r3, [r7, #4] 4481 003a 5B6A ldr r3, [r3, #36] 4482 003c 1846 mov r0, r3 4483 003e FFF7FEFF bl HAL_DMA_Abort_IT 1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4484 .loc 1 1501 7 4485 0042 1EE0 b .L295 4486 .L294: 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_2: 1505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 2 DMA request */ 1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); 4487 .loc 1 1507 7 4488 0044 7B68 ldr r3, [r7, #4] 4489 0046 1B68 ldr r3, [r3] 4490 0048 DA68 ldr r2, [r3, #12] 4491 004a 7B68 ldr r3, [r7, #4] 4492 004c 1B68 ldr r3, [r3] 4493 004e 22F48062 bic r2, r2, #1024 4494 0052 DA60 str r2, [r3, #12] 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); 4495 .loc 1 1508 13 4496 0054 7B68 ldr r3, [r7, #4] 4497 0056 9B6A ldr r3, [r3, #40] 4498 0058 1846 mov r0, r3 4499 005a FFF7FEFF bl HAL_DMA_Abort_IT 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4500 .loc 1 1509 7 4501 005e 10E0 b .L295 4502 .L291: 1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** case TIM_CHANNEL_3: 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 3 DMA request */ 1515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 106 4503 .loc 1 1515 7 4504 0060 7B68 ldr r3, [r7, #4] 4505 0062 1B68 ldr r3, [r3] 4506 0064 DA68 ldr r2, [r3, #12] 4507 0066 7B68 ldr r3, [r7, #4] 4508 0068 1B68 ldr r3, [r3] 4509 006a 22F40062 bic r2, r2, #2048 4510 006e DA60 str r2, [r3, #12] 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); 4511 .loc 1 1516 13 4512 0070 7B68 ldr r3, [r7, #4] 4513 0072 DB6A ldr r3, [r3, #44] 4514 0074 1846 mov r0, r3 4515 0076 FFF7FEFF bl HAL_DMA_Abort_IT 1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4516 .loc 1 1517 7 4517 007a 02E0 b .L295 4518 .L292: 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** default: 1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** status = HAL_ERROR; 4519 .loc 1 1521 14 4520 007c 0123 movs r3, #1 4521 007e FB73 strb r3, [r7, #15] 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** break; 4522 .loc 1 1522 7 4523 0080 00BF nop 4524 .L295: 1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (status == HAL_OK) 4525 .loc 1 1525 6 4526 0082 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 4527 0084 002B cmp r3, #0 4528 0086 52D1 bne .L296 1526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the complementary PWM output */ 1528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); 4529 .loc 1 1528 5 4530 0088 7B68 ldr r3, [r7, #4] 4531 008a 1B68 ldr r3, [r3] 4532 008c 0022 movs r2, #0 4533 008e 3968 ldr r1, [r7] 4534 0090 1846 mov r0, r3 4535 0092 FFF7FEFF bl TIM_CCxNChannelCmd 1529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 4536 .loc 1 1531 5 4537 0096 7B68 ldr r3, [r7, #4] 4538 0098 1B68 ldr r3, [r3] 4539 009a 1A6A ldr r2, [r3, #32] 4540 009c 41F21113 movw r3, #4369 4541 00a0 1340 ands r3, r3, r2 4542 00a2 002B cmp r3, #0 4543 00a4 0FD1 bne .L297 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 107 4544 .loc 1 1531 5 is_stmt 0 discriminator 1 4545 00a6 7B68 ldr r3, [r7, #4] 4546 00a8 1B68 ldr r3, [r3] 4547 00aa 1A6A ldr r2, [r3, #32] 4548 00ac 40F24443 movw r3, #1092 4549 00b0 1340 ands r3, r3, r2 4550 00b2 002B cmp r3, #0 4551 00b4 07D1 bne .L297 4552 .loc 1 1531 5 discriminator 2 4553 00b6 7B68 ldr r3, [r7, #4] 4554 00b8 1B68 ldr r3, [r3] 4555 00ba 5A6C ldr r2, [r3, #68] 4556 00bc 7B68 ldr r3, [r7, #4] 4557 00be 1B68 ldr r3, [r3] 4558 00c0 22F40042 bic r2, r2, #32768 4559 00c4 5A64 str r2, [r3, #68] 4560 .L297: 1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 4561 .loc 1 1534 5 is_stmt 1 4562 00c6 7B68 ldr r3, [r7, #4] 4563 00c8 1B68 ldr r3, [r3] 4564 00ca 1A6A ldr r2, [r3, #32] 4565 00cc 41F21113 movw r3, #4369 4566 00d0 1340 ands r3, r3, r2 4567 00d2 002B cmp r3, #0 4568 00d4 0FD1 bne .L298 4569 .loc 1 1534 5 is_stmt 0 discriminator 1 4570 00d6 7B68 ldr r3, [r7, #4] 4571 00d8 1B68 ldr r3, [r3] 4572 00da 1A6A ldr r2, [r3, #32] 4573 00dc 40F24443 movw r3, #1092 4574 00e0 1340 ands r3, r3, r2 4575 00e2 002B cmp r3, #0 4576 00e4 07D1 bne .L298 4577 .loc 1 1534 5 discriminator 2 4578 00e6 7B68 ldr r3, [r7, #4] 4579 00e8 1B68 ldr r3, [r3] 4580 00ea 1A68 ldr r2, [r3] 4581 00ec 7B68 ldr r3, [r7, #4] 4582 00ee 1B68 ldr r3, [r3] 4583 00f0 22F00102 bic r2, r2, #1 4584 00f4 1A60 str r2, [r3] 4585 .L298: 1535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM complementary channel state */ 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); 4586 .loc 1 1537 5 is_stmt 1 4587 00f6 3B68 ldr r3, [r7] 4588 00f8 002B cmp r3, #0 4589 00fa 04D1 bne .L299 4590 .loc 1 1537 5 is_stmt 0 discriminator 1 4591 00fc 7B68 ldr r3, [r7, #4] 4592 00fe 0122 movs r2, #1 4593 0100 83F84220 strb r2, [r3, #66] 4594 0104 13E0 b .L296 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 108 4595 .L299: 4596 .loc 1 1537 5 discriminator 2 4597 0106 3B68 ldr r3, [r7] 4598 0108 042B cmp r3, #4 4599 010a 04D1 bne .L300 4600 .loc 1 1537 5 discriminator 3 4601 010c 7B68 ldr r3, [r7, #4] 4602 010e 0122 movs r2, #1 4603 0110 83F84320 strb r2, [r3, #67] 4604 0114 0BE0 b .L296 4605 .L300: 4606 .loc 1 1537 5 discriminator 4 4607 0116 3B68 ldr r3, [r7] 4608 0118 082B cmp r3, #8 4609 011a 04D1 bne .L302 4610 .loc 1 1537 5 discriminator 6 4611 011c 7B68 ldr r3, [r7, #4] 4612 011e 0122 movs r2, #1 4613 0120 83F84420 strb r2, [r3, #68] 4614 0124 03E0 b .L296 4615 .L302: 4616 .loc 1 1537 5 discriminator 7 4617 0126 7B68 ldr r3, [r7, #4] 4618 0128 0122 movs r2, #1 4619 012a 83F84520 strb r2, [r3, #69] 4620 .L296: 1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return status; 4621 .loc 1 1541 10 is_stmt 1 4622 012e FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 4623 .loc 1 1542 1 4624 0130 1846 mov r0, r3 4625 0132 1037 adds r7, r7, #16 4626 .LCFI110: 4627 .cfi_def_cfa_offset 8 4628 0134 BD46 mov sp, r7 4629 .LCFI111: 4630 .cfi_def_cfa_register 13 4631 @ sp needed 4632 0136 80BD pop {r7, pc} 4633 .cfi_endproc 4634 .LFE256: 4636 .section .text.HAL_TIMEx_OnePulseN_Start,"ax",%progbits 4637 .align 1 4638 .global HAL_TIMEx_OnePulseN_Start 4639 .syntax unified 4640 .thumb 4641 .thumb_func 4643 HAL_TIMEx_OnePulseN_Start: 4644 .LFB257: 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 1546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 109 1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group4 Extended Timer Complementary One Pulse functions 1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Timer Complementary One Pulse functions 1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 1551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Timer Complementary One Pulse functions ##### 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides functions allowing to: 1557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary One Pulse generation. 1558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary One Pulse. 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Start the Complementary One Pulse and enable interrupts. 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Stop the Complementary One Pulse and disable interrupts. 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 1563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM One Pulse signal generation on the complementary 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * output. 1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note OutputChannel must match the pulse output channel chosen when calling 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @ref HAL_TIM_OnePulse_ConfigChannel(). 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM One Pulse handle 1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param OutputChannel pulse output channel to enable 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel) 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 4645 .loc 1 1579 1 4646 .cfi_startproc 4647 @ args = 0, pretend = 0, frame = 16 4648 @ frame_needed = 1, uses_anonymous_args = 0 4649 0000 80B5 push {r7, lr} 4650 .LCFI112: 4651 .cfi_def_cfa_offset 8 4652 .cfi_offset 7, -8 4653 .cfi_offset 14, -4 4654 0002 84B0 sub sp, sp, #16 4655 .LCFI113: 4656 .cfi_def_cfa_offset 24 4657 0004 00AF add r7, sp, #0 4658 .LCFI114: 4659 .cfi_def_cfa_register 7 4660 0006 7860 str r0, [r7, #4] 4661 0008 3960 str r1, [r7] 1580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; 4662 .loc 1 1580 77 4663 000a 3B68 ldr r3, [r7] 4664 000c 002B cmp r3, #0 4665 000e 01D1 bne .L306 4666 .loc 1 1580 77 is_stmt 0 discriminator 1 4667 0010 0423 movs r3, #4 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 110 4668 0012 00E0 b .L307 4669 .L306: 4670 .loc 1 1580 77 discriminator 2 4671 0014 0023 movs r3, #0 4672 .L307: 4673 .loc 1 1580 12 is_stmt 1 discriminator 4 4674 0016 FB60 str r3, [r7, #12] 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); 4675 .loc 1 1581 31 discriminator 4 4676 0018 7B68 ldr r3, [r7, #4] 4677 001a 93F83E30 ldrb r3, [r3, #62] 4678 001e FB72 strb r3, [r7, #11] 1582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); 4679 .loc 1 1582 31 discriminator 4 4680 0020 7B68 ldr r3, [r7, #4] 4681 0022 93F83F30 ldrb r3, [r3, #63] 4682 0026 BB72 strb r3, [r7, #10] 1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 4683 .loc 1 1583 31 discriminator 4 4684 0028 7B68 ldr r3, [r7, #4] 4685 002a 93F84230 ldrb r3, [r3, #66] 4686 002e 7B72 strb r3, [r7, #9] 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 4687 .loc 1 1584 31 discriminator 4 4688 0030 7B68 ldr r3, [r7, #4] 4689 0032 93F84330 ldrb r3, [r3, #67] 4690 0036 3B72 strb r3, [r7, #8] 1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); 1588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM channels state */ 1590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 4691 .loc 1 1590 6 discriminator 4 4692 0038 FB7A ldrb r3, [r7, #11] @ zero_extendqisi2 4693 003a 012B cmp r3, #1 4694 003c 08D1 bne .L308 1591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) 4695 .loc 1 1591 7 4696 003e BB7A ldrb r3, [r7, #10] @ zero_extendqisi2 4697 0040 012B cmp r3, #1 4698 0042 05D1 bne .L308 1592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 4699 .loc 1 1592 7 4700 0044 7B7A ldrb r3, [r7, #9] @ zero_extendqisi2 4701 0046 012B cmp r3, #1 4702 0048 02D1 bne .L308 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) 4703 .loc 1 1593 7 4704 004a 3B7A ldrb r3, [r7, #8] @ zero_extendqisi2 4705 004c 012B cmp r3, #1 4706 004e 01D0 beq .L309 4707 .L308: 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4708 .loc 1 1595 12 4709 0050 0123 movs r3, #1 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 111 4710 0052 26E0 b .L310 4711 .L309: 1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 1599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 4712 .loc 1 1599 3 4713 0054 7B68 ldr r3, [r7, #4] 4714 0056 0222 movs r2, #2 4715 0058 83F83E20 strb r2, [r3, #62] 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 4716 .loc 1 1600 3 4717 005c 7B68 ldr r3, [r7, #4] 4718 005e 0222 movs r2, #2 4719 0060 83F83F20 strb r2, [r3, #63] 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 4720 .loc 1 1601 3 4721 0064 7B68 ldr r3, [r7, #4] 4722 0066 0222 movs r2, #2 4723 0068 83F84220 strb r2, [r3, #66] 1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 4724 .loc 1 1602 3 4725 006c 7B68 ldr r3, [r7, #4] 4726 006e 0222 movs r2, #2 4727 0070 83F84320 strb r2, [r3, #67] 1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the complementary One Pulse output channel and the Input Capture channel */ 1605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); 4728 .loc 1 1605 3 4729 0074 7B68 ldr r3, [r7, #4] 4730 0076 1B68 ldr r3, [r3] 4731 0078 0422 movs r2, #4 4732 007a 3968 ldr r1, [r7] 4733 007c 1846 mov r0, r3 4734 007e FFF7FEFF bl TIM_CCxNChannelCmd 1606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); 4735 .loc 1 1606 3 4736 0082 7B68 ldr r3, [r7, #4] 4737 0084 1B68 ldr r3, [r3] 4738 0086 0122 movs r2, #1 4739 0088 F968 ldr r1, [r7, #12] 4740 008a 1846 mov r0, r3 4741 008c FFF7FEFF bl TIM_CCxChannelCmd 1607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 1609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 4742 .loc 1 1609 3 4743 0090 7B68 ldr r3, [r7, #4] 4744 0092 1B68 ldr r3, [r3] 4745 0094 5A6C ldr r2, [r3, #68] 4746 0096 7B68 ldr r3, [r7, #4] 4747 0098 1B68 ldr r3, [r3] 4748 009a 42F40042 orr r2, r2, #32768 4749 009e 5A64 str r2, [r3, #68] 1610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 112 4750 .loc 1 1612 10 4751 00a0 0023 movs r3, #0 4752 .L310: 1613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 4753 .loc 1 1613 1 4754 00a2 1846 mov r0, r3 4755 00a4 1037 adds r7, r7, #16 4756 .LCFI115: 4757 .cfi_def_cfa_offset 8 4758 00a6 BD46 mov sp, r7 4759 .LCFI116: 4760 .cfi_def_cfa_register 13 4761 @ sp needed 4762 00a8 80BD pop {r7, pc} 4763 .cfi_endproc 4764 .LFE257: 4766 .section .text.HAL_TIMEx_OnePulseN_Stop,"ax",%progbits 4767 .align 1 4768 .global HAL_TIMEx_OnePulseN_Stop 4769 .syntax unified 4770 .thumb 4771 .thumb_func 4773 HAL_TIMEx_OnePulseN_Stop: 4774 .LFB258: 1614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM One Pulse signal generation on the complementary 1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * output. 1618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note OutputChannel must match the pulse output channel chosen when calling 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @ref HAL_TIM_OnePulse_ConfigChannel(). 1620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM One Pulse handle 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param OutputChannel pulse output channel to disable 1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel) 1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 4775 .loc 1 1628 1 4776 .cfi_startproc 4777 @ args = 0, pretend = 0, frame = 16 4778 @ frame_needed = 1, uses_anonymous_args = 0 4779 0000 80B5 push {r7, lr} 4780 .LCFI117: 4781 .cfi_def_cfa_offset 8 4782 .cfi_offset 7, -8 4783 .cfi_offset 14, -4 4784 0002 84B0 sub sp, sp, #16 4785 .LCFI118: 4786 .cfi_def_cfa_offset 24 4787 0004 00AF add r7, sp, #0 4788 .LCFI119: 4789 .cfi_def_cfa_register 7 4790 0006 7860 str r0, [r7, #4] 4791 0008 3960 str r1, [r7] 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 113 4792 .loc 1 1629 77 4793 000a 3B68 ldr r3, [r7] 4794 000c 002B cmp r3, #0 4795 000e 01D1 bne .L312 4796 .loc 1 1629 77 is_stmt 0 discriminator 1 4797 0010 0423 movs r3, #4 4798 0012 00E0 b .L313 4799 .L312: 4800 .loc 1 1629 77 discriminator 2 4801 0014 0023 movs r3, #0 4802 .L313: 4803 .loc 1 1629 12 is_stmt 1 discriminator 4 4804 0016 FB60 str r3, [r7, #12] 1630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the complementary One Pulse output channel and the Input Capture channel */ 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); 4805 .loc 1 1635 3 discriminator 4 4806 0018 7B68 ldr r3, [r7, #4] 4807 001a 1B68 ldr r3, [r3] 4808 001c 0022 movs r2, #0 4809 001e 3968 ldr r1, [r7] 4810 0020 1846 mov r0, r3 4811 0022 FFF7FEFF bl TIM_CCxNChannelCmd 1636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); 4812 .loc 1 1636 3 discriminator 4 4813 0026 7B68 ldr r3, [r7, #4] 4814 0028 1B68 ldr r3, [r3] 4815 002a 0022 movs r2, #0 4816 002c F968 ldr r1, [r7, #12] 4817 002e 1846 mov r0, r3 4818 0030 FFF7FEFF bl TIM_CCxChannelCmd 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 4819 .loc 1 1639 3 discriminator 4 4820 0034 7B68 ldr r3, [r7, #4] 4821 0036 1B68 ldr r3, [r3] 4822 0038 1A6A ldr r2, [r3, #32] 4823 003a 41F21113 movw r3, #4369 4824 003e 1340 ands r3, r3, r2 4825 0040 002B cmp r3, #0 4826 0042 0FD1 bne .L314 4827 .loc 1 1639 3 is_stmt 0 discriminator 1 4828 0044 7B68 ldr r3, [r7, #4] 4829 0046 1B68 ldr r3, [r3] 4830 0048 1A6A ldr r2, [r3, #32] 4831 004a 40F24443 movw r3, #1092 4832 004e 1340 ands r3, r3, r2 4833 0050 002B cmp r3, #0 4834 0052 07D1 bne .L314 4835 .loc 1 1639 3 discriminator 2 4836 0054 7B68 ldr r3, [r7, #4] 4837 0056 1B68 ldr r3, [r3] 4838 0058 5A6C ldr r2, [r3, #68] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 114 4839 005a 7B68 ldr r3, [r7, #4] 4840 005c 1B68 ldr r3, [r3] 4841 005e 22F40042 bic r2, r2, #32768 4842 0062 5A64 str r2, [r3, #68] 4843 .L314: 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 4844 .loc 1 1642 3 is_stmt 1 4845 0064 7B68 ldr r3, [r7, #4] 4846 0066 1B68 ldr r3, [r3] 4847 0068 1A6A ldr r2, [r3, #32] 4848 006a 41F21113 movw r3, #4369 4849 006e 1340 ands r3, r3, r2 4850 0070 002B cmp r3, #0 4851 0072 0FD1 bne .L315 4852 .loc 1 1642 3 is_stmt 0 discriminator 1 4853 0074 7B68 ldr r3, [r7, #4] 4854 0076 1B68 ldr r3, [r3] 4855 0078 1A6A ldr r2, [r3, #32] 4856 007a 40F24443 movw r3, #1092 4857 007e 1340 ands r3, r3, r2 4858 0080 002B cmp r3, #0 4859 0082 07D1 bne .L315 4860 .loc 1 1642 3 discriminator 2 4861 0084 7B68 ldr r3, [r7, #4] 4862 0086 1B68 ldr r3, [r3] 4863 0088 1A68 ldr r2, [r3] 4864 008a 7B68 ldr r3, [r7, #4] 4865 008c 1B68 ldr r3, [r3] 4866 008e 22F00102 bic r2, r2, #1 4867 0092 1A60 str r2, [r3] 4868 .L315: 1643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 4869 .loc 1 1645 3 is_stmt 1 4870 0094 7B68 ldr r3, [r7, #4] 4871 0096 0122 movs r2, #1 4872 0098 83F83E20 strb r2, [r3, #62] 1646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 4873 .loc 1 1646 3 4874 009c 7B68 ldr r3, [r7, #4] 4875 009e 0122 movs r2, #1 4876 00a0 83F83F20 strb r2, [r3, #63] 1647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 4877 .loc 1 1647 3 4878 00a4 7B68 ldr r3, [r7, #4] 4879 00a6 0122 movs r2, #1 4880 00a8 83F84220 strb r2, [r3, #66] 1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 4881 .loc 1 1648 3 4882 00ac 7B68 ldr r3, [r7, #4] 4883 00ae 0122 movs r2, #1 4884 00b0 83F84320 strb r2, [r3, #67] 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 115 1651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 4885 .loc 1 1651 10 4886 00b4 0023 movs r3, #0 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 4887 .loc 1 1652 1 4888 00b6 1846 mov r0, r3 4889 00b8 1037 adds r7, r7, #16 4890 .LCFI120: 4891 .cfi_def_cfa_offset 8 4892 00ba BD46 mov sp, r7 4893 .LCFI121: 4894 .cfi_def_cfa_register 13 4895 @ sp needed 4896 00bc 80BD pop {r7, pc} 4897 .cfi_endproc 4898 .LFE258: 4900 .section .text.HAL_TIMEx_OnePulseN_Start_IT,"ax",%progbits 4901 .align 1 4902 .global HAL_TIMEx_OnePulseN_Start_IT 4903 .syntax unified 4904 .thumb 4905 .thumb_func 4907 HAL_TIMEx_OnePulseN_Start_IT: 4908 .LFB259: 1653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Starts the TIM One Pulse signal generation in interrupt mode on the 1656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * complementary channel. 1657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note OutputChannel must match the pulse output channel chosen when calling 1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @ref HAL_TIM_OnePulse_ConfigChannel(). 1659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM One Pulse handle 1660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param OutputChannel pulse output channel to enable 1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) 1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 4909 .loc 1 1667 1 4910 .cfi_startproc 4911 @ args = 0, pretend = 0, frame = 16 4912 @ frame_needed = 1, uses_anonymous_args = 0 4913 0000 80B5 push {r7, lr} 4914 .LCFI122: 4915 .cfi_def_cfa_offset 8 4916 .cfi_offset 7, -8 4917 .cfi_offset 14, -4 4918 0002 84B0 sub sp, sp, #16 4919 .LCFI123: 4920 .cfi_def_cfa_offset 24 4921 0004 00AF add r7, sp, #0 4922 .LCFI124: 4923 .cfi_def_cfa_register 7 4924 0006 7860 str r0, [r7, #4] 4925 0008 3960 str r1, [r7] 1668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 116 4926 .loc 1 1668 77 4927 000a 3B68 ldr r3, [r7] 4928 000c 002B cmp r3, #0 4929 000e 01D1 bne .L318 4930 .loc 1 1668 77 is_stmt 0 discriminator 1 4931 0010 0423 movs r3, #4 4932 0012 00E0 b .L319 4933 .L318: 4934 .loc 1 1668 77 discriminator 2 4935 0014 0023 movs r3, #0 4936 .L319: 4937 .loc 1 1668 12 is_stmt 1 discriminator 4 4938 0016 FB60 str r3, [r7, #12] 1669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); 4939 .loc 1 1669 31 discriminator 4 4940 0018 7B68 ldr r3, [r7, #4] 4941 001a 93F83E30 ldrb r3, [r3, #62] 4942 001e FB72 strb r3, [r7, #11] 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); 4943 .loc 1 1670 31 discriminator 4 4944 0020 7B68 ldr r3, [r7, #4] 4945 0022 93F83F30 ldrb r3, [r3, #63] 4946 0026 BB72 strb r3, [r7, #10] 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 4947 .loc 1 1671 31 discriminator 4 4948 0028 7B68 ldr r3, [r7, #4] 4949 002a 93F84230 ldrb r3, [r3, #66] 4950 002e 7B72 strb r3, [r7, #9] 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHA 4951 .loc 1 1672 31 discriminator 4 4952 0030 7B68 ldr r3, [r7, #4] 4953 0032 93F84330 ldrb r3, [r3, #67] 4954 0036 3B72 strb r3, [r7, #8] 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the TIM channels state */ 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 4955 .loc 1 1678 6 discriminator 4 4956 0038 FB7A ldrb r3, [r7, #11] @ zero_extendqisi2 4957 003a 012B cmp r3, #1 4958 003c 08D1 bne .L320 1679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) 4959 .loc 1 1679 7 4960 003e BB7A ldrb r3, [r7, #10] @ zero_extendqisi2 4961 0040 012B cmp r3, #1 4962 0042 05D1 bne .L320 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) 4963 .loc 1 1680 7 4964 0044 7B7A ldrb r3, [r7, #9] @ zero_extendqisi2 4965 0046 012B cmp r3, #1 4966 0048 02D1 bne .L320 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) 4967 .loc 1 1681 7 4968 004a 3B7A ldrb r3, [r7, #8] @ zero_extendqisi2 4969 004c 012B cmp r3, #1 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 117 4970 004e 01D0 beq .L321 4971 .L320: 1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_ERROR; 4972 .loc 1 1683 12 4973 0050 0123 movs r3, #1 4974 0052 36E0 b .L322 4975 .L321: 1684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 4976 .loc 1 1687 3 4977 0054 7B68 ldr r3, [r7, #4] 4978 0056 0222 movs r2, #2 4979 0058 83F83E20 strb r2, [r3, #62] 1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 4980 .loc 1 1688 3 4981 005c 7B68 ldr r3, [r7, #4] 4982 005e 0222 movs r2, #2 4983 0060 83F83F20 strb r2, [r3, #63] 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); 4984 .loc 1 1689 3 4985 0064 7B68 ldr r3, [r7, #4] 4986 0066 0222 movs r2, #2 4987 0068 83F84220 strb r2, [r3, #66] 1690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); 4988 .loc 1 1690 3 4989 006c 7B68 ldr r3, [r7, #4] 4990 006e 0222 movs r2, #2 4991 0070 83F84320 strb r2, [r3, #67] 1691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 1 interrupt */ 1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); 4992 .loc 1 1693 3 4993 0074 7B68 ldr r3, [r7, #4] 4994 0076 1B68 ldr r3, [r3] 4995 0078 DA68 ldr r2, [r3, #12] 4996 007a 7B68 ldr r3, [r7, #4] 4997 007c 1B68 ldr r3, [r3] 4998 007e 42F00202 orr r2, r2, #2 4999 0082 DA60 str r2, [r3, #12] 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the TIM Capture/Compare 2 interrupt */ 1696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); 5000 .loc 1 1696 3 5001 0084 7B68 ldr r3, [r7, #4] 5002 0086 1B68 ldr r3, [r3] 5003 0088 DA68 ldr r2, [r3, #12] 5004 008a 7B68 ldr r3, [r7, #4] 5005 008c 1B68 ldr r3, [r3] 5006 008e 42F00402 orr r2, r2, #4 5007 0092 DA60 str r2, [r3, #12] 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the complementary One Pulse output channel and the Input Capture channel */ 1699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); 5008 .loc 1 1699 3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 118 5009 0094 7B68 ldr r3, [r7, #4] 5010 0096 1B68 ldr r3, [r3] 5011 0098 0422 movs r2, #4 5012 009a 3968 ldr r1, [r7] 5013 009c 1846 mov r0, r3 5014 009e FFF7FEFF bl TIM_CCxNChannelCmd 1700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); 5015 .loc 1 1700 3 5016 00a2 7B68 ldr r3, [r7, #4] 5017 00a4 1B68 ldr r3, [r3] 5018 00a6 0122 movs r2, #1 5019 00a8 F968 ldr r1, [r7, #12] 5020 00aa 1846 mov r0, r3 5021 00ac FFF7FEFF bl TIM_CCxChannelCmd 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Main Output */ 1703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_ENABLE(htim); 5022 .loc 1 1703 3 5023 00b0 7B68 ldr r3, [r7, #4] 5024 00b2 1B68 ldr r3, [r3] 5025 00b4 5A6C ldr r2, [r3, #68] 5026 00b6 7B68 ldr r3, [r7, #4] 5027 00b8 1B68 ldr r3, [r3] 5028 00ba 42F40042 orr r2, r2, #32768 5029 00be 5A64 str r2, [r3, #68] 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5030 .loc 1 1706 10 5031 00c0 0023 movs r3, #0 5032 .L322: 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5033 .loc 1 1707 1 5034 00c2 1846 mov r0, r3 5035 00c4 1037 adds r7, r7, #16 5036 .LCFI125: 5037 .cfi_def_cfa_offset 8 5038 00c6 BD46 mov sp, r7 5039 .LCFI126: 5040 .cfi_def_cfa_register 13 5041 @ sp needed 5042 00c8 80BD pop {r7, pc} 5043 .cfi_endproc 5044 .LFE259: 5046 .section .text.HAL_TIMEx_OnePulseN_Stop_IT,"ax",%progbits 5047 .align 1 5048 .global HAL_TIMEx_OnePulseN_Stop_IT 5049 .syntax unified 5050 .thumb 5051 .thumb_func 5053 HAL_TIMEx_OnePulseN_Stop_IT: 5054 .LFB260: 1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Stops the TIM One Pulse signal generation in interrupt mode on the 1711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * complementary channel. 1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note OutputChannel must match the pulse output channel chosen when calling ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 119 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @ref HAL_TIM_OnePulse_ConfigChannel(). 1714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM One Pulse handle 1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param OutputChannel pulse output channel to disable 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 selected 1718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 selected 1719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5055 .loc 1 1722 1 5056 .cfi_startproc 5057 @ args = 0, pretend = 0, frame = 16 5058 @ frame_needed = 1, uses_anonymous_args = 0 5059 0000 80B5 push {r7, lr} 5060 .LCFI127: 5061 .cfi_def_cfa_offset 8 5062 .cfi_offset 7, -8 5063 .cfi_offset 14, -4 5064 0002 84B0 sub sp, sp, #16 5065 .LCFI128: 5066 .cfi_def_cfa_offset 24 5067 0004 00AF add r7, sp, #0 5068 .LCFI129: 5069 .cfi_def_cfa_register 7 5070 0006 7860 str r0, [r7, #4] 5071 0008 3960 str r1, [r7] 1723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; 5072 .loc 1 1723 77 5073 000a 3B68 ldr r3, [r7] 5074 000c 002B cmp r3, #0 5075 000e 01D1 bne .L324 5076 .loc 1 1723 77 is_stmt 0 discriminator 1 5077 0010 0423 movs r3, #4 5078 0012 00E0 b .L325 5079 .L324: 5080 .loc 1 1723 77 discriminator 2 5081 0014 0023 movs r3, #0 5082 .L325: 5083 .loc 1 1723 12 is_stmt 1 discriminator 4 5084 0016 FB60 str r3, [r7, #12] 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); 1727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 1 interrupt */ 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); 5085 .loc 1 1729 3 discriminator 4 5086 0018 7B68 ldr r3, [r7, #4] 5087 001a 1B68 ldr r3, [r3] 5088 001c DA68 ldr r2, [r3, #12] 5089 001e 7B68 ldr r3, [r7, #4] 5090 0020 1B68 ldr r3, [r3] 5091 0022 22F00202 bic r2, r2, #2 5092 0026 DA60 str r2, [r3, #12] 1730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the TIM Capture/Compare 2 interrupt */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 120 1732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); 5093 .loc 1 1732 3 discriminator 4 5094 0028 7B68 ldr r3, [r7, #4] 5095 002a 1B68 ldr r3, [r3] 5096 002c DA68 ldr r2, [r3, #12] 5097 002e 7B68 ldr r3, [r7, #4] 5098 0030 1B68 ldr r3, [r3] 5099 0032 22F00402 bic r2, r2, #4 5100 0036 DA60 str r2, [r3, #12] 1733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the complementary One Pulse output channel and the Input Capture channel */ 1735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); 5101 .loc 1 1735 3 discriminator 4 5102 0038 7B68 ldr r3, [r7, #4] 5103 003a 1B68 ldr r3, [r3] 5104 003c 0022 movs r2, #0 5105 003e 3968 ldr r1, [r7] 5106 0040 1846 mov r0, r3 5107 0042 FFF7FEFF bl TIM_CCxNChannelCmd 1736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); 5108 .loc 1 1736 3 discriminator 4 5109 0046 7B68 ldr r3, [r7, #4] 5110 0048 1B68 ldr r3, [r3] 5111 004a 0022 movs r2, #0 5112 004c F968 ldr r1, [r7, #12] 5113 004e 1846 mov r0, r3 5114 0050 FFF7FEFF bl TIM_CCxChannelCmd 1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Main Output */ 1739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_MOE_DISABLE(htim); 5115 .loc 1 1739 3 discriminator 4 5116 0054 7B68 ldr r3, [r7, #4] 5117 0056 1B68 ldr r3, [r3] 5118 0058 1A6A ldr r2, [r3, #32] 5119 005a 41F21113 movw r3, #4369 5120 005e 1340 ands r3, r3, r2 5121 0060 002B cmp r3, #0 5122 0062 0FD1 bne .L326 5123 .loc 1 1739 3 is_stmt 0 discriminator 1 5124 0064 7B68 ldr r3, [r7, #4] 5125 0066 1B68 ldr r3, [r3] 5126 0068 1A6A ldr r2, [r3, #32] 5127 006a 40F24443 movw r3, #1092 5128 006e 1340 ands r3, r3, r2 5129 0070 002B cmp r3, #0 5130 0072 07D1 bne .L326 5131 .loc 1 1739 3 discriminator 2 5132 0074 7B68 ldr r3, [r7, #4] 5133 0076 1B68 ldr r3, [r3] 5134 0078 5A6C ldr r2, [r3, #68] 5135 007a 7B68 ldr r3, [r7, #4] 5136 007c 1B68 ldr r3, [r3] 5137 007e 22F40042 bic r2, r2, #32768 5138 0082 5A64 str r2, [r3, #68] 5139 .L326: 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable the Peripheral */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 121 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE(htim); 5140 .loc 1 1742 3 is_stmt 1 5141 0084 7B68 ldr r3, [r7, #4] 5142 0086 1B68 ldr r3, [r3] 5143 0088 1A6A ldr r2, [r3, #32] 5144 008a 41F21113 movw r3, #4369 5145 008e 1340 ands r3, r3, r2 5146 0090 002B cmp r3, #0 5147 0092 0FD1 bne .L327 5148 .loc 1 1742 3 is_stmt 0 discriminator 1 5149 0094 7B68 ldr r3, [r7, #4] 5150 0096 1B68 ldr r3, [r3] 5151 0098 1A6A ldr r2, [r3, #32] 5152 009a 40F24443 movw r3, #1092 5153 009e 1340 ands r3, r3, r2 5154 00a0 002B cmp r3, #0 5155 00a2 07D1 bne .L327 5156 .loc 1 1742 3 discriminator 2 5157 00a4 7B68 ldr r3, [r7, #4] 5158 00a6 1B68 ldr r3, [r3] 5159 00a8 1A68 ldr r2, [r3] 5160 00aa 7B68 ldr r3, [r7, #4] 5161 00ac 1B68 ldr r3, [r3] 5162 00ae 22F00102 bic r2, r2, #1 5163 00b2 1A60 str r2, [r3] 5164 .L327: 1743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the TIM channels state */ 1745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 5165 .loc 1 1745 3 is_stmt 1 5166 00b4 7B68 ldr r3, [r7, #4] 5167 00b6 0122 movs r2, #1 5168 00b8 83F83E20 strb r2, [r3, #62] 1746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 5169 .loc 1 1746 3 5170 00bc 7B68 ldr r3, [r7, #4] 5171 00be 0122 movs r2, #1 5172 00c0 83F83F20 strb r2, [r3, #63] 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 5173 .loc 1 1747 3 5174 00c4 7B68 ldr r3, [r7, #4] 5175 00c6 0122 movs r2, #1 5176 00c8 83F84220 strb r2, [r3, #66] 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 5177 .loc 1 1748 3 5178 00cc 7B68 ldr r3, [r7, #4] 5179 00ce 0122 movs r2, #1 5180 00d0 83F84320 strb r2, [r3, #67] 1749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Return function status */ 1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5181 .loc 1 1751 10 5182 00d4 0023 movs r3, #0 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5183 .loc 1 1752 1 5184 00d6 1846 mov r0, r3 5185 00d8 1037 adds r7, r7, #16 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 122 5186 .LCFI130: 5187 .cfi_def_cfa_offset 8 5188 00da BD46 mov sp, r7 5189 .LCFI131: 5190 .cfi_def_cfa_register 13 5191 @ sp needed 5192 00dc 80BD pop {r7, pc} 5193 .cfi_endproc 5194 .LFE260: 5196 .section .text.HAL_TIMEx_ConfigCommutEvent,"ax",%progbits 5197 .align 1 5198 .global HAL_TIMEx_ConfigCommutEvent 5199 .syntax unified 5200 .thumb 5201 .thumb_func 5203 HAL_TIMEx_ConfigCommutEvent: 5204 .LFB261: 1753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 1756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group5 Extended Peripheral Control functions 1759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Peripheral Control functions 1760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Peripheral Control functions ##### 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 1765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides functions allowing to: 1767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Configure the commutation event in case of use of the Hall sensor interface. 1768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Configure Output channels for OC and PWM mode. 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Configure Complementary channels, break features and dead time. 1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Configure Master synchronization. 1772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Configure timer remapping capabilities. 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 1776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configure the TIM commutation event sequence. 1780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note This function is mandatory to use the commutation event in order to 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * update the configuration at each commutation detection on the TRGI input of the Timer, 1782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the typical use of this feature is with the use of another Timer(interface Timer) 1783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * configured in Hall sensor interface, this interface Timer will generate the 1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * commutation at its TRGO output (connected to Timer used in this function) each time 1785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the TI1 of the Interface Timer detect a commutation at its input TI1. 1786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall 1788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR0: Internal trigger 0 selected 1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR1: Internal trigger 1 selected 1791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR2: Internal trigger 2 selected 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR3: Internal trigger 3 selected ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 123 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_NONE: No trigger is needed 1794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param CommutationSource the Commutation Event source 1795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer 1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t CommutationSource) 1802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5205 .loc 1 1802 1 5206 .cfi_startproc 5207 @ args = 0, pretend = 0, frame = 16 5208 @ frame_needed = 1, uses_anonymous_args = 0 5209 @ link register save eliminated. 5210 0000 80B4 push {r7} 5211 .LCFI132: 5212 .cfi_def_cfa_offset 4 5213 .cfi_offset 7, -4 5214 0002 85B0 sub sp, sp, #20 5215 .LCFI133: 5216 .cfi_def_cfa_offset 24 5217 0004 00AF add r7, sp, #0 5218 .LCFI134: 5219 .cfi_def_cfa_register 7 5220 0006 F860 str r0, [r7, #12] 5221 0008 B960 str r1, [r7, #8] 5222 000a 7A60 str r2, [r7, #4] 1803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); 1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); 1806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 5223 .loc 1 1807 3 5224 000c FB68 ldr r3, [r7, #12] 5225 000e 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 5226 0012 012B cmp r3, #1 5227 0014 01D1 bne .L330 5228 .loc 1 1807 3 is_stmt 0 discriminator 1 5229 0016 0223 movs r3, #2 5230 0018 4CE0 b .L331 5231 .L330: 5232 .loc 1 1807 3 discriminator 2 5233 001a FB68 ldr r3, [r7, #12] 5234 001c 0122 movs r2, #1 5235 001e 83F83C20 strb r2, [r3, #60] 1808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || 5236 .loc 1 1809 6 is_stmt 1 discriminator 2 5237 0022 BB68 ldr r3, [r7, #8] 5238 0024 002B cmp r3, #0 5239 0026 08D0 beq .L332 5240 .loc 1 1809 37 discriminator 1 5241 0028 BB68 ldr r3, [r7, #8] 5242 002a 102B cmp r3, #16 5243 002c 05D0 beq .L332 5244 .loc 1 1809 70 discriminator 2 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 124 5245 002e BB68 ldr r3, [r7, #8] 5246 0030 202B cmp r3, #32 5247 0032 02D0 beq .L332 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) 5248 .loc 1 1810 37 5249 0034 BB68 ldr r3, [r7, #8] 5250 0036 302B cmp r3, #48 5251 0038 0FD1 bne .L333 5252 .L332: 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Input trigger */ 1813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR &= ~TIM_SMCR_TS; 5253 .loc 1 1813 9 5254 003a FB68 ldr r3, [r7, #12] 5255 003c 1B68 ldr r3, [r3] 5256 .loc 1 1813 26 5257 003e 9A68 ldr r2, [r3, #8] 5258 .loc 1 1813 9 5259 0040 FB68 ldr r3, [r7, #12] 5260 0042 1B68 ldr r3, [r3] 5261 .loc 1 1813 26 5262 0044 22F07002 bic r2, r2, #112 5263 0048 9A60 str r2, [r3, #8] 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR |= InputTrigger; 5264 .loc 1 1814 9 5265 004a FB68 ldr r3, [r7, #12] 5266 004c 1B68 ldr r3, [r3] 5267 .loc 1 1814 26 5268 004e 9968 ldr r1, [r3, #8] 5269 .loc 1 1814 9 5270 0050 FB68 ldr r3, [r7, #12] 5271 0052 1B68 ldr r3, [r3] 5272 .loc 1 1814 26 5273 0054 BA68 ldr r2, [r7, #8] 5274 0056 0A43 orrs r2, r2, r1 5275 0058 9A60 str r2, [r3, #8] 5276 .L333: 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Capture Compare preload feature */ 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= TIM_CR2_CCPC; 5277 .loc 1 1818 7 5278 005a FB68 ldr r3, [r7, #12] 5279 005c 1B68 ldr r3, [r3] 5280 .loc 1 1818 23 5281 005e 5A68 ldr r2, [r3, #4] 5282 .loc 1 1818 7 5283 0060 FB68 ldr r3, [r7, #12] 5284 0062 1B68 ldr r3, [r3] 5285 .loc 1 1818 23 5286 0064 42F00102 orr r2, r2, #1 5287 0068 5A60 str r2, [r3, #4] 1819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Commutation event source */ 1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 &= ~TIM_CR2_CCUS; 5288 .loc 1 1820 7 5289 006a FB68 ldr r3, [r7, #12] 5290 006c 1B68 ldr r3, [r3] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 125 5291 .loc 1 1820 23 5292 006e 5A68 ldr r2, [r3, #4] 5293 .loc 1 1820 7 5294 0070 FB68 ldr r3, [r7, #12] 5295 0072 1B68 ldr r3, [r3] 5296 .loc 1 1820 23 5297 0074 22F00402 bic r2, r2, #4 5298 0078 5A60 str r2, [r3, #4] 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= CommutationSource; 5299 .loc 1 1821 7 5300 007a FB68 ldr r3, [r7, #12] 5301 007c 1B68 ldr r3, [r3] 5302 .loc 1 1821 23 5303 007e 5968 ldr r1, [r3, #4] 5304 .loc 1 1821 7 5305 0080 FB68 ldr r3, [r7, #12] 5306 0082 1B68 ldr r3, [r3] 5307 .loc 1 1821 23 5308 0084 7A68 ldr r2, [r7, #4] 5309 0086 0A43 orrs r2, r2, r1 5310 0088 5A60 str r2, [r3, #4] 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable Commutation Interrupt */ 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); 5311 .loc 1 1824 3 5312 008a FB68 ldr r3, [r7, #12] 5313 008c 1B68 ldr r3, [r3] 5314 008e DA68 ldr r2, [r3, #12] 5315 0090 FB68 ldr r3, [r7, #12] 5316 0092 1B68 ldr r3, [r3] 5317 0094 22F02002 bic r2, r2, #32 5318 0098 DA60 str r2, [r3, #12] 1825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable Commutation DMA request */ 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); 5319 .loc 1 1827 3 5320 009a FB68 ldr r3, [r7, #12] 5321 009c 1B68 ldr r3, [r3] 5322 009e DA68 ldr r2, [r3, #12] 5323 00a0 FB68 ldr r3, [r7, #12] 5324 00a2 1B68 ldr r3, [r3] 5325 00a4 22F40052 bic r2, r2, #8192 5326 00a8 DA60 str r2, [r3, #12] 1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 5327 .loc 1 1829 3 5328 00aa FB68 ldr r3, [r7, #12] 5329 00ac 0022 movs r2, #0 5330 00ae 83F83C20 strb r2, [r3, #60] 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5331 .loc 1 1831 10 5332 00b2 0023 movs r3, #0 5333 .L331: 1832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5334 .loc 1 1832 1 5335 00b4 1846 mov r0, r3 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 126 5336 00b6 1437 adds r7, r7, #20 5337 .LCFI135: 5338 .cfi_def_cfa_offset 4 5339 00b8 BD46 mov sp, r7 5340 .LCFI136: 5341 .cfi_def_cfa_register 13 5342 @ sp needed 5343 00ba 5DF8047B ldr r7, [sp], #4 5344 .LCFI137: 5345 .cfi_restore 7 5346 .cfi_def_cfa_offset 0 5347 00be 7047 bx lr 5348 .cfi_endproc 5349 .LFE261: 5351 .section .text.HAL_TIMEx_ConfigCommutEvent_IT,"ax",%progbits 5352 .align 1 5353 .global HAL_TIMEx_ConfigCommutEvent_IT 5354 .syntax unified 5355 .thumb 5356 .thumb_func 5358 HAL_TIMEx_ConfigCommutEvent_IT: 5359 .LFB262: 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configure the TIM commutation event sequence with interrupt. 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note This function is mandatory to use the commutation event in order to 1837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * update the configuration at each commutation detection on the TRGI input of the Timer, 1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the typical use of this feature is with the use of another Timer(interface Timer) 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * configured in Hall sensor interface, this interface Timer will generate the 1840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * commutation at its TRGO output (connected to Timer used in this function) each time 1841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the TI1 of the Interface Timer detect a commutation at its input TI1. 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall 1844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR0: Internal trigger 0 selected 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR1: Internal trigger 1 selected 1847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR2: Internal trigger 2 selected 1848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR3: Internal trigger 3 selected 1849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_NONE: No trigger is needed 1850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param CommutationSource the Commutation Event source 1851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer 1853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t CommutationSource) 1858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5360 .loc 1 1858 1 5361 .cfi_startproc 5362 @ args = 0, pretend = 0, frame = 16 5363 @ frame_needed = 1, uses_anonymous_args = 0 5364 @ link register save eliminated. 5365 0000 80B4 push {r7} 5366 .LCFI138: 5367 .cfi_def_cfa_offset 4 5368 .cfi_offset 7, -4 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 127 5369 0002 85B0 sub sp, sp, #20 5370 .LCFI139: 5371 .cfi_def_cfa_offset 24 5372 0004 00AF add r7, sp, #0 5373 .LCFI140: 5374 .cfi_def_cfa_register 7 5375 0006 F860 str r0, [r7, #12] 5376 0008 B960 str r1, [r7, #8] 5377 000a 7A60 str r2, [r7, #4] 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); 1861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 5378 .loc 1 1863 3 5379 000c FB68 ldr r3, [r7, #12] 5380 000e 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 5381 0012 012B cmp r3, #1 5382 0014 01D1 bne .L335 5383 .loc 1 1863 3 is_stmt 0 discriminator 1 5384 0016 0223 movs r3, #2 5385 0018 4CE0 b .L336 5386 .L335: 5387 .loc 1 1863 3 discriminator 2 5388 001a FB68 ldr r3, [r7, #12] 5389 001c 0122 movs r2, #1 5390 001e 83F83C20 strb r2, [r3, #60] 1864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || 5391 .loc 1 1865 6 is_stmt 1 discriminator 2 5392 0022 BB68 ldr r3, [r7, #8] 5393 0024 002B cmp r3, #0 5394 0026 08D0 beq .L337 5395 .loc 1 1865 37 discriminator 1 5396 0028 BB68 ldr r3, [r7, #8] 5397 002a 102B cmp r3, #16 5398 002c 05D0 beq .L337 5399 .loc 1 1865 70 discriminator 2 5400 002e BB68 ldr r3, [r7, #8] 5401 0030 202B cmp r3, #32 5402 0032 02D0 beq .L337 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) 5403 .loc 1 1866 37 5404 0034 BB68 ldr r3, [r7, #8] 5405 0036 302B cmp r3, #48 5406 0038 0FD1 bne .L338 5407 .L337: 1867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Input trigger */ 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR &= ~TIM_SMCR_TS; 5408 .loc 1 1869 9 5409 003a FB68 ldr r3, [r7, #12] 5410 003c 1B68 ldr r3, [r3] 5411 .loc 1 1869 26 5412 003e 9A68 ldr r2, [r3, #8] 5413 .loc 1 1869 9 5414 0040 FB68 ldr r3, [r7, #12] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 128 5415 0042 1B68 ldr r3, [r3] 5416 .loc 1 1869 26 5417 0044 22F07002 bic r2, r2, #112 5418 0048 9A60 str r2, [r3, #8] 1870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR |= InputTrigger; 5419 .loc 1 1870 9 5420 004a FB68 ldr r3, [r7, #12] 5421 004c 1B68 ldr r3, [r3] 5422 .loc 1 1870 26 5423 004e 9968 ldr r1, [r3, #8] 5424 .loc 1 1870 9 5425 0050 FB68 ldr r3, [r7, #12] 5426 0052 1B68 ldr r3, [r3] 5427 .loc 1 1870 26 5428 0054 BA68 ldr r2, [r7, #8] 5429 0056 0A43 orrs r2, r2, r1 5430 0058 9A60 str r2, [r3, #8] 5431 .L338: 1871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Capture Compare preload feature */ 1874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= TIM_CR2_CCPC; 5432 .loc 1 1874 7 5433 005a FB68 ldr r3, [r7, #12] 5434 005c 1B68 ldr r3, [r3] 5435 .loc 1 1874 23 5436 005e 5A68 ldr r2, [r3, #4] 5437 .loc 1 1874 7 5438 0060 FB68 ldr r3, [r7, #12] 5439 0062 1B68 ldr r3, [r3] 5440 .loc 1 1874 23 5441 0064 42F00102 orr r2, r2, #1 5442 0068 5A60 str r2, [r3, #4] 1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Commutation event source */ 1876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 &= ~TIM_CR2_CCUS; 5443 .loc 1 1876 7 5444 006a FB68 ldr r3, [r7, #12] 5445 006c 1B68 ldr r3, [r3] 5446 .loc 1 1876 23 5447 006e 5A68 ldr r2, [r3, #4] 5448 .loc 1 1876 7 5449 0070 FB68 ldr r3, [r7, #12] 5450 0072 1B68 ldr r3, [r3] 5451 .loc 1 1876 23 5452 0074 22F00402 bic r2, r2, #4 5453 0078 5A60 str r2, [r3, #4] 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= CommutationSource; 5454 .loc 1 1877 7 5455 007a FB68 ldr r3, [r7, #12] 5456 007c 1B68 ldr r3, [r3] 5457 .loc 1 1877 23 5458 007e 5968 ldr r1, [r3, #4] 5459 .loc 1 1877 7 5460 0080 FB68 ldr r3, [r7, #12] 5461 0082 1B68 ldr r3, [r3] 5462 .loc 1 1877 23 5463 0084 7A68 ldr r2, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 129 5464 0086 0A43 orrs r2, r2, r1 5465 0088 5A60 str r2, [r3, #4] 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable Commutation DMA request */ 1880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); 5466 .loc 1 1880 3 5467 008a FB68 ldr r3, [r7, #12] 5468 008c 1B68 ldr r3, [r3] 5469 008e DA68 ldr r2, [r3, #12] 5470 0090 FB68 ldr r3, [r7, #12] 5471 0092 1B68 ldr r3, [r3] 5472 0094 22F40052 bic r2, r2, #8192 5473 0098 DA60 str r2, [r3, #12] 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Commutation Interrupt */ 1883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_IT(htim, TIM_IT_COM); 5474 .loc 1 1883 3 5475 009a FB68 ldr r3, [r7, #12] 5476 009c 1B68 ldr r3, [r3] 5477 009e DA68 ldr r2, [r3, #12] 5478 00a0 FB68 ldr r3, [r7, #12] 5479 00a2 1B68 ldr r3, [r3] 5480 00a4 42F02002 orr r2, r2, #32 5481 00a8 DA60 str r2, [r3, #12] 1884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 5482 .loc 1 1885 3 5483 00aa FB68 ldr r3, [r7, #12] 5484 00ac 0022 movs r2, #0 5485 00ae 83F83C20 strb r2, [r3, #60] 1886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5486 .loc 1 1887 10 5487 00b2 0023 movs r3, #0 5488 .L336: 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5489 .loc 1 1888 1 5490 00b4 1846 mov r0, r3 5491 00b6 1437 adds r7, r7, #20 5492 .LCFI141: 5493 .cfi_def_cfa_offset 4 5494 00b8 BD46 mov sp, r7 5495 .LCFI142: 5496 .cfi_def_cfa_register 13 5497 @ sp needed 5498 00ba 5DF8047B ldr r7, [sp], #4 5499 .LCFI143: 5500 .cfi_restore 7 5501 .cfi_def_cfa_offset 0 5502 00be 7047 bx lr 5503 .cfi_endproc 5504 .LFE262: 5506 .section .text.HAL_TIMEx_ConfigCommutEvent_DMA,"ax",%progbits 5507 .align 1 5508 .global HAL_TIMEx_ConfigCommutEvent_DMA 5509 .syntax unified 5510 .thumb ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 130 5511 .thumb_func 5513 HAL_TIMEx_ConfigCommutEvent_DMA: 5514 .LFB263: 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configure the TIM commutation event sequence with DMA. 1892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note This function is mandatory to use the commutation event in order to 1893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * update the configuration at each commutation detection on the TRGI input of the Timer, 1894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the typical use of this feature is with the use of another Timer(interface Timer) 1895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * configured in Hall sensor interface, this interface Timer will generate the 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * commutation at its TRGO output (connected to Timer used in this function) each time 1897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * the TI1 of the Interface Timer detect a commutation at its input TI1. 1898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note The user should configure the DMA in his own software, in This function only the COMDE b 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 1900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall 1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR0: Internal trigger 0 selected 1903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR1: Internal trigger 1 selected 1904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR2: Internal trigger 2 selected 1905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_ITR3: Internal trigger 3 selected 1906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TS_NONE: No trigger is needed 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param CommutationSource the Commutation Event source 1908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 1909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer 1910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG 1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, 1914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t CommutationSource) 1915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5515 .loc 1 1915 1 5516 .cfi_startproc 5517 @ args = 0, pretend = 0, frame = 16 5518 @ frame_needed = 1, uses_anonymous_args = 0 5519 @ link register save eliminated. 5520 0000 80B4 push {r7} 5521 .LCFI144: 5522 .cfi_def_cfa_offset 4 5523 .cfi_offset 7, -4 5524 0002 85B0 sub sp, sp, #20 5525 .LCFI145: 5526 .cfi_def_cfa_offset 24 5527 0004 00AF add r7, sp, #0 5528 .LCFI146: 5529 .cfi_def_cfa_register 7 5530 0006 F860 str r0, [r7, #12] 5531 0008 B960 str r1, [r7, #8] 5532 000a 7A60 str r2, [r7, #4] 1916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); 1918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); 1919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 5533 .loc 1 1920 3 5534 000c FB68 ldr r3, [r7, #12] 5535 000e 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 5536 0012 012B cmp r3, #1 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 131 5537 0014 01D1 bne .L340 5538 .loc 1 1920 3 is_stmt 0 discriminator 1 5539 0016 0223 movs r3, #2 5540 0018 58E0 b .L341 5541 .L340: 5542 .loc 1 1920 3 discriminator 2 5543 001a FB68 ldr r3, [r7, #12] 5544 001c 0122 movs r2, #1 5545 001e 83F83C20 strb r2, [r3, #60] 1921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || 5546 .loc 1 1922 6 is_stmt 1 discriminator 2 5547 0022 BB68 ldr r3, [r7, #8] 5548 0024 002B cmp r3, #0 5549 0026 08D0 beq .L342 5550 .loc 1 1922 37 discriminator 1 5551 0028 BB68 ldr r3, [r7, #8] 5552 002a 102B cmp r3, #16 5553 002c 05D0 beq .L342 5554 .loc 1 1922 70 discriminator 2 5555 002e BB68 ldr r3, [r7, #8] 5556 0030 202B cmp r3, #32 5557 0032 02D0 beq .L342 1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) 5558 .loc 1 1923 37 5559 0034 BB68 ldr r3, [r7, #8] 5560 0036 302B cmp r3, #48 5561 0038 0FD1 bne .L343 5562 .L342: 1924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Input trigger */ 1926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR &= ~TIM_SMCR_TS; 5563 .loc 1 1926 9 5564 003a FB68 ldr r3, [r7, #12] 5565 003c 1B68 ldr r3, [r3] 5566 .loc 1 1926 26 5567 003e 9A68 ldr r2, [r3, #8] 5568 .loc 1 1926 9 5569 0040 FB68 ldr r3, [r7, #12] 5570 0042 1B68 ldr r3, [r3] 5571 .loc 1 1926 26 5572 0044 22F07002 bic r2, r2, #112 5573 0048 9A60 str r2, [r3, #8] 1927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR |= InputTrigger; 5574 .loc 1 1927 9 5575 004a FB68 ldr r3, [r7, #12] 5576 004c 1B68 ldr r3, [r3] 5577 .loc 1 1927 26 5578 004e 9968 ldr r1, [r3, #8] 5579 .loc 1 1927 9 5580 0050 FB68 ldr r3, [r7, #12] 5581 0052 1B68 ldr r3, [r3] 5582 .loc 1 1927 26 5583 0054 BA68 ldr r2, [r7, #8] 5584 0056 0A43 orrs r2, r2, r1 5585 0058 9A60 str r2, [r3, #8] 5586 .L343: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 132 1928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Capture Compare preload feature */ 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= TIM_CR2_CCPC; 5587 .loc 1 1931 7 5588 005a FB68 ldr r3, [r7, #12] 5589 005c 1B68 ldr r3, [r3] 5590 .loc 1 1931 23 5591 005e 5A68 ldr r2, [r3, #4] 5592 .loc 1 1931 7 5593 0060 FB68 ldr r3, [r7, #12] 5594 0062 1B68 ldr r3, [r3] 5595 .loc 1 1931 23 5596 0064 42F00102 orr r2, r2, #1 5597 0068 5A60 str r2, [r3, #4] 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the Commutation event source */ 1933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 &= ~TIM_CR2_CCUS; 5598 .loc 1 1933 7 5599 006a FB68 ldr r3, [r7, #12] 5600 006c 1B68 ldr r3, [r3] 5601 .loc 1 1933 23 5602 006e 5A68 ldr r2, [r3, #4] 5603 .loc 1 1933 7 5604 0070 FB68 ldr r3, [r7, #12] 5605 0072 1B68 ldr r3, [r3] 5606 .loc 1 1933 23 5607 0074 22F00402 bic r2, r2, #4 5608 0078 5A60 str r2, [r3, #4] 1934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 |= CommutationSource; 5609 .loc 1 1934 7 5610 007a FB68 ldr r3, [r7, #12] 5611 007c 1B68 ldr r3, [r3] 5612 .loc 1 1934 23 5613 007e 5968 ldr r1, [r3, #4] 5614 .loc 1 1934 7 5615 0080 FB68 ldr r3, [r7, #12] 5616 0082 1B68 ldr r3, [r3] 5617 .loc 1 1934 23 5618 0084 7A68 ldr r2, [r7, #4] 5619 0086 0A43 orrs r2, r2, r1 5620 0088 5A60 str r2, [r3, #4] 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Commutation DMA Request */ 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA Commutation Callback */ 1938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; 5621 .loc 1 1938 13 5622 008a FB68 ldr r3, [r7, #12] 5623 008c 5B6B ldr r3, [r3, #52] 5624 .loc 1 1938 56 5625 008e 124A ldr r2, .L344 5626 0090 DA63 str r2, [r3, #60] 1939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; 5627 .loc 1 1939 13 5628 0092 FB68 ldr r3, [r7, #12] 5629 0094 5B6B ldr r3, [r3, #52] 5630 .loc 1 1939 60 5631 0096 114A ldr r2, .L344+4 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 133 5632 0098 1A64 str r2, [r3, #64] 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the DMA error callback */ 1941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError; 5633 .loc 1 1941 13 5634 009a FB68 ldr r3, [r7, #12] 5635 009c 5B6B ldr r3, [r3, #52] 5636 .loc 1 1941 57 5637 009e 104A ldr r2, .L344+8 5638 00a0 DA64 str r2, [r3, #76] 1942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Disable Commutation Interrupt */ 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); 5639 .loc 1 1944 3 5640 00a2 FB68 ldr r3, [r7, #12] 5641 00a4 1B68 ldr r3, [r3] 5642 00a6 DA68 ldr r2, [r3, #12] 5643 00a8 FB68 ldr r3, [r7, #12] 5644 00aa 1B68 ldr r3, [r3] 5645 00ac 22F02002 bic r2, r2, #32 5646 00b0 DA60 str r2, [r3, #12] 1945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Enable the Commutation DMA Request */ 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_COM); 5647 .loc 1 1947 3 5648 00b2 FB68 ldr r3, [r7, #12] 5649 00b4 1B68 ldr r3, [r3] 5650 00b6 DA68 ldr r2, [r3, #12] 5651 00b8 FB68 ldr r3, [r7, #12] 5652 00ba 1B68 ldr r3, [r3] 5653 00bc 42F40052 orr r2, r2, #8192 5654 00c0 DA60 str r2, [r3, #12] 1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 5655 .loc 1 1949 3 5656 00c2 FB68 ldr r3, [r7, #12] 5657 00c4 0022 movs r2, #0 5658 00c6 83F83C20 strb r2, [r3, #60] 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5659 .loc 1 1951 10 5660 00ca 0023 movs r3, #0 5661 .L341: 1952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5662 .loc 1 1952 1 5663 00cc 1846 mov r0, r3 5664 00ce 1437 adds r7, r7, #20 5665 .LCFI147: 5666 .cfi_def_cfa_offset 4 5667 00d0 BD46 mov sp, r7 5668 .LCFI148: 5669 .cfi_def_cfa_register 13 5670 @ sp needed 5671 00d2 5DF8047B ldr r7, [sp], #4 5672 .LCFI149: 5673 .cfi_restore 7 5674 .cfi_def_cfa_offset 0 5675 00d6 7047 bx lr ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 134 5676 .L345: 5677 .align 2 5678 .L344: 5679 00d8 00000000 .word TIMEx_DMACommutationCplt 5680 00dc 00000000 .word TIMEx_DMACommutationHalfCplt 5681 00e0 00000000 .word TIM_DMAError 5682 .cfi_endproc 5683 .LFE263: 5685 .section .text.HAL_TIMEx_MasterConfigSynchronization,"ax",%progbits 5686 .align 1 5687 .global HAL_TIMEx_MasterConfigSynchronization 5688 .syntax unified 5689 .thumb 5690 .thumb_func 5692 HAL_TIMEx_MasterConfigSynchronization: 5693 .LFB264: 1953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 1955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configures the TIM in master mode. 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle. 1957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param sMasterConfig pointer to a TIM_MasterConfigTypeDef structure that 1958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * contains the selected trigger output (TRGO) and the Master/Slave 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * mode. 1960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 1961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, 1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_MasterConfigTypeDef *sMasterConfig) 1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5694 .loc 1 1964 1 5695 .cfi_startproc 5696 @ args = 0, pretend = 0, frame = 16 5697 @ frame_needed = 1, uses_anonymous_args = 0 5698 @ link register save eliminated. 5699 0000 80B4 push {r7} 5700 .LCFI150: 5701 .cfi_def_cfa_offset 4 5702 .cfi_offset 7, -4 5703 0002 85B0 sub sp, sp, #20 5704 .LCFI151: 5705 .cfi_def_cfa_offset 24 5706 0004 00AF add r7, sp, #0 5707 .LCFI152: 5708 .cfi_def_cfa_register 7 5709 0006 7860 str r0, [r7, #4] 5710 0008 3960 str r1, [r7] 1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpcr2; 1966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpsmcr; 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 1969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_MASTER_INSTANCE(htim->Instance)); 1970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_TRGO_SOURCE(sMasterConfig->MasterOutputTrigger)); 1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_MSM_STATE(sMasterConfig->MasterSlaveMode)); 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check input state */ 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 5711 .loc 1 1974 3 5712 000a 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 135 5713 000c 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 5714 0010 012B cmp r3, #1 5715 0012 01D1 bne .L347 5716 .loc 1 1974 3 is_stmt 0 discriminator 1 5717 0014 0223 movs r3, #2 5718 0016 5AE0 b .L348 5719 .L347: 5720 .loc 1 1974 3 discriminator 2 5721 0018 7B68 ldr r3, [r7, #4] 5722 001a 0122 movs r2, #1 5723 001c 83F83C20 strb r2, [r3, #60] 1975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the handler state */ 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_BUSY; 5724 .loc 1 1977 15 is_stmt 1 discriminator 2 5725 0020 7B68 ldr r3, [r7, #4] 5726 0022 0222 movs r2, #2 5727 0024 83F83D20 strb r2, [r3, #61] 1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Get the TIMx CR2 register value */ 1980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpcr2 = htim->Instance->CR2; 5728 .loc 1 1980 16 discriminator 2 5729 0028 7B68 ldr r3, [r7, #4] 5730 002a 1B68 ldr r3, [r3] 5731 .loc 1 1980 10 discriminator 2 5732 002c 5B68 ldr r3, [r3, #4] 5733 002e FB60 str r3, [r7, #12] 1981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Get the TIMx SMCR register value */ 1983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr = htim->Instance->SMCR; 5734 .loc 1 1983 17 discriminator 2 5735 0030 7B68 ldr r3, [r7, #4] 5736 0032 1B68 ldr r3, [r3] 5737 .loc 1 1983 11 discriminator 2 5738 0034 9B68 ldr r3, [r3, #8] 5739 0036 BB60 str r3, [r7, #8] 1984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Reset the MMS Bits */ 1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpcr2 &= ~TIM_CR2_MMS; 5740 .loc 1 1986 10 discriminator 2 5741 0038 FB68 ldr r3, [r7, #12] 5742 003a 23F07003 bic r3, r3, #112 5743 003e FB60 str r3, [r7, #12] 1987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Select the TRGO source */ 1988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpcr2 |= sMasterConfig->MasterOutputTrigger; 5744 .loc 1 1988 27 discriminator 2 5745 0040 3B68 ldr r3, [r7] 5746 0042 1B68 ldr r3, [r3] 5747 .loc 1 1988 10 discriminator 2 5748 0044 FA68 ldr r2, [r7, #12] 5749 0046 1343 orrs r3, r3, r2 5750 0048 FB60 str r3, [r7, #12] 1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Update TIMx CR2 */ 1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->CR2 = tmpcr2; 5751 .loc 1 1991 7 discriminator 2 5752 004a 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 136 5753 004c 1B68 ldr r3, [r3] 5754 .loc 1 1991 23 discriminator 2 5755 004e FA68 ldr r2, [r7, #12] 5756 0050 5A60 str r2, [r3, #4] 1992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 1993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) 5757 .loc 1 1993 7 discriminator 2 5758 0052 7B68 ldr r3, [r7, #4] 5759 0054 1B68 ldr r3, [r3] 5760 .loc 1 1993 6 discriminator 2 5761 0056 214A ldr r2, .L351 5762 0058 9342 cmp r3, r2 5763 005a 22D0 beq .L349 5764 .loc 1 1993 7 discriminator 1 5765 005c 7B68 ldr r3, [r7, #4] 5766 005e 1B68 ldr r3, [r3] 5767 0060 B3F1804F cmp r3, #1073741824 5768 0064 1DD0 beq .L349 5769 .loc 1 1993 7 is_stmt 0 discriminator 2 5770 0066 7B68 ldr r3, [r7, #4] 5771 0068 1B68 ldr r3, [r3] 5772 006a 1D4A ldr r2, .L351+4 5773 006c 9342 cmp r3, r2 5774 006e 18D0 beq .L349 5775 .loc 1 1993 7 discriminator 3 5776 0070 7B68 ldr r3, [r7, #4] 5777 0072 1B68 ldr r3, [r3] 5778 0074 1B4A ldr r2, .L351+8 5779 0076 9342 cmp r3, r2 5780 0078 13D0 beq .L349 5781 .loc 1 1993 7 discriminator 4 5782 007a 7B68 ldr r3, [r7, #4] 5783 007c 1B68 ldr r3, [r3] 5784 007e 1A4A ldr r2, .L351+12 5785 0080 9342 cmp r3, r2 5786 0082 0ED0 beq .L349 5787 .loc 1 1993 7 discriminator 5 5788 0084 7B68 ldr r3, [r7, #4] 5789 0086 1B68 ldr r3, [r3] 5790 0088 184A ldr r2, .L351+16 5791 008a 9342 cmp r3, r2 5792 008c 09D0 beq .L349 5793 .loc 1 1993 7 discriminator 6 5794 008e 7B68 ldr r3, [r7, #4] 5795 0090 1B68 ldr r3, [r3] 5796 0092 174A ldr r2, .L351+20 5797 0094 9342 cmp r3, r2 5798 0096 04D0 beq .L349 5799 .loc 1 1993 7 discriminator 7 5800 0098 7B68 ldr r3, [r7, #4] 5801 009a 1B68 ldr r3, [r3] 5802 009c 154A ldr r2, .L351+24 5803 009e 9342 cmp r3, r2 5804 00a0 0CD1 bne .L350 5805 .L349: 1994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Reset the MSM Bit */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 137 1996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr &= ~TIM_SMCR_MSM; 5806 .loc 1 1996 13 is_stmt 1 5807 00a2 BB68 ldr r3, [r7, #8] 5808 00a4 23F08003 bic r3, r3, #128 5809 00a8 BB60 str r3, [r7, #8] 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set master mode */ 1998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmpsmcr |= sMasterConfig->MasterSlaveMode; 5810 .loc 1 1998 29 5811 00aa 3B68 ldr r3, [r7] 5812 00ac 5B68 ldr r3, [r3, #4] 5813 .loc 1 1998 13 5814 00ae BA68 ldr r2, [r7, #8] 5815 00b0 1343 orrs r3, r3, r2 5816 00b2 BB60 str r3, [r7, #8] 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Update TIMx SMCR */ 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->SMCR = tmpsmcr; 5817 .loc 1 2001 9 5818 00b4 7B68 ldr r3, [r7, #4] 5819 00b6 1B68 ldr r3, [r3] 5820 .loc 1 2001 26 5821 00b8 BA68 ldr r2, [r7, #8] 5822 00ba 9A60 str r2, [r3, #8] 5823 .L350: 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the htim state */ 2005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_READY; 5824 .loc 1 2005 15 5825 00bc 7B68 ldr r3, [r7, #4] 5826 00be 0122 movs r2, #1 5827 00c0 83F83D20 strb r2, [r3, #61] 2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 5828 .loc 1 2007 3 5829 00c4 7B68 ldr r3, [r7, #4] 5830 00c6 0022 movs r2, #0 5831 00c8 83F83C20 strb r2, [r3, #60] 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5832 .loc 1 2009 10 5833 00cc 0023 movs r3, #0 5834 .L348: 2010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5835 .loc 1 2010 1 5836 00ce 1846 mov r0, r3 5837 00d0 1437 adds r7, r7, #20 5838 .LCFI153: 5839 .cfi_def_cfa_offset 4 5840 00d2 BD46 mov sp, r7 5841 .LCFI154: 5842 .cfi_def_cfa_register 13 5843 @ sp needed 5844 00d4 5DF8047B ldr r7, [sp], #4 5845 .LCFI155: 5846 .cfi_restore 7 5847 .cfi_def_cfa_offset 0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 138 5848 00d8 7047 bx lr 5849 .L352: 5850 00da 00BF .align 2 5851 .L351: 5852 00dc 00000140 .word 1073807360 5853 00e0 00040040 .word 1073742848 5854 00e4 00080040 .word 1073743872 5855 00e8 000C0040 .word 1073744896 5856 00ec 00040140 .word 1073808384 5857 00f0 00400140 .word 1073823744 5858 00f4 00180040 .word 1073747968 5859 .cfi_endproc 5860 .LFE264: 5862 .section .text.HAL_TIMEx_ConfigBreakDeadTime,"ax",%progbits 5863 .align 1 5864 .global HAL_TIMEx_ConfigBreakDeadTime 5865 .syntax unified 5866 .thumb 5867 .thumb_func 5869 HAL_TIMEx_ConfigBreakDeadTime: 5870 .LFB265: 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configures the Break feature, dead time, Lock level, OSSI/OSSR State 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * and the AOE(automatic output enable). 2015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 2016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param sBreakDeadTimeConfig pointer to a TIM_ConfigBreakDeadConfigTypeDef structure that 2017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * contains the BDTR Register configuration information for the TIM peripheral. 2018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @note Interrupts can be generated when an active level is detected on the 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * break input, the break 2 input or the system break input. Break 2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * interrupt can be enabled by calling the @ref __HAL_TIM_ENABLE_IT macro. 2021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfi 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5871 .loc 1 2025 1 5872 .cfi_startproc 5873 @ args = 0, pretend = 0, frame = 16 5874 @ frame_needed = 1, uses_anonymous_args = 0 5875 @ link register save eliminated. 5876 0000 80B4 push {r7} 5877 .LCFI156: 5878 .cfi_def_cfa_offset 4 5879 .cfi_offset 7, -4 5880 0002 85B0 sub sp, sp, #20 5881 .LCFI157: 5882 .cfi_def_cfa_offset 24 5883 0004 00AF add r7, sp, #0 5884 .LCFI158: 5885 .cfi_def_cfa_register 7 5886 0006 7860 str r0, [r7, #4] 5887 0008 3960 str r1, [r7] 2026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Keep this variable initialized to 0 as it is used to configure BDTR register */ 2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmpbdtr = 0U; 5888 .loc 1 2027 12 5889 000a 0023 movs r3, #0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 139 5890 000c FB60 str r3, [r7, #12] 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_BREAK_INSTANCE(htim->Instance)); 2031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_OSSR_STATE(sBreakDeadTimeConfig->OffStateRunMode)); 2032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_OSSI_STATE(sBreakDeadTimeConfig->OffStateIDLEMode)); 2033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_LOCK_LEVEL(sBreakDeadTimeConfig->LockLevel)); 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_DEADTIME(sBreakDeadTimeConfig->DeadTime)); 2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_BREAK_STATE(sBreakDeadTimeConfig->BreakState)); 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_BREAK_POLARITY(sBreakDeadTimeConfig->BreakPolarity)); 2037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_AUTOMATIC_OUTPUT_STATE(sBreakDeadTimeConfig->AutomaticOutput)); 2038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check input state */ 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 5891 .loc 1 2040 3 5892 000e 7B68 ldr r3, [r7, #4] 5893 0010 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 5894 0014 012B cmp r3, #1 5895 0016 01D1 bne .L354 5896 .loc 1 2040 3 is_stmt 0 discriminator 1 5897 0018 0223 movs r3, #2 5898 001a 3DE0 b .L355 5899 .L354: 5900 .loc 1 2040 3 discriminator 2 5901 001c 7B68 ldr r3, [r7, #4] 5902 001e 0122 movs r2, #1 5903 0020 83F83C20 strb r2, [r3, #60] 2041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the Lock level, the Break enable Bit and the Polarity, the OSSR State, 2043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the OSSI State, the dead time value and the Automatic Output Enable Bit */ 2044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the BDTR bits */ 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_DTG, sBreakDeadTimeConfig->DeadTime); 5904 .loc 1 2046 3 is_stmt 1 discriminator 2 5905 0024 FB68 ldr r3, [r7, #12] 5906 0026 23F0FF02 bic r2, r3, #255 5907 002a 3B68 ldr r3, [r7] 5908 002c DB68 ldr r3, [r3, #12] 5909 002e 1343 orrs r3, r3, r2 5910 0030 FB60 str r3, [r7, #12] 2047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_LOCK, sBreakDeadTimeConfig->LockLevel); 5911 .loc 1 2047 3 discriminator 2 5912 0032 FB68 ldr r3, [r7, #12] 5913 0034 23F44072 bic r2, r3, #768 5914 0038 3B68 ldr r3, [r7] 5915 003a 9B68 ldr r3, [r3, #8] 5916 003c 1343 orrs r3, r3, r2 5917 003e FB60 str r3, [r7, #12] 2048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_OSSI, sBreakDeadTimeConfig->OffStateIDLEMode); 5918 .loc 1 2048 3 discriminator 2 5919 0040 FB68 ldr r3, [r7, #12] 5920 0042 23F48062 bic r2, r3, #1024 5921 0046 3B68 ldr r3, [r7] 5922 0048 5B68 ldr r3, [r3, #4] 5923 004a 1343 orrs r3, r3, r2 5924 004c FB60 str r3, [r7, #12] 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_OSSR, sBreakDeadTimeConfig->OffStateRunMode); ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 140 5925 .loc 1 2049 3 discriminator 2 5926 004e FB68 ldr r3, [r7, #12] 5927 0050 23F40062 bic r2, r3, #2048 5928 0054 3B68 ldr r3, [r7] 5929 0056 1B68 ldr r3, [r3] 5930 0058 1343 orrs r3, r3, r2 5931 005a FB60 str r3, [r7, #12] 2050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_BKE, sBreakDeadTimeConfig->BreakState); 5932 .loc 1 2050 3 discriminator 2 5933 005c FB68 ldr r3, [r7, #12] 5934 005e 23F48052 bic r2, r3, #4096 5935 0062 3B68 ldr r3, [r7] 5936 0064 1B69 ldr r3, [r3, #16] 5937 0066 1343 orrs r3, r3, r2 5938 0068 FB60 str r3, [r7, #12] 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_BKP, sBreakDeadTimeConfig->BreakPolarity); 5939 .loc 1 2051 3 discriminator 2 5940 006a FB68 ldr r3, [r7, #12] 5941 006c 23F40052 bic r2, r3, #8192 5942 0070 3B68 ldr r3, [r7] 5943 0072 5B69 ldr r3, [r3, #20] 5944 0074 1343 orrs r3, r3, r2 5945 0076 FB60 str r3, [r7, #12] 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(tmpbdtr, TIM_BDTR_AOE, sBreakDeadTimeConfig->AutomaticOutput); 5946 .loc 1 2052 3 discriminator 2 5947 0078 FB68 ldr r3, [r7, #12] 5948 007a 23F48042 bic r2, r3, #16384 5949 007e 3B68 ldr r3, [r7] 5950 0080 DB69 ldr r3, [r3, #28] 5951 0082 1343 orrs r3, r3, r2 5952 0084 FB60 str r3, [r7, #12] 2053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set TIMx_BDTR */ 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Instance->BDTR = tmpbdtr; 5953 .loc 1 2056 7 discriminator 2 5954 0086 7B68 ldr r3, [r7, #4] 5955 0088 1B68 ldr r3, [r3] 5956 .loc 1 2056 24 discriminator 2 5957 008a FA68 ldr r2, [r7, #12] 5958 008c 5A64 str r2, [r3, #68] 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 5959 .loc 1 2058 3 discriminator 2 5960 008e 7B68 ldr r3, [r7, #4] 5961 0090 0022 movs r2, #0 5962 0092 83F83C20 strb r2, [r3, #60] 2059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 5963 .loc 1 2060 10 discriminator 2 5964 0096 0023 movs r3, #0 5965 .L355: 2061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 5966 .loc 1 2061 1 5967 0098 1846 mov r0, r3 5968 009a 1437 adds r7, r7, #20 5969 .LCFI159: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 141 5970 .cfi_def_cfa_offset 4 5971 009c BD46 mov sp, r7 5972 .LCFI160: 5973 .cfi_def_cfa_register 13 5974 @ sp needed 5975 009e 5DF8047B ldr r7, [sp], #4 5976 .LCFI161: 5977 .cfi_restore 7 5978 .cfi_def_cfa_offset 0 5979 00a2 7047 bx lr 5980 .cfi_endproc 5981 .LFE265: 5983 .section .text.HAL_TIMEx_RemapConfig,"ax",%progbits 5984 .align 1 5985 .global HAL_TIMEx_RemapConfig 5986 .syntax unified 5987 .thumb 5988 .thumb_func 5990 HAL_TIMEx_RemapConfig: 5991 .LFB266: 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Configures the TIMx Remapping input capabilities. 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle. 2066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Remap specifies the TIM remapping source. 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * For TIM1, the parameter can have the following values: (**) 2068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM1_TIM3_TRGO: TIM1 ITR2 is connected to TIM3 TRGO 2069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM1_LPTIM: TIM1 ITR2 is connected to LPTIM1 output 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * For TIM2, the parameter can have the following values: (**) 2072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM2_TIM8_TRGO: TIM2 ITR1 is connected to TIM8 TRGO (*) 2073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM2_ETH_PTP: TIM2 ITR1 is connected to PTP trigger output (*) 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM2_USBFS_SOF: TIM2 ITR1 is connected to OTG FS SOF 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM2_USBHS_SOF: TIM2 ITR1 is connected to OTG FS SOF 2076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * For TIM5, the parameter can have the following values: 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_GPIO: TIM5 TI4 is connected to GPIO 2079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_LSI: TIM5 TI4 is connected to LSI 2080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_LSE: TIM5 TI4 is connected to LSE 2081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_RTC: TIM5 TI4 is connected to the RTC wakeup interrupt 2082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_TIM3_TRGO: TIM5 ITR1 is connected to TIM3 TRGO (*) 2083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM5_LPTIM: TIM5 ITR1 is connected to LPTIM1 output (*) 2084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * For TIM9, the parameter can have the following values: (**) 2086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM9_TIM3_TRGO: TIM9 ITR1 is connected to TIM3 TRGO 2087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM9_LPTIM: TIM9 ITR1 is connected to LPTIM1 output 2088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * For TIM11, the parameter can have the following values: 2090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM11_GPIO: TIM11 TI1 is connected to GPIO 2091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM11_HSE: TIM11 TI1 is connected to HSE_RTC clock 2092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_TIM11_SPDIFRX: TIM11 TI1 is connected to SPDIFRX_FRAME_SYNC (*) 2093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * (*) Value not defined in all devices. \n 2095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * (**) Register not available in all devices. 2096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL status 2098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 142 2099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap) 2100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 5992 .loc 1 2100 1 5993 .cfi_startproc 5994 @ args = 0, pretend = 0, frame = 8 5995 @ frame_needed = 1, uses_anonymous_args = 0 5996 @ link register save eliminated. 5997 0000 80B4 push {r7} 5998 .LCFI162: 5999 .cfi_def_cfa_offset 4 6000 .cfi_offset 7, -4 6001 0002 83B0 sub sp, sp, #12 6002 .LCFI163: 6003 .cfi_def_cfa_offset 16 6004 0004 00AF add r7, sp, #0 6005 .LCFI164: 6006 .cfi_def_cfa_register 7 6007 0006 7860 str r0, [r7, #4] 6008 0008 3960 str r1, [r7] 2101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check parameters */ 2103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_REMAP(htim->Instance, Remap)); 2104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_LOCK(htim); 6009 .loc 1 2105 3 6010 000a 7B68 ldr r3, [r7, #4] 6011 000c 93F83C30 ldrb r3, [r3, #60] @ zero_extendqisi2 6012 0010 012B cmp r3, #1 6013 0012 01D1 bne .L357 6014 .loc 1 2105 3 is_stmt 0 discriminator 1 6015 0014 0223 movs r3, #2 6016 0016 0CE0 b .L358 6017 .L357: 6018 .loc 1 2105 3 discriminator 2 6019 0018 7B68 ldr r3, [r7, #4] 6020 001a 0122 movs r2, #1 6021 001c 83F83C20 strb r2, [r3, #60] 2106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if defined(LPTIM_OR_TIM1_ITR2_RMP) && defined(LPTIM_OR_TIM5_ITR1_RMP) && defined(LPTIM_OR_TIM9_ITR 2108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if ((Remap & LPTIM_REMAP_MASK) == LPTIM_REMAP_MASK) 2109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Connect TIMx internal trigger to LPTIM1 output */ 2111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_RCC_LPTIM1_CLK_ENABLE(); 2112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** MODIFY_REG(LPTIM1->OR, 2113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (LPTIM_OR_TIM1_ITR2_RMP | LPTIM_OR_TIM5_ITR1_RMP | LPTIM_OR_TIM9_ITR1_RMP), 2114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** Remap & ~(LPTIM_REMAP_MASK)); 2115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the Timer remapping configuration */ 2119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** WRITE_REG(htim->Instance->OR, Remap); 2120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 2122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set the Timer remapping configuration */ 2123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** WRITE_REG(htim->Instance->OR, Remap); 6022 .loc 1 2123 3 is_stmt 1 discriminator 2 6023 0020 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 143 6024 0022 1B68 ldr r3, [r3] 6025 0024 3A68 ldr r2, [r7] 6026 0026 1A65 str r2, [r3, #80] 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* LPTIM_OR_TIM1_ITR2_RMP && LPTIM_OR_TIM5_ITR1_RMP && LPTIM_OR_TIM9_ITR1_RMP */ 2125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __HAL_UNLOCK(htim); 6027 .loc 1 2126 3 discriminator 2 6028 0028 7B68 ldr r3, [r7, #4] 6029 002a 0022 movs r2, #0 6030 002c 83F83C20 strb r2, [r3, #60] 2127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return HAL_OK; 6031 .loc 1 2128 10 discriminator 2 6032 0030 0023 movs r3, #0 6033 .L358: 2129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6034 .loc 1 2129 1 6035 0032 1846 mov r0, r3 6036 0034 0C37 adds r7, r7, #12 6037 .LCFI165: 6038 .cfi_def_cfa_offset 4 6039 0036 BD46 mov sp, r7 6040 .LCFI166: 6041 .cfi_def_cfa_register 13 6042 @ sp needed 6043 0038 5DF8047B ldr r7, [sp], #4 6044 .LCFI167: 6045 .cfi_restore 7 6046 .cfi_def_cfa_offset 0 6047 003c 7047 bx lr 6048 .cfi_endproc 6049 .LFE266: 6051 .section .text.HAL_TIMEx_CommutCallback,"ax",%progbits 6052 .align 1 6053 .weak HAL_TIMEx_CommutCallback 6054 .syntax unified 6055 .thumb 6056 .thumb_func 6058 HAL_TIMEx_CommutCallback: 6059 .LFB267: 2130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group6 Extended Callbacks functions 2136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Extended Callbacks functions 2137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 2139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 2140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Extended Callbacks functions ##### 2141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 2142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 2143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This section provides Extended TIM callback functions: 2144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Timer Commutation callback 2145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** (+) Timer Break callback 2146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 144 2147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 2148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 2149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Hall commutation changed callback in non-blocking mode 2153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 2154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __weak void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim) 2157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6060 .loc 1 2157 1 6061 .cfi_startproc 6062 @ args = 0, pretend = 0, frame = 8 6063 @ frame_needed = 1, uses_anonymous_args = 0 6064 @ link register save eliminated. 6065 0000 80B4 push {r7} 6066 .LCFI168: 6067 .cfi_def_cfa_offset 4 6068 .cfi_offset 7, -4 6069 0002 83B0 sub sp, sp, #12 6070 .LCFI169: 6071 .cfi_def_cfa_offset 16 6072 0004 00AF add r7, sp, #0 6073 .LCFI170: 6074 .cfi_def_cfa_register 7 6075 0006 7860 str r0, [r7, #4] 2158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Prevent unused argument(s) compilation warning */ 2159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** UNUSED(htim); 2160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* NOTE : This function should not be modified, when the callback is needed, 2162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the HAL_TIMEx_CommutCallback could be implemented in the user file 2163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6076 .loc 1 2164 1 6077 0008 00BF nop 6078 000a 0C37 adds r7, r7, #12 6079 .LCFI171: 6080 .cfi_def_cfa_offset 4 6081 000c BD46 mov sp, r7 6082 .LCFI172: 6083 .cfi_def_cfa_register 13 6084 @ sp needed 6085 000e 5DF8047B ldr r7, [sp], #4 6086 .LCFI173: 6087 .cfi_restore 7 6088 .cfi_def_cfa_offset 0 6089 0012 7047 bx lr 6090 .cfi_endproc 6091 .LFE267: 6093 .section .text.HAL_TIMEx_CommutHalfCpltCallback,"ax",%progbits 6094 .align 1 6095 .weak HAL_TIMEx_CommutHalfCpltCallback 6096 .syntax unified 6097 .thumb 6098 .thumb_func 6100 HAL_TIMEx_CommutHalfCpltCallback: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 145 6101 .LFB268: 2165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Hall commutation changed half complete callback in non-blocking mode 2167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 2168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __weak void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim) 2171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6102 .loc 1 2171 1 6103 .cfi_startproc 6104 @ args = 0, pretend = 0, frame = 8 6105 @ frame_needed = 1, uses_anonymous_args = 0 6106 @ link register save eliminated. 6107 0000 80B4 push {r7} 6108 .LCFI174: 6109 .cfi_def_cfa_offset 4 6110 .cfi_offset 7, -4 6111 0002 83B0 sub sp, sp, #12 6112 .LCFI175: 6113 .cfi_def_cfa_offset 16 6114 0004 00AF add r7, sp, #0 6115 .LCFI176: 6116 .cfi_def_cfa_register 7 6117 0006 7860 str r0, [r7, #4] 2172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Prevent unused argument(s) compilation warning */ 2173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** UNUSED(htim); 2174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* NOTE : This function should not be modified, when the callback is needed, 2176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the HAL_TIMEx_CommutHalfCpltCallback could be implemented in the user file 2177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6118 .loc 1 2178 1 6119 0008 00BF nop 6120 000a 0C37 adds r7, r7, #12 6121 .LCFI177: 6122 .cfi_def_cfa_offset 4 6123 000c BD46 mov sp, r7 6124 .LCFI178: 6125 .cfi_def_cfa_register 13 6126 @ sp needed 6127 000e 5DF8047B ldr r7, [sp], #4 6128 .LCFI179: 6129 .cfi_restore 7 6130 .cfi_def_cfa_offset 0 6131 0012 7047 bx lr 6132 .cfi_endproc 6133 .LFE268: 6135 .section .text.HAL_TIMEx_BreakCallback,"ax",%progbits 6136 .align 1 6137 .weak HAL_TIMEx_BreakCallback 6138 .syntax unified 6139 .thumb 6140 .thumb_func 6142 HAL_TIMEx_BreakCallback: 6143 .LFB269: 2179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 146 2181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Hall Break detection callback in non-blocking mode 2182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 2183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** __weak void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim) 2186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6144 .loc 1 2186 1 6145 .cfi_startproc 6146 @ args = 0, pretend = 0, frame = 8 6147 @ frame_needed = 1, uses_anonymous_args = 0 6148 @ link register save eliminated. 6149 0000 80B4 push {r7} 6150 .LCFI180: 6151 .cfi_def_cfa_offset 4 6152 .cfi_offset 7, -4 6153 0002 83B0 sub sp, sp, #12 6154 .LCFI181: 6155 .cfi_def_cfa_offset 16 6156 0004 00AF add r7, sp, #0 6157 .LCFI182: 6158 .cfi_def_cfa_register 7 6159 0006 7860 str r0, [r7, #4] 2187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Prevent unused argument(s) compilation warning */ 2188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** UNUSED(htim); 2189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* NOTE : This function should not be modified, when the callback is needed, 2191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** the HAL_TIMEx_BreakCallback could be implemented in the user file 2192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6160 .loc 1 2193 1 6161 0008 00BF nop 6162 000a 0C37 adds r7, r7, #12 6163 .LCFI183: 6164 .cfi_def_cfa_offset 4 6165 000c BD46 mov sp, r7 6166 .LCFI184: 6167 .cfi_def_cfa_register 13 6168 @ sp needed 6169 000e 5DF8047B ldr r7, [sp], #4 6170 .LCFI185: 6171 .cfi_restore 7 6172 .cfi_def_cfa_offset 0 6173 0012 7047 bx lr 6174 .cfi_endproc 6175 .LFE269: 6177 .section .text.HAL_TIMEx_HallSensor_GetState,"ax",%progbits 6178 .align 1 6179 .global HAL_TIMEx_HallSensor_GetState 6180 .syntax unified 6181 .thumb 6182 .thumb_func 6184 HAL_TIMEx_HallSensor_GetState: 6185 .LFB270: 2194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 2196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 147 2198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Exported_Functions_Group7 Extended Peripheral State functions 2199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Extended Peripheral State functions 2200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * 2201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @verbatim 2202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 2203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ##### Extended Peripheral State functions ##### 2204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ============================================================================== 2205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** [..] 2206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** This subsection permits to get in run-time the status of the peripheral 2207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** and the data flow. 2208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** @endverbatim 2210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 2211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Return the TIM Hall Sensor interface handle state. 2215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM Hall Sensor handle 2216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval HAL state 2217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim) 2219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6186 .loc 1 2219 1 6187 .cfi_startproc 6188 @ args = 0, pretend = 0, frame = 8 6189 @ frame_needed = 1, uses_anonymous_args = 0 6190 @ link register save eliminated. 6191 0000 80B4 push {r7} 6192 .LCFI186: 6193 .cfi_def_cfa_offset 4 6194 .cfi_offset 7, -4 6195 0002 83B0 sub sp, sp, #12 6196 .LCFI187: 6197 .cfi_def_cfa_offset 16 6198 0004 00AF add r7, sp, #0 6199 .LCFI188: 6200 .cfi_def_cfa_register 7 6201 0006 7860 str r0, [r7, #4] 2220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return htim->State; 6202 .loc 1 2220 14 6203 0008 7B68 ldr r3, [r7, #4] 6204 000a 93F83D30 ldrb r3, [r3, #61] 6205 000e DBB2 uxtb r3, r3 2221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6206 .loc 1 2221 1 6207 0010 1846 mov r0, r3 6208 0012 0C37 adds r7, r7, #12 6209 .LCFI189: 6210 .cfi_def_cfa_offset 4 6211 0014 BD46 mov sp, r7 6212 .LCFI190: 6213 .cfi_def_cfa_register 13 6214 @ sp needed 6215 0016 5DF8047B ldr r7, [sp], #4 6216 .LCFI191: 6217 .cfi_restore 7 6218 .cfi_def_cfa_offset 0 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 148 6219 001a 7047 bx lr 6220 .cfi_endproc 6221 .LFE270: 6223 .section .text.HAL_TIMEx_GetChannelNState,"ax",%progbits 6224 .align 1 6225 .global HAL_TIMEx_GetChannelNState 6226 .syntax unified 6227 .thumb 6228 .thumb_func 6230 HAL_TIMEx_GetChannelNState: 6231 .LFB271: 2222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Return actual state of the TIM complementary channel. 2225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param htim TIM handle 2226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param ChannelN TIM Complementary channel 2227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 2228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 2229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 2230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 2231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval TIM Complementary channel state 2232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef HAL_TIMEx_GetChannelNState(TIM_HandleTypeDef *htim, uint32_t ChannelN) 2234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6232 .loc 1 2234 1 6233 .cfi_startproc 6234 @ args = 0, pretend = 0, frame = 16 6235 @ frame_needed = 1, uses_anonymous_args = 0 6236 @ link register save eliminated. 6237 0000 80B4 push {r7} 6238 .LCFI192: 6239 .cfi_def_cfa_offset 4 6240 .cfi_offset 7, -4 6241 0002 85B0 sub sp, sp, #20 6242 .LCFI193: 6243 .cfi_def_cfa_offset 24 6244 0004 00AF add r7, sp, #0 6245 .LCFI194: 6246 .cfi_def_cfa_register 7 6247 0006 7860 str r0, [r7, #4] 6248 0008 3960 str r1, [r7] 2235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ChannelStateTypeDef channel_state; 2236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Check the parameters */ 2238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, ChannelN)); 2239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** channel_state = TIM_CHANNEL_N_STATE_GET(htim, ChannelN); 6249 .loc 1 2240 19 6250 000a 3B68 ldr r3, [r7] 6251 000c 002B cmp r3, #0 6252 000e 04D1 bne .L365 6253 .loc 1 2240 19 is_stmt 0 discriminator 1 6254 0010 7B68 ldr r3, [r7, #4] 6255 0012 93F84230 ldrb r3, [r3, #66] 6256 0016 DBB2 uxtb r3, r3 6257 0018 13E0 b .L366 6258 .L365: ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 149 6259 .loc 1 2240 19 discriminator 2 6260 001a 3B68 ldr r3, [r7] 6261 001c 042B cmp r3, #4 6262 001e 04D1 bne .L367 6263 .loc 1 2240 19 discriminator 4 6264 0020 7B68 ldr r3, [r7, #4] 6265 0022 93F84330 ldrb r3, [r3, #67] 6266 0026 DBB2 uxtb r3, r3 6267 0028 0BE0 b .L366 6268 .L367: 6269 .loc 1 2240 19 discriminator 5 6270 002a 3B68 ldr r3, [r7] 6271 002c 082B cmp r3, #8 6272 002e 04D1 bne .L369 6273 .loc 1 2240 19 discriminator 7 6274 0030 7B68 ldr r3, [r7, #4] 6275 0032 93F84430 ldrb r3, [r3, #68] 6276 0036 DBB2 uxtb r3, r3 6277 0038 03E0 b .L366 6278 .L369: 6279 .loc 1 2240 19 discriminator 8 6280 003a 7B68 ldr r3, [r7, #4] 6281 003c 93F84530 ldrb r3, [r3, #69] 6282 0040 DBB2 uxtb r3, r3 6283 .L366: 6284 .loc 1 2240 17 is_stmt 1 discriminator 12 6285 0042 FB73 strb r3, [r7, #15] 2241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** return channel_state; 6286 .loc 1 2242 10 discriminator 12 6287 0044 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 2243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6288 .loc 1 2243 1 discriminator 12 6289 0046 1846 mov r0, r3 6290 0048 1437 adds r7, r7, #20 6291 .LCFI195: 6292 .cfi_def_cfa_offset 4 6293 004a BD46 mov sp, r7 6294 .LCFI196: 6295 .cfi_def_cfa_register 13 6296 @ sp needed 6297 004c 5DF8047B ldr r7, [sp], #4 6298 .LCFI197: 6299 .cfi_restore 7 6300 .cfi_def_cfa_offset 0 6301 0050 7047 bx lr 6302 .cfi_endproc 6303 .LFE271: 6305 .section .text.TIMEx_DMACommutationCplt,"ax",%progbits 6306 .align 1 6307 .global TIMEx_DMACommutationCplt 6308 .syntax unified 6309 .thumb 6310 .thumb_func 6312 TIMEx_DMACommutationCplt: 6313 .LFB272: 2244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 150 2245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 2246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @} 2250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Private functions ---------------------------------------------------------*/ 2253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** @defgroup TIMEx_Private_Functions TIM Extended Private Functions 2254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @{ 2255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM DMA Commutation callback. 2259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param hdma pointer to DMA handle. 2260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma) 2263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6314 .loc 1 2263 1 6315 .cfi_startproc 6316 @ args = 0, pretend = 0, frame = 16 6317 @ frame_needed = 1, uses_anonymous_args = 0 6318 0000 80B5 push {r7, lr} 6319 .LCFI198: 6320 .cfi_def_cfa_offset 8 6321 .cfi_offset 7, -8 6322 .cfi_offset 14, -4 6323 0002 84B0 sub sp, sp, #16 6324 .LCFI199: 6325 .cfi_def_cfa_offset 24 6326 0004 00AF add r7, sp, #0 6327 .LCFI200: 6328 .cfi_def_cfa_register 7 6329 0006 7860 str r0, [r7, #4] 2264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 6330 .loc 1 2264 22 6331 0008 7B68 ldr r3, [r7, #4] 6332 000a 9B6B ldr r3, [r3, #56] 6333 000c FB60 str r3, [r7, #12] 2265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the htim state */ 2267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_READY; 6334 .loc 1 2267 15 6335 000e FB68 ldr r3, [r7, #12] 6336 0010 0122 movs r2, #1 6337 0012 83F83D20 strb r2, [r3, #61] 2268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 2270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->CommutationCallback(htim); 2271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 2272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_CommutCallback(htim); 6338 .loc 1 2272 3 6339 0016 F868 ldr r0, [r7, #12] 6340 0018 FFF7FEFF bl HAL_TIMEx_CommutCallback 2273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 2274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 151 6341 .loc 1 2274 1 6342 001c 00BF nop 6343 001e 1037 adds r7, r7, #16 6344 .LCFI201: 6345 .cfi_def_cfa_offset 8 6346 0020 BD46 mov sp, r7 6347 .LCFI202: 6348 .cfi_def_cfa_register 13 6349 @ sp needed 6350 0022 80BD pop {r7, pc} 6351 .cfi_endproc 6352 .LFE272: 6354 .section .text.TIMEx_DMACommutationHalfCplt,"ax",%progbits 6355 .align 1 6356 .global TIMEx_DMACommutationHalfCplt 6357 .syntax unified 6358 .thumb 6359 .thumb_func 6361 TIMEx_DMACommutationHalfCplt: 6362 .LFB273: 2275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM DMA Commutation half complete callback. 2278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param hdma pointer to DMA handle. 2279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma) 2282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6363 .loc 1 2282 1 6364 .cfi_startproc 6365 @ args = 0, pretend = 0, frame = 16 6366 @ frame_needed = 1, uses_anonymous_args = 0 6367 0000 80B5 push {r7, lr} 6368 .LCFI203: 6369 .cfi_def_cfa_offset 8 6370 .cfi_offset 7, -8 6371 .cfi_offset 14, -4 6372 0002 84B0 sub sp, sp, #16 6373 .LCFI204: 6374 .cfi_def_cfa_offset 24 6375 0004 00AF add r7, sp, #0 6376 .LCFI205: 6377 .cfi_def_cfa_register 7 6378 0006 7860 str r0, [r7, #4] 2283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 6379 .loc 1 2283 22 6380 0008 7B68 ldr r3, [r7, #4] 6381 000a 9B6B ldr r3, [r3, #56] 6382 000c FB60 str r3, [r7, #12] 2284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Change the htim state */ 2286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->State = HAL_TIM_STATE_READY; 6383 .loc 1 2286 15 6384 000e FB68 ldr r3, [r7, #12] 6385 0010 0122 movs r2, #1 6386 0012 83F83D20 strb r2, [r3, #61] 2287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 152 2288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 2289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->CommutationHalfCpltCallback(htim); 2290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 2291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIMEx_CommutHalfCpltCallback(htim); 6387 .loc 1 2291 3 6388 0016 F868 ldr r0, [r7, #12] 6389 0018 FFF7FEFF bl HAL_TIMEx_CommutHalfCpltCallback 2292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6390 .loc 1 2293 1 6391 001c 00BF nop 6392 001e 1037 adds r7, r7, #16 6393 .LCFI206: 6394 .cfi_def_cfa_offset 8 6395 0020 BD46 mov sp, r7 6396 .LCFI207: 6397 .cfi_def_cfa_register 13 6398 @ sp needed 6399 0022 80BD pop {r7, pc} 6400 .cfi_endproc 6401 .LFE273: 6403 .section .text.TIM_DMADelayPulseNCplt,"ax",%progbits 6404 .align 1 6405 .syntax unified 6406 .thumb 6407 .thumb_func 6409 TIM_DMADelayPulseNCplt: 6410 .LFB274: 2294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM DMA Delay Pulse complete callback (complementary channel). 2298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param hdma pointer to DMA handle. 2299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma) 2302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6411 .loc 1 2302 1 6412 .cfi_startproc 6413 @ args = 0, pretend = 0, frame = 16 6414 @ frame_needed = 1, uses_anonymous_args = 0 6415 0000 80B5 push {r7, lr} 6416 .LCFI208: 6417 .cfi_def_cfa_offset 8 6418 .cfi_offset 7, -8 6419 .cfi_offset 14, -4 6420 0002 84B0 sub sp, sp, #16 6421 .LCFI209: 6422 .cfi_def_cfa_offset 24 6423 0004 00AF add r7, sp, #0 6424 .LCFI210: 6425 .cfi_def_cfa_register 7 6426 0006 7860 str r0, [r7, #4] 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 6427 .loc 1 2303 22 6428 0008 7B68 ldr r3, [r7, #4] 6429 000a 9B6B ldr r3, [r3, #56] ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 153 6430 000c FB60 str r3, [r7, #12] 2304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma == htim->hdma[TIM_DMA_ID_CC1]) 6431 .loc 1 2305 25 6432 000e FB68 ldr r3, [r7, #12] 6433 0010 5B6A ldr r3, [r3, #36] 6434 .loc 1 2305 6 6435 0012 7A68 ldr r2, [r7, #4] 6436 0014 9A42 cmp r2, r3 6437 0016 0BD1 bne .L375 2306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; 6438 .loc 1 2307 19 6439 0018 FB68 ldr r3, [r7, #12] 6440 001a 0122 movs r2, #1 6441 001c 1A77 strb r2, [r3, #28] 2308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma->Init.Mode == DMA_NORMAL) 6442 .loc 1 2309 19 6443 001e 7B68 ldr r3, [r7, #4] 6444 0020 DB69 ldr r3, [r3, #28] 6445 .loc 1 2309 8 6446 0022 002B cmp r3, #0 6447 0024 36D1 bne .L376 2310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 6448 .loc 1 2311 7 6449 0026 FB68 ldr r3, [r7, #12] 6450 0028 0122 movs r2, #1 6451 002a 83F84220 strb r2, [r3, #66] 6452 002e 31E0 b .L376 6453 .L375: 2312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) 6454 .loc 1 2314 30 6455 0030 FB68 ldr r3, [r7, #12] 6456 0032 9B6A ldr r3, [r3, #40] 6457 .loc 1 2314 11 6458 0034 7A68 ldr r2, [r7, #4] 6459 0036 9A42 cmp r2, r3 6460 0038 0BD1 bne .L377 2315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; 6461 .loc 1 2316 19 6462 003a FB68 ldr r3, [r7, #12] 6463 003c 0222 movs r2, #2 6464 003e 1A77 strb r2, [r3, #28] 2317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma->Init.Mode == DMA_NORMAL) 6465 .loc 1 2318 19 6466 0040 7B68 ldr r3, [r7, #4] 6467 0042 DB69 ldr r3, [r3, #28] 6468 .loc 1 2318 8 6469 0044 002B cmp r3, #0 6470 0046 25D1 bne .L376 2319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 154 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 6471 .loc 1 2320 7 6472 0048 FB68 ldr r3, [r7, #12] 6473 004a 0122 movs r2, #1 6474 004c 83F84320 strb r2, [r3, #67] 6475 0050 20E0 b .L376 6476 .L377: 2321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) 6477 .loc 1 2323 30 6478 0052 FB68 ldr r3, [r7, #12] 6479 0054 DB6A ldr r3, [r3, #44] 6480 .loc 1 2323 11 6481 0056 7A68 ldr r2, [r7, #4] 6482 0058 9A42 cmp r2, r3 6483 005a 0BD1 bne .L378 2324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; 6484 .loc 1 2325 19 6485 005c FB68 ldr r3, [r7, #12] 6486 005e 0422 movs r2, #4 6487 0060 1A77 strb r2, [r3, #28] 2326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma->Init.Mode == DMA_NORMAL) 6488 .loc 1 2327 19 6489 0062 7B68 ldr r3, [r7, #4] 6490 0064 DB69 ldr r3, [r3, #28] 6491 .loc 1 2327 8 6492 0066 002B cmp r3, #0 6493 0068 14D1 bne .L376 2328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); 6494 .loc 1 2329 7 6495 006a FB68 ldr r3, [r7, #12] 6496 006c 0122 movs r2, #1 6497 006e 83F84420 strb r2, [r3, #68] 6498 0072 0FE0 b .L376 6499 .L378: 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) 6500 .loc 1 2332 30 6501 0074 FB68 ldr r3, [r7, #12] 6502 0076 1B6B ldr r3, [r3, #48] 6503 .loc 1 2332 11 6504 0078 7A68 ldr r2, [r7, #4] 6505 007a 9A42 cmp r2, r3 6506 007c 0AD1 bne .L376 2333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; 6507 .loc 1 2334 19 6508 007e FB68 ldr r3, [r7, #12] 6509 0080 0822 movs r2, #8 6510 0082 1A77 strb r2, [r3, #28] 2335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma->Init.Mode == DMA_NORMAL) ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 155 6511 .loc 1 2336 19 6512 0084 7B68 ldr r3, [r7, #4] 6513 0086 DB69 ldr r3, [r3, #28] 6514 .loc 1 2336 8 6515 0088 002B cmp r3, #0 6516 008a 03D1 bne .L376 2337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); 6517 .loc 1 2338 7 6518 008c FB68 ldr r3, [r7, #12] 6519 008e 0122 movs r2, #1 6520 0090 83F84520 strb r2, [r3, #69] 6521 .L376: 2339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 2342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* nothing to do */ 2344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->PWM_PulseFinishedCallback(htim); 2348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_PWM_PulseFinishedCallback(htim); 6522 .loc 1 2349 3 6523 0094 F868 ldr r0, [r7, #12] 6524 0096 FFF7FEFF bl HAL_TIM_PWM_PulseFinishedCallback 2350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 2351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; 6525 .loc 1 2352 17 6526 009a FB68 ldr r3, [r7, #12] 6527 009c 0022 movs r2, #0 6528 009e 1A77 strb r2, [r3, #28] 2353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6529 .loc 1 2353 1 6530 00a0 00BF nop 6531 00a2 1037 adds r7, r7, #16 6532 .LCFI211: 6533 .cfi_def_cfa_offset 8 6534 00a4 BD46 mov sp, r7 6535 .LCFI212: 6536 .cfi_def_cfa_register 13 6537 @ sp needed 6538 00a6 80BD pop {r7, pc} 6539 .cfi_endproc 6540 .LFE274: 6542 .section .text.TIM_DMAErrorCCxN,"ax",%progbits 6543 .align 1 6544 .syntax unified 6545 .thumb 6546 .thumb_func 6548 TIM_DMAErrorCCxN: 6549 .LFB275: 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief TIM DMA error callback (complementary channel) ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 156 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param hdma pointer to DMA handle. 2358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma) 2361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6550 .loc 1 2361 1 6551 .cfi_startproc 6552 @ args = 0, pretend = 0, frame = 16 6553 @ frame_needed = 1, uses_anonymous_args = 0 6554 0000 80B5 push {r7, lr} 6555 .LCFI213: 6556 .cfi_def_cfa_offset 8 6557 .cfi_offset 7, -8 6558 .cfi_offset 14, -4 6559 0002 84B0 sub sp, sp, #16 6560 .LCFI214: 6561 .cfi_def_cfa_offset 24 6562 0004 00AF add r7, sp, #0 6563 .LCFI215: 6564 .cfi_def_cfa_register 7 6565 0006 7860 str r0, [r7, #4] 2362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; 6566 .loc 1 2362 22 6567 0008 7B68 ldr r3, [r7, #4] 6568 000a 9B6B ldr r3, [r3, #56] 6569 000c FB60 str r3, [r7, #12] 2363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** if (hdma == htim->hdma[TIM_DMA_ID_CC1]) 6570 .loc 1 2364 25 6571 000e FB68 ldr r3, [r7, #12] 6572 0010 5B6A ldr r3, [r3, #36] 6573 .loc 1 2364 6 6574 0012 7A68 ldr r2, [r7, #4] 6575 0014 9A42 cmp r2, r3 6576 0016 07D1 bne .L380 2365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; 6577 .loc 1 2366 19 6578 0018 FB68 ldr r3, [r7, #12] 6579 001a 0122 movs r2, #1 6580 001c 1A77 strb r2, [r3, #28] 2367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); 6581 .loc 1 2367 5 6582 001e FB68 ldr r3, [r7, #12] 6583 0020 0122 movs r2, #1 6584 0022 83F84220 strb r2, [r3, #66] 6585 0026 18E0 b .L381 6586 .L380: 2368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) 6587 .loc 1 2369 30 6588 0028 FB68 ldr r3, [r7, #12] 6589 002a 9B6A ldr r3, [r3, #40] 6590 .loc 1 2369 11 6591 002c 7A68 ldr r2, [r7, #4] 6592 002e 9A42 cmp r2, r3 6593 0030 07D1 bne .L382 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 157 2370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; 6594 .loc 1 2371 19 6595 0032 FB68 ldr r3, [r7, #12] 6596 0034 0222 movs r2, #2 6597 0036 1A77 strb r2, [r3, #28] 2372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); 6598 .loc 1 2372 5 6599 0038 FB68 ldr r3, [r7, #12] 6600 003a 0122 movs r2, #1 6601 003c 83F84320 strb r2, [r3, #67] 6602 0040 0BE0 b .L381 6603 .L382: 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) 6604 .loc 1 2374 30 6605 0042 FB68 ldr r3, [r7, #12] 6606 0044 DB6A ldr r3, [r3, #44] 6607 .loc 1 2374 11 6608 0046 7A68 ldr r2, [r7, #4] 6609 0048 9A42 cmp r2, r3 6610 004a 06D1 bne .L381 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; 6611 .loc 1 2376 19 6612 004c FB68 ldr r3, [r7, #12] 6613 004e 0422 movs r2, #4 6614 0050 1A77 strb r2, [r3, #28] 2377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); 6615 .loc 1 2377 5 6616 0052 FB68 ldr r3, [r7, #12] 6617 0054 0122 movs r2, #1 6618 0056 83F84420 strb r2, [r3, #68] 6619 .L381: 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** else 2380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* nothing to do */ 2382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 2383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 2385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->ErrorCallback(htim); 2386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #else 2387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** HAL_TIM_ErrorCallback(htim); 6620 .loc 1 2387 3 6621 005a F868 ldr r0, [r7, #12] 6622 005c FFF7FEFF bl HAL_TIM_ErrorCallback 2388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; 6623 .loc 1 2390 17 6624 0060 FB68 ldr r3, [r7, #12] 6625 0062 0022 movs r2, #0 6626 0064 1A77 strb r2, [r3, #28] 2391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6627 .loc 1 2391 1 6628 0066 00BF nop ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 158 6629 0068 1037 adds r7, r7, #16 6630 .LCFI216: 6631 .cfi_def_cfa_offset 8 6632 006a BD46 mov sp, r7 6633 .LCFI217: 6634 .cfi_def_cfa_register 13 6635 @ sp needed 6636 006c 80BD pop {r7, pc} 6637 .cfi_endproc 6638 .LFE275: 6640 .section .text.TIM_CCxNChannelCmd,"ax",%progbits 6641 .align 1 6642 .syntax unified 6643 .thumb 6644 .thumb_func 6646 TIM_CCxNChannelCmd: 6647 .LFB276: 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /** 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @brief Enables or disables the TIM Capture Compare Channel xN. 2395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param TIMx to select the TIM peripheral 2396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param Channel specifies the TIM Channel 2397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be one of the following values: 2398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_1: TIM Channel 1 2399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_2: TIM Channel 2 2400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @arg TIM_CHANNEL_3: TIM Channel 3 2401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @param ChannelNState specifies the TIM Channel CCxNE bit new state. 2402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * This parameter can be: TIM_CCxN_ENABLE or TIM_CCxN_Disable. 2403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** * @retval None 2404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** */ 2405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState) 2406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** { 6648 .loc 1 2406 1 6649 .cfi_startproc 6650 @ args = 0, pretend = 0, frame = 24 6651 @ frame_needed = 1, uses_anonymous_args = 0 6652 @ link register save eliminated. 6653 0000 80B4 push {r7} 6654 .LCFI218: 6655 .cfi_def_cfa_offset 4 6656 .cfi_offset 7, -4 6657 0002 87B0 sub sp, sp, #28 6658 .LCFI219: 6659 .cfi_def_cfa_offset 32 6660 0004 00AF add r7, sp, #0 6661 .LCFI220: 6662 .cfi_def_cfa_register 7 6663 0006 F860 str r0, [r7, #12] 6664 0008 B960 str r1, [r7, #8] 6665 000a 7A60 str r2, [r7, #4] 2407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** uint32_t tmp; 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** tmp = TIM_CCER_CC1NE << (Channel & 0x1FU); /* 0x1FU = 31 bits max shift */ 6666 .loc 1 2409 36 6667 000c BB68 ldr r3, [r7, #8] 6668 000e 03F01F03 and r3, r3, #31 6669 .loc 1 2409 7 ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 159 6670 0012 0422 movs r2, #4 6671 0014 02FA03F3 lsl r3, r2, r3 6672 0018 7B61 str r3, [r7, #20] 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Reset the CCxNE Bit */ 2412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIMx->CCER &= ~tmp; 6673 .loc 1 2412 14 6674 001a FB68 ldr r3, [r7, #12] 6675 001c 1A6A ldr r2, [r3, #32] 6676 .loc 1 2412 18 6677 001e 7B69 ldr r3, [r7, #20] 6678 0020 DB43 mvns r3, r3 6679 .loc 1 2412 14 6680 0022 1A40 ands r2, r2, r3 6681 0024 FB68 ldr r3, [r7, #12] 6682 0026 1A62 str r2, [r3, #32] 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** 2414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** /* Set or reset the CCxNE Bit */ 2415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** TIMx->CCER |= (uint32_t)(ChannelNState << (Channel & 0x1FU)); /* 0x1FU = 31 bits max shift */ 6683 .loc 1 2415 14 6684 0028 FB68 ldr r3, [r7, #12] 6685 002a 1A6A ldr r2, [r3, #32] 6686 .loc 1 2415 54 6687 002c BB68 ldr r3, [r7, #8] 6688 002e 03F01F03 and r3, r3, #31 6689 .loc 1 2415 42 6690 0032 7968 ldr r1, [r7, #4] 6691 0034 01FA03F3 lsl r3, r1, r3 6692 .loc 1 2415 14 6693 0038 1A43 orrs r2, r2, r3 6694 003a FB68 ldr r3, [r7, #12] 6695 003c 1A62 str r2, [r3, #32] 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c **** } 6696 .loc 1 2416 1 6697 003e 00BF nop 6698 0040 1C37 adds r7, r7, #28 6699 .LCFI221: 6700 .cfi_def_cfa_offset 4 6701 0042 BD46 mov sp, r7 6702 .LCFI222: 6703 .cfi_def_cfa_register 13 6704 @ sp needed 6705 0044 5DF8047B ldr r7, [sp], #4 6706 .LCFI223: 6707 .cfi_restore 7 6708 .cfi_def_cfa_offset 0 6709 0048 7047 bx lr 6710 .cfi_endproc 6711 .LFE276: 6713 .text 6714 .Letext0: 6715 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h" 6716 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h" 6717 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f405xx.h" 6718 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 6719 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 6720 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h" ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 160 6721 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h" 6722 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h" ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 161 DEFINED SYMBOLS *ABS*:00000000 stm32f4xx_hal_tim_ex.c C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:20 .text.HAL_TIMEx_HallSensor_Init:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:26 .text.HAL_TIMEx_HallSensor_Init:00000000 HAL_TIMEx_HallSensor_Init C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:369 .text.HAL_TIMEx_HallSensor_MspInit:00000000 HAL_TIMEx_HallSensor_MspInit C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:263 .text.HAL_TIMEx_HallSensor_DeInit:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:269 .text.HAL_TIMEx_HallSensor_DeInit:00000000 HAL_TIMEx_HallSensor_DeInit C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:411 .text.HAL_TIMEx_HallSensor_MspDeInit:00000000 HAL_TIMEx_HallSensor_MspDeInit C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:363 .text.HAL_TIMEx_HallSensor_MspInit:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:405 .text.HAL_TIMEx_HallSensor_MspDeInit:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:447 .text.HAL_TIMEx_HallSensor_Start:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:453 .text.HAL_TIMEx_HallSensor_Start:00000000 HAL_TIMEx_HallSensor_Start C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:628 .text.HAL_TIMEx_HallSensor_Start:00000100 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:639 .text.HAL_TIMEx_HallSensor_Stop:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:645 .text.HAL_TIMEx_HallSensor_Stop:00000000 HAL_TIMEx_HallSensor_Stop C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:727 .text.HAL_TIMEx_HallSensor_Start_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:733 .text.HAL_TIMEx_HallSensor_Start_IT:00000000 HAL_TIMEx_HallSensor_Start_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:916 .text.HAL_TIMEx_HallSensor_Start_IT:00000110 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:927 .text.HAL_TIMEx_HallSensor_Stop_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:933 .text.HAL_TIMEx_HallSensor_Stop_IT:00000000 HAL_TIMEx_HallSensor_Stop_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1023 .text.HAL_TIMEx_HallSensor_Start_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1029 .text.HAL_TIMEx_HallSensor_Start_DMA:00000000 HAL_TIMEx_HallSensor_Start_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1258 .text.HAL_TIMEx_HallSensor_Start_DMA:00000144 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1272 .text.HAL_TIMEx_HallSensor_Stop_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1278 .text.HAL_TIMEx_HallSensor_Stop_DMA:00000000 HAL_TIMEx_HallSensor_Stop_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1365 .text.HAL_TIMEx_OCN_Start:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1371 .text.HAL_TIMEx_OCN_Start:00000000 HAL_TIMEx_OCN_Start C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6646 .text.TIM_CCxNChannelCmd:00000000 TIM_CCxNChannelCmd C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1603 .text.HAL_TIMEx_OCN_Start:00000158 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1614 .text.HAL_TIMEx_OCN_Stop:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1620 .text.HAL_TIMEx_OCN_Stop:00000000 HAL_TIMEx_OCN_Stop C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1747 .text.HAL_TIMEx_OCN_Start_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:1753 .text.HAL_TIMEx_OCN_Start_IT:00000000 HAL_TIMEx_OCN_Start_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2054 .text.HAL_TIMEx_OCN_Start_IT:000001c8 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2065 .text.HAL_TIMEx_OCN_Stop_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2071 .text.HAL_TIMEx_OCN_Stop_IT:00000000 HAL_TIMEx_OCN_Stop_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2281 .text.HAL_TIMEx_OCN_Start_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2287 .text.HAL_TIMEx_OCN_Start_DMA:00000000 HAL_TIMEx_OCN_Start_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2778 .text.HAL_TIMEx_OCN_Start_DMA:000002d8 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6409 .text.TIM_DMADelayPulseNCplt:00000000 TIM_DMADelayPulseNCplt C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6548 .text.TIM_DMAErrorCCxN:00000000 TIM_DMAErrorCCxN C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2792 .text.HAL_TIMEx_OCN_Stop_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:2798 .text.HAL_TIMEx_OCN_Stop_DMA:00000000 HAL_TIMEx_OCN_Stop_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3001 .text.HAL_TIMEx_PWMN_Start:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3007 .text.HAL_TIMEx_PWMN_Start:00000000 HAL_TIMEx_PWMN_Start C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3239 .text.HAL_TIMEx_PWMN_Start:00000158 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3250 .text.HAL_TIMEx_PWMN_Stop:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3256 .text.HAL_TIMEx_PWMN_Stop:00000000 HAL_TIMEx_PWMN_Stop C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3383 .text.HAL_TIMEx_PWMN_Start_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3389 .text.HAL_TIMEx_PWMN_Start_IT:00000000 HAL_TIMEx_PWMN_Start_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3690 .text.HAL_TIMEx_PWMN_Start_IT:000001c8 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3701 .text.HAL_TIMEx_PWMN_Stop_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3707 .text.HAL_TIMEx_PWMN_Stop_IT:00000000 HAL_TIMEx_PWMN_Stop_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3917 .text.HAL_TIMEx_PWMN_Start_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:3923 .text.HAL_TIMEx_PWMN_Start_DMA:00000000 HAL_TIMEx_PWMN_Start_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4414 .text.HAL_TIMEx_PWMN_Start_DMA:000002d8 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4428 .text.HAL_TIMEx_PWMN_Stop_DMA:00000000 $t ARM GAS C:\Users\10728\AppData\Local\Temp\ccV0oeib.s page 162 C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4434 .text.HAL_TIMEx_PWMN_Stop_DMA:00000000 HAL_TIMEx_PWMN_Stop_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4637 .text.HAL_TIMEx_OnePulseN_Start:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4643 .text.HAL_TIMEx_OnePulseN_Start:00000000 HAL_TIMEx_OnePulseN_Start C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4767 .text.HAL_TIMEx_OnePulseN_Stop:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4773 .text.HAL_TIMEx_OnePulseN_Stop:00000000 HAL_TIMEx_OnePulseN_Stop C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4901 .text.HAL_TIMEx_OnePulseN_Start_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:4907 .text.HAL_TIMEx_OnePulseN_Start_IT:00000000 HAL_TIMEx_OnePulseN_Start_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5047 .text.HAL_TIMEx_OnePulseN_Stop_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5053 .text.HAL_TIMEx_OnePulseN_Stop_IT:00000000 HAL_TIMEx_OnePulseN_Stop_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5197 .text.HAL_TIMEx_ConfigCommutEvent:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5203 .text.HAL_TIMEx_ConfigCommutEvent:00000000 HAL_TIMEx_ConfigCommutEvent C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5352 .text.HAL_TIMEx_ConfigCommutEvent_IT:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5358 .text.HAL_TIMEx_ConfigCommutEvent_IT:00000000 HAL_TIMEx_ConfigCommutEvent_IT C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5507 .text.HAL_TIMEx_ConfigCommutEvent_DMA:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5513 .text.HAL_TIMEx_ConfigCommutEvent_DMA:00000000 HAL_TIMEx_ConfigCommutEvent_DMA C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5679 .text.HAL_TIMEx_ConfigCommutEvent_DMA:000000d8 $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6312 .text.TIMEx_DMACommutationCplt:00000000 TIMEx_DMACommutationCplt C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6361 .text.TIMEx_DMACommutationHalfCplt:00000000 TIMEx_DMACommutationHalfCplt C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5686 .text.HAL_TIMEx_MasterConfigSynchronization:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5692 .text.HAL_TIMEx_MasterConfigSynchronization:00000000 HAL_TIMEx_MasterConfigSynchronization C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5852 .text.HAL_TIMEx_MasterConfigSynchronization:000000dc $d C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5863 .text.HAL_TIMEx_ConfigBreakDeadTime:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5869 .text.HAL_TIMEx_ConfigBreakDeadTime:00000000 HAL_TIMEx_ConfigBreakDeadTime C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5984 .text.HAL_TIMEx_RemapConfig:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:5990 .text.HAL_TIMEx_RemapConfig:00000000 HAL_TIMEx_RemapConfig C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6052 .text.HAL_TIMEx_CommutCallback:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6058 .text.HAL_TIMEx_CommutCallback:00000000 HAL_TIMEx_CommutCallback C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6094 .text.HAL_TIMEx_CommutHalfCpltCallback:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6100 .text.HAL_TIMEx_CommutHalfCpltCallback:00000000 HAL_TIMEx_CommutHalfCpltCallback C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6136 .text.HAL_TIMEx_BreakCallback:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6142 .text.HAL_TIMEx_BreakCallback:00000000 HAL_TIMEx_BreakCallback C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6178 .text.HAL_TIMEx_HallSensor_GetState:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6184 .text.HAL_TIMEx_HallSensor_GetState:00000000 HAL_TIMEx_HallSensor_GetState C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6224 .text.HAL_TIMEx_GetChannelNState:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6230 .text.HAL_TIMEx_GetChannelNState:00000000 HAL_TIMEx_GetChannelNState C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6306 .text.TIMEx_DMACommutationCplt:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6355 .text.TIMEx_DMACommutationHalfCplt:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6404 .text.TIM_DMADelayPulseNCplt:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6543 .text.TIM_DMAErrorCCxN:00000000 $t C:\Users\10728\AppData\Local\Temp\ccV0oeib.s:6641 .text.TIM_CCxNChannelCmd:00000000 $t UNDEFINED SYMBOLS TIM_Base_SetConfig TIM_TI1_SetConfig TIM_OC2_SetConfig TIM_CCxChannelCmd HAL_DMA_Start_IT TIM_DMACaptureCplt TIM_DMACaptureHalfCplt TIM_DMAError HAL_DMA_Abort_IT TIM_DMADelayPulseHalfCplt HAL_TIM_PWM_PulseFinishedCallback HAL_TIM_ErrorCallback