ARM GAS /tmp/ccrBIh4J.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "squeow_ui.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Src/squeow_ui.c" 20 .section .rodata.seriow_stab_dump.str1.4,"aMS",%progbits,1 21 .align 2 22 .LC0: 23 0000 444D5020 .ascii "DMP F=%lu \000" 23 463D256C 23 752000 24 000b 00 .align 2 25 .LC1: 26 000c 56504B3D .ascii "VPK=%u \000" 26 25752000 27 .align 2 28 .LC2: 29 0014 53543D25 .ascii "ST=%u \000" 29 752000 30 001b 00 .align 2 31 .LC3: 32 001c 53443D25 .ascii "SD=%u \000" 32 752000 33 0023 00 .align 2 34 .LC4: 35 0024 53523D25 .ascii "SR=%u \000" 35 752000 36 002b 00 .align 2 37 .LC5: 38 002c 0A00 .ascii "\012\000" 39 .section .text.seriow_stab_dump,"ax",%progbits 40 .align 1 41 .global seriow_stab_dump 42 .syntax unified 43 .thumb 44 .thumb_func 46 seriow_stab_dump: 47 .LFB334: 1:Src/squeow_ui.c **** #include 2:Src/squeow_ui.c **** #include 3:Src/squeow_ui.c **** #include 4:Src/squeow_ui.c **** #include 5:Src/squeow_ui.c **** #include ARM GAS /tmp/ccrBIh4J.s page 2 6:Src/squeow_ui.c **** 7:Src/squeow_ui.c **** #include "squeow.h" 8:Src/squeow_ui.c **** #include "squeow_ui.h" 9:Src/squeow_ui.c **** 10:Src/squeow_ui.c **** /* SQUEOW UI 11:Src/squeow_ui.c **** 12:Src/squeow_ui.c **** su tosta (8x16 caratteri) 13:Src/squeow_ui.c **** F: stringa frequenza 14:Src/squeow_ui.c **** V: barra volume 15:Src/squeow_ui.c **** D: barra diretta 16:Src/squeow_ui.c **** R: barra riflessa 17:Src/squeow_ui.c **** T: barra temperatura 18:Src/squeow_ui.c **** S: stringa stato 19:Src/squeow_ui.c **** */ 20:Src/squeow_ui.c **** 21:Src/squeow_ui.c **** uint16_t ui_volume; 22:Src/squeow_ui.c **** 23:Src/squeow_ui.c **** volatile uint8_t uart_sent; 24:Src/squeow_ui.c **** 25:Src/squeow_ui.c **** // ################ 26:Src/squeow_ui.c **** 27:Src/squeow_ui.c **** void squeow_ui_init(void) { 28:Src/squeow_ui.c **** #ifdef SQUEOW_UI_SERIOW 29:Src/squeow_ui.c **** seriow_log('I', "seriow UI init"); 30:Src/squeow_ui.c **** #endif 31:Src/squeow_ui.c **** 32:Src/squeow_ui.c **** #ifdef SQUEOW_UI_TOSTA 33:Src/squeow_ui.c **** tosta_log('I', "UI init"); 34:Src/squeow_ui.c **** #endif 35:Src/squeow_ui.c **** } 36:Src/squeow_ui.c **** 37:Src/squeow_ui.c **** // seriow 38:Src/squeow_ui.c **** // https://git.lattuga.net/boyska/seriow 39:Src/squeow_ui.c **** 40:Src/squeow_ui.c **** void seriow_var_dump(void) { 41:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "DMP V=%u ", 42:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 43:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "C=%u ", ris 44:Src/squeow_ui.c **** #endif 45:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_TEMPERATURA 46:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "T=%u ", ris 47:Src/squeow_ui.c **** #endif 48:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_DIRETTA 49:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "D=%u ", ris 50:Src/squeow_ui.c **** #endif 51:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_RIFLESSA 52:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "R=%u ", ris 53:Src/squeow_ui.c **** #endif 54:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\n"); 55:Src/squeow_ui.c **** } 56:Src/squeow_ui.c **** 57:Src/squeow_ui.c **** void seriow_stab_dump(void) { 48 .loc 1 57 29 view -0 49 .cfi_startproc 50 @ args = 0, pretend = 0, frame = 0 51 @ frame_needed = 0, uses_anonymous_args = 0 52 0000 38B5 push {r3, r4, r5, lr} ARM GAS /tmp/ccrBIh4J.s page 3 53 .LCFI0: 54 .cfi_def_cfa_offset 16 55 .cfi_offset 3, -16 56 .cfi_offset 4, -12 57 .cfi_offset 5, -8 58 .cfi_offset 14, -4 58:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "DMP F=%lu " 59 .loc 1 58 5 view .LVU1 60 .loc 1 58 27 is_stmt 0 view .LVU2 61 0002 234C ldr r4, .L3 62 0004 2078 ldrb r0, [r4] @ zero_extendqisi2 63 0006 234D ldr r5, .L3+4 64 0008 234B ldr r3, .L3+8 65 000a 1B68 ldr r3, [r3] 66 000c 234A ldr r2, .L3+12 67 000e 4FF48071 mov r1, #256 68 0012 2844 add r0, r0, r5 69 0014 FFF7FEFF bl snprintf 70 .LVL0: 71 .loc 1 58 24 discriminator 1 view .LVU3 72 0018 2378 ldrb r3, [r4] @ zero_extendqisi2 73 001a 1844 add r0, r0, r3 74 001c C0B2 uxtb r0, r0 75 001e 2070 strb r0, [r4] 59:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "VPK=%u ", V 76 .loc 1 59 5 is_stmt 1 view .LVU4 77 .loc 1 59 27 is_stmt 0 view .LVU5 78 0020 4FF4FF63 mov r3, #2040 79 0024 1E4A ldr r2, .L3+16 80 0026 4FF48071 mov r1, #256 81 002a 2844 add r0, r0, r5 82 002c FFF7FEFF bl snprintf 83 .LVL1: 84 .loc 1 59 24 discriminator 1 view .LVU6 85 0030 2078 ldrb r0, [r4] @ zero_extendqisi2 86 0032 0930 adds r0, r0, #9 87 0034 C0B2 uxtb r0, r0 88 0036 2070 strb r0, [r4] 60:Src/squeow_ui.c **** 61:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 62:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "SC=%u ", SO 63:Src/squeow_ui.c **** #endif 64:Src/squeow_ui.c **** 65:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_TEMPERATURA 66:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "ST=%u ", SO 89 .loc 1 66 5 is_stmt 1 view .LVU7 90 .loc 1 66 27 is_stmt 0 view .LVU8 91 0038 40F61843 movw r3, #3096 92 003c 194A ldr r2, .L3+20 93 003e 4FF48071 mov r1, #256 94 0042 2844 add r0, r0, r5 95 0044 FFF7FEFF bl snprintf 96 .LVL2: 97 .loc 1 66 24 discriminator 1 view .LVU9 98 0048 2078 ldrb r0, [r4] @ zero_extendqisi2 99 004a 0830 adds r0, r0, #8 100 004c C0B2 uxtb r0, r0 ARM GAS /tmp/ccrBIh4J.s page 4 101 004e 2070 strb r0, [r4] 67:Src/squeow_ui.c **** #endif 68:Src/squeow_ui.c **** 69:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_DIRETTA 70:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "SD=%u ", SO 102 .loc 1 70 5 is_stmt 1 view .LVU10 103 .loc 1 70 27 is_stmt 0 view .LVU11 104 0050 40F61843 movw r3, #3096 105 0054 144A ldr r2, .L3+24 106 0056 4FF48071 mov r1, #256 107 005a 2844 add r0, r0, r5 108 005c FFF7FEFF bl snprintf 109 .LVL3: 110 .loc 1 70 24 discriminator 1 view .LVU12 111 0060 2078 ldrb r0, [r4] @ zero_extendqisi2 112 0062 0830 adds r0, r0, #8 113 0064 C0B2 uxtb r0, r0 114 0066 2070 strb r0, [r4] 71:Src/squeow_ui.c **** #endif 72:Src/squeow_ui.c **** 73:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_RIFLESSA 74:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "SR=%u ", SO 115 .loc 1 74 5 is_stmt 1 view .LVU13 116 .loc 1 74 27 is_stmt 0 view .LVU14 117 0068 40F61843 movw r3, #3096 118 006c 0F4A ldr r2, .L3+28 119 006e 4FF48071 mov r1, #256 120 0072 2844 add r0, r0, r5 121 0074 FFF7FEFF bl snprintf 122 .LVL4: 123 .loc 1 74 24 discriminator 1 view .LVU15 124 0078 2378 ldrb r3, [r4] @ zero_extendqisi2 125 007a 0833 adds r3, r3, #8 126 007c DBB2 uxtb r3, r3 127 007e 2370 strb r3, [r4] 75:Src/squeow_ui.c **** #endif 76:Src/squeow_ui.c **** 77:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\n"); 128 .loc 1 77 5 is_stmt 1 view .LVU16 129 .loc 1 77 27 is_stmt 0 view .LVU17 130 0080 0B4A ldr r2, .L3+32 131 0082 1288 ldrh r2, [r2] @ unaligned 132 0084 EA52 strh r2, [r5, r3] @ unaligned 133 .loc 1 77 24 discriminator 1 view .LVU18 134 0086 DBB2 uxtb r3, r3 135 0088 0133 adds r3, r3, #1 136 008a 2370 strb r3, [r4] 78:Src/squeow_ui.c **** } 137 .loc 1 78 1 view .LVU19 138 008c 38BD pop {r3, r4, r5, pc} 139 .L4: 140 008e 00BF .align 2 141 .L3: 142 0090 00000000 .word UART_TX_buf_lenght 143 0094 00000000 .word UART_TX_buf 144 0098 00000000 .word freq 145 009c 00000000 .word .LC0 ARM GAS /tmp/ccrBIh4J.s page 5 146 00a0 0C000000 .word .LC1 147 00a4 14000000 .word .LC2 148 00a8 1C000000 .word .LC3 149 00ac 24000000 .word .LC4 150 00b0 2C000000 .word .LC5 151 .cfi_endproc 152 .LFE334: 154 .section .rodata.seriow_log.str1.4,"aMS",%progbits,1 155 .align 2 156 .LC6: 157 0000 4C4F4720 .ascii "LOG %c %s\012\000" 157 25632025 157 730A00 158 .section .text.seriow_log,"ax",%progbits 159 .align 1 160 .global seriow_log 161 .syntax unified 162 .thumb 163 .thumb_func 165 seriow_log: 166 .LVL5: 167 .LFB335: 79:Src/squeow_ui.c **** 80:Src/squeow_ui.c **** void seriow_log(uint8_t sev, char *msg) { UART_TX_buf_lenght = snprintf(UART_TX_buf + UART_TX_buf_l 168 .loc 1 80 41 is_stmt 1 view -0 169 .cfi_startproc 170 @ args = 0, pretend = 0, frame = 0 171 @ frame_needed = 0, uses_anonymous_args = 0 172 .loc 1 80 41 is_stmt 0 view .LVU21 173 0000 10B5 push {r4, lr} 174 .LCFI1: 175 .cfi_def_cfa_offset 8 176 .cfi_offset 4, -8 177 .cfi_offset 14, -4 178 0002 82B0 sub sp, sp, #8 179 .LCFI2: 180 .cfi_def_cfa_offset 16 181 0004 0346 mov r3, r0 182 .loc 1 80 43 is_stmt 1 view .LVU22 183 .loc 1 80 64 is_stmt 0 view .LVU23 184 0006 074C ldr r4, .L7 185 0008 94F800C0 ldrb ip, [r4] @ zero_extendqisi2 186 000c 0091 str r1, [sp] 187 000e 064A ldr r2, .L7+4 188 0010 4FF48071 mov r1, #256 189 .LVL6: 190 .loc 1 80 64 view .LVU24 191 0014 0548 ldr r0, .L7+8 192 .LVL7: 193 .loc 1 80 64 view .LVU25 194 0016 6044 add r0, r0, ip 195 0018 FFF7FEFF bl snprintf 196 .LVL8: 197 .loc 1 80 62 discriminator 1 view .LVU26 198 001c 2070 strb r0, [r4] 199 .loc 1 80 151 view .LVU27 200 001e 02B0 add sp, sp, #8 ARM GAS /tmp/ccrBIh4J.s page 6 201 .LCFI3: 202 .cfi_def_cfa_offset 8 203 @ sp needed 204 0020 10BD pop {r4, pc} 205 .L8: 206 0022 00BF .align 2 207 .L7: 208 0024 00000000 .word UART_TX_buf_lenght 209 0028 00000000 .word .LC6 210 002c 00000000 .word UART_TX_buf 211 .cfi_endproc 212 .LFE335: 214 .section .rodata.squeow_ui_init.str1.4,"aMS",%progbits,1 215 .align 2 216 .LC7: 217 0000 73657269 .ascii "seriow UI init\000" 217 6F772055 217 4920696E 217 697400 218 .section .text.squeow_ui_init,"ax",%progbits 219 .align 1 220 .global squeow_ui_init 221 .syntax unified 222 .thumb 223 .thumb_func 225 squeow_ui_init: 226 .LFB332: 27:Src/squeow_ui.c **** #ifdef SQUEOW_UI_SERIOW 227 .loc 1 27 27 is_stmt 1 view -0 228 .cfi_startproc 229 @ args = 0, pretend = 0, frame = 0 230 @ frame_needed = 0, uses_anonymous_args = 0 231 0000 08B5 push {r3, lr} 232 .LCFI4: 233 .cfi_def_cfa_offset 8 234 .cfi_offset 3, -8 235 .cfi_offset 14, -4 29:Src/squeow_ui.c **** #endif 236 .loc 1 29 5 view .LVU29 237 0002 0249 ldr r1, .L11 238 0004 4920 movs r0, #73 239 0006 FFF7FEFF bl seriow_log 240 .LVL9: 35:Src/squeow_ui.c **** 241 .loc 1 35 1 is_stmt 0 view .LVU30 242 000a 08BD pop {r3, pc} 243 .L12: 244 .align 2 245 .L11: 246 000c 00000000 .word .LC7 247 .cfi_endproc 248 .LFE332: 250 .section .rodata.tosta_freq.str1.4,"aMS",%progbits,1 251 .align 2 252 .LC8: 253 0000 1B5B3164 .ascii "\033[1d\033[0GF: %lu\000" 253 1B5B3047 ARM GAS /tmp/ccrBIh4J.s page 7 253 463A2025 253 6C7500 254 .section .text.tosta_freq,"ax",%progbits 255 .align 1 256 .global tosta_freq 257 .syntax unified 258 .thumb 259 .thumb_func 261 tosta_freq: 262 .LFB336: 81:Src/squeow_ui.c **** 82:Src/squeow_ui.c **** // tosta 83:Src/squeow_ui.c **** 84:Src/squeow_ui.c **** void tosta_freq(void) { 263 .loc 1 84 23 is_stmt 1 view -0 264 .cfi_startproc 265 @ args = 0, pretend = 0, frame = 0 266 @ frame_needed = 0, uses_anonymous_args = 0 267 0000 38B5 push {r3, r4, r5, lr} 268 .LCFI5: 269 .cfi_def_cfa_offset 16 270 .cfi_offset 3, -16 271 .cfi_offset 4, -12 272 .cfi_offset 5, -8 273 .cfi_offset 14, -4 85:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\e[1d\e[0GF 274 .loc 1 85 5 view .LVU32 275 .loc 1 85 27 is_stmt 0 view .LVU33 276 0002 074C ldr r4, .L15 277 0004 2078 ldrb r0, [r4] @ zero_extendqisi2 278 0006 074B ldr r3, .L15+4 279 0008 1B68 ldr r3, [r3] 280 000a 074A ldr r2, .L15+8 281 000c 4FF48071 mov r1, #256 282 0010 064D ldr r5, .L15+12 283 0012 2844 add r0, r0, r5 284 0014 FFF7FEFF bl snprintf 285 .LVL10: 286 .loc 1 85 24 discriminator 1 view .LVU34 287 0018 2378 ldrb r3, [r4] @ zero_extendqisi2 288 001a 0344 add r3, r3, r0 289 001c 2370 strb r3, [r4] 86:Src/squeow_ui.c **** } 290 .loc 1 86 1 view .LVU35 291 001e 38BD pop {r3, r4, r5, pc} 292 .L16: 293 .align 2 294 .L15: 295 0020 00000000 .word UART_TX_buf_lenght 296 0024 00000000 .word freq 297 0028 00000000 .word .LC8 298 002c 00000000 .word UART_TX_buf 299 .cfi_endproc 300 .LFE336: 302 .section .rodata.tosta_log.str1.4,"aMS",%progbits,1 303 .align 2 304 .LC9: ARM GAS /tmp/ccrBIh4J.s page 8 305 0000 1B5B3864 .ascii "\033[8d\033[0GLOG: %c %s\000" 305 1B5B3047 305 4C4F473A 305 20256320 305 257300 306 .section .text.tosta_log,"ax",%progbits 307 .align 1 308 .global tosta_log 309 .syntax unified 310 .thumb 311 .thumb_func 313 tosta_log: 314 .LVL11: 315 .LFB338: 87:Src/squeow_ui.c **** 88:Src/squeow_ui.c **** void tosta_var_bars(void) { 89:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\f\e[2d\e[0 90:Src/squeow_ui.c **** 91:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 92:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "C:\e[%ub\nu 93:Src/squeow_ui.c **** #endif 94:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_TEMPERATURA 95:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "T:\e[%ub\n" 96:Src/squeow_ui.c **** #endif 97:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_DIRETTA 98:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "D:\e[%ub\n" 99:Src/squeow_ui.c **** #endif 100:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_RIFLESSA 101:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "R:\e[%ub\n" 102:Src/squeow_ui.c **** #endif 103:Src/squeow_ui.c **** } 104:Src/squeow_ui.c **** 105:Src/squeow_ui.c **** void tosta_log(uint8_t sev, char *msg) { 316 .loc 1 105 40 is_stmt 1 view -0 317 .cfi_startproc 318 @ args = 0, pretend = 0, frame = 0 319 @ frame_needed = 0, uses_anonymous_args = 0 320 .loc 1 105 40 is_stmt 0 view .LVU37 321 0000 10B5 push {r4, lr} 322 .LCFI6: 323 .cfi_def_cfa_offset 8 324 .cfi_offset 4, -8 325 .cfi_offset 14, -4 326 0002 82B0 sub sp, sp, #8 327 .LCFI7: 328 .cfi_def_cfa_offset 16 329 0004 0346 mov r3, r0 106:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\e[8d\e[0GL 330 .loc 1 106 5 is_stmt 1 view .LVU38 331 .loc 1 106 27 is_stmt 0 view .LVU39 332 0006 084C ldr r4, .L19 333 0008 94F800C0 ldrb ip, [r4] @ zero_extendqisi2 334 000c 0091 str r1, [sp] 335 000e 074A ldr r2, .L19+4 336 0010 4FF48071 mov r1, #256 337 .LVL12: 338 .loc 1 106 27 view .LVU40 ARM GAS /tmp/ccrBIh4J.s page 9 339 0014 0648 ldr r0, .L19+8 340 .LVL13: 341 .loc 1 106 27 view .LVU41 342 0016 6044 add r0, r0, ip 343 0018 FFF7FEFF bl snprintf 344 .LVL14: 345 .loc 1 106 24 discriminator 1 view .LVU42 346 001c 2378 ldrb r3, [r4] @ zero_extendqisi2 347 001e 0344 add r3, r3, r0 348 0020 2370 strb r3, [r4] 107:Src/squeow_ui.c **** } 349 .loc 1 107 1 view .LVU43 350 0022 02B0 add sp, sp, #8 351 .LCFI8: 352 .cfi_def_cfa_offset 8 353 @ sp needed 354 0024 10BD pop {r4, pc} 355 .L20: 356 0026 00BF .align 2 357 .L19: 358 0028 00000000 .word UART_TX_buf_lenght 359 002c 00000000 .word .LC9 360 0030 00000000 .word UART_TX_buf 361 .cfi_endproc 362 .LFE338: 364 .section .text.led_blocco,"ax",%progbits 365 .align 1 366 .global led_blocco 367 .syntax unified 368 .thumb 369 .thumb_func 371 led_blocco: 372 .LVL15: 373 .LFB339: 108:Src/squeow_ui.c **** 109:Src/squeow_ui.c **** // LED 110:Src/squeow_ui.c **** 111:Src/squeow_ui.c **** void led_blocco(uint8_t led_blocco_lampi) { 374 .loc 1 111 43 is_stmt 1 view -0 375 .cfi_startproc 376 @ args = 0, pretend = 0, frame = 0 377 @ frame_needed = 0, uses_anonymous_args = 0 378 .loc 1 111 43 is_stmt 0 view .LVU45 379 0000 08B5 push {r3, lr} 380 .LCFI9: 381 .cfi_def_cfa_offset 8 382 .cfi_offset 3, -8 383 .cfi_offset 14, -4 112:Src/squeow_ui.c **** // fasi 113:Src/squeow_ui.c **** // 0 lampo acceso 114:Src/squeow_ui.c **** // 1 lampo spento 115:Src/squeow_ui.c **** // 2 pausa 116:Src/squeow_ui.c **** static uint16_t led_blocco_timer; 384 .loc 1 116 5 is_stmt 1 view .LVU46 117:Src/squeow_ui.c **** static uint8_t led_blocco_fase = 0, led_blocco_lampi_fatti = 0; 385 .loc 1 117 5 view .LVU47 118:Src/squeow_ui.c **** if (led_blocco_lampi > 0) { ARM GAS /tmp/ccrBIh4J.s page 10 386 .loc 1 118 5 view .LVU48 387 .loc 1 118 8 is_stmt 0 view .LVU49 388 0002 0028 cmp r0, #0 389 0004 51D0 beq .L22 390 0006 0246 mov r2, r0 119:Src/squeow_ui.c **** if (led_blocco_fase == 0 && led_blocco_timer == 0) { 391 .loc 1 119 9 is_stmt 1 view .LVU50 392 .loc 1 119 29 is_stmt 0 view .LVU51 393 0008 2B4B ldr r3, .L36 394 000a 1B78 ldrb r3, [r3] @ zero_extendqisi2 395 .loc 1 119 12 view .LVU52 396 000c 13B9 cbnz r3, .L23 397 .loc 1 119 54 discriminator 1 view .LVU53 398 000e 2B49 ldr r1, .L36+4 399 0010 0988 ldrh r1, [r1] 400 .loc 1 119 34 discriminator 1 view .LVU54 401 0012 69B1 cbz r1, .L31 402 .L23: 120:Src/squeow_ui.c **** // inizio lampo acceso 121:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_SET); 122:Src/squeow_ui.c **** led_blocco_timer = 1; 123:Src/squeow_ui.c **** } else if (led_blocco_fase == 0 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 403 .loc 1 123 16 is_stmt 1 view .LVU55 404 .loc 1 123 19 is_stmt 0 view .LVU56 405 0014 1BB9 cbnz r3, .L25 406 .loc 1 123 61 discriminator 1 view .LVU57 407 0016 2949 ldr r1, .L36+4 408 0018 0988 ldrh r1, [r1] 409 .loc 1 123 41 discriminator 1 view .LVU58 410 001a 0929 cmp r1, #9 411 001c 11D8 bhi .L32 412 .L25: 124:Src/squeow_ui.c **** // fine lampo acceso, inizio lampo spento 125:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_RESET); 126:Src/squeow_ui.c **** led_blocco_fase = 1; 127:Src/squeow_ui.c **** led_blocco_timer = 0; 128:Src/squeow_ui.c **** } else if (led_blocco_fase == 1 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 413 .loc 1 128 16 is_stmt 1 view .LVU59 414 .loc 1 128 19 is_stmt 0 view .LVU60 415 001e 012B cmp r3, #1 416 0020 1BD0 beq .L33 417 .L26: 129:Src/squeow_ui.c **** // fine lampo spento 130:Src/squeow_ui.c **** if (led_blocco_lampi_fatti >= (led_blocco_lampi - 1)) { 131:Src/squeow_ui.c **** // fine lampi, inizio pausa 132:Src/squeow_ui.c **** led_blocco_fase = 2; 133:Src/squeow_ui.c **** led_blocco_lampi_fatti = 0; 134:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_RESET); 135:Src/squeow_ui.c **** } else { 136:Src/squeow_ui.c **** led_blocco_lampi_fatti++; 137:Src/squeow_ui.c **** led_blocco_fase = 0; 138:Src/squeow_ui.c **** } 139:Src/squeow_ui.c **** led_blocco_timer = 0; 140:Src/squeow_ui.c **** } else if (led_blocco_fase == 2 && led_blocco_timer >= SQUEOW_LED_BLOCCO_PAUSA) { 418 .loc 1 140 16 is_stmt 1 view .LVU61 419 .loc 1 140 19 is_stmt 0 view .LVU62 420 0022 022B cmp r3, #2 ARM GAS /tmp/ccrBIh4J.s page 11 421 0024 37D0 beq .L34 422 .L29: 141:Src/squeow_ui.c **** // fine pausa 142:Src/squeow_ui.c **** led_blocco_fase = 0; 143:Src/squeow_ui.c **** led_blocco_timer = 0; 144:Src/squeow_ui.c **** } else { 145:Src/squeow_ui.c **** led_blocco_timer++; 423 .loc 1 145 13 is_stmt 1 view .LVU63 424 .loc 1 145 29 is_stmt 0 view .LVU64 425 0026 254A ldr r2, .L36+4 426 0028 1388 ldrh r3, [r2] 427 002a 0133 adds r3, r3, #1 428 002c 1380 strh r3, [r2] @ movhi 429 002e 41E0 b .L21 430 .L31: 121:Src/squeow_ui.c **** led_blocco_timer = 1; 431 .loc 1 121 13 is_stmt 1 view .LVU65 432 0030 0122 movs r2, #1 433 0032 1021 movs r1, #16 434 0034 2248 ldr r0, .L36+8 435 .LVL16: 121:Src/squeow_ui.c **** led_blocco_timer = 1; 436 .loc 1 121 13 is_stmt 0 view .LVU66 437 0036 FFF7FEFF bl HAL_GPIO_WritePin 438 .LVL17: 122:Src/squeow_ui.c **** } else if (led_blocco_fase == 0 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 439 .loc 1 122 13 is_stmt 1 view .LVU67 122:Src/squeow_ui.c **** } else if (led_blocco_fase == 0 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 440 .loc 1 122 30 is_stmt 0 view .LVU68 441 003a 204B ldr r3, .L36+4 442 003c 0122 movs r2, #1 443 003e 1A80 strh r2, [r3] @ movhi 444 0040 38E0 b .L21 445 .LVL18: 446 .L32: 125:Src/squeow_ui.c **** led_blocco_fase = 1; 447 .loc 1 125 13 is_stmt 1 view .LVU69 448 0042 0022 movs r2, #0 449 0044 1021 movs r1, #16 450 0046 1E48 ldr r0, .L36+8 451 .LVL19: 125:Src/squeow_ui.c **** led_blocco_fase = 1; 452 .loc 1 125 13 is_stmt 0 view .LVU70 453 0048 FFF7FEFF bl HAL_GPIO_WritePin 454 .LVL20: 126:Src/squeow_ui.c **** led_blocco_timer = 0; 455 .loc 1 126 13 is_stmt 1 view .LVU71 126:Src/squeow_ui.c **** led_blocco_timer = 0; 456 .loc 1 126 29 is_stmt 0 view .LVU72 457 004c 1A4B ldr r3, .L36 458 004e 0122 movs r2, #1 459 0050 1A70 strb r2, [r3] 127:Src/squeow_ui.c **** } else if (led_blocco_fase == 1 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 460 .loc 1 127 13 is_stmt 1 view .LVU73 127:Src/squeow_ui.c **** } else if (led_blocco_fase == 1 && led_blocco_timer >= SQUEOW_LED_BLOCCO_LAMPO) { 461 .loc 1 127 30 is_stmt 0 view .LVU74 462 0052 1A4B ldr r3, .L36+4 ARM GAS /tmp/ccrBIh4J.s page 12 463 0054 0022 movs r2, #0 464 0056 1A80 strh r2, [r3] @ movhi 465 0058 2CE0 b .L21 466 .LVL21: 467 .L33: 128:Src/squeow_ui.c **** // fine lampo spento 468 .loc 1 128 61 discriminator 1 view .LVU75 469 005a 1849 ldr r1, .L36+4 470 005c 0988 ldrh r1, [r1] 128:Src/squeow_ui.c **** // fine lampo spento 471 .loc 1 128 41 discriminator 1 view .LVU76 472 005e 0929 cmp r1, #9 473 0060 DFD9 bls .L26 130:Src/squeow_ui.c **** // fine lampi, inizio pausa 474 .loc 1 130 13 is_stmt 1 view .LVU77 130:Src/squeow_ui.c **** // fine lampi, inizio pausa 475 .loc 1 130 40 is_stmt 0 view .LVU78 476 0062 184B ldr r3, .L36+12 477 0064 1B78 ldrb r3, [r3] @ zero_extendqisi2 130:Src/squeow_ui.c **** // fine lampi, inizio pausa 478 .loc 1 130 61 view .LVU79 479 0066 013A subs r2, r2, #1 130:Src/squeow_ui.c **** // fine lampi, inizio pausa 480 .loc 1 130 16 view .LVU80 481 0068 9342 cmp r3, r2 482 006a 09DA bge .L35 136:Src/squeow_ui.c **** led_blocco_fase = 0; 483 .loc 1 136 17 is_stmt 1 view .LVU81 136:Src/squeow_ui.c **** led_blocco_fase = 0; 484 .loc 1 136 39 is_stmt 0 view .LVU82 485 006c 0133 adds r3, r3, #1 486 006e 154A ldr r2, .L36+12 487 0070 1370 strb r3, [r2] 137:Src/squeow_ui.c **** } 488 .loc 1 137 17 is_stmt 1 view .LVU83 137:Src/squeow_ui.c **** } 489 .loc 1 137 33 is_stmt 0 view .LVU84 490 0072 114B ldr r3, .L36 491 0074 0022 movs r2, #0 492 0076 1A70 strb r2, [r3] 493 .LVL22: 494 .L28: 139:Src/squeow_ui.c **** } else if (led_blocco_fase == 2 && led_blocco_timer >= SQUEOW_LED_BLOCCO_PAUSA) { 495 .loc 1 139 13 is_stmt 1 view .LVU85 139:Src/squeow_ui.c **** } else if (led_blocco_fase == 2 && led_blocco_timer >= SQUEOW_LED_BLOCCO_PAUSA) { 496 .loc 1 139 30 is_stmt 0 view .LVU86 497 0078 104B ldr r3, .L36+4 498 007a 0022 movs r2, #0 499 007c 1A80 strh r2, [r3] @ movhi 500 007e 19E0 b .L21 501 .LVL23: 502 .L35: 132:Src/squeow_ui.c **** led_blocco_lampi_fatti = 0; 503 .loc 1 132 17 is_stmt 1 view .LVU87 132:Src/squeow_ui.c **** led_blocco_lampi_fatti = 0; 504 .loc 1 132 33 is_stmt 0 view .LVU88 505 0080 0D4B ldr r3, .L36 ARM GAS /tmp/ccrBIh4J.s page 13 506 0082 0222 movs r2, #2 507 0084 1A70 strb r2, [r3] 133:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_RESET); 508 .loc 1 133 17 is_stmt 1 view .LVU89 133:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_RESET); 509 .loc 1 133 40 is_stmt 0 view .LVU90 510 0086 0022 movs r2, #0 511 0088 0E4B ldr r3, .L36+12 512 008a 1A70 strb r2, [r3] 134:Src/squeow_ui.c **** } else { 513 .loc 1 134 17 is_stmt 1 view .LVU91 514 008c 1021 movs r1, #16 515 008e 0C48 ldr r0, .L36+8 516 .LVL24: 134:Src/squeow_ui.c **** } else { 517 .loc 1 134 17 is_stmt 0 view .LVU92 518 0090 FFF7FEFF bl HAL_GPIO_WritePin 519 .LVL25: 520 0094 F0E7 b .L28 521 .LVL26: 522 .L34: 140:Src/squeow_ui.c **** // fine pausa 523 .loc 1 140 61 discriminator 1 view .LVU93 524 0096 094B ldr r3, .L36+4 525 0098 1B88 ldrh r3, [r3] 140:Src/squeow_ui.c **** // fine pausa 526 .loc 1 140 41 discriminator 1 view .LVU94 527 009a 4F2B cmp r3, #79 528 009c C3D9 bls .L29 142:Src/squeow_ui.c **** led_blocco_timer = 0; 529 .loc 1 142 13 is_stmt 1 view .LVU95 142:Src/squeow_ui.c **** led_blocco_timer = 0; 530 .loc 1 142 29 is_stmt 0 view .LVU96 531 009e 0023 movs r3, #0 532 00a0 054A ldr r2, .L36 533 00a2 1370 strb r3, [r2] 143:Src/squeow_ui.c **** } else { 534 .loc 1 143 13 is_stmt 1 view .LVU97 143:Src/squeow_ui.c **** } else { 535 .loc 1 143 30 is_stmt 0 view .LVU98 536 00a4 054A ldr r2, .L36+4 537 00a6 1380 strh r3, [r2] @ movhi 538 00a8 04E0 b .L21 539 .L22: 146:Src/squeow_ui.c **** } 147:Src/squeow_ui.c **** } else { 148:Src/squeow_ui.c **** HAL_GPIO_WritePin(G2_GPIO_Port, G2_Pin, GPIO_PIN_RESET); 540 .loc 1 148 9 is_stmt 1 view .LVU99 541 00aa 0022 movs r2, #0 542 00ac 1021 movs r1, #16 543 00ae 0448 ldr r0, .L36+8 544 .LVL27: 545 .loc 1 148 9 is_stmt 0 view .LVU100 546 00b0 FFF7FEFF bl HAL_GPIO_WritePin 547 .LVL28: 548 .L21: 149:Src/squeow_ui.c **** } ARM GAS /tmp/ccrBIh4J.s page 14 150:Src/squeow_ui.c **** } 549 .loc 1 150 1 view .LVU101 550 00b4 08BD pop {r3, pc} 551 .L37: 552 00b6 00BF .align 2 553 .L36: 554 00b8 00000000 .word led_blocco_fase.4 555 00bc 00000000 .word led_blocco_timer.3 556 00c0 00040048 .word 1207960576 557 00c4 00000000 .word led_blocco_lampi_fatti.2 558 .cfi_endproc 559 .LFE339: 561 .section .text.led_pwm_duty,"ax",%progbits 562 .align 1 563 .global led_pwm_duty 564 .syntax unified 565 .thumb 566 .thumb_func 568 led_pwm_duty: 569 .LVL29: 570 .LFB340: 151:Src/squeow_ui.c **** 152:Src/squeow_ui.c **** void led_pwm_duty(uint8_t duty) { TIM8->CCR3 = duty; } 571 .loc 1 152 33 is_stmt 1 view -0 572 .cfi_startproc 573 @ args = 0, pretend = 0, frame = 0 574 @ frame_needed = 0, uses_anonymous_args = 0 575 @ link register save eliminated. 576 .loc 1 152 35 view .LVU103 577 .loc 1 152 46 is_stmt 0 view .LVU104 578 0000 014B ldr r3, .L39 579 0002 D863 str r0, [r3, #60] 580 .loc 1 152 54 view .LVU105 581 0004 7047 bx lr 582 .L40: 583 0006 00BF .align 2 584 .L39: 585 0008 00340140 .word 1073820672 586 .cfi_endproc 587 .LFE340: 589 .section .text.vu_meter,"ax",%progbits 590 .align 1 591 .global vu_meter 592 .syntax unified 593 .thumb 594 .thumb_func 596 vu_meter: 597 .LVL30: 598 .LFB341: 153:Src/squeow_ui.c **** 154:Src/squeow_ui.c **** uint16_t vu_meter(uint16_t campione) { 599 .loc 1 154 38 is_stmt 1 view -0 600 .cfi_startproc 601 @ args = 0, pretend = 0, frame = 0 602 @ frame_needed = 0, uses_anonymous_args = 0 603 .loc 1 154 38 is_stmt 0 view .LVU107 604 0000 10B5 push {r4, lr} ARM GAS /tmp/ccrBIh4J.s page 15 605 .LCFI10: 606 .cfi_def_cfa_offset 8 607 .cfi_offset 4, -8 608 .cfi_offset 14, -4 155:Src/squeow_ui.c **** #define ZEROD 2047 156:Src/squeow_ui.c **** #define ZEROU 2048 157:Src/squeow_ui.c **** static uint16_t vu_valore_temp, vu_timer_picco; 609 .loc 1 157 5 is_stmt 1 view .LVU108 158:Src/squeow_ui.c **** uint16_t abs_campione; 610 .loc 1 158 5 view .LVU109 159:Src/squeow_ui.c **** // se รจ sopra lo zero analogico, sottrailo, se no inverti 160:Src/squeow_ui.c **** abs_campione = (campione > ZEROD) ? campione - ZEROU : ZEROD - campione; 611 .loc 1 160 5 view .LVU110 612 .loc 1 160 18 is_stmt 0 view .LVU111 613 0002 B0F5006F cmp r0, #2048 614 0006 17D3 bcc .L42 615 .loc 1 160 18 discriminator 1 view .LVU112 616 0008 A0F50064 sub r4, r0, #2048 617 000c A4B2 uxth r4, r4 618 .L43: 619 .LVL31: 161:Src/squeow_ui.c **** 162:Src/squeow_ui.c **** #ifdef SQUEOW_UI_LED 163:Src/squeow_ui.c **** // gestione picco 164:Src/squeow_ui.c **** if (abs_campione > VU_METER_SOGLIA_PICCO) { 620 .loc 1 164 5 is_stmt 1 view .LVU113 621 .loc 1 164 8 is_stmt 0 view .LVU114 622 000e B4F5FF6F cmp r4, #2040 623 0012 16D8 bhi .L50 165:Src/squeow_ui.c **** vu_timer_picco = 0; 166:Src/squeow_ui.c **** HAL_GPIO_WritePin(G4_GPIO_Port, G4_Pin, GPIO_PIN_SET); 167:Src/squeow_ui.c **** } else if (vu_timer_picco >= VU_METER_TEMPO_PICCO) { 624 .loc 1 167 12 is_stmt 1 view .LVU115 625 .loc 1 167 31 is_stmt 0 view .LVU116 626 0014 164B ldr r3, .L52 627 0016 1B88 ldrh r3, [r3] 628 .loc 1 167 15 view .LVU117 629 0018 42F20F72 movw r2, #9999 630 001c 9342 cmp r3, r2 631 001e 19D8 bhi .L51 168:Src/squeow_ui.c **** HAL_GPIO_WritePin(G4_GPIO_Port, G4_Pin, GPIO_PIN_RESET); 169:Src/squeow_ui.c **** vu_timer_picco = 0; 170:Src/squeow_ui.c **** } else { 171:Src/squeow_ui.c **** vu_timer_picco++; 632 .loc 1 171 9 is_stmt 1 view .LVU118 633 .loc 1 171 23 is_stmt 0 view .LVU119 634 0020 0133 adds r3, r3, #1 635 0022 134A ldr r2, .L52 636 0024 1380 strh r3, [r2] @ movhi 637 .LVL32: 638 .L45: 172:Src/squeow_ui.c **** } 173:Src/squeow_ui.c **** #endif 174:Src/squeow_ui.c **** 175:Src/squeow_ui.c **** // vu meter 176:Src/squeow_ui.c **** if (abs_campione >= vu_valore_temp) { 639 .loc 1 176 5 is_stmt 1 view .LVU120 ARM GAS /tmp/ccrBIh4J.s page 16 640 .loc 1 176 22 is_stmt 0 view .LVU121 641 0026 134B ldr r3, .L52+4 642 0028 1B88 ldrh r3, [r3] 643 .loc 1 176 8 view .LVU122 644 002a A342 cmp r3, r4 645 002c 1BD8 bhi .L47 177:Src/squeow_ui.c **** vu_valore_temp = abs_campione; 646 .loc 1 177 9 is_stmt 1 view .LVU123 647 .loc 1 177 24 is_stmt 0 view .LVU124 648 002e 114B ldr r3, .L52+4 649 0030 1C80 strh r4, [r3] @ movhi 650 .L48: 178:Src/squeow_ui.c **** } else { 179:Src/squeow_ui.c **** vu_valore_temp -= VU_METER_RILASCIO; 180:Src/squeow_ui.c **** } 181:Src/squeow_ui.c **** 182:Src/squeow_ui.c **** return vu_valore_temp; 651 .loc 1 182 5 is_stmt 1 view .LVU125 183:Src/squeow_ui.c **** } 652 .loc 1 183 1 is_stmt 0 view .LVU126 653 0032 104B ldr r3, .L52+4 654 0034 1888 ldrh r0, [r3] 655 0036 10BD pop {r4, pc} 656 .LVL33: 657 .L42: 160:Src/squeow_ui.c **** 658 .loc 1 160 18 discriminator 2 view .LVU127 659 0038 C0F5FF64 rsb r4, r0, #2040 660 003c 0734 adds r4, r4, #7 661 003e A4B2 uxth r4, r4 662 0040 E5E7 b .L43 663 .LVL34: 664 .L50: 165:Src/squeow_ui.c **** HAL_GPIO_WritePin(G4_GPIO_Port, G4_Pin, GPIO_PIN_SET); 665 .loc 1 165 9 is_stmt 1 view .LVU128 165:Src/squeow_ui.c **** HAL_GPIO_WritePin(G4_GPIO_Port, G4_Pin, GPIO_PIN_SET); 666 .loc 1 165 24 is_stmt 0 view .LVU129 667 0042 0B4B ldr r3, .L52 668 0044 0022 movs r2, #0 669 0046 1A80 strh r2, [r3] @ movhi 166:Src/squeow_ui.c **** } else if (vu_timer_picco >= VU_METER_TEMPO_PICCO) { 670 .loc 1 166 9 is_stmt 1 view .LVU130 671 0048 0122 movs r2, #1 672 004a 4021 movs r1, #64 673 004c 0A48 ldr r0, .L52+8 674 .LVL35: 166:Src/squeow_ui.c **** } else if (vu_timer_picco >= VU_METER_TEMPO_PICCO) { 675 .loc 1 166 9 is_stmt 0 view .LVU131 676 004e FFF7FEFF bl HAL_GPIO_WritePin 677 .LVL36: 678 0052 E8E7 b .L45 679 .LVL37: 680 .L51: 168:Src/squeow_ui.c **** vu_timer_picco = 0; 681 .loc 1 168 9 is_stmt 1 view .LVU132 682 0054 0022 movs r2, #0 683 0056 4021 movs r1, #64 ARM GAS /tmp/ccrBIh4J.s page 17 684 0058 0748 ldr r0, .L52+8 685 .LVL38: 168:Src/squeow_ui.c **** vu_timer_picco = 0; 686 .loc 1 168 9 is_stmt 0 view .LVU133 687 005a FFF7FEFF bl HAL_GPIO_WritePin 688 .LVL39: 169:Src/squeow_ui.c **** } else { 689 .loc 1 169 9 is_stmt 1 view .LVU134 169:Src/squeow_ui.c **** } else { 690 .loc 1 169 24 is_stmt 0 view .LVU135 691 005e 044B ldr r3, .L52 692 0060 0022 movs r2, #0 693 0062 1A80 strh r2, [r3] @ movhi 694 0064 DFE7 b .L45 695 .L47: 179:Src/squeow_ui.c **** } 696 .loc 1 179 9 is_stmt 1 view .LVU136 179:Src/squeow_ui.c **** } 697 .loc 1 179 24 is_stmt 0 view .LVU137 698 0066 013B subs r3, r3, #1 699 0068 024A ldr r2, .L52+4 700 006a 1380 strh r3, [r2] @ movhi 701 006c E1E7 b .L48 702 .L53: 703 006e 00BF .align 2 704 .L52: 705 0070 00000000 .word vu_timer_picco.1 706 0074 00000000 .word vu_valore_temp.0 707 0078 00040048 .word 1207960576 708 .cfi_endproc 709 .LFE341: 711 .section .text.riscala_valori,"ax",%progbits 712 .align 1 713 .global riscala_valori 714 .syntax unified 715 .thumb 716 .thumb_func 718 riscala_valori: 719 .LVL40: 720 .LFB342: 184:Src/squeow_ui.c **** 185:Src/squeow_ui.c **** uint16_t riscala_valori(uint16_t valore_in, uint16_t valore_in_minimo, uint16_t valore_in_massimo, 721 .loc 1 185 157 is_stmt 1 view -0 722 .cfi_startproc 723 @ args = 4, pretend = 0, frame = 0 724 @ frame_needed = 0, uses_anonymous_args = 0 725 .loc 1 185 157 is_stmt 0 view .LVU139 726 0000 00B5 push {lr} 727 .LCFI11: 728 .cfi_def_cfa_offset 4 729 .cfi_offset 14, -4 186:Src/squeow_ui.c **** uint16_t range_in, range_out, valore_in_limitato; 730 .loc 1 186 5 is_stmt 1 view .LVU140 187:Src/squeow_ui.c **** float scala; 731 .loc 1 187 5 view .LVU141 188:Src/squeow_ui.c **** range_in = valore_in_massimo - valore_in_minimo; 732 .loc 1 188 5 view .LVU142 ARM GAS /tmp/ccrBIh4J.s page 18 733 .loc 1 188 14 is_stmt 0 view .LVU143 734 0002 A2EB010C sub ip, r2, r1 735 0006 1FFA8CFC uxth ip, ip 736 .LVL41: 189:Src/squeow_ui.c **** range_out = valore_out_massimo - valore_out_minimo; 737 .loc 1 189 5 is_stmt 1 view .LVU144 738 .loc 1 189 15 is_stmt 0 view .LVU145 739 000a BDF804E0 ldrh lr, [sp, #4] 740 000e AEEB030E sub lr, lr, r3 741 0012 1FFA8EFE uxth lr, lr 742 .LVL42: 190:Src/squeow_ui.c **** scala = range_in / range_out; 743 .loc 1 190 5 is_stmt 1 view .LVU146 744 .loc 1 190 22 is_stmt 0 view .LVU147 745 0016 BCFBFEFC udiv ip, ip, lr 746 .LVL43: 747 .loc 1 190 11 view .LVU148 748 001a 07EE90CA vmov s15, ip @ int 749 001e B8EEE77A vcvt.f32.s32 s14, s15 750 .LVL44: 191:Src/squeow_ui.c **** valore_in_limitato = (((valore_in) < (valore_in_massimo)) ? (valore_in) : (valore_in_massimo)); 751 .loc 1 191 5 is_stmt 1 view .LVU149 192:Src/squeow_ui.c **** return valore_out_minimo + ((valore_in_limitato - valore_in_minimo) / scala); 752 .loc 1 192 5 view .LVU150 753 .loc 1 192 53 is_stmt 0 view .LVU151 754 0022 8242 cmp r2, r0 755 0024 94BF ite ls 756 0026 C1EB0201 rsbls r1, r1, r2 757 002a C1EB0001 rsbhi r1, r1, r0 758 .LVL45: 759 .loc 1 192 73 view .LVU152 760 002e 07EE901A vmov s15, r1 @ int 761 0032 F8EEE77A vcvt.f32.s32 s15, s15 762 0036 C7EE876A vdiv.f32 s13, s15, s14 763 .loc 1 192 30 view .LVU153 764 003a 07EE903A vmov s15, r3 @ int 765 003e F8EEE77A vcvt.f32.s32 s15, s15 766 0042 77EEA67A vadd.f32 s15, s15, s13 767 0046 FCEEE77A vcvt.u32.f32 s15, s15 193:Src/squeow_ui.c **** } 768 .loc 1 193 1 view .LVU154 769 004a 17EE903A vmov r3, s15 @ int 770 .LVL46: 771 .loc 1 193 1 view .LVU155 772 004e 98B2 uxth r0, r3 773 .LVL47: 774 .loc 1 193 1 view .LVU156 775 0050 5DF804FB ldr pc, [sp], #4 776 .loc 1 193 1 view .LVU157 777 .cfi_endproc 778 .LFE342: 780 .section .rodata.seriow_var_dump.str1.4,"aMS",%progbits,1 781 .align 2 782 .LC10: 783 0000 444D5020 .ascii "DMP V=%u \000" 783 563D2575 783 2000 ARM GAS /tmp/ccrBIh4J.s page 19 784 000a 0000 .align 2 785 .LC11: 786 000c 543D2575 .ascii "T=%u \000" 786 2000 787 0012 0000 .align 2 788 .LC12: 789 0014 443D2575 .ascii "D=%u \000" 789 2000 790 001a 0000 .align 2 791 .LC13: 792 001c 523D2575 .ascii "R=%u \000" 792 2000 793 .section .text.seriow_var_dump,"ax",%progbits 794 .align 1 795 .global seriow_var_dump 796 .syntax unified 797 .thumb 798 .thumb_func 800 seriow_var_dump: 801 .LFB333: 40:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "DMP V=%u ", 802 .loc 1 40 28 is_stmt 1 view -0 803 .cfi_startproc 804 @ args = 0, pretend = 0, frame = 0 805 @ frame_needed = 0, uses_anonymous_args = 0 806 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 807 .LCFI12: 808 .cfi_def_cfa_offset 24 809 .cfi_offset 4, -24 810 .cfi_offset 5, -20 811 .cfi_offset 6, -16 812 .cfi_offset 7, -12 813 .cfi_offset 8, -8 814 .cfi_offset 14, -4 815 0004 82B0 sub sp, sp, #8 816 .LCFI13: 817 .cfi_def_cfa_offset 32 41:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 818 .loc 1 41 5 view .LVU159 41:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 819 .loc 1 41 101 is_stmt 0 view .LVU160 820 0006 6427 movs r7, #100 821 0008 0097 str r7, [sp] 822 000a 0023 movs r3, #0 823 000c 4FF40062 mov r2, #2048 824 0010 1946 mov r1, r3 825 0012 2C48 ldr r0, .L58 826 0014 0088 ldrh r0, [r0] 827 0016 FFF7FEFF bl riscala_valori 828 .LVL48: 829 001a 0346 mov r3, r0 41:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 830 .loc 1 41 27 view .LVU161 831 001c 2A4C ldr r4, .L58+4 832 001e 2078 ldrb r0, [r4] @ zero_extendqisi2 833 0020 2A4E ldr r6, .L58+8 41:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE ARM GAS /tmp/ccrBIh4J.s page 20 834 .loc 1 41 27 discriminator 1 view .LVU162 835 0022 2B4A ldr r2, .L58+12 836 0024 4FF48071 mov r1, #256 837 0028 3044 add r0, r0, r6 838 002a FFF7FEFF bl snprintf 839 .LVL49: 41:Src/squeow_ui.c **** #ifdef SQUEOW_SONDA_CORRENTE 840 .loc 1 41 24 discriminator 2 view .LVU163 841 002e 2578 ldrb r5, [r4] @ zero_extendqisi2 842 0030 0544 add r5, r5, r0 843 0032 EDB2 uxtb r5, r5 844 0034 2570 strb r5, [r4] 46:Src/squeow_ui.c **** #endif 845 .loc 1 46 5 is_stmt 1 view .LVU164 46:Src/squeow_ui.c **** #endif 846 .loc 1 46 123 is_stmt 0 view .LVU165 847 0036 DFF8AC80 ldr r8, .L58+32 46:Src/squeow_ui.c **** #endif 848 .loc 1 46 97 view .LVU166 849 003a 0097 str r7, [sp] 850 003c 0023 movs r3, #0 851 003e 40F6FF72 movw r2, #4095 852 0042 1946 mov r1, r3 853 0044 B8F80400 ldrh r0, [r8, #4] 854 0048 FFF7FEFF bl riscala_valori 855 .LVL50: 856 004c 0346 mov r3, r0 46:Src/squeow_ui.c **** #endif 857 .loc 1 46 27 discriminator 1 view .LVU167 858 004e 214A ldr r2, .L58+16 859 0050 4FF48071 mov r1, #256 860 0054 7019 adds r0, r6, r5 861 0056 FFF7FEFF bl snprintf 862 .LVL51: 46:Src/squeow_ui.c **** #endif 863 .loc 1 46 24 discriminator 2 view .LVU168 864 005a 2578 ldrb r5, [r4] @ zero_extendqisi2 865 005c 0544 add r5, r5, r0 866 005e EDB2 uxtb r5, r5 867 0060 2570 strb r5, [r4] 49:Src/squeow_ui.c **** #endif 868 .loc 1 49 5 is_stmt 1 view .LVU169 49:Src/squeow_ui.c **** #endif 869 .loc 1 49 97 is_stmt 0 view .LVU170 870 0062 0097 str r7, [sp] 871 0064 0023 movs r3, #0 872 0066 40F6FF72 movw r2, #4095 873 006a 1946 mov r1, r3 874 006c B8F80800 ldrh r0, [r8, #8] 875 0070 FFF7FEFF bl riscala_valori 876 .LVL52: 877 0074 0346 mov r3, r0 49:Src/squeow_ui.c **** #endif 878 .loc 1 49 27 discriminator 1 view .LVU171 879 0076 184A ldr r2, .L58+20 880 0078 4FF48071 mov r1, #256 881 007c 7019 adds r0, r6, r5 ARM GAS /tmp/ccrBIh4J.s page 21 882 007e FFF7FEFF bl snprintf 883 .LVL53: 49:Src/squeow_ui.c **** #endif 884 .loc 1 49 24 discriminator 2 view .LVU172 885 0082 2578 ldrb r5, [r4] @ zero_extendqisi2 886 0084 0544 add r5, r5, r0 887 0086 EDB2 uxtb r5, r5 888 0088 2570 strb r5, [r4] 52:Src/squeow_ui.c **** #endif 889 .loc 1 52 5 is_stmt 1 view .LVU173 52:Src/squeow_ui.c **** #endif 890 .loc 1 52 97 is_stmt 0 view .LVU174 891 008a 0097 str r7, [sp] 892 008c 0023 movs r3, #0 893 008e 40F6FF72 movw r2, #4095 894 0092 1946 mov r1, r3 895 0094 B8F80C00 ldrh r0, [r8, #12] 896 0098 FFF7FEFF bl riscala_valori 897 .LVL54: 898 009c 0346 mov r3, r0 52:Src/squeow_ui.c **** #endif 899 .loc 1 52 27 discriminator 1 view .LVU175 900 009e 0F4A ldr r2, .L58+24 901 00a0 4FF48071 mov r1, #256 902 00a4 7019 adds r0, r6, r5 903 00a6 FFF7FEFF bl snprintf 904 .LVL55: 52:Src/squeow_ui.c **** #endif 905 .loc 1 52 24 discriminator 2 view .LVU176 906 00aa 2378 ldrb r3, [r4] @ zero_extendqisi2 907 00ac 1844 add r0, r0, r3 908 00ae C0B2 uxtb r0, r0 909 00b0 2070 strb r0, [r4] 54:Src/squeow_ui.c **** } 910 .loc 1 54 5 is_stmt 1 view .LVU177 54:Src/squeow_ui.c **** } 911 .loc 1 54 27 is_stmt 0 view .LVU178 912 00b2 0B4B ldr r3, .L58+28 913 00b4 1B88 ldrh r3, [r3] @ unaligned 914 00b6 3352 strh r3, [r6, r0] @ unaligned 54:Src/squeow_ui.c **** } 915 .loc 1 54 24 discriminator 1 view .LVU179 916 00b8 C3B2 uxtb r3, r0 917 00ba 0133 adds r3, r3, #1 918 00bc 2370 strb r3, [r4] 55:Src/squeow_ui.c **** 919 .loc 1 55 1 view .LVU180 920 00be 02B0 add sp, sp, #8 921 .LCFI14: 922 .cfi_def_cfa_offset 24 923 @ sp needed 924 00c0 BDE8F081 pop {r4, r5, r6, r7, r8, pc} 925 .L59: 926 .align 2 927 .L58: 928 00c4 00000000 .word ui_volume 929 00c8 00000000 .word UART_TX_buf_lenght ARM GAS /tmp/ccrBIh4J.s page 22 930 00cc 00000000 .word UART_TX_buf 931 00d0 00000000 .word .LC10 932 00d4 0C000000 .word .LC11 933 00d8 14000000 .word .LC12 934 00dc 1C000000 .word .LC13 935 00e0 2C000000 .word .LC5 936 00e4 00000000 .word adc2_valori 937 .cfi_endproc 938 .LFE333: 940 .section .rodata.tosta_var_bars.str1.4,"aMS",%progbits,1 941 .align 2 942 .LC14: 943 0000 0C1B5B32 .ascii "\014\033[2d\033[0GV:\033[%ub\012\000" 943 641B5B30 943 47563A1B 943 5B257562 943 0A00 944 0012 0000 .align 2 945 .LC15: 946 0014 543A1B5B .ascii "T:\033[%ub\012\000" 946 2575620A 946 00 947 001d 000000 .align 2 948 .LC16: 949 0020 443A1B5B .ascii "D:\033[%ub\012\000" 949 2575620A 949 00 950 0029 000000 .align 2 951 .LC17: 952 002c 523A1B5B .ascii "R:\033[%ub\012\000" 952 2575620A 952 00 953 .section .text.tosta_var_bars,"ax",%progbits 954 .align 1 955 .global tosta_var_bars 956 .syntax unified 957 .thumb 958 .thumb_func 960 tosta_var_bars: 961 .LFB337: 88:Src/squeow_ui.c **** UART_TX_buf_lenght += snprintf(UART_TX_buf + UART_TX_buf_lenght, UART_TX_BUF_SIZE, "\f\e[2d\e[0 962 .loc 1 88 27 is_stmt 1 view -0 963 .cfi_startproc 964 @ args = 0, pretend = 0, frame = 0 965 @ frame_needed = 0, uses_anonymous_args = 0 966 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 967 .LCFI15: 968 .cfi_def_cfa_offset 24 969 .cfi_offset 4, -24 970 .cfi_offset 5, -20 971 .cfi_offset 6, -16 972 .cfi_offset 7, -12 973 .cfi_offset 8, -8 974 .cfi_offset 14, -4 975 0004 82B0 sub sp, sp, #8 976 .LCFI16: 977 .cfi_def_cfa_offset 32 ARM GAS /tmp/ccrBIh4J.s page 23 89:Src/squeow_ui.c **** 978 .loc 1 89 5 view .LVU182 89:Src/squeow_ui.c **** 979 .loc 1 89 27 is_stmt 0 view .LVU183 980 0006 284C ldr r4, .L62 981 0008 2078 ldrb r0, [r4] @ zero_extendqisi2 982 000a 284E ldr r6, .L62+4 983 000c 284B ldr r3, .L62+8 984 000e 1B88 ldrh r3, [r3] 985 0010 284A ldr r2, .L62+12 986 0012 4FF48071 mov r1, #256 987 0016 3044 add r0, r0, r6 988 0018 FFF7FEFF bl snprintf 989 .LVL56: 89:Src/squeow_ui.c **** 990 .loc 1 89 24 discriminator 1 view .LVU184 991 001c 2578 ldrb r5, [r4] @ zero_extendqisi2 992 001e 0544 add r5, r5, r0 993 0020 EDB2 uxtb r5, r5 994 0022 2570 strb r5, [r4] 95:Src/squeow_ui.c **** #endif 995 .loc 1 95 5 is_stmt 1 view .LVU185 95:Src/squeow_ui.c **** #endif 996 .loc 1 95 128 is_stmt 0 view .LVU186 997 0024 244F ldr r7, .L62+16 95:Src/squeow_ui.c **** #endif 998 .loc 1 95 102 view .LVU187 999 0026 4FF03208 mov r8, #50 1000 002a CDF80080 str r8, [sp] 1001 002e 0023 movs r3, #0 1002 0030 40F6FF72 movw r2, #4095 1003 0034 1946 mov r1, r3 1004 0036 B888 ldrh r0, [r7, #4] 1005 0038 FFF7FEFF bl riscala_valori 1006 .LVL57: 1007 003c 0346 mov r3, r0 95:Src/squeow_ui.c **** #endif 1008 .loc 1 95 27 discriminator 1 view .LVU188 1009 003e 1F4A ldr r2, .L62+20 1010 0040 4FF48071 mov r1, #256 1011 0044 7019 adds r0, r6, r5 1012 0046 FFF7FEFF bl snprintf 1013 .LVL58: 95:Src/squeow_ui.c **** #endif 1014 .loc 1 95 24 discriminator 2 view .LVU189 1015 004a 2578 ldrb r5, [r4] @ zero_extendqisi2 1016 004c 0544 add r5, r5, r0 1017 004e EDB2 uxtb r5, r5 1018 0050 2570 strb r5, [r4] 98:Src/squeow_ui.c **** #endif 1019 .loc 1 98 5 is_stmt 1 view .LVU190 98:Src/squeow_ui.c **** #endif 1020 .loc 1 98 102 is_stmt 0 view .LVU191 1021 0052 CDF80080 str r8, [sp] 1022 0056 0023 movs r3, #0 1023 0058 40F6FF72 movw r2, #4095 1024 005c 1946 mov r1, r3 ARM GAS /tmp/ccrBIh4J.s page 24 1025 005e 3889 ldrh r0, [r7, #8] 1026 0060 FFF7FEFF bl riscala_valori 1027 .LVL59: 1028 0064 0346 mov r3, r0 98:Src/squeow_ui.c **** #endif 1029 .loc 1 98 27 discriminator 1 view .LVU192 1030 0066 164A ldr r2, .L62+24 1031 0068 4FF48071 mov r1, #256 1032 006c 7019 adds r0, r6, r5 1033 006e FFF7FEFF bl snprintf 1034 .LVL60: 98:Src/squeow_ui.c **** #endif 1035 .loc 1 98 24 discriminator 2 view .LVU193 1036 0072 2578 ldrb r5, [r4] @ zero_extendqisi2 1037 0074 0544 add r5, r5, r0 1038 0076 EDB2 uxtb r5, r5 1039 0078 2570 strb r5, [r4] 101:Src/squeow_ui.c **** #endif 1040 .loc 1 101 5 is_stmt 1 view .LVU194 101:Src/squeow_ui.c **** #endif 1041 .loc 1 101 102 is_stmt 0 view .LVU195 1042 007a CDF80080 str r8, [sp] 1043 007e 0023 movs r3, #0 1044 0080 40F6FF72 movw r2, #4095 1045 0084 1946 mov r1, r3 1046 0086 B889 ldrh r0, [r7, #12] 1047 0088 FFF7FEFF bl riscala_valori 1048 .LVL61: 1049 008c 0346 mov r3, r0 101:Src/squeow_ui.c **** #endif 1050 .loc 1 101 27 discriminator 1 view .LVU196 1051 008e 0D4A ldr r2, .L62+28 1052 0090 4FF48071 mov r1, #256 1053 0094 7019 adds r0, r6, r5 1054 0096 FFF7FEFF bl snprintf 1055 .LVL62: 101:Src/squeow_ui.c **** #endif 1056 .loc 1 101 24 discriminator 2 view .LVU197 1057 009a 2378 ldrb r3, [r4] @ zero_extendqisi2 1058 009c 0344 add r3, r3, r0 1059 009e 2370 strb r3, [r4] 103:Src/squeow_ui.c **** 1060 .loc 1 103 1 view .LVU198 1061 00a0 02B0 add sp, sp, #8 1062 .LCFI17: 1063 .cfi_def_cfa_offset 24 1064 @ sp needed 1065 00a2 BDE8F081 pop {r4, r5, r6, r7, r8, pc} 1066 .L63: 1067 00a6 00BF .align 2 1068 .L62: 1069 00a8 00000000 .word UART_TX_buf_lenght 1070 00ac 00000000 .word UART_TX_buf 1071 00b0 00000000 .word ui_volume 1072 00b4 00000000 .word .LC14 1073 00b8 00000000 .word adc2_valori 1074 00bc 14000000 .word .LC15 ARM GAS /tmp/ccrBIh4J.s page 25 1075 00c0 20000000 .word .LC16 1076 00c4 2C000000 .word .LC17 1077 .cfi_endproc 1078 .LFE337: 1080 .section .bss.vu_valore_temp.0,"aw",%nobits 1081 .align 1 1084 vu_valore_temp.0: 1085 0000 0000 .space 2 1086 .section .bss.vu_timer_picco.1,"aw",%nobits 1087 .align 1 1090 vu_timer_picco.1: 1091 0000 0000 .space 2 1092 .section .bss.led_blocco_lampi_fatti.2,"aw",%nobits 1095 led_blocco_lampi_fatti.2: 1096 0000 00 .space 1 1097 .section .bss.led_blocco_timer.3,"aw",%nobits 1098 .align 1 1101 led_blocco_timer.3: 1102 0000 0000 .space 2 1103 .section .bss.led_blocco_fase.4,"aw",%nobits 1106 led_blocco_fase.4: 1107 0000 00 .space 1 1108 .global uart_sent 1109 .section .bss.uart_sent,"aw",%nobits 1112 uart_sent: 1113 0000 00 .space 1 1114 .global ui_volume 1115 .section .bss.ui_volume,"aw",%nobits 1116 .align 1 1119 ui_volume: 1120 0000 0000 .space 2 1121 .text 1122 .Letext0: 1123 .file 2 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/mach 1124 .file 3 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/sys/ 1125 .file 4 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h" 1126 .file 5 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h" 1127 .file 6 "Inc/squeow.h" 1128 .file 7 "Inc/squeow_ui.h" 1129 .file 8 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/stdi ARM GAS /tmp/ccrBIh4J.s page 26 DEFINED SYMBOLS *ABS*:00000000 squeow_ui.c /tmp/ccrBIh4J.s:21 .rodata.seriow_stab_dump.str1.4:00000000 $d /tmp/ccrBIh4J.s:40 .text.seriow_stab_dump:00000000 $t /tmp/ccrBIh4J.s:46 .text.seriow_stab_dump:00000000 seriow_stab_dump /tmp/ccrBIh4J.s:142 .text.seriow_stab_dump:00000090 $d /tmp/ccrBIh4J.s:155 .rodata.seriow_log.str1.4:00000000 $d /tmp/ccrBIh4J.s:159 .text.seriow_log:00000000 $t /tmp/ccrBIh4J.s:165 .text.seriow_log:00000000 seriow_log /tmp/ccrBIh4J.s:208 .text.seriow_log:00000024 $d /tmp/ccrBIh4J.s:215 .rodata.squeow_ui_init.str1.4:00000000 $d /tmp/ccrBIh4J.s:219 .text.squeow_ui_init:00000000 $t /tmp/ccrBIh4J.s:225 .text.squeow_ui_init:00000000 squeow_ui_init /tmp/ccrBIh4J.s:246 .text.squeow_ui_init:0000000c $d /tmp/ccrBIh4J.s:251 .rodata.tosta_freq.str1.4:00000000 $d /tmp/ccrBIh4J.s:255 .text.tosta_freq:00000000 $t /tmp/ccrBIh4J.s:261 .text.tosta_freq:00000000 tosta_freq /tmp/ccrBIh4J.s:295 .text.tosta_freq:00000020 $d /tmp/ccrBIh4J.s:303 .rodata.tosta_log.str1.4:00000000 $d /tmp/ccrBIh4J.s:307 .text.tosta_log:00000000 $t /tmp/ccrBIh4J.s:313 .text.tosta_log:00000000 tosta_log /tmp/ccrBIh4J.s:358 .text.tosta_log:00000028 $d /tmp/ccrBIh4J.s:365 .text.led_blocco:00000000 $t /tmp/ccrBIh4J.s:371 .text.led_blocco:00000000 led_blocco /tmp/ccrBIh4J.s:554 .text.led_blocco:000000b8 $d /tmp/ccrBIh4J.s:1106 .bss.led_blocco_fase.4:00000000 led_blocco_fase.4 /tmp/ccrBIh4J.s:1101 .bss.led_blocco_timer.3:00000000 led_blocco_timer.3 /tmp/ccrBIh4J.s:1095 .bss.led_blocco_lampi_fatti.2:00000000 led_blocco_lampi_fatti.2 /tmp/ccrBIh4J.s:562 .text.led_pwm_duty:00000000 $t /tmp/ccrBIh4J.s:568 .text.led_pwm_duty:00000000 led_pwm_duty /tmp/ccrBIh4J.s:585 .text.led_pwm_duty:00000008 $d /tmp/ccrBIh4J.s:590 .text.vu_meter:00000000 $t /tmp/ccrBIh4J.s:596 .text.vu_meter:00000000 vu_meter /tmp/ccrBIh4J.s:705 .text.vu_meter:00000070 $d /tmp/ccrBIh4J.s:1090 .bss.vu_timer_picco.1:00000000 vu_timer_picco.1 /tmp/ccrBIh4J.s:1084 .bss.vu_valore_temp.0:00000000 vu_valore_temp.0 /tmp/ccrBIh4J.s:712 .text.riscala_valori:00000000 $t /tmp/ccrBIh4J.s:718 .text.riscala_valori:00000000 riscala_valori /tmp/ccrBIh4J.s:781 .rodata.seriow_var_dump.str1.4:00000000 $d /tmp/ccrBIh4J.s:794 .text.seriow_var_dump:00000000 $t /tmp/ccrBIh4J.s:800 .text.seriow_var_dump:00000000 seriow_var_dump /tmp/ccrBIh4J.s:928 .text.seriow_var_dump:000000c4 $d /tmp/ccrBIh4J.s:1119 .bss.ui_volume:00000000 ui_volume /tmp/ccrBIh4J.s:941 .rodata.tosta_var_bars.str1.4:00000000 $d /tmp/ccrBIh4J.s:954 .text.tosta_var_bars:00000000 $t /tmp/ccrBIh4J.s:960 .text.tosta_var_bars:00000000 tosta_var_bars /tmp/ccrBIh4J.s:1069 .text.tosta_var_bars:000000a8 $d /tmp/ccrBIh4J.s:1081 .bss.vu_valore_temp.0:00000000 $d /tmp/ccrBIh4J.s:1087 .bss.vu_timer_picco.1:00000000 $d /tmp/ccrBIh4J.s:1096 .bss.led_blocco_lampi_fatti.2:00000000 $d /tmp/ccrBIh4J.s:1098 .bss.led_blocco_timer.3:00000000 $d /tmp/ccrBIh4J.s:1107 .bss.led_blocco_fase.4:00000000 $d /tmp/ccrBIh4J.s:1112 .bss.uart_sent:00000000 uart_sent /tmp/ccrBIh4J.s:1113 .bss.uart_sent:00000000 $d /tmp/ccrBIh4J.s:1116 .bss.ui_volume:00000000 $d UNDEFINED SYMBOLS ARM GAS /tmp/ccrBIh4J.s page 27 snprintf UART_TX_buf_lenght UART_TX_buf freq HAL_GPIO_WritePin adc2_valori