ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.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 "main.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.main,"ax",%progbits 20 .align 1 21 .global main 22 .syntax unified 23 .thumb 24 .thumb_func 26 main: 27 .LFB133: 28 .file 1 "Core/Src/main.c" 1:Core/Src/main.c **** /* USER CODE BEGIN Header */ 2:Core/Src/main.c **** /** 3:Core/Src/main.c **** ****************************************************************************** 4:Core/Src/main.c **** * @file : main.c 5:Core/Src/main.c **** * @brief : Main program body 6:Core/Src/main.c **** ****************************************************************************** 7:Core/Src/main.c **** * @attention 8:Core/Src/main.c **** * 9:Core/Src/main.c **** * Copyright (c) 2025 STMicroelectronics. 10:Core/Src/main.c **** * All rights reserved. 11:Core/Src/main.c **** * 12:Core/Src/main.c **** * This software is licensed under terms that can be found in the LICENSE file 13:Core/Src/main.c **** * in the root directory of this software component. 14:Core/Src/main.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 15:Core/Src/main.c **** * 16:Core/Src/main.c **** ****************************************************************************** 17:Core/Src/main.c **** */ 18:Core/Src/main.c **** /* USER CODE END Header */ 19:Core/Src/main.c **** /* Includes ------------------------------------------------------------------*/ 20:Core/Src/main.c **** #include "main.h" 21:Core/Src/main.c **** #include "adc.h" 22:Core/Src/main.c **** #include "can.h" 23:Core/Src/main.c **** #include "dma.h" 24:Core/Src/main.c **** #include "tim.h" 25:Core/Src/main.c **** #include "usart.h" 26:Core/Src/main.c **** #include "gpio.h" 27:Core/Src/main.c **** #include "stdbool.h" 28:Core/Src/main.c **** 29:Core/Src/main.c **** /* Private includes ----------------------------------------------------------*/ 30:Core/Src/main.c **** /* USER CODE BEGIN Includes */ ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 2 31:Core/Src/main.c **** #include "soft_can.h" 32:Core/Src/main.c **** #include "soft_uart.h" 33:Core/Src/main.c **** #include "soft_adc.h" 34:Core/Src/main.c **** #include "soft_flow.h" 35:Core/Src/main.c **** #include "hard_led.h" 36:Core/Src/main.c **** #include "soft_timer.h" 37:Core/Src/main.c **** #include "soft_test.h" 38:Core/Src/main.c **** #include "soft_bms.h" 39:Core/Src/main.c **** #include "soft_okcell.h" 40:Core/Src/main.c **** #include "soft_tattu.h" 41:Core/Src/main.c **** #include "soft_poweramp.h" 42:Core/Src/main.c **** #include "soft_obstacle.h" 43:Core/Src/main.c **** #include "soft_p_2_c.h" 44:Core/Src/main.c **** #include "soft_terrain.h" 45:Core/Src/main.c **** #include "string.h" 46:Core/Src/main.c **** #include "soft_engine.h" 47:Core/Src/main.c **** #include "soft_calibration.h" 48:Core/Src/main.c **** #include "soft_eft.h" 49:Core/Src/main.c **** #include "soft_flash.h" 50:Core/Src/main.c **** #include "soft_seed_device.h" 51:Core/Src/main.c **** #include "soft_flow.h" 52:Core/Src/main.c **** #include "soft_version.h" 53:Core/Src/main.c **** #include "config.h" 54:Core/Src/main.c **** #include "math.h" 55:Core/Src/main.c **** #include "stdio.h" 56:Core/Src/main.c **** #include "soft_update.h" 57:Core/Src/main.c **** #include "can_debug.h" 58:Core/Src/main.c **** /* USER CODE END Includes */ 59:Core/Src/main.c **** 60:Core/Src/main.c **** /* Private typedef -----------------------------------------------------------*/ 61:Core/Src/main.c **** /* USER CODE BEGIN PTD */ 62:Core/Src/main.c **** 63:Core/Src/main.c **** /* USER CODE END PTD */ 64:Core/Src/main.c **** 65:Core/Src/main.c **** /* Private define ------------------------------------------------------------*/ 66:Core/Src/main.c **** /* USER CODE BEGIN PD */ 67:Core/Src/main.c **** 68:Core/Src/main.c **** /* USER CODE END PD */ 69:Core/Src/main.c **** 70:Core/Src/main.c **** /* Private macro -------------------------------------------------------------*/ 71:Core/Src/main.c **** /* USER CODE BEGIN PM */ 72:Core/Src/main.c **** 73:Core/Src/main.c **** /* USER CODE END PM */ 74:Core/Src/main.c **** 75:Core/Src/main.c **** /* Private variables ---------------------------------------------------------*/ 76:Core/Src/main.c **** 77:Core/Src/main.c **** /* USER CODE BEGIN PV */ 78:Core/Src/main.c **** 79:Core/Src/main.c **** /* USER CODE END PV */ 80:Core/Src/main.c **** 81:Core/Src/main.c **** /* Private function prototypes -----------------------------------------------*/ 82:Core/Src/main.c **** void SystemClock_Config(void); 83:Core/Src/main.c **** /* USER CODE BEGIN PFP */ 84:Core/Src/main.c **** 85:Core/Src/main.c **** /* USER CODE END PFP */ 86:Core/Src/main.c **** 87:Core/Src/main.c **** /* Private user code ---------------------------------------------------------*/ ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 3 88:Core/Src/main.c **** /* USER CODE BEGIN 0 */ 89:Core/Src/main.c **** 90:Core/Src/main.c **** /* USER CODE END 0 */ 91:Core/Src/main.c **** 92:Core/Src/main.c **** /** 93:Core/Src/main.c **** * @brief The application entry point. 94:Core/Src/main.c **** * @retval int 95:Core/Src/main.c **** */ 96:Core/Src/main.c **** int main(void) 97:Core/Src/main.c **** { 29 .loc 1 97 1 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 8 32 @ frame_needed = 1, uses_anonymous_args = 0 33 0000 80B5 push {r7, lr} 34 .LCFI0: 35 .cfi_def_cfa_offset 8 36 .cfi_offset 7, -8 37 .cfi_offset 14, -4 38 0002 82B0 sub sp, sp, #8 39 .LCFI1: 40 .cfi_def_cfa_offset 16 41 0004 00AF add r7, sp, #0 42 .LCFI2: 43 .cfi_def_cfa_register 7 98:Core/Src/main.c **** 99:Core/Src/main.c **** /* USER CODE BEGIN 1 */ 100:Core/Src/main.c **** SCB->VTOR = FLASH_BASE | 0x8007800; //偏移 44 .loc 1 100 6 45 0006 264B ldr r3, .L4 46 .loc 1 100 13 47 0008 264A ldr r2, .L4+4 48 000a 9A60 str r2, [r3, #8] 101:Core/Src/main.c **** /* USER CODE END 1 */ 102:Core/Src/main.c **** 103:Core/Src/main.c **** /* MCU Configuration--------------------------------------------------------*/ 104:Core/Src/main.c **** 105:Core/Src/main.c **** /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ 106:Core/Src/main.c **** HAL_Init(); 49 .loc 1 106 3 50 000c FFF7FEFF bl HAL_Init 107:Core/Src/main.c **** 108:Core/Src/main.c **** /* USER CODE BEGIN Init */ 109:Core/Src/main.c **** 110:Core/Src/main.c **** /* USER CODE END Init */ 111:Core/Src/main.c **** 112:Core/Src/main.c **** /* Configure the system clock */ 113:Core/Src/main.c **** SystemClock_Config(); 51 .loc 1 113 3 52 0010 FFF7FEFF bl SystemClock_Config 114:Core/Src/main.c **** 115:Core/Src/main.c **** /* USER CODE BEGIN SysInit */ 116:Core/Src/main.c **** 117:Core/Src/main.c **** /* USER CODE END SysInit */ 118:Core/Src/main.c **** 119:Core/Src/main.c **** /* Initialize all configured peripherals */ 120:Core/Src/main.c **** MX_GPIO_Init(); ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 4 53 .loc 1 120 3 54 0014 FFF7FEFF bl MX_GPIO_Init 121:Core/Src/main.c **** MX_DMA_Init(); 55 .loc 1 121 3 56 0018 FFF7FEFF bl MX_DMA_Init 122:Core/Src/main.c **** MX_CAN_Init(); 57 .loc 1 122 3 58 001c FFF7FEFF bl MX_CAN_Init 123:Core/Src/main.c **** MX_USART2_UART_Init(); 59 .loc 1 123 3 60 0020 FFF7FEFF bl MX_USART2_UART_Init 124:Core/Src/main.c **** MX_USART3_UART_Init(); 61 .loc 1 124 3 62 0024 FFF7FEFF bl MX_USART3_UART_Init 125:Core/Src/main.c **** MX_ADC1_Init(); 63 .loc 1 125 3 64 0028 FFF7FEFF bl MX_ADC1_Init 126:Core/Src/main.c **** MX_TIM2_Init(); 65 .loc 1 126 3 66 002c FFF7FEFF bl MX_TIM2_Init 127:Core/Src/main.c **** MX_TIM3_Init(); 67 .loc 1 127 3 68 0030 FFF7FEFF bl MX_TIM3_Init 128:Core/Src/main.c **** MX_TIM4_Init(); 69 .loc 1 128 3 70 0034 FFF7FEFF bl MX_TIM4_Init 129:Core/Src/main.c **** /* USER CODE BEGIN 2 */ 130:Core/Src/main.c **** 131:Core/Src/main.c **** user_init(); 71 .loc 1 131 3 72 0038 FFF7FEFF bl user_init 132:Core/Src/main.c **** 133:Core/Src/main.c **** //获取时钟频率 134:Core/Src/main.c **** uint32_t Freq = 0; 73 .loc 1 134 12 74 003c 0023 movs r3, #0 75 003e 7B60 str r3, [r7, #4] 135:Core/Src/main.c **** Freq = HAL_RCC_GetSysClockFreq();//72M 76 .loc 1 135 10 77 0040 FFF7FEFF bl HAL_RCC_GetSysClockFreq 78 0044 7860 str r0, [r7, #4] 79 .L3: 136:Core/Src/main.c **** (void)Freq; 137:Core/Src/main.c **** 138:Core/Src/main.c **** /* USER CODE END 2 */ 139:Core/Src/main.c **** 140:Core/Src/main.c **** /* Infinite loop */ 141:Core/Src/main.c **** 142:Core/Src/main.c **** /* USER CODE BEGIN WHILE */ 143:Core/Src/main.c **** while (1) 144:Core/Src/main.c **** { 145:Core/Src/main.c **** /* USER CODE END WHILE */ 146:Core/Src/main.c **** //点亮pmu内部led灯 147:Core/Src/main.c **** pmu_inside_led(); 80 .loc 1 147 5 81 0046 FFF7FEFF bl pmu_inside_led 148:Core/Src/main.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 5 149:Core/Src/main.c **** //AD电压50HZ采集 150:Core/Src/main.c **** adc_gather_hz(); 82 .loc 1 150 5 83 004a FFF7FEFF bl adc_gather_hz 151:Core/Src/main.c **** 152:Core/Src/main.c **** // //PMU向飞控定时发送数据 定时器 153:Core/Src/main.c **** timer_function(); 84 .loc 1 153 5 85 004e FFF7FEFF bl timer_function 154:Core/Src/main.c **** 155:Core/Src/main.c **** // //uart2发送数据给主控制器 雷达升级不发送数据 156:Core/Src/main.c **** pmu_to_fcu(); 86 .loc 1 156 5 87 0052 FFF7FEFF bl pmu_to_fcu 157:Core/Src/main.c **** 158:Core/Src/main.c **** //UART2 接收主控制器数据 159:Core/Src/main.c **** uart_recv_con_msg(); 88 .loc 1 159 5 89 0056 FFF7FEFF bl uart_recv_con_msg 160:Core/Src/main.c **** 161:Core/Src/main.c **** //刚上电需要发送的信息 162:Core/Src/main.c **** pmu_start_info(); 90 .loc 1 162 5 91 005a FFF7FEFF bl pmu_start_info 163:Core/Src/main.c **** 164:Core/Src/main.c **** //更新播撒,称重,水泵,离心喷头,流量计等设备信息 165:Core/Src/main.c **** update_device_type_data(); 92 .loc 1 165 5 93 005e FFF7FEFF bl update_device_type_data 166:Core/Src/main.c **** 167:Core/Src/main.c **** DM_obs_test(); 94 .loc 1 167 5 95 0062 FFF7FEFF bl DM_obs_test 168:Core/Src/main.c **** 169:Core/Src/main.c **** //获取外设版本和SN号 170:Core/Src/main.c **** get_device_version_and_sn(); 96 .loc 1 170 5 97 0066 FFF7FEFF bl get_device_version_and_sn 171:Core/Src/main.c **** 172:Core/Src/main.c **** //写flash相关功能 173:Core/Src/main.c **** flash_write_pmu_par(); 98 .loc 1 173 5 99 006a FFF7FEFF bl flash_write_pmu_par 174:Core/Src/main.c **** 175:Core/Src/main.c **** //雷达相关功能 176:Core/Src/main.c **** lidar_function(); 100 .loc 1 176 5 101 006e FFF7FEFF bl lidar_function 177:Core/Src/main.c **** 178:Core/Src/main.c **** //外部LED灯循环 179:Core/Src/main.c **** led_blink_repeat(); 102 .loc 1 179 5 103 0072 FFF7FEFF bl led_blink_repeat 180:Core/Src/main.c **** 181:Core/Src/main.c **** //发动机相关功能 182:Core/Src/main.c **** engine_function(); 104 .loc 1 182 5 ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 6 105 0076 FFF7FEFF bl engine_function 183:Core/Src/main.c **** 184:Core/Src/main.c **** //智能电池相关功能 185:Core/Src/main.c **** bms_function(); 106 .loc 1 185 5 107 007a FFF7FEFF bl bms_function 186:Core/Src/main.c **** 187:Core/Src/main.c **** //流量计相关功能 188:Core/Src/main.c **** flow_function(); 108 .loc 1 188 5 109 007e FFF7FEFF bl flow_function 189:Core/Src/main.c **** 190:Core/Src/main.c **** //液位计相关功能 191:Core/Src/main.c **** L1L2_GPIO_check(); 110 .loc 1 191 5 111 0082 FFF7FEFF bl L1L2_GPIO_check 192:Core/Src/main.c **** 193:Core/Src/main.c **** #ifdef mimo_update 194:Core/Src/main.c **** mimo_obs_update_func(); 195:Core/Src/main.c **** #else 196:Core/Src/main.c **** //设备升级 197:Core/Src/main.c **** Vk_Update_Device_Protocol(); 112 .loc 1 197 5 113 0086 FFF7FEFF bl Vk_Update_Device_Protocol 198:Core/Src/main.c **** #endif 199:Core/Src/main.c **** 200:Core/Src/main.c **** send_uartfifo_msg(); 114 .loc 1 200 5 115 008a FFF7FEFF bl send_uartfifo_msg 201:Core/Src/main.c **** //CAN DEBUG 202:Core/Src/main.c **** if(planep.Candebug_flag == true) 116 .loc 1 202 14 117 008e 064B ldr r3, .L4+8 118 0090 B3F91430 ldrsh r3, [r3, #20] @ unaligned 119 0094 1BB2 sxth r3, r3 120 .loc 1 202 7 121 0096 012B cmp r3, #1 122 0098 D5D1 bne .L3 203:Core/Src/main.c **** { 204:Core/Src/main.c **** seek_can_debug_buf_adr(); 123 .loc 1 204 7 124 009a FFF7FEFF bl seek_can_debug_buf_adr 147:Core/Src/main.c **** 125 .loc 1 147 5 126 009e D2E7 b .L3 127 .L5: 128 .align 2 129 .L4: 130 00a0 00ED00E0 .word -536810240 131 00a4 00780008 .word 134248448 132 00a8 00000000 .word planep 133 .cfi_endproc 134 .LFE133: 136 .section .text.SystemClock_Config,"ax",%progbits 137 .align 1 138 .global SystemClock_Config 139 .syntax unified ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 7 140 .thumb 141 .thumb_func 143 SystemClock_Config: 144 .LFB134: 205:Core/Src/main.c **** } 206:Core/Src/main.c **** 207:Core/Src/main.c **** /* USER CODE BEGIN 3 */ 208:Core/Src/main.c **** } 209:Core/Src/main.c **** /* USER CODE END 3 */ 210:Core/Src/main.c **** } 211:Core/Src/main.c **** 212:Core/Src/main.c **** /** 213:Core/Src/main.c **** * @brief System Clock Configuration 214:Core/Src/main.c **** * @retval None 215:Core/Src/main.c **** */ 216:Core/Src/main.c **** void SystemClock_Config(void) 217:Core/Src/main.c **** { 145 .loc 1 217 1 146 .cfi_startproc 147 @ args = 0, pretend = 0, frame = 112 148 @ frame_needed = 1, uses_anonymous_args = 0 149 0000 80B5 push {r7, lr} 150 .LCFI3: 151 .cfi_def_cfa_offset 8 152 .cfi_offset 7, -8 153 .cfi_offset 14, -4 154 0002 9CB0 sub sp, sp, #112 155 .LCFI4: 156 .cfi_def_cfa_offset 120 157 0004 00AF add r7, sp, #0 158 .LCFI5: 159 .cfi_def_cfa_register 7 218:Core/Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0}; 160 .loc 1 218 22 161 0006 07F14803 add r3, r7, #72 162 000a 2822 movs r2, #40 163 000c 0021 movs r1, #0 164 000e 1846 mov r0, r3 165 0010 FFF7FEFF bl memset 219:Core/Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; 166 .loc 1 219 22 167 0014 07F13403 add r3, r7, #52 168 0018 0022 movs r2, #0 169 001a 1A60 str r2, [r3] 170 001c 5A60 str r2, [r3, #4] 171 001e 9A60 str r2, [r3, #8] 172 0020 DA60 str r2, [r3, #12] 173 0022 1A61 str r2, [r3, #16] 220:Core/Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInit = {0}; 174 .loc 1 220 28 175 0024 3B46 mov r3, r7 176 0026 3422 movs r2, #52 177 0028 0021 movs r1, #0 178 002a 1846 mov r0, r3 179 002c FFF7FEFF bl memset 221:Core/Src/main.c **** 222:Core/Src/main.c **** /** Initializes the RCC Oscillators according to the specified parameters ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 8 223:Core/Src/main.c **** * in the RCC_OscInitTypeDef structure. 224:Core/Src/main.c **** */ 225:Core/Src/main.c **** RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; 180 .loc 1 225 36 181 0030 0123 movs r3, #1 182 0032 BB64 str r3, [r7, #72] 226:Core/Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; 183 .loc 1 226 30 184 0034 4FF48033 mov r3, #65536 185 0038 FB64 str r3, [r7, #76] 227:Core/Src/main.c **** RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1; 186 .loc 1 227 36 187 003a 0023 movs r3, #0 188 003c 3B65 str r3, [r7, #80] 228:Core/Src/main.c **** RCC_OscInitStruct.HSIState = RCC_HSI_ON; 189 .loc 1 228 30 190 003e 0123 movs r3, #1 191 0040 BB65 str r3, [r7, #88] 229:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; 192 .loc 1 229 34 193 0042 0223 movs r3, #2 194 0044 7B66 str r3, [r7, #100] 230:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; 195 .loc 1 230 35 196 0046 4FF48033 mov r3, #65536 197 004a BB66 str r3, [r7, #104] 231:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; 198 .loc 1 231 32 199 004c 4FF4E013 mov r3, #1835008 200 0050 FB66 str r3, [r7, #108] 232:Core/Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) 201 .loc 1 232 7 202 0052 07F14803 add r3, r7, #72 203 0056 1846 mov r0, r3 204 0058 FFF7FEFF bl HAL_RCC_OscConfig 205 005c 0346 mov r3, r0 206 .loc 1 232 6 207 005e 002B cmp r3, #0 208 0060 01D0 beq .L7 233:Core/Src/main.c **** { 234:Core/Src/main.c **** Error_Handler(); 209 .loc 1 234 5 210 0062 FFF7FEFF bl Error_Handler 211 .L7: 235:Core/Src/main.c **** } 236:Core/Src/main.c **** 237:Core/Src/main.c **** /** Initializes the CPU, AHB and APB buses clocks 238:Core/Src/main.c **** */ 239:Core/Src/main.c **** RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK 212 .loc 1 239 31 213 0066 0F23 movs r3, #15 214 0068 7B63 str r3, [r7, #52] 240:Core/Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; 241:Core/Src/main.c **** RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; 215 .loc 1 241 34 216 006a 0223 movs r3, #2 217 006c BB63 str r3, [r7, #56] ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 9 242:Core/Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; 218 .loc 1 242 35 219 006e 0023 movs r3, #0 220 0070 FB63 str r3, [r7, #60] 243:Core/Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; 221 .loc 1 243 36 222 0072 4FF48063 mov r3, #1024 223 0076 3B64 str r3, [r7, #64] 244:Core/Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; 224 .loc 1 244 36 225 0078 0023 movs r3, #0 226 007a 7B64 str r3, [r7, #68] 245:Core/Src/main.c **** 246:Core/Src/main.c **** if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) 227 .loc 1 246 7 228 007c 07F13403 add r3, r7, #52 229 0080 0221 movs r1, #2 230 0082 1846 mov r0, r3 231 0084 FFF7FEFF bl HAL_RCC_ClockConfig 232 0088 0346 mov r3, r0 233 .loc 1 246 6 234 008a 002B cmp r3, #0 235 008c 01D0 beq .L8 247:Core/Src/main.c **** { 248:Core/Src/main.c **** Error_Handler(); 236 .loc 1 248 5 237 008e FFF7FEFF bl Error_Handler 238 .L8: 249:Core/Src/main.c **** } 250:Core/Src/main.c **** PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART2|RCC_PERIPHCLK_USART3 239 .loc 1 250 38 240 0092 8623 movs r3, #134 241 0094 3B60 str r3, [r7] 251:Core/Src/main.c **** |RCC_PERIPHCLK_ADC12; 252:Core/Src/main.c **** PeriphClkInit.Usart2ClockSelection = RCC_USART2CLKSOURCE_PCLK1; 242 .loc 1 252 38 243 0096 0023 movs r3, #0 244 0098 FB60 str r3, [r7, #12] 253:Core/Src/main.c **** PeriphClkInit.Usart3ClockSelection = RCC_USART3CLKSOURCE_PCLK1; 245 .loc 1 253 38 246 009a 0023 movs r3, #0 247 009c 3B61 str r3, [r7, #16] 254:Core/Src/main.c **** PeriphClkInit.Adc12ClockSelection = RCC_ADC12PLLCLK_DIV1; 248 .loc 1 254 37 249 009e 4FF48073 mov r3, #256 250 00a2 7B62 str r3, [r7, #36] 255:Core/Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK) 251 .loc 1 255 7 252 00a4 3B46 mov r3, r7 253 00a6 1846 mov r0, r3 254 00a8 FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig 255 00ac 0346 mov r3, r0 256 .loc 1 255 6 257 00ae 002B cmp r3, #0 258 00b0 01D0 beq .L10 256:Core/Src/main.c **** { 257:Core/Src/main.c **** Error_Handler(); ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 10 259 .loc 1 257 5 260 00b2 FFF7FEFF bl Error_Handler 261 .L10: 258:Core/Src/main.c **** } 259:Core/Src/main.c **** } 262 .loc 1 259 1 263 00b6 00BF nop 264 00b8 7037 adds r7, r7, #112 265 .LCFI6: 266 .cfi_def_cfa_offset 8 267 00ba BD46 mov sp, r7 268 .LCFI7: 269 .cfi_def_cfa_register 13 270 @ sp needed 271 00bc 80BD pop {r7, pc} 272 .cfi_endproc 273 .LFE134: 275 .section .text.HAL_TIM_PeriodElapsedCallback,"ax",%progbits 276 .align 1 277 .global HAL_TIM_PeriodElapsedCallback 278 .syntax unified 279 .thumb 280 .thumb_func 282 HAL_TIM_PeriodElapsedCallback: 283 .LFB135: 260:Core/Src/main.c **** 261:Core/Src/main.c **** /* USER CODE BEGIN 4 */ 262:Core/Src/main.c **** 263:Core/Src/main.c **** /* USER CODE END 4 */ 264:Core/Src/main.c **** 265:Core/Src/main.c **** /** 266:Core/Src/main.c **** * @brief Period elapsed callback in non blocking mode 267:Core/Src/main.c **** * @note This function is called when TIM1 interrupt took place, inside 268:Core/Src/main.c **** * HAL_TIM_IRQHandler(). It makes a direct call to HAL_IncTick() to increment 269:Core/Src/main.c **** * a global variable "uwTick" used as application time base. 270:Core/Src/main.c **** * @param htim : TIM handle 271:Core/Src/main.c **** * @retval None 272:Core/Src/main.c **** */ 273:Core/Src/main.c **** void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) 274:Core/Src/main.c **** { 284 .loc 1 274 1 285 .cfi_startproc 286 @ args = 0, pretend = 0, frame = 8 287 @ frame_needed = 1, uses_anonymous_args = 0 288 0000 80B5 push {r7, lr} 289 .LCFI8: 290 .cfi_def_cfa_offset 8 291 .cfi_offset 7, -8 292 .cfi_offset 14, -4 293 0002 82B0 sub sp, sp, #8 294 .LCFI9: 295 .cfi_def_cfa_offset 16 296 0004 00AF add r7, sp, #0 297 .LCFI10: 298 .cfi_def_cfa_register 7 299 0006 7860 str r0, [r7, #4] 275:Core/Src/main.c **** /* USER CODE BEGIN Callback 0 */ ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 11 276:Core/Src/main.c **** 277:Core/Src/main.c **** /* USER CODE END Callback 0 */ 278:Core/Src/main.c **** if (htim->Instance == TIM1) 300 .loc 1 278 11 301 0008 7B68 ldr r3, [r7, #4] 302 000a 1B68 ldr r3, [r3] 303 .loc 1 278 6 304 000c 044A ldr r2, .L14 305 000e 9342 cmp r3, r2 306 0010 01D1 bne .L13 279:Core/Src/main.c **** { 280:Core/Src/main.c **** HAL_IncTick(); 307 .loc 1 280 5 308 0012 FFF7FEFF bl HAL_IncTick 309 .L13: 281:Core/Src/main.c **** } 282:Core/Src/main.c **** /* USER CODE BEGIN Callback 1 */ 283:Core/Src/main.c **** 284:Core/Src/main.c **** /* USER CODE END Callback 1 */ 285:Core/Src/main.c **** } 310 .loc 1 285 1 311 0016 00BF nop 312 0018 0837 adds r7, r7, #8 313 .LCFI11: 314 .cfi_def_cfa_offset 8 315 001a BD46 mov sp, r7 316 .LCFI12: 317 .cfi_def_cfa_register 13 318 @ sp needed 319 001c 80BD pop {r7, pc} 320 .L15: 321 001e 00BF .align 2 322 .L14: 323 0020 002C0140 .word 1073818624 324 .cfi_endproc 325 .LFE135: 327 .section .text.Error_Handler,"ax",%progbits 328 .align 1 329 .global Error_Handler 330 .syntax unified 331 .thumb 332 .thumb_func 334 Error_Handler: 335 .LFB136: 286:Core/Src/main.c **** 287:Core/Src/main.c **** /** 288:Core/Src/main.c **** * @brief This function is executed in case of error occurrence. 289:Core/Src/main.c **** * @retval None 290:Core/Src/main.c **** */ 291:Core/Src/main.c **** void Error_Handler(void) 292:Core/Src/main.c **** { 336 .loc 1 292 1 337 .cfi_startproc 338 @ args = 0, pretend = 0, frame = 0 339 @ frame_needed = 1, uses_anonymous_args = 0 340 @ link register save eliminated. 341 0000 80B4 push {r7} ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 12 342 .LCFI13: 343 .cfi_def_cfa_offset 4 344 .cfi_offset 7, -4 345 0002 00AF add r7, sp, #0 346 .LCFI14: 347 .cfi_def_cfa_register 7 348 .LBB4: 349 .LBB5: 350 .file 2 "Drivers/CMSIS/Include/cmsis_gcc.h" 1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//** 2:Drivers/CMSIS/Include/cmsis_gcc.h **** * @file cmsis_gcc.h 3:Drivers/CMSIS/Include/cmsis_gcc.h **** * @brief CMSIS compiler GCC header file 4:Drivers/CMSIS/Include/cmsis_gcc.h **** * @version V5.0.4 5:Drivers/CMSIS/Include/cmsis_gcc.h **** * @date 09. April 2018 6:Drivers/CMSIS/Include/cmsis_gcc.h **** ******************************************************************************/ 7:Drivers/CMSIS/Include/cmsis_gcc.h **** /* 8:Drivers/CMSIS/Include/cmsis_gcc.h **** * Copyright (c) 2009-2018 Arm Limited. All rights reserved. 9:Drivers/CMSIS/Include/cmsis_gcc.h **** * 10:Drivers/CMSIS/Include/cmsis_gcc.h **** * SPDX-License-Identifier: Apache-2.0 11:Drivers/CMSIS/Include/cmsis_gcc.h **** * 12:Drivers/CMSIS/Include/cmsis_gcc.h **** * Licensed under the Apache License, Version 2.0 (the License); you may 13:Drivers/CMSIS/Include/cmsis_gcc.h **** * not use this file except in compliance with the License. 14:Drivers/CMSIS/Include/cmsis_gcc.h **** * You may obtain a copy of the License at 15:Drivers/CMSIS/Include/cmsis_gcc.h **** * 16:Drivers/CMSIS/Include/cmsis_gcc.h **** * www.apache.org/licenses/LICENSE-2.0 17:Drivers/CMSIS/Include/cmsis_gcc.h **** * 18:Drivers/CMSIS/Include/cmsis_gcc.h **** * Unless required by applicable law or agreed to in writing, software 19:Drivers/CMSIS/Include/cmsis_gcc.h **** * distributed under the License is distributed on an AS IS BASIS, WITHOUT 20:Drivers/CMSIS/Include/cmsis_gcc.h **** * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21:Drivers/CMSIS/Include/cmsis_gcc.h **** * See the License for the specific language governing permissions and 22:Drivers/CMSIS/Include/cmsis_gcc.h **** * limitations under the License. 23:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 24:Drivers/CMSIS/Include/cmsis_gcc.h **** 25:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __CMSIS_GCC_H 26:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_H 27:Drivers/CMSIS/Include/cmsis_gcc.h **** 28:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ignore some GCC warnings */ 29:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 30:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wsign-conversion" 31:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wconversion" 32:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wunused-parameter" 33:Drivers/CMSIS/Include/cmsis_gcc.h **** 34:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Fallback for __has_builtin */ 35:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __has_builtin 36:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __has_builtin(x) (0) 37:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 38:Drivers/CMSIS/Include/cmsis_gcc.h **** 39:Drivers/CMSIS/Include/cmsis_gcc.h **** /* CMSIS compiler specific defines */ 40:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ASM 41:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ASM __asm 42:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 43:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __INLINE 44:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __INLINE inline 45:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 46:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_INLINE 47:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_INLINE static inline 48:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 13 49:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_FORCEINLINE 50:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline 51:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 52:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __NO_RETURN 53:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __NO_RETURN __attribute__((__noreturn__)) 54:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 55:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __USED 56:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __USED __attribute__((used)) 57:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 58:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __WEAK 59:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WEAK __attribute__((weak)) 60:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 61:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED 62:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED __attribute__((packed, aligned(1))) 63:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 64:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_STRUCT 65:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) 66:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_UNION 68:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_UNION union __attribute__((packed, aligned(1))) 69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 70:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32 /* deprecated */ 71:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 72:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 73:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" 74:Drivers/CMSIS/Include/cmsis_gcc.h **** struct __attribute__((packed)) T_UINT32 { uint32_t v; }; 75:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 76:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) 77:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 78:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_WRITE 79:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 80:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 81:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" 82:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; 83:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 84:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))- 85:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 86:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_READ 87:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 88:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 89:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" 90:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; 91:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 92:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(add 93:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 94:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_WRITE 95:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 96:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 97:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" 98:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; 99:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 100:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))- 101:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 102:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_READ 103:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 104:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 105:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 14 106:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; 107:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 108:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(add 109:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 110:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ALIGNED 111:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ALIGNED(x) __attribute__((aligned(x))) 112:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 113:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __RESTRICT 114:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __RESTRICT __restrict 115:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 116:Drivers/CMSIS/Include/cmsis_gcc.h **** 117:Drivers/CMSIS/Include/cmsis_gcc.h **** 118:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ########################### Core Function Access ########################### */ 119:Drivers/CMSIS/Include/cmsis_gcc.h **** /** \ingroup CMSIS_Core_FunctionInterface 120:Drivers/CMSIS/Include/cmsis_gcc.h **** \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions 121:Drivers/CMSIS/Include/cmsis_gcc.h **** @{ 122:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 123:Drivers/CMSIS/Include/cmsis_gcc.h **** 124:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 125:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable IRQ Interrupts 126:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables IRQ interrupts by clearing the I-bit in the CPSR. 127:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes. 128:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 129:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_irq(void) 130:Drivers/CMSIS/Include/cmsis_gcc.h **** { 131:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsie i" : : : "memory"); 132:Drivers/CMSIS/Include/cmsis_gcc.h **** } 133:Drivers/CMSIS/Include/cmsis_gcc.h **** 134:Drivers/CMSIS/Include/cmsis_gcc.h **** 135:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 136:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Disable IRQ Interrupts 137:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Disables IRQ interrupts by setting the I-bit in the CPSR. 138:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes. 139:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 140:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_irq(void) 141:Drivers/CMSIS/Include/cmsis_gcc.h **** { 142:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsid i" : : : "memory"); 351 .loc 2 142 3 352 .syntax unified 353 @ 142 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 354 0004 72B6 cpsid i 355 @ 0 "" 2 143:Drivers/CMSIS/Include/cmsis_gcc.h **** } 356 .loc 2 143 1 357 .thumb 358 .syntax unified 359 0006 00BF nop 360 .L17: 361 .LBE5: 362 .LBE4: 293:Core/Src/main.c **** /* USER CODE BEGIN Error_Handler_Debug */ 294:Core/Src/main.c **** /* User can add his own implementation to report the HAL error return state */ 295:Core/Src/main.c **** __disable_irq(); 296:Core/Src/main.c **** while (1) 363 .loc 1 296 9 discriminator 1 364 0008 FEE7 b .L17 365 .cfi_endproc ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 15 366 .LFE136: 368 .section .text.assert_failed,"ax",%progbits 369 .align 1 370 .global assert_failed 371 .syntax unified 372 .thumb 373 .thumb_func 375 assert_failed: 376 .LFB137: 297:Core/Src/main.c **** { 298:Core/Src/main.c **** } 299:Core/Src/main.c **** /* USER CODE END Error_Handler_Debug */ 300:Core/Src/main.c **** } 301:Core/Src/main.c **** #ifdef USE_FULL_ASSERT 302:Core/Src/main.c **** /** 303:Core/Src/main.c **** * @brief Reports the name of the source file and the source line number 304:Core/Src/main.c **** * where the assert_param error has occurred. 305:Core/Src/main.c **** * @param file: pointer to the source file name 306:Core/Src/main.c **** * @param line: assert_param error line source number 307:Core/Src/main.c **** * @retval None 308:Core/Src/main.c **** */ 309:Core/Src/main.c **** void assert_failed(uint8_t *file, uint32_t line) 310:Core/Src/main.c **** { 377 .loc 1 310 1 378 .cfi_startproc 379 @ args = 0, pretend = 0, frame = 8 380 @ frame_needed = 1, uses_anonymous_args = 0 381 @ link register save eliminated. 382 0000 80B4 push {r7} 383 .LCFI15: 384 .cfi_def_cfa_offset 4 385 .cfi_offset 7, -4 386 0002 83B0 sub sp, sp, #12 387 .LCFI16: 388 .cfi_def_cfa_offset 16 389 0004 00AF add r7, sp, #0 390 .LCFI17: 391 .cfi_def_cfa_register 7 392 0006 7860 str r0, [r7, #4] 393 0008 3960 str r1, [r7] 311:Core/Src/main.c **** /* USER CODE BEGIN 6 */ 312:Core/Src/main.c **** /* User can add his own implementation to report the file name and line number, 313:Core/Src/main.c **** ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ 314:Core/Src/main.c **** /* USER CODE END 6 */ 315:Core/Src/main.c **** } 394 .loc 1 315 1 395 000a 00BF nop 396 000c 0C37 adds r7, r7, #12 397 .LCFI18: 398 .cfi_def_cfa_offset 4 399 000e BD46 mov sp, r7 400 .LCFI19: 401 .cfi_def_cfa_register 13 402 @ sp needed 403 0010 5DF8047B ldr r7, [sp], #4 404 .LCFI20: 405 .cfi_restore 7 ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 16 406 .cfi_def_cfa_offset 0 407 0014 7047 bx lr 408 .cfi_endproc 409 .LFE137: 411 .text 412 .Letext0: 413 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h" 414 .file 4 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h" 415 .file 5 "Drivers/CMSIS/Include/core_cm4.h" 416 .file 6 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h" 417 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h" 418 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_rcc.h" 419 .file 9 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_rcc_ex.h" 420 .file 10 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h" 421 .file 11 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_tim.h" 422 .file 12 "user_inc/soft_p_2_c.h" ARM GAS C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s page 17 DEFINED SYMBOLS *ABS*:00000000 main.c C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:20 .text.main:00000000 $t C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:26 .text.main:00000000 main C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:143 .text.SystemClock_Config:00000000 SystemClock_Config C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:130 .text.main:000000a0 $d C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:137 .text.SystemClock_Config:00000000 $t C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:334 .text.Error_Handler:00000000 Error_Handler C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:276 .text.HAL_TIM_PeriodElapsedCallback:00000000 $t C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:282 .text.HAL_TIM_PeriodElapsedCallback:00000000 HAL_TIM_PeriodElapsedCallback C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:323 .text.HAL_TIM_PeriodElapsedCallback:00000020 $d C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:328 .text.Error_Handler:00000000 $t C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:369 .text.assert_failed:00000000 $t C:\Users\zl835\AppData\Local\Temp\cc0wiOic.s:375 .text.assert_failed:00000000 assert_failed UNDEFINED SYMBOLS HAL_Init MX_GPIO_Init MX_DMA_Init MX_CAN_Init MX_USART2_UART_Init MX_USART3_UART_Init MX_ADC1_Init MX_TIM2_Init MX_TIM3_Init MX_TIM4_Init user_init HAL_RCC_GetSysClockFreq pmu_inside_led adc_gather_hz timer_function pmu_to_fcu uart_recv_con_msg pmu_start_info update_device_type_data DM_obs_test get_device_version_and_sn flash_write_pmu_par lidar_function led_blink_repeat engine_function bms_function flow_function L1L2_GPIO_check Vk_Update_Device_Protocol send_uartfifo_msg seek_can_debug_buf_adr planep memset HAL_RCC_OscConfig HAL_RCC_ClockConfig HAL_RCCEx_PeriphCLKConfig HAL_IncTick