ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.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 "hard_led.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .global L_red 20 .section .bss.L_red,"aw",%nobits 21 .align 2 24 L_red: 25 0000 00000000 .space 20 25 00000000 25 00000000 25 00000000 25 00000000 26 .global L_blue 27 .section .bss.L_blue,"aw",%nobits 28 .align 2 31 L_blue: 32 0000 00000000 .space 20 32 00000000 32 00000000 32 00000000 32 00000000 33 .global L_green 34 .section .bss.L_green,"aw",%nobits 35 .align 2 38 L_green: 39 0000 00000000 .space 20 39 00000000 39 00000000 39 00000000 39 00000000 40 .global L_purple 41 .section .bss.L_purple,"aw",%nobits 42 .align 2 45 L_purple: 46 0000 00000000 .space 20 46 00000000 46 00000000 46 00000000 46 00000000 47 .global L_cyan 48 .section .bss.L_cyan,"aw",%nobits 49 .align 2 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 2 52 L_cyan: 53 0000 00000000 .space 20 53 00000000 53 00000000 53 00000000 53 00000000 54 .global L_yellow 55 .section .bss.L_yellow,"aw",%nobits 56 .align 2 59 L_yellow: 60 0000 00000000 .space 20 60 00000000 60 00000000 60 00000000 60 00000000 61 .global L_white 62 .section .bss.L_white,"aw",%nobits 63 .align 2 66 L_white: 67 0000 00000000 .space 20 67 00000000 67 00000000 67 00000000 67 00000000 68 .global led_is_ok 69 .section .bss.led_is_ok,"aw",%nobits 72 led_is_ok: 73 0000 00 .space 1 74 .section .text.Update_LED_Time,"ax",%progbits 75 .align 1 76 .global Update_LED_Time 77 .syntax unified 78 .thumb 79 .thumb_func 81 Update_LED_Time: 82 .LFB133: 83 .file 1 "user_src/hard_led.c" 1:user_src/hard_led.c **** #include "hard_led.h" 2:user_src/hard_led.c **** #include 3:user_src/hard_led.c **** #include "gpio.h" 4:user_src/hard_led.c **** #include "soft_p_2_c.h" 5:user_src/hard_led.c **** #include "soft_flash.h" 6:user_src/hard_led.c **** 7:user_src/hard_led.c **** 8:user_src/hard_led.c **** LED_Red L_red; 9:user_src/hard_led.c **** LED_Blue L_blue; 10:user_src/hard_led.c **** LED_Green L_green; 11:user_src/hard_led.c **** LED_Purple L_purple; 12:user_src/hard_led.c **** LED_Cyan L_cyan; 13:user_src/hard_led.c **** LED_Yellow L_yellow; 14:user_src/hard_led.c **** LED_White L_white; 15:user_src/hard_led.c **** bool led_is_ok = false; 16:user_src/hard_led.c **** 17:user_src/hard_led.c **** void Update_LED_Time(){ 84 .loc 1 17 23 85 .cfi_startproc 86 @ args = 0, pretend = 0, frame = 0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 3 87 @ frame_needed = 1, uses_anonymous_args = 0 88 0000 80B5 push {r7, lr} 89 .LCFI0: 90 .cfi_def_cfa_offset 8 91 .cfi_offset 7, -8 92 .cfi_offset 14, -4 93 0002 00AF add r7, sp, #0 94 .LCFI1: 95 .cfi_def_cfa_register 7 18:user_src/hard_led.c **** L_red.time = HAL_GetTick(); 96 .loc 1 18 15 97 0004 FFF7FEFF bl HAL_GetTick 98 0008 0346 mov r3, r0 99 .loc 1 18 13 100 000a 114A ldr r2, .L2 101 000c 1361 str r3, [r2, #16] 19:user_src/hard_led.c **** L_blue.time = HAL_GetTick(); 102 .loc 1 19 16 103 000e FFF7FEFF bl HAL_GetTick 104 0012 0346 mov r3, r0 105 .loc 1 19 14 106 0014 0F4A ldr r2, .L2+4 107 0016 1361 str r3, [r2, #16] 20:user_src/hard_led.c **** L_green.time = HAL_GetTick(); 108 .loc 1 20 17 109 0018 FFF7FEFF bl HAL_GetTick 110 001c 0346 mov r3, r0 111 .loc 1 20 15 112 001e 0E4A ldr r2, .L2+8 113 0020 1361 str r3, [r2, #16] 21:user_src/hard_led.c **** L_purple.time = HAL_GetTick(); 114 .loc 1 21 18 115 0022 FFF7FEFF bl HAL_GetTick 116 0026 0346 mov r3, r0 117 .loc 1 21 16 118 0028 0C4A ldr r2, .L2+12 119 002a 1361 str r3, [r2, #16] 22:user_src/hard_led.c **** L_cyan.time = HAL_GetTick(); 120 .loc 1 22 16 121 002c FFF7FEFF bl HAL_GetTick 122 0030 0346 mov r3, r0 123 .loc 1 22 14 124 0032 0B4A ldr r2, .L2+16 125 0034 1361 str r3, [r2, #16] 23:user_src/hard_led.c **** L_yellow.time = HAL_GetTick(); 126 .loc 1 23 18 127 0036 FFF7FEFF bl HAL_GetTick 128 003a 0346 mov r3, r0 129 .loc 1 23 16 130 003c 094A ldr r2, .L2+20 131 003e 1361 str r3, [r2, #16] 24:user_src/hard_led.c **** L_white.time = HAL_GetTick(); 132 .loc 1 24 17 133 0040 FFF7FEFF bl HAL_GetTick 134 0044 0346 mov r3, r0 135 .loc 1 24 15 136 0046 084A ldr r2, .L2+24 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 4 137 0048 1361 str r3, [r2, #16] 25:user_src/hard_led.c **** } 138 .loc 1 25 1 139 004a 00BF nop 140 004c 80BD pop {r7, pc} 141 .L3: 142 004e 00BF .align 2 143 .L2: 144 0050 00000000 .word L_red 145 0054 00000000 .word L_blue 146 0058 00000000 .word L_green 147 005c 00000000 .word L_purple 148 0060 00000000 .word L_cyan 149 0064 00000000 .word L_yellow 150 0068 00000000 .word L_white 151 .cfi_endproc 152 .LFE133: 154 .section .text.led_set_blink,"ax",%progbits 155 .align 1 156 .global led_set_blink 157 .syntax unified 158 .thumb 159 .thumb_func 161 led_set_blink: 162 .LFB134: 26:user_src/hard_led.c **** 27:user_src/hard_led.c **** /** 28:user_src/hard_led.c **** * @file led_set_blink 29:user_src/hard_led.c **** * @brief LED闪烁 30:user_src/hard_led.c **** * @param none 31:user_src/hard_led.c **** * @details 32:user_src/hard_led.c **** * @author Zhang Sir 33:user_src/hard_led.c **** **/ 34:user_src/hard_led.c **** void led_set_blink(uint8_t LED, uint8_t on_time, uint8_t off_time, uint8_t repeat) 35:user_src/hard_led.c **** { 163 .loc 1 35 1 164 .cfi_startproc 165 @ args = 0, pretend = 0, frame = 8 166 @ frame_needed = 1, uses_anonymous_args = 0 167 0000 90B5 push {r4, r7, lr} 168 .LCFI2: 169 .cfi_def_cfa_offset 12 170 .cfi_offset 4, -12 171 .cfi_offset 7, -8 172 .cfi_offset 14, -4 173 0002 83B0 sub sp, sp, #12 174 .LCFI3: 175 .cfi_def_cfa_offset 24 176 0004 00AF add r7, sp, #0 177 .LCFI4: 178 .cfi_def_cfa_register 7 179 0006 0446 mov r4, r0 180 0008 0846 mov r0, r1 181 000a 1146 mov r1, r2 182 000c 1A46 mov r2, r3 183 000e 2346 mov r3, r4 184 0010 FB71 strb r3, [r7, #7] ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 5 185 0012 0346 mov r3, r0 186 0014 BB71 strb r3, [r7, #6] 187 0016 0B46 mov r3, r1 188 0018 7B71 strb r3, [r7, #5] 189 001a 1346 mov r3, r2 190 001c 3B71 strb r3, [r7, #4] 36:user_src/hard_led.c **** if (LED == Red) 191 .loc 1 36 5 192 001e FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 193 0020 002B cmp r3, #0 194 0022 1ED1 bne .L5 37:user_src/hard_led.c **** { 38:user_src/hard_led.c **** L_red.on_time_ms = on_time * 100; 195 .loc 1 38 30 196 0024 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 197 0026 6422 movs r2, #100 198 0028 02FB03F3 mul r3, r2, r3 199 002c 1A46 mov r2, r3 200 .loc 1 38 20 201 002e 744B ldr r3, .L13 202 0030 5A60 str r2, [r3, #4] 39:user_src/hard_led.c **** L_red.off_time_ms = off_time * 100; 203 .loc 1 39 32 204 0032 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 205 0034 6422 movs r2, #100 206 0036 02FB03F3 mul r3, r2, r3 207 003a 1A46 mov r2, r3 208 .loc 1 39 21 209 003c 704B ldr r3, .L13 210 003e 9A60 str r2, [r3, #8] 40:user_src/hard_led.c **** LEDRed_OFF(); 211 .loc 1 40 3 212 0040 0022 movs r2, #0 213 0042 0121 movs r1, #1 214 0044 6F48 ldr r0, .L13+4 215 0046 FFF7FEFF bl HAL_GPIO_WritePin 41:user_src/hard_led.c **** L_red.repeat = repeat; 216 .loc 1 41 16 217 004a 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 218 004c 6C4A ldr r2, .L13 219 004e D360 str r3, [r2, #12] 42:user_src/hard_led.c **** L_red.time = HAL_GetTick(); 220 .loc 1 42 16 221 0050 FFF7FEFF bl HAL_GetTick 222 0054 0346 mov r3, r0 223 .loc 1 42 14 224 0056 6A4A ldr r2, .L13 225 0058 1361 str r3, [r2, #16] 43:user_src/hard_led.c **** L_red.status = OFF; 226 .loc 1 43 16 227 005a 694B ldr r3, .L13 228 005c 0022 movs r2, #0 229 005e 1A70 strb r2, [r3] 44:user_src/hard_led.c **** } 45:user_src/hard_led.c **** else if (LED == Green) 46:user_src/hard_led.c **** { 47:user_src/hard_led.c **** L_green.on_time_ms = on_time * 100; ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 6 48:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100; 49:user_src/hard_led.c **** LEDGreen_OFF(); 50:user_src/hard_led.c **** L_green.repeat = repeat; 51:user_src/hard_led.c **** L_green.time = HAL_GetTick(); 52:user_src/hard_led.c **** L_green.status = OFF; 53:user_src/hard_led.c **** } 54:user_src/hard_led.c **** else if (LED == Blue) 55:user_src/hard_led.c **** { 56:user_src/hard_led.c **** L_blue.on_time_ms = on_time * 100; 57:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100; 58:user_src/hard_led.c **** LEDBlue_OFF(); 59:user_src/hard_led.c **** L_blue.repeat = repeat; 60:user_src/hard_led.c **** L_blue.time = HAL_GetTick(); 61:user_src/hard_led.c **** L_blue.status = OFF; 62:user_src/hard_led.c **** } 63:user_src/hard_led.c **** else if (LED == Purple) 64:user_src/hard_led.c **** { 65:user_src/hard_led.c **** L_purple.on_time_ms = on_time * 100; 66:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100; 67:user_src/hard_led.c **** LEDPurple_OFF(); 68:user_src/hard_led.c **** L_purple.repeat = repeat; 69:user_src/hard_led.c **** L_purple.time = HAL_GetTick(); 70:user_src/hard_led.c **** L_purple.status = OFF; 71:user_src/hard_led.c **** } 72:user_src/hard_led.c **** else if (LED == Yellow) 73:user_src/hard_led.c **** { 74:user_src/hard_led.c **** L_yellow.on_time_ms = on_time * 100; 75:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100; 76:user_src/hard_led.c **** LEDYellow_OFF(); 77:user_src/hard_led.c **** L_yellow.repeat = repeat; 78:user_src/hard_led.c **** L_yellow.time = HAL_GetTick(); 79:user_src/hard_led.c **** L_yellow.status = OFF; 80:user_src/hard_led.c **** } 81:user_src/hard_led.c **** else if (LED == Cyan) 82:user_src/hard_led.c **** { 83:user_src/hard_led.c **** L_cyan.on_time_ms = on_time * 100; 84:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100; 85:user_src/hard_led.c **** LEDCyan_OFF(); 86:user_src/hard_led.c **** L_cyan.repeat = repeat; 87:user_src/hard_led.c **** L_cyan.time = HAL_GetTick(); 88:user_src/hard_led.c **** L_cyan.status = OFF; 89:user_src/hard_led.c **** } 90:user_src/hard_led.c **** else if (LED == White) 91:user_src/hard_led.c **** { 92:user_src/hard_led.c **** L_white.on_time_ms = on_time * 100; 93:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100; 94:user_src/hard_led.c **** LEDWhite_OFF(); 95:user_src/hard_led.c **** L_white.repeat = repeat; 96:user_src/hard_led.c **** L_white.time = HAL_GetTick(); 97:user_src/hard_led.c **** L_white.status = OFF; 98:user_src/hard_led.c **** } 99:user_src/hard_led.c **** } 230 .loc 1 99 1 231 0060 CAE0 b .L12 232 .L5: 45:user_src/hard_led.c **** { 233 .loc 1 45 10 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 7 234 0062 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 235 0064 012B cmp r3, #1 236 0066 1ED1 bne .L7 47:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100; 237 .loc 1 47 32 238 0068 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 239 006a 6422 movs r2, #100 240 006c 02FB03F3 mul r3, r2, r3 241 0070 1A46 mov r2, r3 47:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100; 242 .loc 1 47 22 243 0072 654B ldr r3, .L13+8 244 0074 5A60 str r2, [r3, #4] 48:user_src/hard_led.c **** LEDGreen_OFF(); 245 .loc 1 48 34 246 0076 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 247 0078 6422 movs r2, #100 248 007a 02FB03F3 mul r3, r2, r3 249 007e 1A46 mov r2, r3 48:user_src/hard_led.c **** LEDGreen_OFF(); 250 .loc 1 48 23 251 0080 614B ldr r3, .L13+8 252 0082 9A60 str r2, [r3, #8] 49:user_src/hard_led.c **** L_green.repeat = repeat; 253 .loc 1 49 3 254 0084 0022 movs r2, #0 255 0086 0221 movs r1, #2 256 0088 5E48 ldr r0, .L13+4 257 008a FFF7FEFF bl HAL_GPIO_WritePin 50:user_src/hard_led.c **** L_green.time = HAL_GetTick(); 258 .loc 1 50 18 259 008e 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 260 0090 5D4A ldr r2, .L13+8 261 0092 D360 str r3, [r2, #12] 51:user_src/hard_led.c **** L_green.status = OFF; 262 .loc 1 51 18 263 0094 FFF7FEFF bl HAL_GetTick 264 0098 0346 mov r3, r0 51:user_src/hard_led.c **** L_green.status = OFF; 265 .loc 1 51 16 266 009a 5B4A ldr r2, .L13+8 267 009c 1361 str r3, [r2, #16] 52:user_src/hard_led.c **** } 268 .loc 1 52 18 269 009e 5A4B ldr r3, .L13+8 270 00a0 0022 movs r2, #0 271 00a2 1A70 strb r2, [r3] 272 .loc 1 99 1 273 00a4 A8E0 b .L12 274 .L7: 54:user_src/hard_led.c **** { 275 .loc 1 54 10 276 00a6 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 277 00a8 022B cmp r3, #2 278 00aa 1ED1 bne .L8 56:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100; 279 .loc 1 56 31 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 8 280 00ac BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 281 00ae 6422 movs r2, #100 282 00b0 02FB03F3 mul r3, r2, r3 283 00b4 1A46 mov r2, r3 56:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100; 284 .loc 1 56 21 285 00b6 554B ldr r3, .L13+12 286 00b8 5A60 str r2, [r3, #4] 57:user_src/hard_led.c **** LEDBlue_OFF(); 287 .loc 1 57 33 288 00ba 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 289 00bc 6422 movs r2, #100 290 00be 02FB03F3 mul r3, r2, r3 291 00c2 1A46 mov r2, r3 57:user_src/hard_led.c **** LEDBlue_OFF(); 292 .loc 1 57 22 293 00c4 514B ldr r3, .L13+12 294 00c6 9A60 str r2, [r3, #8] 58:user_src/hard_led.c **** L_blue.repeat = repeat; 295 .loc 1 58 3 296 00c8 0022 movs r2, #0 297 00ca 0421 movs r1, #4 298 00cc 4D48 ldr r0, .L13+4 299 00ce FFF7FEFF bl HAL_GPIO_WritePin 59:user_src/hard_led.c **** L_blue.time = HAL_GetTick(); 300 .loc 1 59 17 301 00d2 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 302 00d4 4D4A ldr r2, .L13+12 303 00d6 D360 str r3, [r2, #12] 60:user_src/hard_led.c **** L_blue.status = OFF; 304 .loc 1 60 17 305 00d8 FFF7FEFF bl HAL_GetTick 306 00dc 0346 mov r3, r0 60:user_src/hard_led.c **** L_blue.status = OFF; 307 .loc 1 60 15 308 00de 4B4A ldr r2, .L13+12 309 00e0 1361 str r3, [r2, #16] 61:user_src/hard_led.c **** } 310 .loc 1 61 17 311 00e2 4A4B ldr r3, .L13+12 312 00e4 0022 movs r2, #0 313 00e6 1A70 strb r2, [r3] 314 .loc 1 99 1 315 00e8 86E0 b .L12 316 .L8: 63:user_src/hard_led.c **** { 317 .loc 1 63 10 318 00ea FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 319 00ec 032B cmp r3, #3 320 00ee 1ED1 bne .L9 65:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100; 321 .loc 1 65 33 322 00f0 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 323 00f2 6422 movs r2, #100 324 00f4 02FB03F3 mul r3, r2, r3 325 00f8 1A46 mov r2, r3 65:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100; ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 9 326 .loc 1 65 23 327 00fa 454B ldr r3, .L13+16 328 00fc 5A60 str r2, [r3, #4] 66:user_src/hard_led.c **** LEDPurple_OFF(); 329 .loc 1 66 35 330 00fe 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 331 0100 6422 movs r2, #100 332 0102 02FB03F3 mul r3, r2, r3 333 0106 1A46 mov r2, r3 66:user_src/hard_led.c **** LEDPurple_OFF(); 334 .loc 1 66 24 335 0108 414B ldr r3, .L13+16 336 010a 9A60 str r2, [r3, #8] 67:user_src/hard_led.c **** L_purple.repeat = repeat; 337 .loc 1 67 3 338 010c 0022 movs r2, #0 339 010e 0521 movs r1, #5 340 0110 3C48 ldr r0, .L13+4 341 0112 FFF7FEFF bl HAL_GPIO_WritePin 68:user_src/hard_led.c **** L_purple.time = HAL_GetTick(); 342 .loc 1 68 19 343 0116 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 344 0118 3D4A ldr r2, .L13+16 345 011a D360 str r3, [r2, #12] 69:user_src/hard_led.c **** L_purple.status = OFF; 346 .loc 1 69 19 347 011c FFF7FEFF bl HAL_GetTick 348 0120 0346 mov r3, r0 69:user_src/hard_led.c **** L_purple.status = OFF; 349 .loc 1 69 17 350 0122 3B4A ldr r2, .L13+16 351 0124 1361 str r3, [r2, #16] 70:user_src/hard_led.c **** } 352 .loc 1 70 19 353 0126 3A4B ldr r3, .L13+16 354 0128 0022 movs r2, #0 355 012a 1A70 strb r2, [r3] 356 .loc 1 99 1 357 012c 64E0 b .L12 358 .L9: 72:user_src/hard_led.c **** { 359 .loc 1 72 10 360 012e FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 361 0130 042B cmp r3, #4 362 0132 1ED1 bne .L10 74:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100; 363 .loc 1 74 33 364 0134 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 365 0136 6422 movs r2, #100 366 0138 02FB03F3 mul r3, r2, r3 367 013c 1A46 mov r2, r3 74:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100; 368 .loc 1 74 23 369 013e 354B ldr r3, .L13+20 370 0140 5A60 str r2, [r3, #4] 75:user_src/hard_led.c **** LEDYellow_OFF(); 371 .loc 1 75 35 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 10 372 0142 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 373 0144 6422 movs r2, #100 374 0146 02FB03F3 mul r3, r2, r3 375 014a 1A46 mov r2, r3 75:user_src/hard_led.c **** LEDYellow_OFF(); 376 .loc 1 75 24 377 014c 314B ldr r3, .L13+20 378 014e 9A60 str r2, [r3, #8] 76:user_src/hard_led.c **** L_yellow.repeat = repeat; 379 .loc 1 76 3 380 0150 0022 movs r2, #0 381 0152 0321 movs r1, #3 382 0154 2B48 ldr r0, .L13+4 383 0156 FFF7FEFF bl HAL_GPIO_WritePin 77:user_src/hard_led.c **** L_yellow.time = HAL_GetTick(); 384 .loc 1 77 19 385 015a 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 386 015c 2D4A ldr r2, .L13+20 387 015e D360 str r3, [r2, #12] 78:user_src/hard_led.c **** L_yellow.status = OFF; 388 .loc 1 78 19 389 0160 FFF7FEFF bl HAL_GetTick 390 0164 0346 mov r3, r0 78:user_src/hard_led.c **** L_yellow.status = OFF; 391 .loc 1 78 17 392 0166 2B4A ldr r2, .L13+20 393 0168 1361 str r3, [r2, #16] 79:user_src/hard_led.c **** } 394 .loc 1 79 19 395 016a 2A4B ldr r3, .L13+20 396 016c 0022 movs r2, #0 397 016e 1A70 strb r2, [r3] 398 .loc 1 99 1 399 0170 42E0 b .L12 400 .L10: 81:user_src/hard_led.c **** { 401 .loc 1 81 10 402 0172 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 403 0174 052B cmp r3, #5 404 0176 1ED1 bne .L11 83:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100; 405 .loc 1 83 31 406 0178 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 407 017a 6422 movs r2, #100 408 017c 02FB03F3 mul r3, r2, r3 409 0180 1A46 mov r2, r3 83:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100; 410 .loc 1 83 21 411 0182 254B ldr r3, .L13+24 412 0184 5A60 str r2, [r3, #4] 84:user_src/hard_led.c **** LEDCyan_OFF(); 413 .loc 1 84 33 414 0186 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 415 0188 6422 movs r2, #100 416 018a 02FB03F3 mul r3, r2, r3 417 018e 1A46 mov r2, r3 84:user_src/hard_led.c **** LEDCyan_OFF(); ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 11 418 .loc 1 84 22 419 0190 214B ldr r3, .L13+24 420 0192 9A60 str r2, [r3, #8] 85:user_src/hard_led.c **** L_cyan.repeat = repeat; 421 .loc 1 85 3 422 0194 0022 movs r2, #0 423 0196 0621 movs r1, #6 424 0198 1A48 ldr r0, .L13+4 425 019a FFF7FEFF bl HAL_GPIO_WritePin 86:user_src/hard_led.c **** L_cyan.time = HAL_GetTick(); 426 .loc 1 86 17 427 019e 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 428 01a0 1D4A ldr r2, .L13+24 429 01a2 D360 str r3, [r2, #12] 87:user_src/hard_led.c **** L_cyan.status = OFF; 430 .loc 1 87 17 431 01a4 FFF7FEFF bl HAL_GetTick 432 01a8 0346 mov r3, r0 87:user_src/hard_led.c **** L_cyan.status = OFF; 433 .loc 1 87 15 434 01aa 1B4A ldr r2, .L13+24 435 01ac 1361 str r3, [r2, #16] 88:user_src/hard_led.c **** } 436 .loc 1 88 17 437 01ae 1A4B ldr r3, .L13+24 438 01b0 0022 movs r2, #0 439 01b2 1A70 strb r2, [r3] 440 .loc 1 99 1 441 01b4 20E0 b .L12 442 .L11: 90:user_src/hard_led.c **** { 443 .loc 1 90 10 444 01b6 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2 445 01b8 062B cmp r3, #6 446 01ba 1DD1 bne .L12 92:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100; 447 .loc 1 92 32 448 01bc BB79 ldrb r3, [r7, #6] @ zero_extendqisi2 449 01be 6422 movs r2, #100 450 01c0 02FB03F3 mul r3, r2, r3 451 01c4 1A46 mov r2, r3 92:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100; 452 .loc 1 92 22 453 01c6 154B ldr r3, .L13+28 454 01c8 5A60 str r2, [r3, #4] 93:user_src/hard_led.c **** LEDWhite_OFF(); 455 .loc 1 93 34 456 01ca 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2 457 01cc 6422 movs r2, #100 458 01ce 02FB03F3 mul r3, r2, r3 459 01d2 1A46 mov r2, r3 93:user_src/hard_led.c **** LEDWhite_OFF(); 460 .loc 1 93 23 461 01d4 114B ldr r3, .L13+28 462 01d6 9A60 str r2, [r3, #8] 94:user_src/hard_led.c **** L_white.repeat = repeat; 463 .loc 1 94 3 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 12 464 01d8 0022 movs r2, #0 465 01da 0721 movs r1, #7 466 01dc 0948 ldr r0, .L13+4 467 01de FFF7FEFF bl HAL_GPIO_WritePin 95:user_src/hard_led.c **** L_white.time = HAL_GetTick(); 468 .loc 1 95 18 469 01e2 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2 470 01e4 0D4A ldr r2, .L13+28 471 01e6 D360 str r3, [r2, #12] 96:user_src/hard_led.c **** L_white.status = OFF; 472 .loc 1 96 18 473 01e8 FFF7FEFF bl HAL_GetTick 474 01ec 0346 mov r3, r0 96:user_src/hard_led.c **** L_white.status = OFF; 475 .loc 1 96 16 476 01ee 0B4A ldr r2, .L13+28 477 01f0 1361 str r3, [r2, #16] 97:user_src/hard_led.c **** } 478 .loc 1 97 18 479 01f2 0A4B ldr r3, .L13+28 480 01f4 0022 movs r2, #0 481 01f6 1A70 strb r2, [r3] 482 .L12: 483 .loc 1 99 1 484 01f8 00BF nop 485 01fa 0C37 adds r7, r7, #12 486 .LCFI5: 487 .cfi_def_cfa_offset 12 488 01fc BD46 mov sp, r7 489 .LCFI6: 490 .cfi_def_cfa_register 13 491 @ sp needed 492 01fe 90BD pop {r4, r7, pc} 493 .L14: 494 .align 2 495 .L13: 496 0200 00000000 .word L_red 497 0204 00040048 .word 1207960576 498 0208 00000000 .word L_green 499 020c 00000000 .word L_blue 500 0210 00000000 .word L_purple 501 0214 00000000 .word L_yellow 502 0218 00000000 .word L_cyan 503 021c 00000000 .word L_white 504 .cfi_endproc 505 .LFE134: 507 .global L_red_time 508 .section .bss.L_red_time,"aw",%nobits 509 .align 2 512 L_red_time: 513 0000 00000000 .space 4 514 .section .text.led_blink_repeat,"ax",%progbits 515 .align 1 516 .global led_blink_repeat 517 .syntax unified 518 .thumb 519 .thumb_func ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 13 521 led_blink_repeat: 522 .LFB135: 100:user_src/hard_led.c **** 101:user_src/hard_led.c **** /** 102:user_src/hard_led.c **** * @file led_blink_repeat 103:user_src/hard_led.c **** * @brief LED循环 104:user_src/hard_led.c **** * @param none 105:user_src/hard_led.c **** * @details 106:user_src/hard_led.c **** * @author Zhang Sir 107:user_src/hard_led.c **** **/ 108:user_src/hard_led.c **** uint32_t L_red_time = 0; 109:user_src/hard_led.c **** void led_blink_repeat() 110:user_src/hard_led.c **** { 523 .loc 1 110 1 524 .cfi_startproc 525 @ args = 0, pretend = 0, frame = 0 526 @ frame_needed = 1, uses_anonymous_args = 0 527 0000 80B5 push {r7, lr} 528 .LCFI7: 529 .cfi_def_cfa_offset 8 530 .cfi_offset 7, -8 531 .cfi_offset 14, -4 532 0002 00AF add r7, sp, #0 533 .LCFI8: 534 .cfi_def_cfa_register 7 111:user_src/hard_led.c **** //青岛中飞机型不需要LED 112:user_src/hard_led.c **** if(current_pmu_par.uavtype == VK_ALL_IN_ONE) 535 .loc 1 112 20 536 0004 9F4B ldr r3, .L71 537 0006 B3F90230 ldrsh r3, [r3, #2] 538 .loc 1 112 4 539 000a 122B cmp r3, #18 540 000c 00F04483 beq .L62 113:user_src/hard_led.c **** return; 114:user_src/hard_led.c **** 115:user_src/hard_led.c **** //没收到fmu数据 15秒内常亮红灯 116:user_src/hard_led.c **** if(recv_fmu_data == false) 541 .loc 1 116 19 542 0010 9D4B ldr r3, .L71+4 543 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2 544 0014 83F00103 eor r3, r3, #1 545 0018 DBB2 uxtb r3, r3 546 .loc 1 116 4 547 001a 002B cmp r3, #0 548 001c 1ED0 beq .L18 117:user_src/hard_led.c **** { 118:user_src/hard_led.c **** if (HAL_GetTick() < 15000) 549 .loc 1 118 7 550 001e FFF7FEFF bl HAL_GetTick 551 0022 0346 mov r3, r0 552 .loc 1 118 6 553 0024 43F69722 movw r2, #14999 554 0028 9342 cmp r3, r2 555 002a 05D8 bhi .L19 119:user_src/hard_led.c **** { 120:user_src/hard_led.c **** LEDRed_ON(); 556 .loc 1 120 4 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 14 557 002c 0122 movs r2, #1 558 002e 0121 movs r1, #1 559 0030 9648 ldr r0, .L71+8 560 0032 FFF7FEFF bl HAL_GPIO_WritePin 561 0036 11E0 b .L18 562 .L19: 121:user_src/hard_led.c **** } 122:user_src/hard_led.c **** else 123:user_src/hard_led.c **** { 124:user_src/hard_led.c **** if(HAL_GetTick() - L_red_time > 2000) 563 .loc 1 124 7 564 0038 FFF7FEFF bl HAL_GetTick 565 003c 0246 mov r2, r0 566 .loc 1 124 21 567 003e 944B ldr r3, .L71+12 568 0040 1B68 ldr r3, [r3] 569 0042 D31A subs r3, r2, r3 570 .loc 1 124 6 571 0044 B3F5FA6F cmp r3, #2000 572 0048 08D9 bls .L18 125:user_src/hard_led.c **** { 126:user_src/hard_led.c **** HAL_GPIO_TogglePin(GPIOB,LED_R_Pin); 573 .loc 1 126 5 574 004a 0121 movs r1, #1 575 004c 8F48 ldr r0, .L71+8 576 004e FFF7FEFF bl HAL_GPIO_TogglePin 127:user_src/hard_led.c **** L_red_time = HAL_GetTick(); 577 .loc 1 127 18 578 0052 FFF7FEFF bl HAL_GetTick 579 0056 0346 mov r3, r0 580 .loc 1 127 16 581 0058 8D4A ldr r2, .L71+12 582 005a 1360 str r3, [r2] 583 .L18: 128:user_src/hard_led.c **** } 129:user_src/hard_led.c **** } 130:user_src/hard_led.c **** } 131:user_src/hard_led.c **** 132:user_src/hard_led.c **** 133:user_src/hard_led.c **** if ((L_red.repeat == 0) && (L_blue.repeat == 0) && (L_green.repeat == 0) && (L_cyan.repeat == 0) & 584 .loc 1 133 12 585 005c 8D4B ldr r3, .L71+16 586 005e DB68 ldr r3, [r3, #12] 587 .loc 1 133 5 588 0060 002B cmp r3, #0 589 0062 18D1 bne .L20 590 .loc 1 133 36 discriminator 1 591 0064 8C4B ldr r3, .L71+20 592 0066 DB68 ldr r3, [r3, #12] 593 .loc 1 133 26 discriminator 1 594 0068 002B cmp r3, #0 595 006a 14D1 bne .L20 596 .loc 1 133 61 discriminator 2 597 006c 8B4B ldr r3, .L71+24 598 006e DB68 ldr r3, [r3, #12] 599 .loc 1 133 50 discriminator 2 600 0070 002B cmp r3, #0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 15 601 0072 10D1 bne .L20 602 .loc 1 133 85 discriminator 3 603 0074 8A4B ldr r3, .L71+28 604 0076 DB68 ldr r3, [r3, #12] 605 .loc 1 133 75 discriminator 3 606 0078 002B cmp r3, #0 607 007a 0CD1 bne .L20 134:user_src/hard_led.c **** (L_purple.repeat == 0) && (L_yellow.repeat == 0) && (L_white.repeat == 0)) 608 .loc 1 134 12 discriminator 4 609 007c 894B ldr r3, .L71+32 610 007e DB68 ldr r3, [r3, #12] 133:user_src/hard_led.c **** (L_purple.repeat == 0) && (L_yellow.repeat == 0) && (L_white.repeat == 0)) 611 .loc 1 133 99 discriminator 4 612 0080 002B cmp r3, #0 613 0082 08D1 bne .L20 614 .loc 1 134 38 615 0084 884B ldr r3, .L71+36 616 0086 DB68 ldr r3, [r3, #12] 617 .loc 1 134 26 618 0088 002B cmp r3, #0 619 008a 04D1 bne .L20 620 .loc 1 134 63 discriminator 1 621 008c 874B ldr r3, .L71+40 622 008e DB68 ldr r3, [r3, #12] 623 .loc 1 134 52 discriminator 1 624 0090 002B cmp r3, #0 625 0092 00F00383 beq .L63 626 .L20: 135:user_src/hard_led.c **** { 136:user_src/hard_led.c **** return; 137:user_src/hard_led.c **** } 138:user_src/hard_led.c **** if(recv_fmu_data == true) 627 .loc 1 138 19 628 0096 7C4B ldr r3, .L71+4 629 0098 1B78 ldrb r3, [r3] @ zero_extendqisi2 630 .loc 1 138 4 631 009a 002B cmp r3, #0 632 009c 00F00D83 beq .L15 139:user_src/hard_led.c **** { 140:user_src/hard_led.c **** if (L_red.repeat != 0) 633 .loc 1 140 12 634 00a0 7C4B ldr r3, .L71+16 635 00a2 DB68 ldr r3, [r3, #12] 636 .loc 1 140 6 637 00a4 002B cmp r3, #0 638 00a6 64D0 beq .L21 141:user_src/hard_led.c **** { 142:user_src/hard_led.c **** 143:user_src/hard_led.c **** if ((L_red.off_time_ms == 25500) || (L_red.on_time_ms == 25500)) 639 .loc 1 143 14 640 00a8 7A4B ldr r3, .L71+16 641 00aa 9B68 ldr r3, [r3, #8] 642 .loc 1 143 7 643 00ac 46F29C32 movw r2, #25500 644 00b0 9342 cmp r3, r2 645 00b2 05D0 beq .L22 646 .loc 1 143 46 discriminator 1 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 16 647 00b4 774B ldr r3, .L71+16 648 00b6 5B68 ldr r3, [r3, #4] 649 .loc 1 143 37 discriminator 1 650 00b8 46F29C32 movw r2, #25500 651 00bc 9342 cmp r3, r2 652 00be 1BD1 bne .L23 653 .L22: 144:user_src/hard_led.c **** { 145:user_src/hard_led.c **** L_red.repeat = 0; 654 .loc 1 145 18 655 00c0 744B ldr r3, .L71+16 656 00c2 0022 movs r2, #0 657 00c4 DA60 str r2, [r3, #12] 146:user_src/hard_led.c **** if (L_red.off_time_ms == 25500) 658 .loc 1 146 14 659 00c6 734B ldr r3, .L71+16 660 00c8 9B68 ldr r3, [r3, #8] 661 .loc 1 146 8 662 00ca 46F29C32 movw r2, #25500 663 00ce 9342 cmp r3, r2 664 00d0 05D1 bne .L24 147:user_src/hard_led.c **** { 148:user_src/hard_led.c **** LEDRed_OFF(); 665 .loc 1 148 6 666 00d2 0022 movs r2, #0 667 00d4 0121 movs r1, #1 668 00d6 6D48 ldr r0, .L71+8 669 00d8 FFF7FEFF bl HAL_GPIO_WritePin 149:user_src/hard_led.c **** } 150:user_src/hard_led.c **** else if (L_red.on_time_ms == 25500) 151:user_src/hard_led.c **** { 152:user_src/hard_led.c **** LEDRed_ON(); 153:user_src/hard_led.c **** } 154:user_src/hard_led.c **** 155:user_src/hard_led.c **** return; 670 .loc 1 155 5 671 00dc E0E2 b .L64 672 .L24: 150:user_src/hard_led.c **** { 673 .loc 1 150 19 674 00de 6D4B ldr r3, .L71+16 675 00e0 5B68 ldr r3, [r3, #4] 150:user_src/hard_led.c **** { 676 .loc 1 150 13 677 00e2 46F29C32 movw r2, #25500 678 00e6 9342 cmp r3, r2 679 00e8 40F0DA82 bne .L64 152:user_src/hard_led.c **** } 680 .loc 1 152 6 681 00ec 0122 movs r2, #1 682 00ee 0121 movs r1, #1 683 00f0 6648 ldr r0, .L71+8 684 00f2 FFF7FEFF bl HAL_GPIO_WritePin 685 .loc 1 155 5 686 00f6 D3E2 b .L64 687 .L23: 156:user_src/hard_led.c **** } ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 17 157:user_src/hard_led.c **** if (L_red.status == ON) 688 .loc 1 157 13 689 00f8 664B ldr r3, .L71+16 690 00fa 1B78 ldrb r3, [r3] @ zero_extendqisi2 691 .loc 1 157 7 692 00fc FF2B cmp r3, #255 693 00fe 1AD1 bne .L26 158:user_src/hard_led.c **** { 159:user_src/hard_led.c **** if (HAL_GetTick() - L_red.time > L_red.on_time_ms) 694 .loc 1 159 9 695 0100 FFF7FEFF bl HAL_GetTick 696 0104 0246 mov r2, r0 697 .loc 1 159 30 698 0106 634B ldr r3, .L71+16 699 0108 1B69 ldr r3, [r3, #16] 700 .loc 1 159 23 701 010a D21A subs r2, r2, r3 702 .loc 1 159 43 703 010c 614B ldr r3, .L71+16 704 010e 5B68 ldr r3, [r3, #4] 705 .loc 1 159 8 706 0110 9A42 cmp r2, r3 707 0112 40F2D282 bls .L15 160:user_src/hard_led.c **** { 161:user_src/hard_led.c **** L_red.repeat--; 708 .loc 1 161 11 709 0116 5F4B ldr r3, .L71+16 710 0118 DB68 ldr r3, [r3, #12] 711 .loc 1 161 18 712 011a 013B subs r3, r3, #1 713 011c 5D4A ldr r2, .L71+16 714 011e D360 str r3, [r2, #12] 162:user_src/hard_led.c **** LEDRed_OFF(); 715 .loc 1 162 6 716 0120 0022 movs r2, #0 717 0122 0121 movs r1, #1 718 0124 5948 ldr r0, .L71+8 719 0126 FFF7FEFF bl HAL_GPIO_WritePin 163:user_src/hard_led.c **** Update_LED_Time(); 720 .loc 1 163 6 721 012a FFF7FEFF bl Update_LED_Time 164:user_src/hard_led.c **** L_red.status =OFF; 722 .loc 1 164 19 723 012e 594B ldr r3, .L71+16 724 0130 0022 movs r2, #0 725 0132 1A70 strb r2, [r3] 726 0134 C1E2 b .L15 727 .L26: 165:user_src/hard_led.c **** 166:user_src/hard_led.c **** } 167:user_src/hard_led.c **** } 168:user_src/hard_led.c **** else 169:user_src/hard_led.c **** { 170:user_src/hard_led.c **** if (HAL_GetTick() - L_red.time > L_red.off_time_ms) 728 .loc 1 170 9 729 0136 FFF7FEFF bl HAL_GetTick 730 013a 0246 mov r2, r0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 18 731 .loc 1 170 30 732 013c 554B ldr r3, .L71+16 733 013e 1B69 ldr r3, [r3, #16] 734 .loc 1 170 23 735 0140 D21A subs r2, r2, r3 736 .loc 1 170 43 737 0142 544B ldr r3, .L71+16 738 0144 9B68 ldr r3, [r3, #8] 739 .loc 1 170 8 740 0146 9A42 cmp r2, r3 741 0148 40F2B782 bls .L15 171:user_src/hard_led.c **** { 172:user_src/hard_led.c **** if (L_red.repeat != 0) 742 .loc 1 172 15 743 014c 514B ldr r3, .L71+16 744 014e DB68 ldr r3, [r3, #12] 745 .loc 1 172 9 746 0150 002B cmp r3, #0 747 0152 00F0B282 beq .L15 173:user_src/hard_led.c **** { 174:user_src/hard_led.c **** LEDRed_ON(); 748 .loc 1 174 7 749 0156 0122 movs r2, #1 750 0158 0121 movs r1, #1 751 015a 4C48 ldr r0, .L71+8 752 015c FFF7FEFF bl HAL_GPIO_WritePin 175:user_src/hard_led.c **** L_red.time = HAL_GetTick(); 753 .loc 1 175 20 754 0160 FFF7FEFF bl HAL_GetTick 755 0164 0346 mov r3, r0 756 .loc 1 175 18 757 0166 4B4A ldr r2, .L71+16 758 0168 1361 str r3, [r2, #16] 176:user_src/hard_led.c **** L_red.status = ON; 759 .loc 1 176 20 760 016a 4A4B ldr r3, .L71+16 761 016c FF22 movs r2, #255 762 016e 1A70 strb r2, [r3] 763 0170 A3E2 b .L15 764 .L21: 177:user_src/hard_led.c **** } 178:user_src/hard_led.c **** } 179:user_src/hard_led.c **** } 180:user_src/hard_led.c **** } 181:user_src/hard_led.c **** else if (L_green.repeat != 0) 765 .loc 1 181 19 766 0172 4A4B ldr r3, .L71+24 767 0174 DB68 ldr r3, [r3, #12] 768 .loc 1 181 11 769 0176 002B cmp r3, #0 770 0178 64D0 beq .L27 182:user_src/hard_led.c **** { 183:user_src/hard_led.c **** 184:user_src/hard_led.c **** if ((L_green.off_time_ms == 25500) || (L_green.on_time_ms == 25500)) 771 .loc 1 184 16 772 017a 484B ldr r3, .L71+24 773 017c 9B68 ldr r3, [r3, #8] ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 19 774 .loc 1 184 7 775 017e 46F29C32 movw r2, #25500 776 0182 9342 cmp r3, r2 777 0184 05D0 beq .L28 778 .loc 1 184 50 discriminator 1 779 0186 454B ldr r3, .L71+24 780 0188 5B68 ldr r3, [r3, #4] 781 .loc 1 184 39 discriminator 1 782 018a 46F29C32 movw r2, #25500 783 018e 9342 cmp r3, r2 784 0190 1BD1 bne .L29 785 .L28: 185:user_src/hard_led.c **** { 186:user_src/hard_led.c **** L_green.repeat = 0; 786 .loc 1 186 20 787 0192 424B ldr r3, .L71+24 788 0194 0022 movs r2, #0 789 0196 DA60 str r2, [r3, #12] 187:user_src/hard_led.c **** if (L_green.off_time_ms == 25500) 790 .loc 1 187 16 791 0198 404B ldr r3, .L71+24 792 019a 9B68 ldr r3, [r3, #8] 793 .loc 1 187 8 794 019c 46F29C32 movw r2, #25500 795 01a0 9342 cmp r3, r2 796 01a2 05D1 bne .L30 188:user_src/hard_led.c **** { 189:user_src/hard_led.c **** LEDGreen_OFF(); 797 .loc 1 189 6 798 01a4 0022 movs r2, #0 799 01a6 0221 movs r1, #2 800 01a8 3848 ldr r0, .L71+8 801 01aa FFF7FEFF bl HAL_GPIO_WritePin 190:user_src/hard_led.c **** } 191:user_src/hard_led.c **** else if (L_green.on_time_ms == 25500) 192:user_src/hard_led.c **** { 193:user_src/hard_led.c **** LEDGreen_ON(); 194:user_src/hard_led.c **** } 195:user_src/hard_led.c **** 196:user_src/hard_led.c **** return; 802 .loc 1 196 5 803 01ae 79E2 b .L65 804 .L30: 191:user_src/hard_led.c **** { 805 .loc 1 191 21 806 01b0 3A4B ldr r3, .L71+24 807 01b2 5B68 ldr r3, [r3, #4] 191:user_src/hard_led.c **** { 808 .loc 1 191 13 809 01b4 46F29C32 movw r2, #25500 810 01b8 9342 cmp r3, r2 811 01ba 40F07382 bne .L65 193:user_src/hard_led.c **** } 812 .loc 1 193 6 813 01be 0122 movs r2, #1 814 01c0 0221 movs r1, #2 815 01c2 3248 ldr r0, .L71+8 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 20 816 01c4 FFF7FEFF bl HAL_GPIO_WritePin 817 .loc 1 196 5 818 01c8 6CE2 b .L65 819 .L29: 197:user_src/hard_led.c **** } 198:user_src/hard_led.c **** if (L_green.status == ON) 820 .loc 1 198 15 821 01ca 344B ldr r3, .L71+24 822 01cc 1B78 ldrb r3, [r3] @ zero_extendqisi2 823 .loc 1 198 7 824 01ce FF2B cmp r3, #255 825 01d0 1AD1 bne .L32 199:user_src/hard_led.c **** { 200:user_src/hard_led.c **** if (HAL_GetTick() - L_green.time > L_green.on_time_ms) 826 .loc 1 200 9 827 01d2 FFF7FEFF bl HAL_GetTick 828 01d6 0246 mov r2, r0 829 .loc 1 200 32 830 01d8 304B ldr r3, .L71+24 831 01da 1B69 ldr r3, [r3, #16] 832 .loc 1 200 23 833 01dc D21A subs r2, r2, r3 834 .loc 1 200 47 835 01de 2F4B ldr r3, .L71+24 836 01e0 5B68 ldr r3, [r3, #4] 837 .loc 1 200 8 838 01e2 9A42 cmp r2, r3 839 01e4 40F26982 bls .L15 201:user_src/hard_led.c **** { 202:user_src/hard_led.c **** L_green.repeat--; 840 .loc 1 202 13 841 01e8 2C4B ldr r3, .L71+24 842 01ea DB68 ldr r3, [r3, #12] 843 .loc 1 202 20 844 01ec 013B subs r3, r3, #1 845 01ee 2B4A ldr r2, .L71+24 846 01f0 D360 str r3, [r2, #12] 203:user_src/hard_led.c **** LEDGreen_OFF(); 847 .loc 1 203 6 848 01f2 0022 movs r2, #0 849 01f4 0221 movs r1, #2 850 01f6 2548 ldr r0, .L71+8 851 01f8 FFF7FEFF bl HAL_GPIO_WritePin 204:user_src/hard_led.c **** Update_LED_Time(); 852 .loc 1 204 6 853 01fc FFF7FEFF bl Update_LED_Time 205:user_src/hard_led.c **** L_green.status = OFF; 854 .loc 1 205 21 855 0200 264B ldr r3, .L71+24 856 0202 0022 movs r2, #0 857 0204 1A70 strb r2, [r3] 858 0206 58E2 b .L15 859 .L32: 206:user_src/hard_led.c **** } 207:user_src/hard_led.c **** } 208:user_src/hard_led.c **** else 209:user_src/hard_led.c **** { ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 21 210:user_src/hard_led.c **** if (HAL_GetTick() - L_green.time > L_green.off_time_ms) 860 .loc 1 210 9 861 0208 FFF7FEFF bl HAL_GetTick 862 020c 0246 mov r2, r0 863 .loc 1 210 32 864 020e 234B ldr r3, .L71+24 865 0210 1B69 ldr r3, [r3, #16] 866 .loc 1 210 23 867 0212 D21A subs r2, r2, r3 868 .loc 1 210 47 869 0214 214B ldr r3, .L71+24 870 0216 9B68 ldr r3, [r3, #8] 871 .loc 1 210 8 872 0218 9A42 cmp r2, r3 873 021a 40F24E82 bls .L15 211:user_src/hard_led.c **** { 212:user_src/hard_led.c **** if (L_green.repeat != 0) 874 .loc 1 212 17 875 021e 1F4B ldr r3, .L71+24 876 0220 DB68 ldr r3, [r3, #12] 877 .loc 1 212 9 878 0222 002B cmp r3, #0 879 0224 00F04982 beq .L15 213:user_src/hard_led.c **** { 214:user_src/hard_led.c **** LEDGreen_ON(); 880 .loc 1 214 7 881 0228 0122 movs r2, #1 882 022a 0221 movs r1, #2 883 022c 1748 ldr r0, .L71+8 884 022e FFF7FEFF bl HAL_GPIO_WritePin 215:user_src/hard_led.c **** L_green.time = HAL_GetTick(); 885 .loc 1 215 22 886 0232 FFF7FEFF bl HAL_GetTick 887 0236 0346 mov r3, r0 888 .loc 1 215 20 889 0238 184A ldr r2, .L71+24 890 023a 1361 str r3, [r2, #16] 216:user_src/hard_led.c **** L_green.status = ON; 891 .loc 1 216 22 892 023c 174B ldr r3, .L71+24 893 023e FF22 movs r2, #255 894 0240 1A70 strb r2, [r3] 895 0242 3AE2 b .L15 896 .L27: 217:user_src/hard_led.c **** } 218:user_src/hard_led.c **** } 219:user_src/hard_led.c **** } 220:user_src/hard_led.c **** } 221:user_src/hard_led.c **** 222:user_src/hard_led.c **** else if (L_blue.repeat != 0) 897 .loc 1 222 18 898 0244 144B ldr r3, .L71+20 899 0246 DB68 ldr r3, [r3, #12] 900 .loc 1 222 11 901 0248 002B cmp r3, #0 902 024a 7BD0 beq .L33 223:user_src/hard_led.c **** { ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 22 224:user_src/hard_led.c **** if ((L_blue.off_time_ms == 25500) || (L_blue.on_time_ms == 25500)) 903 .loc 1 224 15 904 024c 124B ldr r3, .L71+20 905 024e 9B68 ldr r3, [r3, #8] 906 .loc 1 224 7 907 0250 46F29C32 movw r2, #25500 908 0254 9342 cmp r3, r2 909 0256 05D0 beq .L34 910 .loc 1 224 48 discriminator 1 911 0258 0F4B ldr r3, .L71+20 912 025a 5B68 ldr r3, [r3, #4] 913 .loc 1 224 38 discriminator 1 914 025c 46F29C32 movw r2, #25500 915 0260 9342 cmp r3, r2 916 0262 32D1 bne .L35 917 .L34: 225:user_src/hard_led.c **** { 226:user_src/hard_led.c **** L_blue.repeat = 0; 918 .loc 1 226 19 919 0264 0C4B ldr r3, .L71+20 920 0266 0022 movs r2, #0 921 0268 DA60 str r2, [r3, #12] 227:user_src/hard_led.c **** if (L_blue.off_time_ms == 25500) 922 .loc 1 227 15 923 026a 0B4B ldr r3, .L71+20 924 026c 9B68 ldr r3, [r3, #8] 925 .loc 1 227 8 926 026e 46F29C32 movw r2, #25500 927 0272 9342 cmp r3, r2 928 0274 1CD1 bne .L36 228:user_src/hard_led.c **** { 229:user_src/hard_led.c **** LEDBlue_OFF(); 929 .loc 1 229 6 930 0276 0022 movs r2, #0 931 0278 0421 movs r1, #4 932 027a 0448 ldr r0, .L71+8 933 027c FFF7FEFF bl HAL_GPIO_WritePin 230:user_src/hard_led.c **** } 231:user_src/hard_led.c **** else if (L_blue.on_time_ms == 25500) 232:user_src/hard_led.c **** { 233:user_src/hard_led.c **** LEDBlue_ON(); 234:user_src/hard_led.c **** } 235:user_src/hard_led.c **** 236:user_src/hard_led.c **** return; 934 .loc 1 236 5 935 0280 12E2 b .L66 936 .L72: 937 0282 00BF .align 2 938 .L71: 939 0284 00000000 .word current_pmu_par 940 0288 00000000 .word recv_fmu_data 941 028c 00040048 .word 1207960576 942 0290 00000000 .word L_red_time 943 0294 00000000 .word L_red 944 0298 00000000 .word L_blue 945 029c 00000000 .word L_green 946 02a0 00000000 .word L_cyan ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 23 947 02a4 00000000 .word L_purple 948 02a8 00000000 .word L_yellow 949 02ac 00000000 .word L_white 950 .L36: 231:user_src/hard_led.c **** { 951 .loc 1 231 20 952 02b0 A34B ldr r3, .L73 953 02b2 5B68 ldr r3, [r3, #4] 231:user_src/hard_led.c **** { 954 .loc 1 231 13 955 02b4 46F29C32 movw r2, #25500 956 02b8 9342 cmp r3, r2 957 02ba 40F0F581 bne .L66 233:user_src/hard_led.c **** } 958 .loc 1 233 6 959 02be 0122 movs r2, #1 960 02c0 0421 movs r1, #4 961 02c2 A048 ldr r0, .L73+4 962 02c4 FFF7FEFF bl HAL_GPIO_WritePin 963 .loc 1 236 5 964 02c8 EEE1 b .L66 965 .L35: 237:user_src/hard_led.c **** } 238:user_src/hard_led.c **** if (L_blue.status == ON) 966 .loc 1 238 14 967 02ca 9D4B ldr r3, .L73 968 02cc 1B78 ldrb r3, [r3] @ zero_extendqisi2 969 .loc 1 238 7 970 02ce FF2B cmp r3, #255 971 02d0 1AD1 bne .L38 239:user_src/hard_led.c **** { 240:user_src/hard_led.c **** if (HAL_GetTick() - L_blue.time > L_blue.on_time_ms) 972 .loc 1 240 9 973 02d2 FFF7FEFF bl HAL_GetTick 974 02d6 0246 mov r2, r0 975 .loc 1 240 31 976 02d8 994B ldr r3, .L73 977 02da 1B69 ldr r3, [r3, #16] 978 .loc 1 240 23 979 02dc D21A subs r2, r2, r3 980 .loc 1 240 45 981 02de 984B ldr r3, .L73 982 02e0 5B68 ldr r3, [r3, #4] 983 .loc 1 240 8 984 02e2 9A42 cmp r2, r3 985 02e4 40F2E981 bls .L15 241:user_src/hard_led.c **** { 242:user_src/hard_led.c **** L_blue.repeat--; 986 .loc 1 242 12 987 02e8 954B ldr r3, .L73 988 02ea DB68 ldr r3, [r3, #12] 989 .loc 1 242 19 990 02ec 013B subs r3, r3, #1 991 02ee 944A ldr r2, .L73 992 02f0 D360 str r3, [r2, #12] 243:user_src/hard_led.c **** LEDBlue_OFF(); 993 .loc 1 243 6 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 24 994 02f2 0022 movs r2, #0 995 02f4 0421 movs r1, #4 996 02f6 9348 ldr r0, .L73+4 997 02f8 FFF7FEFF bl HAL_GPIO_WritePin 244:user_src/hard_led.c **** Update_LED_Time(); 998 .loc 1 244 6 999 02fc FFF7FEFF bl Update_LED_Time 245:user_src/hard_led.c **** L_blue.status = OFF; 1000 .loc 1 245 20 1001 0300 8F4B ldr r3, .L73 1002 0302 0022 movs r2, #0 1003 0304 1A70 strb r2, [r3] 1004 0306 D8E1 b .L15 1005 .L38: 246:user_src/hard_led.c **** } 247:user_src/hard_led.c **** } 248:user_src/hard_led.c **** else 249:user_src/hard_led.c **** { 250:user_src/hard_led.c **** if (HAL_GetTick() - L_blue.time > L_blue.off_time_ms) 1006 .loc 1 250 9 1007 0308 FFF7FEFF bl HAL_GetTick 1008 030c 0246 mov r2, r0 1009 .loc 1 250 31 1010 030e 8C4B ldr r3, .L73 1011 0310 1B69 ldr r3, [r3, #16] 1012 .loc 1 250 23 1013 0312 D21A subs r2, r2, r3 1014 .loc 1 250 45 1015 0314 8A4B ldr r3, .L73 1016 0316 9B68 ldr r3, [r3, #8] 1017 .loc 1 250 8 1018 0318 9A42 cmp r2, r3 1019 031a 40F2CE81 bls .L15 251:user_src/hard_led.c **** { 252:user_src/hard_led.c **** if (L_blue.repeat != 0) 1020 .loc 1 252 16 1021 031e 884B ldr r3, .L73 1022 0320 DB68 ldr r3, [r3, #12] 1023 .loc 1 252 9 1024 0322 002B cmp r3, #0 1025 0324 00F0C981 beq .L15 253:user_src/hard_led.c **** { 254:user_src/hard_led.c **** LEDBlue_ON(); 1026 .loc 1 254 7 1027 0328 0122 movs r2, #1 1028 032a 0421 movs r1, #4 1029 032c 8548 ldr r0, .L73+4 1030 032e FFF7FEFF bl HAL_GPIO_WritePin 255:user_src/hard_led.c **** L_blue.time = HAL_GetTick(); 1031 .loc 1 255 21 1032 0332 FFF7FEFF bl HAL_GetTick 1033 0336 0346 mov r3, r0 1034 .loc 1 255 19 1035 0338 814A ldr r2, .L73 1036 033a 1361 str r3, [r2, #16] 256:user_src/hard_led.c **** L_blue.status = ON; 1037 .loc 1 256 21 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 25 1038 033c 804B ldr r3, .L73 1039 033e FF22 movs r2, #255 1040 0340 1A70 strb r2, [r3] 1041 0342 BAE1 b .L15 1042 .L33: 257:user_src/hard_led.c **** } 258:user_src/hard_led.c **** } 259:user_src/hard_led.c **** } 260:user_src/hard_led.c **** } 261:user_src/hard_led.c **** 262:user_src/hard_led.c **** else if (L_purple.repeat != 0) 1043 .loc 1 262 20 1044 0344 804B ldr r3, .L73+8 1045 0346 DB68 ldr r3, [r3, #12] 1046 .loc 1 262 11 1047 0348 002B cmp r3, #0 1048 034a 64D0 beq .L39 263:user_src/hard_led.c **** { 264:user_src/hard_led.c **** 265:user_src/hard_led.c **** if ((L_purple.off_time_ms == 25500) || (L_purple.on_time_ms == 25500)) 1049 .loc 1 265 17 1050 034c 7E4B ldr r3, .L73+8 1051 034e 9B68 ldr r3, [r3, #8] 1052 .loc 1 265 7 1053 0350 46F29C32 movw r2, #25500 1054 0354 9342 cmp r3, r2 1055 0356 05D0 beq .L40 1056 .loc 1 265 52 discriminator 1 1057 0358 7B4B ldr r3, .L73+8 1058 035a 5B68 ldr r3, [r3, #4] 1059 .loc 1 265 40 discriminator 1 1060 035c 46F29C32 movw r2, #25500 1061 0360 9342 cmp r3, r2 1062 0362 1BD1 bne .L41 1063 .L40: 266:user_src/hard_led.c **** { 267:user_src/hard_led.c **** L_purple.repeat = 0; 1064 .loc 1 267 21 1065 0364 784B ldr r3, .L73+8 1066 0366 0022 movs r2, #0 1067 0368 DA60 str r2, [r3, #12] 268:user_src/hard_led.c **** if (L_purple.off_time_ms == 25500) 1068 .loc 1 268 17 1069 036a 774B ldr r3, .L73+8 1070 036c 9B68 ldr r3, [r3, #8] 1071 .loc 1 268 8 1072 036e 46F29C32 movw r2, #25500 1073 0372 9342 cmp r3, r2 1074 0374 05D1 bne .L42 269:user_src/hard_led.c **** { 270:user_src/hard_led.c **** LEDPurple_OFF(); 1075 .loc 1 270 6 1076 0376 0022 movs r2, #0 1077 0378 0521 movs r1, #5 1078 037a 7248 ldr r0, .L73+4 1079 037c FFF7FEFF bl HAL_GPIO_WritePin 271:user_src/hard_led.c **** } ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 26 272:user_src/hard_led.c **** else if (L_purple.on_time_ms == 25500) 273:user_src/hard_led.c **** { 274:user_src/hard_led.c **** LEDPurple_ON(); 275:user_src/hard_led.c **** } 276:user_src/hard_led.c **** 277:user_src/hard_led.c **** return; 1080 .loc 1 277 5 1081 0380 94E1 b .L67 1082 .L42: 272:user_src/hard_led.c **** { 1083 .loc 1 272 22 1084 0382 714B ldr r3, .L73+8 1085 0384 5B68 ldr r3, [r3, #4] 272:user_src/hard_led.c **** { 1086 .loc 1 272 13 1087 0386 46F29C32 movw r2, #25500 1088 038a 9342 cmp r3, r2 1089 038c 40F08E81 bne .L67 274:user_src/hard_led.c **** } 1090 .loc 1 274 6 1091 0390 0122 movs r2, #1 1092 0392 0521 movs r1, #5 1093 0394 6B48 ldr r0, .L73+4 1094 0396 FFF7FEFF bl HAL_GPIO_WritePin 1095 .loc 1 277 5 1096 039a 87E1 b .L67 1097 .L41: 278:user_src/hard_led.c **** } 279:user_src/hard_led.c **** if (L_purple.status == ON) 1098 .loc 1 279 16 1099 039c 6A4B ldr r3, .L73+8 1100 039e 1B78 ldrb r3, [r3] @ zero_extendqisi2 1101 .loc 1 279 7 1102 03a0 FF2B cmp r3, #255 1103 03a2 1AD1 bne .L44 280:user_src/hard_led.c **** { 281:user_src/hard_led.c **** if (HAL_GetTick() - L_purple.time > L_purple.on_time_ms) 1104 .loc 1 281 9 1105 03a4 FFF7FEFF bl HAL_GetTick 1106 03a8 0246 mov r2, r0 1107 .loc 1 281 33 1108 03aa 674B ldr r3, .L73+8 1109 03ac 1B69 ldr r3, [r3, #16] 1110 .loc 1 281 23 1111 03ae D21A subs r2, r2, r3 1112 .loc 1 281 49 1113 03b0 654B ldr r3, .L73+8 1114 03b2 5B68 ldr r3, [r3, #4] 1115 .loc 1 281 8 1116 03b4 9A42 cmp r2, r3 1117 03b6 40F28081 bls .L15 282:user_src/hard_led.c **** { 283:user_src/hard_led.c **** L_purple.repeat--; 1118 .loc 1 283 14 1119 03ba 634B ldr r3, .L73+8 1120 03bc DB68 ldr r3, [r3, #12] 1121 .loc 1 283 21 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 27 1122 03be 013B subs r3, r3, #1 1123 03c0 614A ldr r2, .L73+8 1124 03c2 D360 str r3, [r2, #12] 284:user_src/hard_led.c **** LEDPurple_OFF(); 1125 .loc 1 284 6 1126 03c4 0022 movs r2, #0 1127 03c6 0521 movs r1, #5 1128 03c8 5E48 ldr r0, .L73+4 1129 03ca FFF7FEFF bl HAL_GPIO_WritePin 285:user_src/hard_led.c **** Update_LED_Time(); 1130 .loc 1 285 6 1131 03ce FFF7FEFF bl Update_LED_Time 286:user_src/hard_led.c **** L_purple.status = OFF; 1132 .loc 1 286 22 1133 03d2 5D4B ldr r3, .L73+8 1134 03d4 0022 movs r2, #0 1135 03d6 1A70 strb r2, [r3] 1136 03d8 6FE1 b .L15 1137 .L44: 287:user_src/hard_led.c **** } 288:user_src/hard_led.c **** } 289:user_src/hard_led.c **** else 290:user_src/hard_led.c **** { 291:user_src/hard_led.c **** if (HAL_GetTick() - L_purple.time > L_purple.off_time_ms) 1138 .loc 1 291 9 1139 03da FFF7FEFF bl HAL_GetTick 1140 03de 0246 mov r2, r0 1141 .loc 1 291 33 1142 03e0 594B ldr r3, .L73+8 1143 03e2 1B69 ldr r3, [r3, #16] 1144 .loc 1 291 23 1145 03e4 D21A subs r2, r2, r3 1146 .loc 1 291 49 1147 03e6 584B ldr r3, .L73+8 1148 03e8 9B68 ldr r3, [r3, #8] 1149 .loc 1 291 8 1150 03ea 9A42 cmp r2, r3 1151 03ec 40F26581 bls .L15 292:user_src/hard_led.c **** { 293:user_src/hard_led.c **** if (L_purple.repeat != 0) 1152 .loc 1 293 18 1153 03f0 554B ldr r3, .L73+8 1154 03f2 DB68 ldr r3, [r3, #12] 1155 .loc 1 293 9 1156 03f4 002B cmp r3, #0 1157 03f6 00F06081 beq .L15 294:user_src/hard_led.c **** { 295:user_src/hard_led.c **** LEDPurple_ON(); 1158 .loc 1 295 7 1159 03fa 0122 movs r2, #1 1160 03fc 0521 movs r1, #5 1161 03fe 5148 ldr r0, .L73+4 1162 0400 FFF7FEFF bl HAL_GPIO_WritePin 296:user_src/hard_led.c **** L_purple.time = HAL_GetTick(); 1163 .loc 1 296 23 1164 0404 FFF7FEFF bl HAL_GetTick 1165 0408 0346 mov r3, r0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 28 1166 .loc 1 296 21 1167 040a 4F4A ldr r2, .L73+8 1168 040c 1361 str r3, [r2, #16] 297:user_src/hard_led.c **** L_purple.status = ON; 1169 .loc 1 297 23 1170 040e 4E4B ldr r3, .L73+8 1171 0410 FF22 movs r2, #255 1172 0412 1A70 strb r2, [r3] 1173 0414 51E1 b .L15 1174 .L39: 298:user_src/hard_led.c **** } 299:user_src/hard_led.c **** } 300:user_src/hard_led.c **** } 301:user_src/hard_led.c **** } 302:user_src/hard_led.c **** 303:user_src/hard_led.c **** else if (L_yellow.repeat != 0) 1175 .loc 1 303 20 1176 0416 4D4B ldr r3, .L73+12 1177 0418 DB68 ldr r3, [r3, #12] 1178 .loc 1 303 11 1179 041a 002B cmp r3, #0 1180 041c 64D0 beq .L45 304:user_src/hard_led.c **** { 305:user_src/hard_led.c **** 306:user_src/hard_led.c **** if ((L_yellow.off_time_ms == 25500) || (L_yellow.on_time_ms == 25500)) 1181 .loc 1 306 17 1182 041e 4B4B ldr r3, .L73+12 1183 0420 9B68 ldr r3, [r3, #8] 1184 .loc 1 306 7 1185 0422 46F29C32 movw r2, #25500 1186 0426 9342 cmp r3, r2 1187 0428 05D0 beq .L46 1188 .loc 1 306 52 discriminator 1 1189 042a 484B ldr r3, .L73+12 1190 042c 5B68 ldr r3, [r3, #4] 1191 .loc 1 306 40 discriminator 1 1192 042e 46F29C32 movw r2, #25500 1193 0432 9342 cmp r3, r2 1194 0434 1BD1 bne .L47 1195 .L46: 307:user_src/hard_led.c **** { 308:user_src/hard_led.c **** L_yellow.repeat = 0; 1196 .loc 1 308 21 1197 0436 454B ldr r3, .L73+12 1198 0438 0022 movs r2, #0 1199 043a DA60 str r2, [r3, #12] 309:user_src/hard_led.c **** if (L_yellow.off_time_ms == 25500) 1200 .loc 1 309 17 1201 043c 434B ldr r3, .L73+12 1202 043e 9B68 ldr r3, [r3, #8] 1203 .loc 1 309 8 1204 0440 46F29C32 movw r2, #25500 1205 0444 9342 cmp r3, r2 1206 0446 05D1 bne .L48 310:user_src/hard_led.c **** { 311:user_src/hard_led.c **** LEDYellow_OFF(); 1207 .loc 1 311 6 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 29 1208 0448 0022 movs r2, #0 1209 044a 0321 movs r1, #3 1210 044c 3D48 ldr r0, .L73+4 1211 044e FFF7FEFF bl HAL_GPIO_WritePin 312:user_src/hard_led.c **** } 313:user_src/hard_led.c **** else if (L_yellow.on_time_ms == 25500) 314:user_src/hard_led.c **** { 315:user_src/hard_led.c **** LEDYellow_ON(); 316:user_src/hard_led.c **** } 317:user_src/hard_led.c **** 318:user_src/hard_led.c **** return; 1212 .loc 1 318 5 1213 0452 2DE1 b .L68 1214 .L48: 313:user_src/hard_led.c **** { 1215 .loc 1 313 22 1216 0454 3D4B ldr r3, .L73+12 1217 0456 5B68 ldr r3, [r3, #4] 313:user_src/hard_led.c **** { 1218 .loc 1 313 13 1219 0458 46F29C32 movw r2, #25500 1220 045c 9342 cmp r3, r2 1221 045e 40F02781 bne .L68 315:user_src/hard_led.c **** } 1222 .loc 1 315 6 1223 0462 0122 movs r2, #1 1224 0464 0321 movs r1, #3 1225 0466 3748 ldr r0, .L73+4 1226 0468 FFF7FEFF bl HAL_GPIO_WritePin 1227 .loc 1 318 5 1228 046c 20E1 b .L68 1229 .L47: 319:user_src/hard_led.c **** } 320:user_src/hard_led.c **** if (L_yellow.status == ON) 1230 .loc 1 320 16 1231 046e 374B ldr r3, .L73+12 1232 0470 1B78 ldrb r3, [r3] @ zero_extendqisi2 1233 .loc 1 320 7 1234 0472 FF2B cmp r3, #255 1235 0474 1AD1 bne .L50 321:user_src/hard_led.c **** { 322:user_src/hard_led.c **** if (HAL_GetTick() - L_yellow.time > L_yellow.on_time_ms) 1236 .loc 1 322 9 1237 0476 FFF7FEFF bl HAL_GetTick 1238 047a 0246 mov r2, r0 1239 .loc 1 322 33 1240 047c 334B ldr r3, .L73+12 1241 047e 1B69 ldr r3, [r3, #16] 1242 .loc 1 322 23 1243 0480 D21A subs r2, r2, r3 1244 .loc 1 322 49 1245 0482 324B ldr r3, .L73+12 1246 0484 5B68 ldr r3, [r3, #4] 1247 .loc 1 322 8 1248 0486 9A42 cmp r2, r3 1249 0488 40F21781 bls .L15 323:user_src/hard_led.c **** { ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 30 324:user_src/hard_led.c **** L_yellow.repeat--; 1250 .loc 1 324 14 1251 048c 2F4B ldr r3, .L73+12 1252 048e DB68 ldr r3, [r3, #12] 1253 .loc 1 324 21 1254 0490 013B subs r3, r3, #1 1255 0492 2E4A ldr r2, .L73+12 1256 0494 D360 str r3, [r2, #12] 325:user_src/hard_led.c **** LEDYellow_OFF(); 1257 .loc 1 325 6 1258 0496 0022 movs r2, #0 1259 0498 0321 movs r1, #3 1260 049a 2A48 ldr r0, .L73+4 1261 049c FFF7FEFF bl HAL_GPIO_WritePin 326:user_src/hard_led.c **** Update_LED_Time(); 1262 .loc 1 326 6 1263 04a0 FFF7FEFF bl Update_LED_Time 327:user_src/hard_led.c **** L_yellow.status = OFF; 1264 .loc 1 327 22 1265 04a4 294B ldr r3, .L73+12 1266 04a6 0022 movs r2, #0 1267 04a8 1A70 strb r2, [r3] 1268 04aa 06E1 b .L15 1269 .L50: 328:user_src/hard_led.c **** } 329:user_src/hard_led.c **** } 330:user_src/hard_led.c **** else 331:user_src/hard_led.c **** { 332:user_src/hard_led.c **** if (HAL_GetTick() - L_yellow.time > L_yellow.off_time_ms) 1270 .loc 1 332 9 1271 04ac FFF7FEFF bl HAL_GetTick 1272 04b0 0246 mov r2, r0 1273 .loc 1 332 33 1274 04b2 264B ldr r3, .L73+12 1275 04b4 1B69 ldr r3, [r3, #16] 1276 .loc 1 332 23 1277 04b6 D21A subs r2, r2, r3 1278 .loc 1 332 49 1279 04b8 244B ldr r3, .L73+12 1280 04ba 9B68 ldr r3, [r3, #8] 1281 .loc 1 332 8 1282 04bc 9A42 cmp r2, r3 1283 04be 40F2FC80 bls .L15 333:user_src/hard_led.c **** { 334:user_src/hard_led.c **** if (L_yellow.repeat != 0) 1284 .loc 1 334 18 1285 04c2 224B ldr r3, .L73+12 1286 04c4 DB68 ldr r3, [r3, #12] 1287 .loc 1 334 9 1288 04c6 002B cmp r3, #0 1289 04c8 00F0F780 beq .L15 335:user_src/hard_led.c **** { 336:user_src/hard_led.c **** LEDYellow_ON(); 1290 .loc 1 336 7 1291 04cc 0122 movs r2, #1 1292 04ce 0321 movs r1, #3 1293 04d0 1C48 ldr r0, .L73+4 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 31 1294 04d2 FFF7FEFF bl HAL_GPIO_WritePin 337:user_src/hard_led.c **** L_yellow.time = HAL_GetTick(); 1295 .loc 1 337 23 1296 04d6 FFF7FEFF bl HAL_GetTick 1297 04da 0346 mov r3, r0 1298 .loc 1 337 21 1299 04dc 1B4A ldr r2, .L73+12 1300 04de 1361 str r3, [r2, #16] 338:user_src/hard_led.c **** L_yellow.status = ON; 1301 .loc 1 338 23 1302 04e0 1A4B ldr r3, .L73+12 1303 04e2 FF22 movs r2, #255 1304 04e4 1A70 strb r2, [r3] 1305 04e6 E8E0 b .L15 1306 .L45: 339:user_src/hard_led.c **** } 340:user_src/hard_led.c **** } 341:user_src/hard_led.c **** } 342:user_src/hard_led.c **** } 343:user_src/hard_led.c **** 344:user_src/hard_led.c **** else if (L_cyan.repeat != 0) 1307 .loc 1 344 18 1308 04e8 194B ldr r3, .L73+16 1309 04ea DB68 ldr r3, [r3, #12] 1310 .loc 1 344 11 1311 04ec 002B cmp r3, #0 1312 04ee 6ED0 beq .L51 345:user_src/hard_led.c **** { 346:user_src/hard_led.c **** 347:user_src/hard_led.c **** if ((L_cyan.off_time_ms == 25500) || (L_cyan.on_time_ms == 25500)) 1313 .loc 1 347 15 1314 04f0 174B ldr r3, .L73+16 1315 04f2 9B68 ldr r3, [r3, #8] 1316 .loc 1 347 7 1317 04f4 46F29C32 movw r2, #25500 1318 04f8 9342 cmp r3, r2 1319 04fa 05D0 beq .L52 1320 .loc 1 347 48 discriminator 1 1321 04fc 144B ldr r3, .L73+16 1322 04fe 5B68 ldr r3, [r3, #4] 1323 .loc 1 347 38 discriminator 1 1324 0500 46F29C32 movw r2, #25500 1325 0504 9342 cmp r3, r2 1326 0506 25D1 bne .L53 1327 .L52: 348:user_src/hard_led.c **** { 349:user_src/hard_led.c **** L_cyan.repeat = 0; 1328 .loc 1 349 19 1329 0508 114B ldr r3, .L73+16 1330 050a 0022 movs r2, #0 1331 050c DA60 str r2, [r3, #12] 350:user_src/hard_led.c **** if (L_cyan.off_time_ms == 25500) 1332 .loc 1 350 15 1333 050e 104B ldr r3, .L73+16 1334 0510 9B68 ldr r3, [r3, #8] 1335 .loc 1 350 8 1336 0512 46F29C32 movw r2, #25500 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 32 1337 0516 9342 cmp r3, r2 1338 0518 05D1 bne .L54 351:user_src/hard_led.c **** { 352:user_src/hard_led.c **** LEDCyan_OFF(); 1339 .loc 1 352 6 1340 051a 0022 movs r2, #0 1341 051c 0621 movs r1, #6 1342 051e 0948 ldr r0, .L73+4 1343 0520 FFF7FEFF bl HAL_GPIO_WritePin 353:user_src/hard_led.c **** } 354:user_src/hard_led.c **** else if (L_cyan.on_time_ms == 25500) 355:user_src/hard_led.c **** { 356:user_src/hard_led.c **** LEDCyan_ON(); 357:user_src/hard_led.c **** } 358:user_src/hard_led.c **** 359:user_src/hard_led.c **** return; 1344 .loc 1 359 5 1345 0524 C6E0 b .L69 1346 .L54: 354:user_src/hard_led.c **** { 1347 .loc 1 354 20 1348 0526 0A4B ldr r3, .L73+16 1349 0528 5B68 ldr r3, [r3, #4] 354:user_src/hard_led.c **** { 1350 .loc 1 354 13 1351 052a 46F29C32 movw r2, #25500 1352 052e 9342 cmp r3, r2 1353 0530 40F0C080 bne .L69 356:user_src/hard_led.c **** } 1354 .loc 1 356 6 1355 0534 0122 movs r2, #1 1356 0536 0621 movs r1, #6 1357 0538 0248 ldr r0, .L73+4 1358 053a FFF7FEFF bl HAL_GPIO_WritePin 1359 .loc 1 359 5 1360 053e B9E0 b .L69 1361 .L74: 1362 .align 2 1363 .L73: 1364 0540 00000000 .word L_blue 1365 0544 00040048 .word 1207960576 1366 0548 00000000 .word L_purple 1367 054c 00000000 .word L_yellow 1368 0550 00000000 .word L_cyan 1369 .L53: 360:user_src/hard_led.c **** } 361:user_src/hard_led.c **** if (L_cyan.status == ON) 1370 .loc 1 361 14 1371 0554 594B ldr r3, .L75 1372 0556 1B78 ldrb r3, [r3] @ zero_extendqisi2 1373 .loc 1 361 7 1374 0558 FF2B cmp r3, #255 1375 055a 1AD1 bne .L56 362:user_src/hard_led.c **** { 363:user_src/hard_led.c **** if (HAL_GetTick() - L_cyan.time > L_cyan.on_time_ms) 1376 .loc 1 363 9 1377 055c FFF7FEFF bl HAL_GetTick ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 33 1378 0560 0246 mov r2, r0 1379 .loc 1 363 31 1380 0562 564B ldr r3, .L75 1381 0564 1B69 ldr r3, [r3, #16] 1382 .loc 1 363 23 1383 0566 D21A subs r2, r2, r3 1384 .loc 1 363 45 1385 0568 544B ldr r3, .L75 1386 056a 5B68 ldr r3, [r3, #4] 1387 .loc 1 363 8 1388 056c 9A42 cmp r2, r3 1389 056e 40F2A480 bls .L15 364:user_src/hard_led.c **** { 365:user_src/hard_led.c **** L_cyan.repeat--; 1390 .loc 1 365 12 1391 0572 524B ldr r3, .L75 1392 0574 DB68 ldr r3, [r3, #12] 1393 .loc 1 365 19 1394 0576 013B subs r3, r3, #1 1395 0578 504A ldr r2, .L75 1396 057a D360 str r3, [r2, #12] 366:user_src/hard_led.c **** LEDCyan_OFF(); 1397 .loc 1 366 6 1398 057c 0022 movs r2, #0 1399 057e 0621 movs r1, #6 1400 0580 4F48 ldr r0, .L75+4 1401 0582 FFF7FEFF bl HAL_GPIO_WritePin 367:user_src/hard_led.c **** Update_LED_Time(); 1402 .loc 1 367 6 1403 0586 FFF7FEFF bl Update_LED_Time 368:user_src/hard_led.c **** L_cyan.status = OFF; 1404 .loc 1 368 20 1405 058a 4C4B ldr r3, .L75 1406 058c 0022 movs r2, #0 1407 058e 1A70 strb r2, [r3] 1408 0590 93E0 b .L15 1409 .L56: 369:user_src/hard_led.c **** } 370:user_src/hard_led.c **** } 371:user_src/hard_led.c **** else 372:user_src/hard_led.c **** { 373:user_src/hard_led.c **** if (HAL_GetTick() - L_cyan.time > L_cyan.off_time_ms) 1410 .loc 1 373 9 1411 0592 FFF7FEFF bl HAL_GetTick 1412 0596 0246 mov r2, r0 1413 .loc 1 373 31 1414 0598 484B ldr r3, .L75 1415 059a 1B69 ldr r3, [r3, #16] 1416 .loc 1 373 23 1417 059c D21A subs r2, r2, r3 1418 .loc 1 373 45 1419 059e 474B ldr r3, .L75 1420 05a0 9B68 ldr r3, [r3, #8] 1421 .loc 1 373 8 1422 05a2 9A42 cmp r2, r3 1423 05a4 40F28980 bls .L15 374:user_src/hard_led.c **** { ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 34 375:user_src/hard_led.c **** if (L_cyan.repeat != 0) 1424 .loc 1 375 16 1425 05a8 444B ldr r3, .L75 1426 05aa DB68 ldr r3, [r3, #12] 1427 .loc 1 375 9 1428 05ac 002B cmp r3, #0 1429 05ae 00F08480 beq .L15 376:user_src/hard_led.c **** { 377:user_src/hard_led.c **** LEDCyan_ON(); 1430 .loc 1 377 7 1431 05b2 0122 movs r2, #1 1432 05b4 0621 movs r1, #6 1433 05b6 4248 ldr r0, .L75+4 1434 05b8 FFF7FEFF bl HAL_GPIO_WritePin 378:user_src/hard_led.c **** L_cyan.time = HAL_GetTick(); 1435 .loc 1 378 21 1436 05bc FFF7FEFF bl HAL_GetTick 1437 05c0 0346 mov r3, r0 1438 .loc 1 378 19 1439 05c2 3E4A ldr r2, .L75 1440 05c4 1361 str r3, [r2, #16] 379:user_src/hard_led.c **** L_cyan.status = ON; 1441 .loc 1 379 21 1442 05c6 3D4B ldr r3, .L75 1443 05c8 FF22 movs r2, #255 1444 05ca 1A70 strb r2, [r3] 1445 05cc 75E0 b .L15 1446 .L51: 380:user_src/hard_led.c **** } 381:user_src/hard_led.c **** } 382:user_src/hard_led.c **** } 383:user_src/hard_led.c **** } 384:user_src/hard_led.c **** else if (L_white.repeat != 0) 1447 .loc 1 384 19 1448 05ce 3D4B ldr r3, .L75+8 1449 05d0 DB68 ldr r3, [r3, #12] 1450 .loc 1 384 11 1451 05d2 002B cmp r3, #0 1452 05d4 71D0 beq .L15 385:user_src/hard_led.c **** { 386:user_src/hard_led.c **** 387:user_src/hard_led.c **** if ((L_white.off_time_ms == 25500) || (L_white.on_time_ms == 25500)) 1453 .loc 1 387 16 1454 05d6 3B4B ldr r3, .L75+8 1455 05d8 9B68 ldr r3, [r3, #8] 1456 .loc 1 387 7 1457 05da 46F29C32 movw r2, #25500 1458 05de 9342 cmp r3, r2 1459 05e0 05D0 beq .L57 1460 .loc 1 387 50 discriminator 1 1461 05e2 384B ldr r3, .L75+8 1462 05e4 5B68 ldr r3, [r3, #4] 1463 .loc 1 387 39 discriminator 1 1464 05e6 46F29C32 movw r2, #25500 1465 05ea 9342 cmp r3, r2 1466 05ec 1AD1 bne .L58 1467 .L57: ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 35 388:user_src/hard_led.c **** { 389:user_src/hard_led.c **** L_white.repeat = 0; 1468 .loc 1 389 20 1469 05ee 354B ldr r3, .L75+8 1470 05f0 0022 movs r2, #0 1471 05f2 DA60 str r2, [r3, #12] 390:user_src/hard_led.c **** if (L_white.off_time_ms == 25500) 1472 .loc 1 390 16 1473 05f4 334B ldr r3, .L75+8 1474 05f6 9B68 ldr r3, [r3, #8] 1475 .loc 1 390 8 1476 05f8 46F29C32 movw r2, #25500 1477 05fc 9342 cmp r3, r2 1478 05fe 05D1 bne .L59 391:user_src/hard_led.c **** { 392:user_src/hard_led.c **** LEDWhite_OFF(); 1479 .loc 1 392 6 1480 0600 0022 movs r2, #0 1481 0602 0721 movs r1, #7 1482 0604 2E48 ldr r0, .L75+4 1483 0606 FFF7FEFF bl HAL_GPIO_WritePin 393:user_src/hard_led.c **** } 394:user_src/hard_led.c **** else if (L_white.on_time_ms == 25500) 395:user_src/hard_led.c **** { 396:user_src/hard_led.c **** LEDWhite_ON(); 397:user_src/hard_led.c **** } 398:user_src/hard_led.c **** 399:user_src/hard_led.c **** return; 1484 .loc 1 399 5 1485 060a 55E0 b .L70 1486 .L59: 394:user_src/hard_led.c **** { 1487 .loc 1 394 21 1488 060c 2D4B ldr r3, .L75+8 1489 060e 5B68 ldr r3, [r3, #4] 394:user_src/hard_led.c **** { 1490 .loc 1 394 13 1491 0610 46F29C32 movw r2, #25500 1492 0614 9342 cmp r3, r2 1493 0616 4FD1 bne .L70 396:user_src/hard_led.c **** } 1494 .loc 1 396 6 1495 0618 0122 movs r2, #1 1496 061a 0721 movs r1, #7 1497 061c 2848 ldr r0, .L75+4 1498 061e FFF7FEFF bl HAL_GPIO_WritePin 1499 .loc 1 399 5 1500 0622 49E0 b .L70 1501 .L58: 400:user_src/hard_led.c **** } 401:user_src/hard_led.c **** if (L_white.status == ON) 1502 .loc 1 401 15 1503 0624 274B ldr r3, .L75+8 1504 0626 1B78 ldrb r3, [r3] @ zero_extendqisi2 1505 .loc 1 401 7 1506 0628 FF2B cmp r3, #255 1507 062a 19D1 bne .L61 ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 36 402:user_src/hard_led.c **** { 403:user_src/hard_led.c **** if (HAL_GetTick() - L_white.time > L_white.on_time_ms) 1508 .loc 1 403 9 1509 062c FFF7FEFF bl HAL_GetTick 1510 0630 0246 mov r2, r0 1511 .loc 1 403 32 1512 0632 244B ldr r3, .L75+8 1513 0634 1B69 ldr r3, [r3, #16] 1514 .loc 1 403 23 1515 0636 D21A subs r2, r2, r3 1516 .loc 1 403 47 1517 0638 224B ldr r3, .L75+8 1518 063a 5B68 ldr r3, [r3, #4] 1519 .loc 1 403 8 1520 063c 9A42 cmp r2, r3 1521 063e 3CD9 bls .L15 404:user_src/hard_led.c **** { 405:user_src/hard_led.c **** L_white.repeat--; 1522 .loc 1 405 13 1523 0640 204B ldr r3, .L75+8 1524 0642 DB68 ldr r3, [r3, #12] 1525 .loc 1 405 20 1526 0644 013B subs r3, r3, #1 1527 0646 1F4A ldr r2, .L75+8 1528 0648 D360 str r3, [r2, #12] 406:user_src/hard_led.c **** LEDWhite_OFF(); 1529 .loc 1 406 6 1530 064a 0022 movs r2, #0 1531 064c 0721 movs r1, #7 1532 064e 1C48 ldr r0, .L75+4 1533 0650 FFF7FEFF bl HAL_GPIO_WritePin 407:user_src/hard_led.c **** Update_LED_Time(); 1534 .loc 1 407 6 1535 0654 FFF7FEFF bl Update_LED_Time 408:user_src/hard_led.c **** L_white.status = OFF; 1536 .loc 1 408 21 1537 0658 1A4B ldr r3, .L75+8 1538 065a 0022 movs r2, #0 1539 065c 1A70 strb r2, [r3] 1540 065e 2CE0 b .L15 1541 .L61: 409:user_src/hard_led.c **** } 410:user_src/hard_led.c **** } 411:user_src/hard_led.c **** else 412:user_src/hard_led.c **** { 413:user_src/hard_led.c **** if (HAL_GetTick() - L_white.time > L_white.off_time_ms) 1542 .loc 1 413 9 1543 0660 FFF7FEFF bl HAL_GetTick 1544 0664 0246 mov r2, r0 1545 .loc 1 413 32 1546 0666 174B ldr r3, .L75+8 1547 0668 1B69 ldr r3, [r3, #16] 1548 .loc 1 413 23 1549 066a D21A subs r2, r2, r3 1550 .loc 1 413 47 1551 066c 154B ldr r3, .L75+8 1552 066e 9B68 ldr r3, [r3, #8] ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 37 1553 .loc 1 413 8 1554 0670 9A42 cmp r2, r3 1555 0672 22D9 bls .L15 414:user_src/hard_led.c **** { 415:user_src/hard_led.c **** if (L_white.repeat != 0) 1556 .loc 1 415 17 1557 0674 134B ldr r3, .L75+8 1558 0676 DB68 ldr r3, [r3, #12] 1559 .loc 1 415 9 1560 0678 002B cmp r3, #0 1561 067a 1ED0 beq .L15 416:user_src/hard_led.c **** { 417:user_src/hard_led.c **** LEDWhite_ON(); 1562 .loc 1 417 7 1563 067c 0122 movs r2, #1 1564 067e 0721 movs r1, #7 1565 0680 0F48 ldr r0, .L75+4 1566 0682 FFF7FEFF bl HAL_GPIO_WritePin 418:user_src/hard_led.c **** L_white.time = HAL_GetTick(); 1567 .loc 1 418 22 1568 0686 FFF7FEFF bl HAL_GetTick 1569 068a 0346 mov r3, r0 1570 .loc 1 418 20 1571 068c 0D4A ldr r2, .L75+8 1572 068e 1361 str r3, [r2, #16] 419:user_src/hard_led.c **** L_white.status = ON; 1573 .loc 1 419 22 1574 0690 0C4B ldr r3, .L75+8 1575 0692 FF22 movs r2, #255 1576 0694 1A70 strb r2, [r3] 1577 0696 10E0 b .L15 1578 .L62: 113:user_src/hard_led.c **** 1579 .loc 1 113 3 1580 0698 00BF nop 1581 069a 0EE0 b .L15 1582 .L63: 136:user_src/hard_led.c **** } 1583 .loc 1 136 3 1584 069c 00BF nop 1585 069e 0CE0 b .L15 1586 .L64: 155:user_src/hard_led.c **** } 1587 .loc 1 155 5 1588 06a0 00BF nop 1589 06a2 0AE0 b .L15 1590 .L65: 196:user_src/hard_led.c **** } 1591 .loc 1 196 5 1592 06a4 00BF nop 1593 06a6 08E0 b .L15 1594 .L66: 236:user_src/hard_led.c **** } 1595 .loc 1 236 5 1596 06a8 00BF nop 1597 06aa 06E0 b .L15 1598 .L67: ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 38 277:user_src/hard_led.c **** } 1599 .loc 1 277 5 1600 06ac 00BF nop 1601 06ae 04E0 b .L15 1602 .L68: 318:user_src/hard_led.c **** } 1603 .loc 1 318 5 1604 06b0 00BF nop 1605 06b2 02E0 b .L15 1606 .L69: 359:user_src/hard_led.c **** } 1607 .loc 1 359 5 1608 06b4 00BF nop 1609 06b6 00E0 b .L15 1610 .L70: 399:user_src/hard_led.c **** } 1611 .loc 1 399 5 1612 06b8 00BF nop 1613 .L15: 420:user_src/hard_led.c **** } 421:user_src/hard_led.c **** } 422:user_src/hard_led.c **** } 423:user_src/hard_led.c **** } 424:user_src/hard_led.c **** } 425:user_src/hard_led.c **** } 1614 .loc 1 425 1 1615 06ba 80BD pop {r7, pc} 1616 .L76: 1617 .align 2 1618 .L75: 1619 06bc 00000000 .word L_cyan 1620 06c0 00040048 .word 1207960576 1621 06c4 00000000 .word L_white 1622 .cfi_endproc 1623 .LFE135: 1625 .text 1626 .Letext0: 1627 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h" 1628 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h" 1629 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h" 1630 .file 5 "user_inc/hard_led.h" 1631 .file 6 "user_inc/soft_p_2_c.h" 1632 .file 7 "user_inc/soft_flash.h" 1633 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_gpio.h" ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 39 DEFINED SYMBOLS *ABS*:00000000 hard_led.c C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:24 .bss.L_red:00000000 L_red C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:21 .bss.L_red:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:31 .bss.L_blue:00000000 L_blue C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:28 .bss.L_blue:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:38 .bss.L_green:00000000 L_green C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:35 .bss.L_green:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:45 .bss.L_purple:00000000 L_purple C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:42 .bss.L_purple:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:52 .bss.L_cyan:00000000 L_cyan C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:49 .bss.L_cyan:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:59 .bss.L_yellow:00000000 L_yellow C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:56 .bss.L_yellow:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:66 .bss.L_white:00000000 L_white C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:63 .bss.L_white:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:72 .bss.led_is_ok:00000000 led_is_ok C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:73 .bss.led_is_ok:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:75 .text.Update_LED_Time:00000000 $t C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:81 .text.Update_LED_Time:00000000 Update_LED_Time C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:144 .text.Update_LED_Time:00000050 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:155 .text.led_set_blink:00000000 $t C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:161 .text.led_set_blink:00000000 led_set_blink C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:496 .text.led_set_blink:00000200 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:512 .bss.L_red_time:00000000 L_red_time C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:509 .bss.L_red_time:00000000 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:515 .text.led_blink_repeat:00000000 $t C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:521 .text.led_blink_repeat:00000000 led_blink_repeat C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:939 .text.led_blink_repeat:00000284 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:952 .text.led_blink_repeat:000002b0 $t C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1364 .text.led_blink_repeat:00000540 $d C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1371 .text.led_blink_repeat:00000554 $t C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1619 .text.led_blink_repeat:000006bc $d UNDEFINED SYMBOLS HAL_GetTick HAL_GPIO_WritePin HAL_GPIO_TogglePin current_pmu_par recv_fmu_data