Files
squeow/squeow_sw/build/squeow.lst
2025-06-28 00:58:29 +02:00

1248 lines
50 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ARM GAS /tmp/ccmy4jhy.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.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Src/squeow.c"
20 .section .text.serial_write,"ax",%progbits
21 .align 1
22 .global serial_write
23 .syntax unified
24 .thumb
25 .thumb_func
27 serial_write:
28 .LVL0:
29 .LFB332:
1:Src/squeow.c **** #include <main.h>
2:Src/squeow.c **** #include <math.h>
3:Src/squeow.c **** #include <stdio.h>
4:Src/squeow.c **** #include <stm32g4xx_hal_conf.h>
5:Src/squeow.c ****
6:Src/squeow.c **** #include "si5351.h"
7:Src/squeow.c **** #include "squeow.h"
8:Src/squeow.c **** #include "squeow_ui.h"
9:Src/squeow.c ****
10:Src/squeow.c **** /* SQUEOW
11:Src/squeow.c ****
12:Src/squeow.c **** TIM2 PWM 168000000/4096 = 41015,625 Hz
13:Src/squeow.c **** TIM3 sys_tick 168000000/(16800×100) 100hz
14:Src/squeow.c ****
15:Src/squeow.c **** risoluzione PWM 4096 (12bit)
16:Src/squeow.c ****
17:Src/squeow.c **** ADC1 agganciato a TIM2, valore passato attraverso TIM2_IRQHandler a TIM2->CCR1
18:Src/squeow.c **** ADC2 lanciato da software, quando completo adc2_done viene settato in HAL_ADC_ConvCpltCallback
19:Src/squeow.c ****
20:Src/squeow.c **** */
21:Src/squeow.c ****
22:Src/squeow.c **** extern I2C_HandleTypeDef hi2c1;
23:Src/squeow.c ****
24:Src/squeow.c **** // SYS
25:Src/squeow.c **** volatile uint8_t sys_tick, sys_tick_prescale;
26:Src/squeow.c ****
27:Src/squeow.c **** // UART
28:Src/squeow.c **** uint8_t UART_RX_buf[UART_RX_BUF_SIZE];
29:Src/squeow.c ****
ARM GAS /tmp/ccmy4jhy.s page 2
30:Src/squeow.c **** uint8_t UART_TX_buf[UART_TX_BUF_SIZE];
31:Src/squeow.c **** uint8_t UART_TX_buf_lenght;
32:Src/squeow.c ****
33:Src/squeow.c **** // SYNTH
34:Src/squeow.c **** uint32_t freq;
35:Src/squeow.c ****
36:Src/squeow.c **** // ADC2 (16 o 32?) per usare buffer da 32 settare WORD nel canale DMA
37:Src/squeow.c **** uint32_t adc2_valori[4];
38:Src/squeow.c **** uint8_t adc2_done, blocco, blocco_fatto, codice_allarme;
39:Src/squeow.c ****
40:Src/squeow.c ****
41:Src/squeow.c **** // VU
42:Src/squeow.c **** uint8_t analog_wd_status;
43:Src/squeow.c ****
44:Src/squeow.c **** // ###################################
45:Src/squeow.c ****
46:Src/squeow.c **** int serial_write(char *ptr, size_t len) {
30 .loc 1 46 41 view -0
31 .cfi_startproc
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
34 .loc 1 46 41 is_stmt 0 view .LVU1
35 0000 10B5 push {r4, lr}
36 .LCFI0:
37 .cfi_def_cfa_offset 8
38 .cfi_offset 4, -8
39 .cfi_offset 14, -4
40 0002 0C46 mov r4, r1
47:Src/squeow.c **** // todo sia dma che it corrompono (vedi sotto, static)
48:Src/squeow.c **** HAL_UART_Transmit_DMA(&huart1, ptr, len);
41 .loc 1 48 6 is_stmt 1 view .LVU2
42 0004 8AB2 uxth r2, r1
43 0006 0146 mov r1, r0
44 .LVL1:
45 .loc 1 48 6 is_stmt 0 view .LVU3
46 0008 0348 ldr r0, .L3
47 .LVL2:
48 .loc 1 48 6 view .LVU4
49 000a FFF7FEFF bl HAL_UART_Transmit_DMA
50 .LVL3:
49:Src/squeow.c **** // HAL_UART_Transmit_IT(&huart1, ptr, len);
50:Src/squeow.c **** // HAL_UART_Transmit(&huart1, ptr, len, 1000);
51:Src/squeow.c **** // uart_sent = 0;
52:Src/squeow.c **** UART_TX_buf_lenght = 0;
51 .loc 1 52 2 is_stmt 1 view .LVU5
52 .loc 1 52 21 is_stmt 0 view .LVU6
53 000e 034B ldr r3, .L3+4
54 0010 0022 movs r2, #0
55 0012 1A70 strb r2, [r3]
53:Src/squeow.c **** return len;
56 .loc 1 53 5 is_stmt 1 view .LVU7
54:Src/squeow.c **** }
57 .loc 1 54 1 is_stmt 0 view .LVU8
58 0014 2046 mov r0, r4
59 0016 10BD pop {r4, pc}
60 .LVL4:
61 .L4:
ARM GAS /tmp/ccmy4jhy.s page 3
62 .loc 1 54 1 view .LVU9
63 .align 2
64 .L3:
65 0018 00000000 .word huart1
66 001c 00000000 .word UART_TX_buf_lenght
67 .cfi_endproc
68 .LFE332:
70 .section .text.squeow_init,"ax",%progbits
71 .align 1
72 .global squeow_init
73 .syntax unified
74 .thumb
75 .thumb_func
77 squeow_init:
78 .LFB333:
55:Src/squeow.c ****
56:Src/squeow.c **** void squeow_init(void) {
79 .loc 1 56 24 is_stmt 1 view -0
80 .cfi_startproc
81 @ args = 0, pretend = 0, frame = 0
82 @ frame_needed = 0, uses_anonymous_args = 0
83 @ link register save eliminated.
57:Src/squeow.c **** freq = DEFAULT_SYNTH_FREQUENCY;
84 .loc 1 57 5 view .LVU11
85 .loc 1 57 10 is_stmt 0 view .LVU12
86 0000 064B ldr r3, .L6
87 0002 074A ldr r2, .L6+4
88 0004 1A60 str r2, [r3]
58:Src/squeow.c **** blocco = 0;
89 .loc 1 58 5 is_stmt 1 view .LVU13
90 .loc 1 58 12 is_stmt 0 view .LVU14
91 0006 0023 movs r3, #0
92 0008 064A ldr r2, .L6+8
93 000a 1370 strb r3, [r2]
59:Src/squeow.c **** adc2_valori[0] = 0;
94 .loc 1 59 5 is_stmt 1 view .LVU15
95 .loc 1 59 20 is_stmt 0 view .LVU16
96 000c 064A ldr r2, .L6+12
97 000e 1360 str r3, [r2]
60:Src/squeow.c **** adc2_valori[1] = 0;
98 .loc 1 60 5 is_stmt 1 view .LVU17
99 .loc 1 60 20 is_stmt 0 view .LVU18
100 0010 5360 str r3, [r2, #4]
61:Src/squeow.c **** adc2_valori[2] = 0;
101 .loc 1 61 5 is_stmt 1 view .LVU19
102 .loc 1 61 20 is_stmt 0 view .LVU20
103 0012 9360 str r3, [r2, #8]
62:Src/squeow.c **** adc2_valori[3] = 0;
104 .loc 1 62 5 is_stmt 1 view .LVU21
105 .loc 1 62 20 is_stmt 0 view .LVU22
106 0014 D360 str r3, [r2, #12]
63:Src/squeow.c **** codice_allarme = 0;
107 .loc 1 63 5 is_stmt 1 view .LVU23
108 .loc 1 63 20 is_stmt 0 view .LVU24
109 0016 054A ldr r2, .L6+16
110 0018 1370 strb r3, [r2]
64:Src/squeow.c **** }
ARM GAS /tmp/ccmy4jhy.s page 4
111 .loc 1 64 1 view .LVU25
112 001a 7047 bx lr
113 .L7:
114 .align 2
115 .L6:
116 001c 00000000 .word freq
117 0020 98BC1400 .word 1359000
118 0024 00000000 .word blocco
119 0028 00000000 .word adc2_valori
120 002c 00000000 .word codice_allarme
121 .cfi_endproc
122 .LFE333:
124 .section .text.sat_sub,"ax",%progbits
125 .align 1
126 .global sat_sub
127 .syntax unified
128 .thumb
129 .thumb_func
131 sat_sub:
132 .LVL5:
133 .LFB334:
65:Src/squeow.c ****
66:Src/squeow.c **** uint32_t sat_sub(uint16_t x, uint16_t y) {
134 .loc 1 66 42 is_stmt 1 view -0
135 .cfi_startproc
136 @ args = 0, pretend = 0, frame = 0
137 @ frame_needed = 0, uses_anonymous_args = 0
138 @ link register save eliminated.
67:Src/squeow.c **** uint16_t res = x - y;
139 .loc 1 67 5 view .LVU27
140 .loc 1 67 14 is_stmt 0 view .LVU28
141 0000 411A subs r1, r0, r1
142 .LVL6:
143 .loc 1 67 14 view .LVU29
144 0002 89B2 uxth r1, r1
145 .LVL7:
68:Src/squeow.c **** res &= -(res <= x);
146 .loc 1 68 5 is_stmt 1 view .LVU30
147 .loc 1 68 9 is_stmt 0 view .LVU31
148 0004 8842 cmp r0, r1
149 0006 4FF0FF30 mov r0, #-1
150 .LVL8:
151 .loc 1 68 9 view .LVU32
152 000a 38BF it cc
153 000c 0020 movcc r0, #0
154 .LVL9:
69:Src/squeow.c **** return res;
155 .loc 1 69 5 is_stmt 1 view .LVU33
70:Src/squeow.c **** }
156 .loc 1 70 1 is_stmt 0 view .LVU34
157 000e 0840 ands r0, r0, r1
158 .LVL10:
159 .loc 1 70 1 view .LVU35
160 0010 7047 bx lr
161 .cfi_endproc
162 .LFE334:
164 .section .text.ringbuf_increment,"ax",%progbits
ARM GAS /tmp/ccmy4jhy.s page 5
165 .align 1
166 .global ringbuf_increment
167 .syntax unified
168 .thumb
169 .thumb_func
171 ringbuf_increment:
172 .LVL11:
173 .LFB335:
71:Src/squeow.c ****
72:Src/squeow.c **** uint32_t ringbuf_increment(uint32_t *index, uint32_t buff_size_mask) {
174 .loc 1 72 70 is_stmt 1 view -0
175 .cfi_startproc
176 @ args = 0, pretend = 0, frame = 0
177 @ frame_needed = 0, uses_anonymous_args = 0
178 @ link register save eliminated.
179 .loc 1 72 70 is_stmt 0 view .LVU37
180 0000 0246 mov r2, r0
73:Src/squeow.c **** (*index)++;
181 .loc 1 73 5 is_stmt 1 view .LVU38
182 .loc 1 73 6 is_stmt 0 view .LVU39
183 0002 0368 ldr r3, [r0]
184 .loc 1 73 13 view .LVU40
185 0004 0133 adds r3, r3, #1
186 0006 0360 str r3, [r0]
74:Src/squeow.c **** *index &= buff_size_mask;
187 .loc 1 74 5 is_stmt 1 view .LVU41
188 .loc 1 74 12 is_stmt 0 view .LVU42
189 0008 03EA0100 and r0, r3, r1
190 .LVL12:
191 .loc 1 74 12 view .LVU43
192 000c 1060 str r0, [r2]
75:Src/squeow.c **** return *index;
193 .loc 1 75 5 is_stmt 1 view .LVU44
76:Src/squeow.c **** }
194 .loc 1 76 1 is_stmt 0 view .LVU45
195 000e 7047 bx lr
196 .cfi_endproc
197 .LFE335:
199 .section .text.adc_rileva_soglie,"ax",%progbits
200 .align 1
201 .global adc_rileva_soglie
202 .syntax unified
203 .thumb
204 .thumb_func
206 adc_rileva_soglie:
207 .LVL13:
208 .LFB336:
77:Src/squeow.c ****
78:Src/squeow.c **** // adc
79:Src/squeow.c ****
80:Src/squeow.c **** void adc_rileva_soglie(uint32_t *adc_valori) {
209 .loc 1 80 46 is_stmt 1 view -0
210 .cfi_startproc
211 @ args = 0, pretend = 0, frame = 0
212 @ frame_needed = 0, uses_anonymous_args = 0
213 @ link register save eliminated.
81:Src/squeow.c **** if (!blocco) {
ARM GAS /tmp/ccmy4jhy.s page 6
214 .loc 1 81 5 view .LVU47
215 .loc 1 81 9 is_stmt 0 view .LVU48
216 0000 114B ldr r3, .L14
217 0002 1B78 ldrb r3, [r3] @ zero_extendqisi2
218 .loc 1 81 8 view .LVU49
219 0004 FBB9 cbnz r3, .L10
82:Src/squeow.c **** #ifdef SQUEOW_SONDA_CORRENTE
83:Src/squeow.c **** if (adc_valori[SQUEOW_ADC_CORRENTE] > SOGLIA_CORRENTE) {
84:Src/squeow.c **** codice_allarme = SQUEOW_CODICE_CORRENTE;
85:Src/squeow.c **** blocco = 1;
86:Src/squeow.c **** }
87:Src/squeow.c **** #endif
88:Src/squeow.c **** #ifdef SQUEOW_SONDA_TEMPERATURA
89:Src/squeow.c **** if (adc_valori[SQUEOW_ADC_TEMPERATURA] > SOGLIA_TEMPERATURA) {
220 .loc 1 89 9 is_stmt 1 view .LVU50
221 .loc 1 89 23 is_stmt 0 view .LVU51
222 0006 4268 ldr r2, [r0, #4]
223 .loc 1 89 12 view .LVU52
224 0008 40F61843 movw r3, #3096
225 000c 9A42 cmp r2, r3
226 000e 04D9 bls .L12
90:Src/squeow.c **** codice_allarme = SQUEOW_CODICE_TEMPERATURA;
227 .loc 1 90 13 is_stmt 1 view .LVU53
228 .loc 1 90 28 is_stmt 0 view .LVU54
229 0010 0123 movs r3, #1
230 0012 0E4A ldr r2, .L14+4
231 0014 1370 strb r3, [r2]
91:Src/squeow.c **** blocco = 1;
232 .loc 1 91 13 is_stmt 1 view .LVU55
233 .loc 1 91 20 is_stmt 0 view .LVU56
234 0016 0C4A ldr r2, .L14
235 0018 1370 strb r3, [r2]
236 .L12:
92:Src/squeow.c **** }
93:Src/squeow.c **** #endif
94:Src/squeow.c **** #ifdef SQUEOW_SONDA_DIRETTA
95:Src/squeow.c **** if (adc_valori[SQUEOW_ADC_DIRETTA] > SOGLIA_DIRETTA) {
237 .loc 1 95 9 is_stmt 1 view .LVU57
238 .loc 1 95 23 is_stmt 0 view .LVU58
239 001a 8268 ldr r2, [r0, #8]
240 .loc 1 95 12 view .LVU59
241 001c 40F61843 movw r3, #3096
242 0020 9A42 cmp r2, r3
243 0022 05D9 bls .L13
96:Src/squeow.c **** codice_allarme = SQUEOW_CODICE_DIRETTA;
244 .loc 1 96 13 is_stmt 1 view .LVU60
245 .loc 1 96 28 is_stmt 0 view .LVU61
246 0024 094B ldr r3, .L14+4
247 0026 0322 movs r2, #3
248 0028 1A70 strb r2, [r3]
97:Src/squeow.c **** blocco = 1;
249 .loc 1 97 13 is_stmt 1 view .LVU62
250 .loc 1 97 20 is_stmt 0 view .LVU63
251 002a 074B ldr r3, .L14
252 002c 0122 movs r2, #1
253 002e 1A70 strb r2, [r3]
254 .L13:
ARM GAS /tmp/ccmy4jhy.s page 7
98:Src/squeow.c **** }
99:Src/squeow.c **** #endif
100:Src/squeow.c **** #ifdef SQUEOW_SONDA_RIFLESSA
101:Src/squeow.c **** if (adc_valori[SQUEOW_ADC_RIFLESSA] > SOGLIA_RIFLESSA) {
255 .loc 1 101 9 is_stmt 1 view .LVU64
256 .loc 1 101 23 is_stmt 0 view .LVU65
257 0030 C268 ldr r2, [r0, #12]
258 .loc 1 101 12 view .LVU66
259 0032 40F61843 movw r3, #3096
260 0036 9A42 cmp r2, r3
261 0038 05D9 bls .L10
102:Src/squeow.c **** codice_allarme = SQUEOW_CODICE_RIFLESSA;
262 .loc 1 102 13 is_stmt 1 view .LVU67
263 .loc 1 102 28 is_stmt 0 view .LVU68
264 003a 044B ldr r3, .L14+4
265 003c 0222 movs r2, #2
266 003e 1A70 strb r2, [r3]
103:Src/squeow.c **** blocco = 1;
267 .loc 1 103 13 is_stmt 1 view .LVU69
268 .loc 1 103 20 is_stmt 0 view .LVU70
269 0040 014B ldr r3, .L14
270 0042 0122 movs r2, #1
271 0044 1A70 strb r2, [r3]
272 .L10:
104:Src/squeow.c **** }
105:Src/squeow.c **** #endif
106:Src/squeow.c **** }
107:Src/squeow.c **** }
273 .loc 1 107 1 view .LVU71
274 0046 7047 bx lr
275 .L15:
276 .align 2
277 .L14:
278 0048 00000000 .word blocco
279 004c 00000000 .word codice_allarme
280 .cfi_endproc
281 .LFE336:
283 .section .rodata.processa_blocco.str1.4,"aMS",%progbits,1
284 .align 2
285 .LC0:
286 0000 4C4F434B .ascii "LOCK!\000"
286 2100
287 0006 0000 .align 2
288 .LC1:
289 0008 554E4C4F .ascii "UNLOCK\000"
289 434B00
290 .section .text.processa_blocco,"ax",%progbits
291 .align 1
292 .global processa_blocco
293 .syntax unified
294 .thumb
295 .thumb_func
297 processa_blocco:
298 .LFB337:
108:Src/squeow.c ****
109:Src/squeow.c **** void processa_blocco(void) {
299 .loc 1 109 28 is_stmt 1 view -0
ARM GAS /tmp/ccmy4jhy.s page 8
300 .cfi_startproc
301 @ args = 0, pretend = 0, frame = 0
302 @ frame_needed = 0, uses_anonymous_args = 0
303 0000 08B5 push {r3, lr}
304 .LCFI1:
305 .cfi_def_cfa_offset 8
306 .cfi_offset 3, -8
307 .cfi_offset 14, -4
110:Src/squeow.c **** static uint8_t vecchio_stato_blocco;
308 .loc 1 110 5 view .LVU73
111:Src/squeow.c **** static uint16_t timer_blocco;
309 .loc 1 111 5 view .LVU74
112:Src/squeow.c ****
113:Src/squeow.c **** // è appena stato impostato blocco
114:Src/squeow.c **** if (blocco && !vecchio_stato_blocco) {
310 .loc 1 114 5 view .LVU75
311 .loc 1 114 9 is_stmt 0 view .LVU76
312 0002 114B ldr r3, .L22
313 0004 1B78 ldrb r3, [r3] @ zero_extendqisi2
314 .loc 1 114 8 view .LVU77
315 0006 13B1 cbz r3, .L17
316 .loc 1 114 19 discriminator 1 view .LVU78
317 0008 104A ldr r2, .L22+4
318 000a 1278 ldrb r2, [r2] @ zero_extendqisi2
319 .loc 1 114 16 discriminator 1 view .LVU79
320 000c 22B1 cbz r2, .L20
321 .L17:
115:Src/squeow.c **** // è appena stato impostato blocco
116:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
117:Src/squeow.c **** seriow_log('E', "LOCK!");
118:Src/squeow.c **** #endif
119:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
120:Src/squeow.c **** tosta_log('E', "LOCK!");
121:Src/squeow.c **** #endif
122:Src/squeow.c **** #ifdef MODALITA_BLOCCO_PERMANENTE
123:Src/squeow.c ****
124:Src/squeow.c **** #endif
125:Src/squeow.c **** #ifdef MODALITA_BLOCCO_BASSA_POTENZA
126:Src/squeow.c ****
127:Src/squeow.c **** #endif
128:Src/squeow.c **** #ifdef MODALITA_BLOCCO_TEMPORANEO
129:Src/squeow.c **** timer_blocco = 0;
130:Src/squeow.c **** #endif
131:Src/squeow.c ****
132:Src/squeow.c **** vecchio_stato_blocco = blocco;
133:Src/squeow.c **** } else if (!blocco && vecchio_stato_blocco) {
322 .loc 1 133 12 is_stmt 1 view .LVU80
323 .loc 1 133 15 is_stmt 0 view .LVU81
324 000e 13B9 cbnz r3, .L16
325 .loc 1 133 24 discriminator 1 view .LVU82
326 0010 0E4B ldr r3, .L22+4
327 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2
328 0014 4BB9 cbnz r3, .L21
329 .L16:
134:Src/squeow.c **** // è appena stato disinserito il blocco
135:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
136:Src/squeow.c **** seriow_log('I', "UNLOCK");
ARM GAS /tmp/ccmy4jhy.s page 9
137:Src/squeow.c **** #endif
138:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
139:Src/squeow.c **** tosta_log('I', "UNLOCK");
140:Src/squeow.c **** #endif
141:Src/squeow.c **** codice_allarme = 0;
142:Src/squeow.c **** led_blocco(codice_allarme);
143:Src/squeow.c **** vecchio_stato_blocco = blocco;
144:Src/squeow.c **** }
145:Src/squeow.c ****
146:Src/squeow.c **** #ifdef MODALITA_BLOCCO_TEMPORANEO
147:Src/squeow.c **** else {
148:Src/squeow.c **** // solo temporaneo
149:Src/squeow.c **** if (timer_blocco > TEMPO_BLOCCO_TEMPORANEO) {
150:Src/squeow.c **** timer_blocco = 0;
151:Src/squeow.c **** blocco = 0;
152:Src/squeow.c **** } else {
153:Src/squeow.c **** timer_blocco++;
154:Src/squeow.c **** }
155:Src/squeow.c **** }
156:Src/squeow.c **** #endif
157:Src/squeow.c **** }
330 .loc 1 157 1 view .LVU83
331 0016 08BD pop {r3, pc}
332 .L20:
117:Src/squeow.c **** #endif
333 .loc 1 117 9 is_stmt 1 view .LVU84
334 0018 0D49 ldr r1, .L22+8
335 001a 4520 movs r0, #69
336 001c FFF7FEFF bl seriow_log
337 .LVL14:
132:Src/squeow.c **** } else if (!blocco && vecchio_stato_blocco) {
338 .loc 1 132 9 view .LVU85
132:Src/squeow.c **** } else if (!blocco && vecchio_stato_blocco) {
339 .loc 1 132 30 is_stmt 0 view .LVU86
340 0020 094B ldr r3, .L22
341 0022 1A78 ldrb r2, [r3] @ zero_extendqisi2
342 0024 094B ldr r3, .L22+4
343 0026 1A70 strb r2, [r3]
344 0028 F5E7 b .L16
345 .L21:
136:Src/squeow.c **** #endif
346 .loc 1 136 9 is_stmt 1 view .LVU87
347 002a 0A49 ldr r1, .L22+12
348 002c 4920 movs r0, #73
349 002e FFF7FEFF bl seriow_log
350 .LVL15:
141:Src/squeow.c **** led_blocco(codice_allarme);
351 .loc 1 141 9 view .LVU88
141:Src/squeow.c **** led_blocco(codice_allarme);
352 .loc 1 141 24 is_stmt 0 view .LVU89
353 0032 0020 movs r0, #0
354 0034 084B ldr r3, .L22+16
355 0036 1870 strb r0, [r3]
142:Src/squeow.c **** vecchio_stato_blocco = blocco;
356 .loc 1 142 9 is_stmt 1 view .LVU90
357 0038 FFF7FEFF bl led_blocco
358 .LVL16:
ARM GAS /tmp/ccmy4jhy.s page 10
143:Src/squeow.c **** }
359 .loc 1 143 9 view .LVU91
143:Src/squeow.c **** }
360 .loc 1 143 30 is_stmt 0 view .LVU92
361 003c 024B ldr r3, .L22
362 003e 1A78 ldrb r2, [r3] @ zero_extendqisi2
363 0040 024B ldr r3, .L22+4
364 0042 1A70 strb r2, [r3]
365 .loc 1 157 1 view .LVU93
366 0044 E7E7 b .L16
367 .L23:
368 0046 00BF .align 2
369 .L22:
370 0048 00000000 .word blocco
371 004c 00000000 .word vecchio_stato_blocco.0
372 0050 00000000 .word .LC0
373 0054 08000000 .word .LC1
374 0058 00000000 .word codice_allarme
375 .cfi_endproc
376 .LFE337:
378 .section .rodata.squeow_synth_init.str1.4,"aMS",%progbits,1
379 .align 2
380 .LC2:
381 0000 73796E74 .ascii "synth init\000"
381 6820696E
381 697400
382 .section .text.squeow_synth_init,"ax",%progbits
383 .align 1
384 .global squeow_synth_init
385 .syntax unified
386 .thumb
387 .thumb_func
389 squeow_synth_init:
390 .LFB338:
158:Src/squeow.c ****
159:Src/squeow.c **** // synth
160:Src/squeow.c ****
161:Src/squeow.c **** void squeow_synth_init(void) {
391 .loc 1 161 30 is_stmt 1 view -0
392 .cfi_startproc
393 @ args = 0, pretend = 0, frame = 0
394 @ frame_needed = 0, uses_anonymous_args = 0
395 0000 08B5 push {r3, lr}
396 .LCFI2:
397 .cfi_def_cfa_offset 8
398 .cfi_offset 3, -8
399 .cfi_offset 14, -4
162:Src/squeow.c **** // occhio che blocca!
163:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
164:Src/squeow.c **** seriow_log('I', "synth init");
400 .loc 1 164 5 view .LVU95
401 0002 0349 ldr r1, .L26
402 0004 4920 movs r0, #73
403 0006 FFF7FEFF bl seriow_log
404 .LVL17:
165:Src/squeow.c **** #endif
166:Src/squeow.c ****
ARM GAS /tmp/ccmy4jhy.s page 11
167:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
168:Src/squeow.c **** tosta_log('I', "synth init");
169:Src/squeow.c **** #endif
170:Src/squeow.c **** si5351_initialize();
405 .loc 1 170 5 view .LVU96
406 000a FFF7FEFF bl si5351_initialize
407 .LVL18:
171:Src/squeow.c **** }
408 .loc 1 171 1 is_stmt 0 view .LVU97
409 000e 08BD pop {r3, pc}
410 .L27:
411 .align 2
412 .L26:
413 0010 00000000 .word .LC2
414 .cfi_endproc
415 .LFE338:
417 .section .text.squeow_synth_set,"ax",%progbits
418 .align 1
419 .global squeow_synth_set
420 .syntax unified
421 .thumb
422 .thumb_func
424 squeow_synth_set:
425 .LVL19:
426 .LFB339:
172:Src/squeow.c ****
173:Src/squeow.c **** void squeow_synth_set(uint32_t freq) {
427 .loc 1 173 38 is_stmt 1 view -0
428 .cfi_startproc
429 @ args = 0, pretend = 0, frame = 0
430 @ frame_needed = 0, uses_anonymous_args = 0
431 .loc 1 173 38 is_stmt 0 view .LVU99
432 0000 10B5 push {r4, lr}
433 .LCFI3:
434 .cfi_def_cfa_offset 8
435 .cfi_offset 4, -8
436 .cfi_offset 14, -4
437 0002 0446 mov r4, r0
174:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
175:Src/squeow.c **** // seriow_log('I', "synth set freq");
176:Src/squeow.c **** #endif
177:Src/squeow.c ****
178:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
179:Src/squeow.c **** // tosta_log('I', "synth set freq");
180:Src/squeow.c **** #endif
181:Src/squeow.c ****
182:Src/squeow.c **** si5351_set_frequency(freq, 0);
438 .loc 1 182 5 is_stmt 1 view .LVU100
439 0004 0021 movs r1, #0
440 0006 FFF7FEFF bl si5351_set_frequency
441 .LVL20:
183:Src/squeow.c **** si5351_set_frequency(freq, 1);
442 .loc 1 183 5 view .LVU101
443 000a 0121 movs r1, #1
444 000c 2046 mov r0, r4
445 000e FFF7FEFF bl si5351_set_frequency
446 .LVL21:
ARM GAS /tmp/ccmy4jhy.s page 12
184:Src/squeow.c **** }
447 .loc 1 184 1 is_stmt 0 view .LVU102
448 0012 10BD pop {r4, pc}
449 .loc 1 184 1 view .LVU103
450 .cfi_endproc
451 .LFE339:
453 .section .rodata.squeow_synth_on.str1.4,"aMS",%progbits,1
454 .align 2
455 .LC3:
456 0000 73796E74 .ascii "synth on\000"
456 68206F6E
456 00
457 .section .text.squeow_synth_on,"ax",%progbits
458 .align 1
459 .global squeow_synth_on
460 .syntax unified
461 .thumb
462 .thumb_func
464 squeow_synth_on:
465 .LFB340:
185:Src/squeow.c ****
186:Src/squeow.c **** void squeow_synth_on(void) {
466 .loc 1 186 28 is_stmt 1 view -0
467 .cfi_startproc
468 @ args = 0, pretend = 0, frame = 0
469 @ frame_needed = 0, uses_anonymous_args = 0
470 0000 08B5 push {r3, lr}
471 .LCFI4:
472 .cfi_def_cfa_offset 8
473 .cfi_offset 3, -8
474 .cfi_offset 14, -4
187:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
188:Src/squeow.c **** seriow_log('I', "synth on");
475 .loc 1 188 5 view .LVU105
476 0002 0549 ldr r1, .L32
477 0004 4920 movs r0, #73
478 0006 FFF7FEFF bl seriow_log
479 .LVL22:
189:Src/squeow.c **** #endif
190:Src/squeow.c ****
191:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
192:Src/squeow.c **** tosta_log('I', "synth on");
193:Src/squeow.c **** #endif
194:Src/squeow.c ****
195:Src/squeow.c **** si5351_on_clk(0);
480 .loc 1 195 5 view .LVU106
481 000a 0020 movs r0, #0
482 000c FFF7FEFF bl si5351_on_clk
483 .LVL23:
196:Src/squeow.c **** si5351_on_clk(1);
484 .loc 1 196 5 view .LVU107
485 0010 0120 movs r0, #1
486 0012 FFF7FEFF bl si5351_on_clk
487 .LVL24:
197:Src/squeow.c **** }
488 .loc 1 197 1 is_stmt 0 view .LVU108
489 0016 08BD pop {r3, pc}
ARM GAS /tmp/ccmy4jhy.s page 13
490 .L33:
491 .align 2
492 .L32:
493 0018 00000000 .word .LC3
494 .cfi_endproc
495 .LFE340:
497 .section .text.squeow_synth_off,"ax",%progbits
498 .align 1
499 .global squeow_synth_off
500 .syntax unified
501 .thumb
502 .thumb_func
504 squeow_synth_off:
505 .LFB341:
198:Src/squeow.c ****
199:Src/squeow.c **** void squeow_synth_off(void) {
506 .loc 1 199 29 is_stmt 1 view -0
507 .cfi_startproc
508 @ args = 0, pretend = 0, frame = 0
509 @ frame_needed = 0, uses_anonymous_args = 0
510 0000 08B5 push {r3, lr}
511 .LCFI5:
512 .cfi_def_cfa_offset 8
513 .cfi_offset 3, -8
514 .cfi_offset 14, -4
200:Src/squeow.c **** #ifdef SQUEOW_UI_SERIOW
201:Src/squeow.c **** #endif
202:Src/squeow.c ****
203:Src/squeow.c **** #ifdef SQUEOW_UI_TOSTA
204:Src/squeow.c **** tosta_log('I', "synth off");
205:Src/squeow.c **** #endif
206:Src/squeow.c ****
207:Src/squeow.c **** si5351_off_clk(0);
515 .loc 1 207 5 view .LVU110
516 0002 0020 movs r0, #0
517 0004 FFF7FEFF bl si5351_off_clk
518 .LVL25:
208:Src/squeow.c **** si5351_off_clk(1);
519 .loc 1 208 5 view .LVU111
520 0008 0120 movs r0, #1
521 000a FFF7FEFF bl si5351_off_clk
522 .LVL26:
209:Src/squeow.c **** }
523 .loc 1 209 1 is_stmt 0 view .LVU112
524 000e 08BD pop {r3, pc}
525 .cfi_endproc
526 .LFE341:
528 .section .text.i2c_write8,"ax",%progbits
529 .align 1
530 .global i2c_write8
531 .syntax unified
532 .thumb
533 .thumb_func
535 i2c_write8:
536 .LVL27:
537 .LFB342:
210:Src/squeow.c ****
ARM GAS /tmp/ccmy4jhy.s page 14
211:Src/squeow.c **** void i2c_write8(I2C_HandleTypeDef handler, uint8_t address, uint8_t reg, uint8_t value) {
538 .loc 1 211 89 is_stmt 1 view -0
539 .cfi_startproc
540 @ args = 96, pretend = 16, frame = 0
541 @ frame_needed = 0, uses_anonymous_args = 0
542 .loc 1 211 89 is_stmt 0 view .LVU114
543 0000 84B0 sub sp, sp, #16
544 .LCFI6:
545 .cfi_def_cfa_offset 16
546 0002 10B5 push {r4, lr}
547 .LCFI7:
548 .cfi_def_cfa_offset 24
549 .cfi_offset 4, -24
550 .cfi_offset 14, -20
551 0004 84B0 sub sp, sp, #16
552 .LCFI8:
553 .cfi_def_cfa_offset 40
554 0006 06AC add r4, sp, #24
555 0008 84E80F00 stm r4, {r0, r1, r2, r3}
556 000c 9DF86C40 ldrb r4, [sp, #108] @ zero_extendqisi2
212:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
557 .loc 1 212 5 is_stmt 1 view .LVU115
558 .LVL28:
559 .L37:
213:Src/squeow.c **** }
560 .loc 1 213 5 view .LVU116
212:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
561 .loc 1 212 78 discriminator 1 view .LVU117
212:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
562 .loc 1 212 12 is_stmt 0 discriminator 1 view .LVU118
563 0010 6423 movs r3, #100
564 0012 0322 movs r2, #3
565 0014 6100 lsls r1, r4, #1
566 0016 06A8 add r0, sp, #24
567 0018 FFF7FEFF bl HAL_I2C_IsDeviceReady
568 .LVL29:
212:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
569 .loc 1 212 78 discriminator 1 view .LVU119
570 001c 0028 cmp r0, #0
571 001e F7D1 bne .L37
214:Src/squeow.c **** HAL_I2C_Mem_Write(&handler, (uint8_t)(address << 1), (uint8_t)reg, I2C_MEMADD_SIZE_8BIT, (uint8
572 .loc 1 214 5 is_stmt 1 view .LVU120
573 .loc 1 214 33 is_stmt 0 view .LVU121
574 0020 6100 lsls r1, r4, #1
575 .loc 1 214 5 view .LVU122
576 0022 6423 movs r3, #100
577 0024 0293 str r3, [sp, #8]
578 0026 0123 movs r3, #1
579 0028 0193 str r3, [sp, #4]
580 002a 1DAA add r2, sp, #116
581 002c 0092 str r2, [sp]
582 002e 9DF87020 ldrb r2, [sp, #112] @ zero_extendqisi2
583 0032 01F0FE01 and r1, r1, #254
584 0036 06A8 add r0, sp, #24
585 0038 FFF7FEFF bl HAL_I2C_Mem_Write
586 .LVL30:
215:Src/squeow.c **** }
ARM GAS /tmp/ccmy4jhy.s page 15
587 .loc 1 215 1 view .LVU123
588 003c 04B0 add sp, sp, #16
589 .LCFI9:
590 .cfi_def_cfa_offset 24
591 @ sp needed
592 003e BDE81040 pop {r4, lr}
593 .LCFI10:
594 .cfi_restore 14
595 .cfi_restore 4
596 .cfi_def_cfa_offset 16
597 0042 04B0 add sp, sp, #16
598 .LCFI11:
599 .cfi_def_cfa_offset 0
600 0044 7047 bx lr
601 .cfi_endproc
602 .LFE342:
604 .section .text.i2c_read8,"ax",%progbits
605 .align 1
606 .global i2c_read8
607 .syntax unified
608 .thumb
609 .thumb_func
611 i2c_read8:
612 .LVL31:
613 .LFB343:
216:Src/squeow.c ****
217:Src/squeow.c **** uint8_t i2c_read8(I2C_HandleTypeDef handler, uint8_t address, uint8_t reg, uint8_t *value) {
614 .loc 1 217 92 is_stmt 1 view -0
615 .cfi_startproc
616 @ args = 96, pretend = 16, frame = 0
617 @ frame_needed = 0, uses_anonymous_args = 0
618 .loc 1 217 92 is_stmt 0 view .LVU125
619 0000 84B0 sub sp, sp, #16
620 .LCFI12:
621 .cfi_def_cfa_offset 16
622 0002 10B5 push {r4, lr}
623 .LCFI13:
624 .cfi_def_cfa_offset 24
625 .cfi_offset 4, -24
626 .cfi_offset 14, -20
627 0004 84B0 sub sp, sp, #16
628 .LCFI14:
629 .cfi_def_cfa_offset 40
630 0006 06AC add r4, sp, #24
631 0008 84E80F00 stm r4, {r0, r1, r2, r3}
632 000c 9DF86C40 ldrb r4, [sp, #108] @ zero_extendqisi2
218:Src/squeow.c **** HAL_StatusTypeDef status = HAL_OK;
633 .loc 1 218 5 is_stmt 1 view .LVU126
634 .LVL32:
219:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
635 .loc 1 219 5 view .LVU127
636 .L40:
220:Src/squeow.c **** }
637 .loc 1 220 5 view .LVU128
219:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
638 .loc 1 219 78 discriminator 1 view .LVU129
219:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
ARM GAS /tmp/ccmy4jhy.s page 16
639 .loc 1 219 12 is_stmt 0 discriminator 1 view .LVU130
640 0010 6423 movs r3, #100
641 0012 0322 movs r2, #3
642 0014 6100 lsls r1, r4, #1
643 0016 06A8 add r0, sp, #24
644 0018 FFF7FEFF bl HAL_I2C_IsDeviceReady
645 .LVL33:
219:Src/squeow.c **** while (HAL_I2C_IsDeviceReady(&handler, (uint16_t)(address << 1), 3, 100) != HAL_OK) {
646 .loc 1 219 78 discriminator 1 view .LVU131
647 001c 0028 cmp r0, #0
648 001e F7D1 bne .L40
221:Src/squeow.c **** status = HAL_I2C_Mem_Read(&handler, // i2c handle
649 .loc 1 221 5 is_stmt 1 view .LVU132
222:Src/squeow.c **** (uint8_t)(address << 1), // i2c address, left aligned
650 .loc 1 222 31 is_stmt 0 view .LVU133
651 0020 6100 lsls r1, r4, #1
221:Src/squeow.c **** status = HAL_I2C_Mem_Read(&handler, // i2c handle
652 .loc 1 221 14 view .LVU134
653 0022 6423 movs r3, #100
654 0024 0293 str r3, [sp, #8]
655 0026 0123 movs r3, #1
656 0028 0193 str r3, [sp, #4]
657 002a 1DAA add r2, sp, #116
658 002c 0092 str r2, [sp]
659 002e 9DF87020 ldrb r2, [sp, #112] @ zero_extendqisi2
660 0032 01F0FE01 and r1, r1, #254
661 0036 06A8 add r0, sp, #24
662 0038 FFF7FEFF bl HAL_I2C_Mem_Read
663 .LVL34:
223:Src/squeow.c **** (uint8_t)reg, // register address
224:Src/squeow.c **** I2C_MEMADD_SIZE_8BIT, // 8bit register addresses
225:Src/squeow.c **** (uint8_t *)(&value), // write returned data to this variable
226:Src/squeow.c **** 1, // how many bytes to expect returned
227:Src/squeow.c **** 100); // timeout
228:Src/squeow.c **** return status;
664 .loc 1 228 5 is_stmt 1 view .LVU135
229:Src/squeow.c **** }
665 .loc 1 229 1 is_stmt 0 view .LVU136
666 003c 04B0 add sp, sp, #16
667 .LCFI15:
668 .cfi_def_cfa_offset 24
669 @ sp needed
670 003e BDE81040 pop {r4, lr}
671 .LCFI16:
672 .cfi_restore 14
673 .cfi_restore 4
674 .cfi_def_cfa_offset 16
675 0042 04B0 add sp, sp, #16
676 .LCFI17:
677 .cfi_def_cfa_offset 0
678 0044 7047 bx lr
679 .cfi_endproc
680 .LFE343:
682 .section .text.si5351_write8,"ax",%progbits
683 .align 1
684 .global si5351_write8
685 .syntax unified
ARM GAS /tmp/ccmy4jhy.s page 17
686 .thumb
687 .thumb_func
689 si5351_write8:
690 .LVL35:
691 .LFB344:
230:Src/squeow.c ****
231:Src/squeow.c **** void si5351_write8(uint8_t reg, uint8_t value) { i2c_write8(hi2c1, SI5351_ADDRESS, reg, value); }
692 .loc 1 231 48 is_stmt 1 view -0
693 .cfi_startproc
694 @ args = 0, pretend = 0, frame = 0
695 @ frame_needed = 0, uses_anonymous_args = 0
696 .loc 1 231 48 is_stmt 0 view .LVU138
697 0000 10B5 push {r4, lr}
698 .LCFI18:
699 .cfi_def_cfa_offset 8
700 .cfi_offset 4, -8
701 .cfi_offset 14, -4
702 0002 94B0 sub sp, sp, #80
703 .LCFI19:
704 .cfi_def_cfa_offset 88
705 .loc 1 231 50 is_stmt 1 view .LVU139
706 0004 084C ldr r4, .L44
707 0006 1391 str r1, [sp, #76]
708 0008 1290 str r0, [sp, #72]
709 000a 6023 movs r3, #96
710 000c 1193 str r3, [sp, #68]
711 000e 4422 movs r2, #68
712 0010 04F11001 add r1, r4, #16
713 .LVL36:
714 .loc 1 231 50 is_stmt 0 view .LVU140
715 0014 6846 mov r0, sp
716 .LVL37:
717 .loc 1 231 50 view .LVU141
718 0016 FFF7FEFF bl memcpy
719 .LVL38:
720 .loc 1 231 50 view .LVU142
721 001a 94E80F00 ldm r4, {r0, r1, r2, r3}
722 001e FFF7FEFF bl i2c_write8
723 .LVL39:
724 .loc 1 231 97 view .LVU143
725 0022 14B0 add sp, sp, #80
726 .LCFI20:
727 .cfi_def_cfa_offset 8
728 @ sp needed
729 0024 10BD pop {r4, pc}
730 .L45:
731 0026 00BF .align 2
732 .L44:
733 0028 00000000 .word hi2c1
734 .cfi_endproc
735 .LFE344:
737 .section .text.si5351_read8,"ax",%progbits
738 .align 1
739 .global si5351_read8
740 .syntax unified
741 .thumb
742 .thumb_func
ARM GAS /tmp/ccmy4jhy.s page 18
744 si5351_read8:
745 .LVL40:
746 .LFB345:
232:Src/squeow.c ****
233:Src/squeow.c **** uint8_t si5351_read8(uint8_t reg, uint8_t *value) { return i2c_read8(hi2c1, SI5351_ADDRESS, reg, va
747 .loc 1 233 51 is_stmt 1 view -0
748 .cfi_startproc
749 @ args = 0, pretend = 0, frame = 0
750 @ frame_needed = 0, uses_anonymous_args = 0
751 .loc 1 233 51 is_stmt 0 view .LVU145
752 0000 10B5 push {r4, lr}
753 .LCFI21:
754 .cfi_def_cfa_offset 8
755 .cfi_offset 4, -8
756 .cfi_offset 14, -4
757 0002 94B0 sub sp, sp, #80
758 .LCFI22:
759 .cfi_def_cfa_offset 88
760 .loc 1 233 53 is_stmt 1 view .LVU146
761 .loc 1 233 60 is_stmt 0 view .LVU147
762 0004 084C ldr r4, .L48
763 0006 1391 str r1, [sp, #76]
764 0008 1290 str r0, [sp, #72]
765 000a 6023 movs r3, #96
766 000c 1193 str r3, [sp, #68]
767 000e 4422 movs r2, #68
768 0010 04F11001 add r1, r4, #16
769 .LVL41:
770 .loc 1 233 60 view .LVU148
771 0014 6846 mov r0, sp
772 .LVL42:
773 .loc 1 233 60 view .LVU149
774 0016 FFF7FEFF bl memcpy
775 .LVL43:
776 .loc 1 233 60 view .LVU150
777 001a 94E80F00 ldm r4, {r0, r1, r2, r3}
778 001e FFF7FEFF bl i2c_read8
779 .LVL44:
780 .loc 1 233 106 view .LVU151
781 0022 14B0 add sp, sp, #80
782 .LCFI23:
783 .cfi_def_cfa_offset 8
784 @ sp needed
785 0024 10BD pop {r4, pc}
786 .L49:
787 0026 00BF .align 2
788 .L48:
789 0028 00000000 .word hi2c1
790 .cfi_endproc
791 .LFE345:
793 .section .bss.vecchio_stato_blocco.0,"aw",%nobits
796 vecchio_stato_blocco.0:
797 0000 00 .space 1
798 .global analog_wd_status
799 .section .bss.analog_wd_status,"aw",%nobits
802 analog_wd_status:
803 0000 00 .space 1
ARM GAS /tmp/ccmy4jhy.s page 19
804 .global codice_allarme
805 .section .bss.codice_allarme,"aw",%nobits
808 codice_allarme:
809 0000 00 .space 1
810 .global blocco_fatto
811 .section .bss.blocco_fatto,"aw",%nobits
814 blocco_fatto:
815 0000 00 .space 1
816 .global blocco
817 .section .bss.blocco,"aw",%nobits
820 blocco:
821 0000 00 .space 1
822 .global adc2_done
823 .section .bss.adc2_done,"aw",%nobits
826 adc2_done:
827 0000 00 .space 1
828 .global adc2_valori
829 .section .bss.adc2_valori,"aw",%nobits
830 .align 2
833 adc2_valori:
834 0000 00000000 .space 16
834 00000000
834 00000000
834 00000000
835 .global freq
836 .section .bss.freq,"aw",%nobits
837 .align 2
840 freq:
841 0000 00000000 .space 4
842 .global UART_TX_buf_lenght
843 .section .bss.UART_TX_buf_lenght,"aw",%nobits
846 UART_TX_buf_lenght:
847 0000 00 .space 1
848 .global UART_TX_buf
849 .section .bss.UART_TX_buf,"aw",%nobits
850 .align 2
853 UART_TX_buf:
854 0000 00000000 .space 256
854 00000000
854 00000000
854 00000000
854 00000000
855 .global UART_RX_buf
856 .section .bss.UART_RX_buf,"aw",%nobits
857 .align 2
860 UART_RX_buf:
861 0000 00000000 .space 256
861 00000000
861 00000000
861 00000000
861 00000000
862 .global sys_tick_prescale
863 .section .bss.sys_tick_prescale,"aw",%nobits
866 sys_tick_prescale:
867 0000 00 .space 1
868 .global sys_tick
869 .section .bss.sys_tick,"aw",%nobits
ARM GAS /tmp/ccmy4jhy.s page 20
872 sys_tick:
873 0000 00 .space 1
874 .text
875 .Letext0:
876 .file 2 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/mach
877 .file 3 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/sys/
878 .file 4 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
879 .file 5 "/home/fra/bin/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-eabi/lib/gcc/arm-none-eabi/14.2
880 .file 6 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
881 .file 7 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h"
882 .file 8 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_i2c.h"
883 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
884 .file 10 "Inc/si5351.h"
885 .file 11 "Inc/squeow.h"
886 .file 12 "Inc/squeow_ui.h"
887 .file 13 "<built-in>"
ARM GAS /tmp/ccmy4jhy.s page 21
DEFINED SYMBOLS
*ABS*:00000000 squeow.c
/tmp/ccmy4jhy.s:21 .text.serial_write:00000000 $t
/tmp/ccmy4jhy.s:27 .text.serial_write:00000000 serial_write
/tmp/ccmy4jhy.s:65 .text.serial_write:00000018 $d
/tmp/ccmy4jhy.s:846 .bss.UART_TX_buf_lenght:00000000 UART_TX_buf_lenght
/tmp/ccmy4jhy.s:71 .text.squeow_init:00000000 $t
/tmp/ccmy4jhy.s:77 .text.squeow_init:00000000 squeow_init
/tmp/ccmy4jhy.s:116 .text.squeow_init:0000001c $d
/tmp/ccmy4jhy.s:840 .bss.freq:00000000 freq
/tmp/ccmy4jhy.s:820 .bss.blocco:00000000 blocco
/tmp/ccmy4jhy.s:833 .bss.adc2_valori:00000000 adc2_valori
/tmp/ccmy4jhy.s:808 .bss.codice_allarme:00000000 codice_allarme
/tmp/ccmy4jhy.s:125 .text.sat_sub:00000000 $t
/tmp/ccmy4jhy.s:131 .text.sat_sub:00000000 sat_sub
/tmp/ccmy4jhy.s:165 .text.ringbuf_increment:00000000 $t
/tmp/ccmy4jhy.s:171 .text.ringbuf_increment:00000000 ringbuf_increment
/tmp/ccmy4jhy.s:200 .text.adc_rileva_soglie:00000000 $t
/tmp/ccmy4jhy.s:206 .text.adc_rileva_soglie:00000000 adc_rileva_soglie
/tmp/ccmy4jhy.s:278 .text.adc_rileva_soglie:00000048 $d
/tmp/ccmy4jhy.s:284 .rodata.processa_blocco.str1.4:00000000 $d
/tmp/ccmy4jhy.s:291 .text.processa_blocco:00000000 $t
/tmp/ccmy4jhy.s:297 .text.processa_blocco:00000000 processa_blocco
/tmp/ccmy4jhy.s:370 .text.processa_blocco:00000048 $d
/tmp/ccmy4jhy.s:796 .bss.vecchio_stato_blocco.0:00000000 vecchio_stato_blocco.0
/tmp/ccmy4jhy.s:379 .rodata.squeow_synth_init.str1.4:00000000 $d
/tmp/ccmy4jhy.s:383 .text.squeow_synth_init:00000000 $t
/tmp/ccmy4jhy.s:389 .text.squeow_synth_init:00000000 squeow_synth_init
/tmp/ccmy4jhy.s:413 .text.squeow_synth_init:00000010 $d
/tmp/ccmy4jhy.s:418 .text.squeow_synth_set:00000000 $t
/tmp/ccmy4jhy.s:424 .text.squeow_synth_set:00000000 squeow_synth_set
/tmp/ccmy4jhy.s:454 .rodata.squeow_synth_on.str1.4:00000000 $d
/tmp/ccmy4jhy.s:458 .text.squeow_synth_on:00000000 $t
/tmp/ccmy4jhy.s:464 .text.squeow_synth_on:00000000 squeow_synth_on
/tmp/ccmy4jhy.s:493 .text.squeow_synth_on:00000018 $d
/tmp/ccmy4jhy.s:498 .text.squeow_synth_off:00000000 $t
/tmp/ccmy4jhy.s:504 .text.squeow_synth_off:00000000 squeow_synth_off
/tmp/ccmy4jhy.s:529 .text.i2c_write8:00000000 $t
/tmp/ccmy4jhy.s:535 .text.i2c_write8:00000000 i2c_write8
/tmp/ccmy4jhy.s:605 .text.i2c_read8:00000000 $t
/tmp/ccmy4jhy.s:611 .text.i2c_read8:00000000 i2c_read8
/tmp/ccmy4jhy.s:683 .text.si5351_write8:00000000 $t
/tmp/ccmy4jhy.s:689 .text.si5351_write8:00000000 si5351_write8
/tmp/ccmy4jhy.s:733 .text.si5351_write8:00000028 $d
/tmp/ccmy4jhy.s:738 .text.si5351_read8:00000000 $t
/tmp/ccmy4jhy.s:744 .text.si5351_read8:00000000 si5351_read8
/tmp/ccmy4jhy.s:789 .text.si5351_read8:00000028 $d
/tmp/ccmy4jhy.s:797 .bss.vecchio_stato_blocco.0:00000000 $d
/tmp/ccmy4jhy.s:802 .bss.analog_wd_status:00000000 analog_wd_status
/tmp/ccmy4jhy.s:803 .bss.analog_wd_status:00000000 $d
/tmp/ccmy4jhy.s:809 .bss.codice_allarme:00000000 $d
/tmp/ccmy4jhy.s:814 .bss.blocco_fatto:00000000 blocco_fatto
/tmp/ccmy4jhy.s:815 .bss.blocco_fatto:00000000 $d
/tmp/ccmy4jhy.s:821 .bss.blocco:00000000 $d
/tmp/ccmy4jhy.s:826 .bss.adc2_done:00000000 adc2_done
/tmp/ccmy4jhy.s:827 .bss.adc2_done:00000000 $d
/tmp/ccmy4jhy.s:830 .bss.adc2_valori:00000000 $d
ARM GAS /tmp/ccmy4jhy.s page 22
/tmp/ccmy4jhy.s:837 .bss.freq:00000000 $d
/tmp/ccmy4jhy.s:847 .bss.UART_TX_buf_lenght:00000000 $d
/tmp/ccmy4jhy.s:853 .bss.UART_TX_buf:00000000 UART_TX_buf
/tmp/ccmy4jhy.s:850 .bss.UART_TX_buf:00000000 $d
/tmp/ccmy4jhy.s:860 .bss.UART_RX_buf:00000000 UART_RX_buf
/tmp/ccmy4jhy.s:857 .bss.UART_RX_buf:00000000 $d
/tmp/ccmy4jhy.s:866 .bss.sys_tick_prescale:00000000 sys_tick_prescale
/tmp/ccmy4jhy.s:867 .bss.sys_tick_prescale:00000000 $d
/tmp/ccmy4jhy.s:872 .bss.sys_tick:00000000 sys_tick
/tmp/ccmy4jhy.s:873 .bss.sys_tick:00000000 $d
UNDEFINED SYMBOLS
HAL_UART_Transmit_DMA
huart1
seriow_log
led_blocco
si5351_initialize
si5351_set_frequency
si5351_on_clk
si5351_off_clk
HAL_I2C_IsDeviceReady
HAL_I2C_Mem_Write
HAL_I2C_Mem_Read
memcpy
hi2c1