Files
squeow/squeow_sw/build/squeow.lst

1382 lines
55 KiB
Plaintext
Raw Normal View History

2025-01-28 19:01:22 +01:00
ARM GAS /tmp/ccxqDFkN.s page 1
2023-07-02 17:09:41 +02:00
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"
2025-01-28 19:01:22 +01:00
20 .section .rodata.squeow_init.str1.4,"aMS",%progbits,1
21 .align 2
22 .LC0:
23 0000 73717565 .ascii "squeow init\000"
23 6F772069
23 6E697400
24 .section .text.squeow_init,"ax",%progbits
25 .align 1
26 .global squeow_init
27 .syntax unified
28 .thumb
29 .thumb_func
31 squeow_init:
32 .LFB332:
2023-07-02 17:09:41 +02:00
1:Src/squeow.c **** #include <main.h>
2025-01-28 19:01:22 +01:00
2:Src/squeow.c **** #include <math.h>
3:Src/squeow.c **** #include <stdio.h>
4:Src/squeow.c **** #include <stm32g4xx_hal_conf.h>
2023-07-02 17:09:41 +02:00
5:Src/squeow.c ****
2025-01-28 19:01:22 +01:00
6:Src/squeow.c **** #include "si5351.h"
7:Src/squeow.c **** #include "squeow.h"
8:Src/squeow.c **** #include "squeow_ui.h"
2023-07-02 17:09:41 +02:00
9:Src/squeow.c ****
2025-01-28 19:01:22 +01:00
10:Src/squeow.c **** /* SQUEOW
11:Src/squeow.c ****
12:Src/squeow.c **** TIM3 eventi 98304000/(49152×200) 10hz
13:Src/squeow.c **** TIM2 PWM 98304000/2048 48khz
2023-07-02 17:09:41 +02:00
14:Src/squeow.c ****
2025-01-28 19:01:22 +01:00
15:Src/squeow.c **** risoluzione PWM 4*2048 -> 8192 (13bit)
2023-07-02 17:09:41 +02:00
16:Src/squeow.c ****
2025-01-28 19:01:22 +01:00
17:Src/squeow.c **** */
18:Src/squeow.c ****
19:Src/squeow.c **** // SYS
20:Src/squeow.c **** uint8_t sys_tick, sys_tick_prescale, pwm_tick;
21:Src/squeow.c ****
22:Src/squeow.c **** // UART
23:Src/squeow.c **** uint8_t UART_RX_buf[UART_RX_BUF_SIZE];
2023-07-02 17:09:41 +02:00
24:Src/squeow.c ****
2025-01-28 19:01:22 +01:00
ARM GAS /tmp/ccxqDFkN.s page 2
25:Src/squeow.c **** // SYNTH
26:Src/squeow.c **** uint32_t freq;
27:Src/squeow.c ****
28:Src/squeow.c **** // ADC1
29:Src/squeow.c **** uint16_t adc1_valore;
30:Src/squeow.c ****
31:Src/squeow.c **** // ADC2
32:Src/squeow.c **** uint16_t adc2_valori[4];
33:Src/squeow.c **** uint8_t adc2_done, adc_blocco, adc_allarmi[4];
34:Src/squeow.c ****
35:Src/squeow.c **** // audio
36:Src/squeow.c **** uint16_t sample_value;
37:Src/squeow.c **** uint8_t stato_audio;
38:Src/squeow.c **** double sine_increment;
39:Src/squeow.c **** uint16_t samples_ringbuf[SAMPLES_BUFFER_SIZE]; ///< buffer ad anello dei dati RX
40:Src/squeow.c **** uint32_t samples_ringbuf_input_index, samples_ringbuf_output_index;
41:Src/squeow.c **** uint8_t usb_audio_tick;
42:Src/squeow.c ****
43:Src/squeow.c **** // VU
44:Src/squeow.c **** uint8_t analog_wd_status;
45:Src/squeow.c ****
46:Src/squeow.c **** // MOD
47:Src/squeow.c **** uint16_t pwm_value1, pwm_value2, pwm_value3, pwm_value4;
48:Src/squeow.c **** uint8_t rails_number;
49:Src/squeow.c ****
50:Src/squeow.c **** // ###################################
51:Src/squeow.c ****
52:Src/squeow.c **** void squeow_init(void) {
33 .loc 1 52 24 view -0
34 .cfi_startproc
35 @ args = 0, pretend = 0, frame = 0
36 @ frame_needed = 0, uses_anonymous_args = 0
37 0000 08B5 push {r3, lr}
38 .LCFI0:
39 .cfi_def_cfa_offset 8
40 .cfi_offset 3, -8
41 .cfi_offset 14, -4
53:Src/squeow.c **** seriow_log(2, "squeow init");
42 .loc 1 53 5 view .LVU1
43 0002 1149 ldr r1, .L3+8
44 0004 0220 movs r0, #2
45 0006 FFF7FEFF bl seriow_log
46 .LVL0:
54:Src/squeow.c **** sine_increment = 0.4;
47 .loc 1 54 5 view .LVU2
48 .loc 1 54 20 is_stmt 0 view .LVU3
49 000a 104B ldr r3, .L3+12
50 000c 0CA1 adr r1, .L3
51 000e D1E90001 ldrd r0, [r1]
52 0012 C3E90001 strd r0, [r3]
55:Src/squeow.c **** samples_ringbuf_input_index = 0;
53 .loc 1 55 5 is_stmt 1 view .LVU4
54 .loc 1 55 33 is_stmt 0 view .LVU5
55 0016 0023 movs r3, #0
56 0018 0D4A ldr r2, .L3+16
57 001a 1360 str r3, [r2]
56:Src/squeow.c **** samples_ringbuf_output_index = 0;
ARM GAS /tmp/ccxqDFkN.s page 3
58 .loc 1 56 5 is_stmt 1 view .LVU6
59 .loc 1 56 34 is_stmt 0 view .LVU7
60 001c 0D4A ldr r2, .L3+20
61 001e 1360 str r3, [r2]
57:Src/squeow.c **** freq = DEFAULT_SYNTH_FREQUENCY;
62 .loc 1 57 5 is_stmt 1 view .LVU8
63 .loc 1 57 10 is_stmt 0 view .LVU9
64 0020 0D4B ldr r3, .L3+24
65 0022 0E4A ldr r2, .L3+28
66 0024 1A60 str r2, [r3]
58:Src/squeow.c **** adc2_valori[0] = 10;
67 .loc 1 58 5 is_stmt 1 view .LVU10
68 .loc 1 58 20 is_stmt 0 view .LVU11
69 0026 0E4B ldr r3, .L3+32
70 0028 0A22 movs r2, #10
71 002a 1A80 strh r2, [r3] @ movhi
59:Src/squeow.c **** adc2_valori[1] = 20;
72 .loc 1 59 5 is_stmt 1 view .LVU12
73 .loc 1 59 20 is_stmt 0 view .LVU13
74 002c 1422 movs r2, #20
75 002e 5A80 strh r2, [r3, #2] @ movhi
60:Src/squeow.c **** adc2_valori[2] = 30;
76 .loc 1 60 5 is_stmt 1 view .LVU14
77 .loc 1 60 20 is_stmt 0 view .LVU15
78 0030 1E22 movs r2, #30
79 0032 9A80 strh r2, [r3, #4] @ movhi
61:Src/squeow.c **** adc2_valori[3] = 40;
80 .loc 1 61 5 is_stmt 1 view .LVU16
81 .loc 1 61 20 is_stmt 0 view .LVU17
82 0034 2822 movs r2, #40
83 0036 DA80 strh r2, [r3, #6] @ movhi
62:Src/squeow.c **** }
84 .loc 1 62 1 view .LVU18
85 0038 08BD pop {r3, pc}
86 .L4:
87 003a 00BFAFF3 .align 3
87 0080
88 .L3:
89 0040 9A999999 .word -1717986918
90 0044 9999D93F .word 1071225241
91 0048 00000000 .word .LC0
92 004c 00000000 .word sine_increment
93 0050 00000000 .word samples_ringbuf_input_index
94 0054 00000000 .word samples_ringbuf_output_index
95 0058 00000000 .word freq
96 005c 98BC1400 .word 1359000
97 0060 00000000 .word adc2_valori
2023-07-02 17:09:41 +02:00
98 .cfi_endproc
2025-01-28 19:01:22 +01:00
99 .LFE332:
101 .section .text.sat_sub,"ax",%progbits
102 .align 1
103 .global sat_sub
104 .syntax unified
105 .thumb
106 .thumb_func
108 sat_sub:
109 .LVL1:
ARM GAS /tmp/ccxqDFkN.s page 4
110 .LFB333:
63:Src/squeow.c ****
64:Src/squeow.c **** uint32_t sat_sub(uint16_t x, uint16_t y) {
111 .loc 1 64 42 is_stmt 1 view -0
112 .cfi_startproc
113 @ args = 0, pretend = 0, frame = 0
114 @ frame_needed = 0, uses_anonymous_args = 0
115 @ link register save eliminated.
65:Src/squeow.c **** uint16_t res = x - y;
116 .loc 1 65 5 view .LVU20
117 .loc 1 65 14 is_stmt 0 view .LVU21
118 0000 411A subs r1, r0, r1
119 .LVL2:
120 .loc 1 65 14 view .LVU22
121 0002 89B2 uxth r1, r1
122 .LVL3:
66:Src/squeow.c **** res &= -(res <= x);
123 .loc 1 66 5 is_stmt 1 view .LVU23
124 .loc 1 66 18 is_stmt 0 view .LVU24
125 0004 8842 cmp r0, r1
126 0006 34BF ite cc
127 0008 0020 movcc r0, #0
128 .LVL4:
129 .loc 1 66 18 view .LVU25
130 000a 0120 movcs r0, #1
131 .loc 1 66 9 view .LVU26
132 000c 10FB01F0 smulbb r0, r0, r1
133 .LVL5:
67:Src/squeow.c **** return res;
134 .loc 1 67 5 is_stmt 1 view .LVU27
68:Src/squeow.c **** }
135 .loc 1 68 1 is_stmt 0 view .LVU28
136 0010 80B2 uxth r0, r0
137 .loc 1 68 1 view .LVU29
138 0012 7047 bx lr
139 .cfi_endproc
140 .LFE333:
142 .global __aeabi_dadd
143 .global __aeabi_dcmpge
144 .global __aeabi_dmul
145 .global __aeabi_d2uiz
146 .section .text.u12_sine,"ax",%progbits
147 .align 1
148 .global u12_sine
149 .syntax unified
150 .thumb
151 .thumb_func
153 u12_sine:
154 .LFB334:
69:Src/squeow.c ****
70:Src/squeow.c **** uint16_t u12_sine(void) {
155 .loc 1 70 25 is_stmt 1 view -0
156 .cfi_startproc
157 @ args = 0, pretend = 0, frame = 0
158 @ frame_needed = 0, uses_anonymous_args = 0
159 0000 10B5 push {r4, lr}
160 .LCFI1:
ARM GAS /tmp/ccxqDFkN.s page 5
161 .cfi_def_cfa_offset 8
162 .cfi_offset 4, -8
163 .cfi_offset 14, -4
71:Src/squeow.c **** static double angle;
164 .loc 1 71 5 view .LVU31
72:Src/squeow.c **** angle += sine_increment;
165 .loc 1 72 5 view .LVU32
166 .loc 1 72 11 is_stmt 0 view .LVU33
167 0002 194C ldr r4, .L11+16
168 0004 194B ldr r3, .L11+20
169 0006 D3E90023 ldrd r2, [r3]
170 000a D4E90001 ldrd r0, [r4]
171 000e FFF7FEFF bl __aeabi_dadd
172 .LVL6:
173 0012 0246 mov r2, r0
174 0014 0B46 mov r3, r1
175 0016 C4E90023 strd r2, [r4]
73:Src/squeow.c **** if (angle >= 6.28)
176 .loc 1 73 5 is_stmt 1 view .LVU34
177 .loc 1 73 8 is_stmt 0 view .LVU35
178 001a 0FA3 adr r3, .L11
179 001c D3E90023 ldrd r2, [r3]
180 0020 FFF7FEFF bl __aeabi_dcmpge
181 .LVL7:
182 0024 18B1 cbz r0, .L7
74:Src/squeow.c **** angle = 0;
183 .loc 1 74 9 is_stmt 1 view .LVU36
184 .loc 1 74 15 is_stmt 0 view .LVU37
185 0026 0020 movs r0, #0
186 0028 0021 movs r1, #0
187 002a C4E90001 strd r0, [r4]
188 .L7:
75:Src/squeow.c **** return (uint16_t)((sin(angle) * 0x7ff) + 0x7ff);
189 .loc 1 75 5 is_stmt 1 view .LVU38
190 .loc 1 75 24 is_stmt 0 view .LVU39
191 002e 0E4B ldr r3, .L11+16
192 0030 93ED000B vldr.64 d0, [r3]
193 0034 FFF7FEFF bl sin
194 .LVL8:
195 0038 51EC100B vmov r0, r1, d0
196 .loc 1 75 35 discriminator 1 view .LVU40
197 003c 08A3 adr r3, .L11+8
198 003e D3E90023 ldrd r2, [r3]
199 0042 FFF7FEFF bl __aeabi_dmul
200 .LVL9:
201 .loc 1 75 44 discriminator 1 view .LVU41
202 0046 06A3 adr r3, .L11+8
203 0048 D3E90023 ldrd r2, [r3]
204 004c FFF7FEFF bl __aeabi_dadd
205 .LVL10:
206 .loc 1 75 12 discriminator 1 view .LVU42
207 0050 FFF7FEFF bl __aeabi_d2uiz
208 .LVL11:
76:Src/squeow.c **** }
209 .loc 1 76 1 view .LVU43
210 0054 80B2 uxth r0, r0
211 0056 10BD pop {r4, pc}
ARM GAS /tmp/ccxqDFkN.s page 6
212 .L12:
213 .align 3
214 .L11:
215 0058 1F85EB51 .word 1374389535
216 005c B81E1940 .word 1075388088
217 0060 00000000 .word 0
218 0064 00FC9F40 .word 1084226560
219 0068 00000000 .word angle.0
220 006c 00000000 .word sine_increment
221 .cfi_endproc
222 .LFE334:
224 .section .text.ringbuf_increment,"ax",%progbits
225 .align 1
226 .global ringbuf_increment
227 .syntax unified
228 .thumb
229 .thumb_func
231 ringbuf_increment:
232 .LVL12:
233 .LFB338:
77:Src/squeow.c ****
78:Src/squeow.c **** /*
79:Src/squeow.c **** uint16_t get_adc_sample(void) {
80:Src/squeow.c **** uint16_t adc_sample_value;
81:Src/squeow.c **** // stato_audio == STATO_AUDIO_ADC;
82:Src/squeow.c **** HAL_ADC_Start(&hadc1);
83:Src/squeow.c **** if (HAL_ADC_PollForConversion(&hadc1, 10) == HAL_OK) {
84:Src/squeow.c **** // store_sample(HAL_ADC_GetValue(&hadc1) << 4);
85:Src/squeow.c **** adc_sample_value = HAL_ADC_GetValue(&hadc1);
86:Src/squeow.c **** }
87:Src/squeow.c **** HAL_ADC_Stop(&hadc1);
88:Src/squeow.c **** return adc_sample_value;
89:Src/squeow.c **** }
90:Src/squeow.c **** */
91:Src/squeow.c ****
92:Src/squeow.c **** void store_samples(uint16_t *data, uint32_t size) {
93:Src/squeow.c **** for (uint32_t i = 0; i < size; ++i) {
94:Src/squeow.c **** store_sample(data[i]);
95:Src/squeow.c **** }
96:Src/squeow.c **** }
97:Src/squeow.c ****
98:Src/squeow.c **** void store_sample(uint16_t sample) {
99:Src/squeow.c **** samples_ringbuf[samples_ringbuf_input_index] = sample;
100:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_input_index, SAMPLES_BUFFER_SIZE_MASK);
101:Src/squeow.c **** }
102:Src/squeow.c ****
103:Src/squeow.c **** uint16_t get_sample(void) {
104:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_output_index, SAMPLES_BUFFER_SIZE_MASK);
105:Src/squeow.c **** return samples_ringbuf[samples_ringbuf_output_index];
106:Src/squeow.c **** }
107:Src/squeow.c ****
108:Src/squeow.c **** uint32_t ringbuf_increment(uint32_t *index, uint32_t buff_size_mask) {
234 .loc 1 108 70 is_stmt 1 view -0
235 .cfi_startproc
236 @ args = 0, pretend = 0, frame = 0
237 @ frame_needed = 0, uses_anonymous_args = 0
238 @ link register save eliminated.
ARM GAS /tmp/ccxqDFkN.s page 7
239 .loc 1 108 70 is_stmt 0 view .LVU45
240 0000 0246 mov r2, r0
109:Src/squeow.c **** (*index)++;
241 .loc 1 109 5 is_stmt 1 view .LVU46
242 .loc 1 109 6 is_stmt 0 view .LVU47
243 0002 0368 ldr r3, [r0]
244 .loc 1 109 13 view .LVU48
245 0004 0133 adds r3, r3, #1
246 0006 0360 str r3, [r0]
110:Src/squeow.c **** *index &= buff_size_mask;
247 .loc 1 110 5 is_stmt 1 view .LVU49
248 .loc 1 110 12 is_stmt 0 view .LVU50
249 0008 03EA0100 and r0, r3, r1
250 .LVL13:
251 .loc 1 110 12 view .LVU51
252 000c 1060 str r0, [r2]
111:Src/squeow.c **** return *index;
253 .loc 1 111 5 is_stmt 1 view .LVU52
112:Src/squeow.c **** }
254 .loc 1 112 1 is_stmt 0 view .LVU53
255 000e 7047 bx lr
256 .cfi_endproc
257 .LFE338:
259 .section .text.store_sample,"ax",%progbits
260 .align 1
261 .global store_sample
262 .syntax unified
263 .thumb
264 .thumb_func
266 store_sample:
267 .LVL14:
268 .LFB336:
98:Src/squeow.c **** samples_ringbuf[samples_ringbuf_input_index] = sample;
269 .loc 1 98 36 is_stmt 1 view -0
270 .cfi_startproc
271 @ args = 0, pretend = 0, frame = 0
272 @ frame_needed = 0, uses_anonymous_args = 0
98:Src/squeow.c **** samples_ringbuf[samples_ringbuf_input_index] = sample;
273 .loc 1 98 36 is_stmt 0 view .LVU55
274 0000 08B5 push {r3, lr}
275 .LCFI2:
276 .cfi_def_cfa_offset 8
277 .cfi_offset 3, -8
278 .cfi_offset 14, -4
99:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_input_index, SAMPLES_BUFFER_SIZE_MASK);
279 .loc 1 99 5 is_stmt 1 view .LVU56
99:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_input_index, SAMPLES_BUFFER_SIZE_MASK);
280 .loc 1 99 20 is_stmt 0 view .LVU57
281 0002 054B ldr r3, .L16
282 0004 1968 ldr r1, [r3]
99:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_input_index, SAMPLES_BUFFER_SIZE_MASK);
283 .loc 1 99 50 view .LVU58
284 0006 054A ldr r2, .L16+4
285 0008 22F81100 strh r0, [r2, r1, lsl #1] @ movhi
100:Src/squeow.c **** }
286 .loc 1 100 5 is_stmt 1 view .LVU59
287 000c 40F2FF31 movw r1, #1023
ARM GAS /tmp/ccxqDFkN.s page 8
288 0010 1846 mov r0, r3
289 .LVL15:
100:Src/squeow.c **** }
290 .loc 1 100 5 is_stmt 0 view .LVU60
291 0012 FFF7FEFF bl ringbuf_increment
292 .LVL16:
101:Src/squeow.c ****
293 .loc 1 101 1 view .LVU61
294 0016 08BD pop {r3, pc}
295 .L17:
296 .align 2
297 .L16:
298 0018 00000000 .word samples_ringbuf_input_index
299 001c 00000000 .word samples_ringbuf
300 .cfi_endproc
301 .LFE336:
303 .section .text.store_samples,"ax",%progbits
304 .align 1
305 .global store_samples
306 .syntax unified
307 .thumb
308 .thumb_func
310 store_samples:
311 .LVL17:
312 .LFB335:
92:Src/squeow.c **** for (uint32_t i = 0; i < size; ++i) {
313 .loc 1 92 51 is_stmt 1 view -0
314 .cfi_startproc
315 @ args = 0, pretend = 0, frame = 0
316 @ frame_needed = 0, uses_anonymous_args = 0
92:Src/squeow.c **** for (uint32_t i = 0; i < size; ++i) {
317 .loc 1 92 51 is_stmt 0 view .LVU63
318 0000 70B5 push {r4, r5, r6, lr}
319 .LCFI3:
320 .cfi_def_cfa_offset 16
321 .cfi_offset 4, -16
322 .cfi_offset 5, -12
323 .cfi_offset 6, -8
324 .cfi_offset 14, -4
325 0002 0646 mov r6, r0
326 0004 0D46 mov r5, r1
93:Src/squeow.c **** store_sample(data[i]);
327 .loc 1 93 5 is_stmt 1 view .LVU64
328 .LBB2:
93:Src/squeow.c **** store_sample(data[i]);
329 .loc 1 93 10 view .LVU65
330 .LVL18:
93:Src/squeow.c **** store_sample(data[i]);
331 .loc 1 93 19 is_stmt 0 view .LVU66
332 0006 0024 movs r4, #0
93:Src/squeow.c **** store_sample(data[i]);
333 .loc 1 93 5 view .LVU67
334 0008 04E0 b .L19
335 .LVL19:
336 .L20:
94:Src/squeow.c **** }
337 .loc 1 94 9 is_stmt 1 view .LVU68
ARM GAS /tmp/ccxqDFkN.s page 9
338 000a 36F81400 ldrh r0, [r6, r4, lsl #1]
339 000e FFF7FEFF bl store_sample
340 .LVL20:
93:Src/squeow.c **** store_sample(data[i]);
341 .loc 1 93 36 discriminator 3 view .LVU69
342 0012 0134 adds r4, r4, #1
343 .LVL21:
344 .L19:
93:Src/squeow.c **** store_sample(data[i]);
345 .loc 1 93 28 discriminator 1 view .LVU70
346 0014 AC42 cmp r4, r5
347 0016 F8D3 bcc .L20
348 .LBE2:
96:Src/squeow.c ****
349 .loc 1 96 1 is_stmt 0 view .LVU71
350 0018 70BD pop {r4, r5, r6, pc}
96:Src/squeow.c ****
351 .loc 1 96 1 view .LVU72
352 .cfi_endproc
353 .LFE335:
355 .section .text.get_sample,"ax",%progbits
356 .align 1
357 .global get_sample
358 .syntax unified
359 .thumb
360 .thumb_func
362 get_sample:
363 .LFB337:
103:Src/squeow.c **** ringbuf_increment(&samples_ringbuf_output_index, SAMPLES_BUFFER_SIZE_MASK);
364 .loc 1 103 27 is_stmt 1 view -0
365 .cfi_startproc
366 @ args = 0, pretend = 0, frame = 0
367 @ frame_needed = 0, uses_anonymous_args = 0
368 0000 10B5 push {r4, lr}
369 .LCFI4:
370 .cfi_def_cfa_offset 8
371 .cfi_offset 4, -8
372 .cfi_offset 14, -4
104:Src/squeow.c **** return samples_ringbuf[samples_ringbuf_output_index];
373 .loc 1 104 5 view .LVU74
374 0002 054C ldr r4, .L24
375 0004 40F2FF31 movw r1, #1023
376 0008 2046 mov r0, r4
377 000a FFF7FEFF bl ringbuf_increment
378 .LVL22:
105:Src/squeow.c **** }
379 .loc 1 105 5 view .LVU75
105:Src/squeow.c **** }
380 .loc 1 105 27 is_stmt 0 view .LVU76
381 000e 2268 ldr r2, [r4]
106:Src/squeow.c ****
382 .loc 1 106 1 view .LVU77
383 0010 024B ldr r3, .L24+4
384 0012 33F81200 ldrh r0, [r3, r2, lsl #1]
385 0016 10BD pop {r4, pc}
386 .L25:
387 .align 2
ARM GAS /tmp/ccxqDFkN.s page 10
388 .L24:
389 0018 00000000 .word samples_ringbuf_output_index
390 001c 00000000 .word samples_ringbuf
391 .cfi_endproc
392 .LFE337:
394 .section .text.store_buffer,"ax",%progbits
395 .align 1
396 .global store_buffer
397 .syntax unified
398 .thumb
399 .thumb_func
401 store_buffer:
402 .LVL23:
403 .LFB339:
113:Src/squeow.c ****
114:Src/squeow.c **** void store_buffer(uint8_t *buf, uint32_t size) {
404 .loc 1 114 48 is_stmt 1 view -0
405 .cfi_startproc
406 @ args = 0, pretend = 0, frame = 0
407 @ frame_needed = 0, uses_anonymous_args = 0
408 .loc 1 114 48 is_stmt 0 view .LVU79
409 0000 70B5 push {r4, r5, r6, lr}
410 .LCFI5:
411 .cfi_def_cfa_offset 16
412 .cfi_offset 4, -16
413 .cfi_offset 5, -12
414 .cfi_offset 6, -8
415 .cfi_offset 14, -4
416 0002 0646 mov r6, r0
417 0004 0D46 mov r5, r1
115:Src/squeow.c **** for (uint32_t s = 0; s < size / 4; s++) {
418 .loc 1 115 5 is_stmt 1 view .LVU80
419 .LBB3:
420 .loc 1 115 10 view .LVU81
421 .LVL24:
422 .loc 1 115 19 is_stmt 0 view .LVU82
423 0006 0024 movs r4, #0
424 .loc 1 115 5 view .LVU83
425 0008 05E0 b .L27
426 .LVL25:
427 .L28:
428 .LBB4:
116:Src/squeow.c **** uint16_t LL = buf[s * 2];
429 .loc 1 116 9 is_stmt 1 view .LVU84
117:Src/squeow.c **** uint16_t RR = buf[(s * 2) + 1];
430 .loc 1 117 9 view .LVU85
431 .loc 1 117 26 is_stmt 0 view .LVU86
432 000a 06EB4403 add r3, r6, r4, lsl #1
433 .LVL26:
118:Src/squeow.c **** store_sample(RR);
434 .loc 1 118 9 is_stmt 1 view .LVU87
435 000e 5878 ldrb r0, [r3, #1] @ zero_extendqisi2
436 0010 FFF7FEFF bl store_sample
437 .LVL27:
438 .loc 1 118 9 is_stmt 0 view .LVU88
439 .LBE4:
115:Src/squeow.c **** uint16_t LL = buf[s * 2];
ARM GAS /tmp/ccxqDFkN.s page 11
440 .loc 1 115 41 is_stmt 1 discriminator 3 view .LVU89
441 0014 0134 adds r4, r4, #1
442 .LVL28:
443 .L27:
115:Src/squeow.c **** uint16_t LL = buf[s * 2];
444 .loc 1 115 28 discriminator 1 view .LVU90
445 0016 B4EB950F cmp r4, r5, lsr #2
446 001a F6D3 bcc .L28
447 .LBE3:
119:Src/squeow.c **** }
120:Src/squeow.c **** }
448 .loc 1 120 1 is_stmt 0 view .LVU91
449 001c 70BD pop {r4, r5, r6, pc}
450 .loc 1 120 1 view .LVU92
451 .cfi_endproc
452 .LFE339:
454 .section .text.vu_meter,"ax",%progbits
455 .align 1
456 .global vu_meter
457 .syntax unified
458 .thumb
459 .thumb_func
461 vu_meter:
462 .LVL29:
463 .LFB340:
121:Src/squeow.c ****
122:Src/squeow.c **** int vu_meter(uint16_t sample) {
464 .loc 1 122 31 is_stmt 1 view -0
465 .cfi_startproc
466 @ args = 0, pretend = 0, frame = 0
467 @ frame_needed = 0, uses_anonymous_args = 0
468 @ link register save eliminated.
123:Src/squeow.c **** #define ZEROD 2047
124:Src/squeow.c **** #define ZEROU 2048
125:Src/squeow.c **** uint16_t abs_sample;
469 .loc 1 125 5 view .LVU94
126:Src/squeow.c **** uint8_t scaled_abs_sample;
470 .loc 1 126 5 view .LVU95
127:Src/squeow.c **** abs_sample = (sample > ZEROD) ? sample - ZEROU : ZEROD - sample;
471 .loc 1 127 5 view .LVU96
472 .loc 1 127 16 is_stmt 0 view .LVU97
473 0000 B0F5006F cmp r0, #2048
474 0004 0AD3 bcc .L31
475 .loc 1 127 16 discriminator 1 view .LVU98
476 0006 A0F50063 sub r3, r0, #2048
477 000a 9BB2 uxth r3, r3
478 .L32:
479 .LVL30:
128:Src/squeow.c **** scaled_abs_sample = abs_sample >> 3;
480 .loc 1 128 5 is_stmt 1 view .LVU99
481 .loc 1 128 23 is_stmt 0 view .LVU100
482 000c C3F3C703 ubfx r3, r3, #3, #8
483 .LVL31:
129:Src/squeow.c ****
130:Src/squeow.c **** if (scaled_abs_sample >= vu_tmp_value)
484 .loc 1 130 5 is_stmt 1 view .LVU101
485 .loc 1 130 27 is_stmt 0 view .LVU102
ARM GAS /tmp/ccxqDFkN.s page 12
486 0010 054A ldr r2, .L35
487 0012 1078 ldrb r0, [r2] @ zero_extendqisi2
488 .LVL32:
489 .loc 1 130 8 view .LVU103
490 0014 9842 cmp r0, r3
491 0016 00D8 bhi .L30
131:Src/squeow.c **** return scaled_abs_sample;
492 .loc 1 131 9 is_stmt 1 view .LVU104
493 .loc 1 131 16 is_stmt 0 view .LVU105
494 0018 1846 mov r0, r3
495 .L30:
132:Src/squeow.c **** else {
133:Src/squeow.c **** return vu_tmp_value;
134:Src/squeow.c **** }
135:Src/squeow.c **** }
496 .loc 1 135 1 view .LVU106
497 001a 7047 bx lr
498 .LVL33:
499 .L31:
127:Src/squeow.c **** scaled_abs_sample = abs_sample >> 3;
500 .loc 1 127 16 discriminator 2 view .LVU107
501 001c C0F5FF63 rsb r3, r0, #2040
502 0020 0733 adds r3, r3, #7
503 0022 9BB2 uxth r3, r3
504 0024 F2E7 b .L32
505 .L36:
506 0026 00BF .align 2
507 .L35:
508 0028 00000000 .word vu_tmp_value
509 .cfi_endproc
510 .LFE340:
512 .section .rodata.adc_rileva_soglie.str1.4,"aMS",%progbits,1
513 .align 2
514 .LC1:
515 0000 41444330 .ascii "ADC0 threshold detect\000"
515 20746872
515 6573686F
515 6C642064
515 65746563
516 0016 0000 .align 2
517 .LC2:
518 0018 41444331 .ascii "ADC1 threshold detect\000"
518 20746872
518 6573686F
518 6C642064
518 65746563
519 002e 0000 .align 2
520 .LC3:
521 0030 41444333 .ascii "ADC3 threshold detect\000"
521 20746872
521 6573686F
521 6C642064
521 65746563
522 .section .text.adc_rileva_soglie,"ax",%progbits
523 .align 1
524 .global adc_rileva_soglie
525 .syntax unified
ARM GAS /tmp/ccxqDFkN.s page 13
526 .thumb
527 .thumb_func
529 adc_rileva_soglie:
530 .LVL34:
531 .LFB341:
136:Src/squeow.c ****
137:Src/squeow.c **** // adc
138:Src/squeow.c ****
139:Src/squeow.c **** void adc_rileva_soglie(uint16_t *adc_valori) {
532 .loc 1 139 46 is_stmt 1 view -0
533 .cfi_startproc
534 @ args = 0, pretend = 0, frame = 0
535 @ frame_needed = 0, uses_anonymous_args = 0
536 .loc 1 139 46 is_stmt 0 view .LVU109
537 0000 10B5 push {r4, lr}
538 .LCFI6:
539 .cfi_def_cfa_offset 8
540 .cfi_offset 4, -8
541 .cfi_offset 14, -4
542 0002 0446 mov r4, r0
140:Src/squeow.c **** if (adc_valori[0] > SOGLIA_TEMPERATURA) {
543 .loc 1 140 5 is_stmt 1 view .LVU110
544 .loc 1 140 19 is_stmt 0 view .LVU111
545 0004 0388 ldrh r3, [r0]
546 .loc 1 140 8 view .LVU112
547 0006 B3F5006F cmp r3, #2048
548 000a 08D8 bhi .L42
549 .LVL35:
550 .L38:
141:Src/squeow.c **** seriow_log(1, "ADC0 threshold detect");
142:Src/squeow.c **** HAL_GPIO_WritePin(TEMP_OL_GPIO_Port, TEMP_OL_Pin, 1);
143:Src/squeow.c **** adc_allarmi[0] = 1;
144:Src/squeow.c **** adc_blocco = 1;
145:Src/squeow.c **** }
146:Src/squeow.c **** if (adc_valori[1] > SOGLIA_CORRENTE) {
551 .loc 1 146 5 is_stmt 1 view .LVU113
552 .loc 1 146 19 is_stmt 0 view .LVU114
553 000c 6388 ldrh r3, [r4, #2]
554 .loc 1 146 8 view .LVU115
555 000e B3F5006F cmp r3, #2048
556 0012 13D8 bhi .L43
557 .L39:
147:Src/squeow.c **** seriow_log(1, "ADC1 threshold detect");
148:Src/squeow.c **** adc_allarmi[1] = 1;
149:Src/squeow.c **** adc_blocco = 1;
150:Src/squeow.c **** }
151:Src/squeow.c **** if (adc_valori[3] > SOGLIA_RIFLESSA) {
558 .loc 1 151 5 is_stmt 1 view .LVU116
559 .loc 1 151 19 is_stmt 0 view .LVU117
560 0014 E388 ldrh r3, [r4, #6]
561 .loc 1 151 8 view .LVU118
562 0016 B3F5006F cmp r3, #2048
563 001a 19D8 bhi .L44
564 .L37:
152:Src/squeow.c **** seriow_log(1, "ADC3 threshold detect");
153:Src/squeow.c **** HAL_GPIO_WritePin(REFL_OL_GPIO_Port, REFL_OL_Pin, 1);
154:Src/squeow.c **** adc_allarmi[3] = 1;
ARM GAS /tmp/ccxqDFkN.s page 14
155:Src/squeow.c **** adc_blocco = 1;
156:Src/squeow.c **** }
157:Src/squeow.c **** }
565 .loc 1 157 1 view .LVU119
566 001c 10BD pop {r4, pc}
567 .LVL36:
568 .L42:
141:Src/squeow.c **** HAL_GPIO_WritePin(TEMP_OL_GPIO_Port, TEMP_OL_Pin, 1);
569 .loc 1 141 9 is_stmt 1 view .LVU120
570 001e 1449 ldr r1, .L45
571 0020 0120 movs r0, #1
572 .LVL37:
141:Src/squeow.c **** HAL_GPIO_WritePin(TEMP_OL_GPIO_Port, TEMP_OL_Pin, 1);
573 .loc 1 141 9 is_stmt 0 view .LVU121
574 0022 FFF7FEFF bl seriow_log
575 .LVL38:
142:Src/squeow.c **** adc_allarmi[0] = 1;
576 .loc 1 142 9 is_stmt 1 view .LVU122
577 0026 0122 movs r2, #1
578 0028 2021 movs r1, #32
579 002a 1248 ldr r0, .L45+4
580 002c FFF7FEFF bl HAL_GPIO_WritePin
581 .LVL39:
143:Src/squeow.c **** adc_blocco = 1;
582 .loc 1 143 9 view .LVU123
143:Src/squeow.c **** adc_blocco = 1;
583 .loc 1 143 24 is_stmt 0 view .LVU124
584 0030 0123 movs r3, #1
585 0032 114A ldr r2, .L45+8
586 0034 1370 strb r3, [r2]
144:Src/squeow.c **** }
587 .loc 1 144 9 is_stmt 1 view .LVU125
144:Src/squeow.c **** }
588 .loc 1 144 20 is_stmt 0 view .LVU126
589 0036 114A ldr r2, .L45+12
590 0038 1370 strb r3, [r2]
591 003a E7E7 b .L38
592 .L43:
147:Src/squeow.c **** adc_allarmi[1] = 1;
593 .loc 1 147 9 is_stmt 1 view .LVU127
594 003c 1049 ldr r1, .L45+16
595 003e 0120 movs r0, #1
596 0040 FFF7FEFF bl seriow_log
597 .LVL40:
148:Src/squeow.c **** adc_blocco = 1;
598 .loc 1 148 9 view .LVU128
148:Src/squeow.c **** adc_blocco = 1;
599 .loc 1 148 24 is_stmt 0 view .LVU129
600 0044 0123 movs r3, #1
601 0046 0C4A ldr r2, .L45+8
602 0048 5370 strb r3, [r2, #1]
149:Src/squeow.c **** }
603 .loc 1 149 9 is_stmt 1 view .LVU130
149:Src/squeow.c **** }
604 .loc 1 149 20 is_stmt 0 view .LVU131
605 004a 0C4A ldr r2, .L45+12
606 004c 1370 strb r3, [r2]
ARM GAS /tmp/ccxqDFkN.s page 15
607 004e E1E7 b .L39
608 .L44:
152:Src/squeow.c **** HAL_GPIO_WritePin(REFL_OL_GPIO_Port, REFL_OL_Pin, 1);
609 .loc 1 152 9 is_stmt 1 view .LVU132
610 0050 0C49 ldr r1, .L45+20
611 0052 0120 movs r0, #1
612 0054 FFF7FEFF bl seriow_log
613 .LVL41:
153:Src/squeow.c **** adc_allarmi[3] = 1;
614 .loc 1 153 9 view .LVU133
615 0058 0122 movs r2, #1
616 005a 4021 movs r1, #64
617 005c 0548 ldr r0, .L45+4
618 005e FFF7FEFF bl HAL_GPIO_WritePin
619 .LVL42:
154:Src/squeow.c **** adc_blocco = 1;
620 .loc 1 154 9 view .LVU134
154:Src/squeow.c **** adc_blocco = 1;
621 .loc 1 154 24 is_stmt 0 view .LVU135
622 0062 0123 movs r3, #1
623 0064 044A ldr r2, .L45+8
624 0066 D370 strb r3, [r2, #3]
155:Src/squeow.c **** }
625 .loc 1 155 9 is_stmt 1 view .LVU136
155:Src/squeow.c **** }
626 .loc 1 155 20 is_stmt 0 view .LVU137
627 0068 044A ldr r2, .L45+12
628 006a 1370 strb r3, [r2]
629 .loc 1 157 1 view .LVU138
630 006c D6E7 b .L37
631 .L46:
632 006e 00BF .align 2
633 .L45:
634 0070 00000000 .word .LC1
635 0074 00040048 .word 1207960576
636 0078 00000000 .word adc_allarmi
637 007c 00000000 .word adc_blocco
638 0080 18000000 .word .LC2
639 0084 30000000 .word .LC3
640 .cfi_endproc
641 .LFE341:
643 .section .text.array_values_mean,"ax",%progbits
644 .align 1
645 .global array_values_mean
646 .syntax unified
647 .thumb
648 .thumb_func
650 array_values_mean:
651 .LVL43:
652 .LFB342:
158:Src/squeow.c ****
159:Src/squeow.c **** void array_values_mean(uint16_t *valori, uint16_t *medie, uint8_t dimensione){
653 .loc 1 159 78 is_stmt 1 view -0
654 .cfi_startproc
655 @ args = 0, pretend = 0, frame = 0
656 @ frame_needed = 0, uses_anonymous_args = 0
657 @ link register save eliminated.
ARM GAS /tmp/ccxqDFkN.s page 16
160:Src/squeow.c ****
161:Src/squeow.c **** }
658 .loc 1 161 1 view .LVU140
659 0000 7047 bx lr
660 .cfi_endproc
661 .LFE342:
663 .section .rodata.squeow_synth_init.str1.4,"aMS",%progbits,1
664 .align 2
665 .LC4:
666 0000 73796E74 .ascii "synth init\000"
666 6820696E
666 697400
667 .section .text.squeow_synth_init,"ax",%progbits
668 .align 1
669 .global squeow_synth_init
670 .syntax unified
671 .thumb
672 .thumb_func
674 squeow_synth_init:
675 .LFB343:
162:Src/squeow.c ****
163:Src/squeow.c **** // synth
164:Src/squeow.c ****
165:Src/squeow.c **** void squeow_synth_init(void) {
676 .loc 1 165 30 view -0
677 .cfi_startproc
678 @ args = 0, pretend = 0, frame = 0
679 @ frame_needed = 0, uses_anonymous_args = 0
680 0000 08B5 push {r3, lr}
681 .LCFI7:
682 .cfi_def_cfa_offset 8
683 .cfi_offset 3, -8
684 .cfi_offset 14, -4
166:Src/squeow.c **** // occhio che blocca!
167:Src/squeow.c **** seriow_log(2, "synth init");
685 .loc 1 167 5 view .LVU142
686 0002 0349 ldr r1, .L50
687 0004 0220 movs r0, #2
688 0006 FFF7FEFF bl seriow_log
689 .LVL44:
168:Src/squeow.c **** si5351_initialize();
690 .loc 1 168 5 view .LVU143
691 000a FFF7FEFF bl si5351_initialize
692 .LVL45:
169:Src/squeow.c **** }
693 .loc 1 169 1 is_stmt 0 view .LVU144
694 000e 08BD pop {r3, pc}
695 .L51:
696 .align 2
697 .L50:
698 0010 00000000 .word .LC4
699 .cfi_endproc
700 .LFE343:
702 .section .rodata.squeow_synth_set.str1.4,"aMS",%progbits,1
703 .align 2
704 .LC5:
705 0000 73796E74 .ascii "synth set freq\000"
ARM GAS /tmp/ccxqDFkN.s page 17
705 68207365
705 74206672
705 657100
706 .section .text.squeow_synth_set,"ax",%progbits
707 .align 1
708 .global squeow_synth_set
709 .syntax unified
710 .thumb
711 .thumb_func
713 squeow_synth_set:
714 .LVL46:
715 .LFB344:
170:Src/squeow.c ****
171:Src/squeow.c **** void squeow_synth_set(freq) {
716 .loc 1 171 29 is_stmt 1 view -0
717 .cfi_startproc
718 @ args = 0, pretend = 0, frame = 0
719 @ frame_needed = 0, uses_anonymous_args = 0
720 .loc 1 171 29 is_stmt 0 view .LVU146
721 0000 10B5 push {r4, lr}
722 .LCFI8:
723 .cfi_def_cfa_offset 8
724 .cfi_offset 4, -8
725 .cfi_offset 14, -4
726 0002 0446 mov r4, r0
172:Src/squeow.c **** seriow_log(2, "synth set freq");
727 .loc 1 172 5 is_stmt 1 view .LVU147
728 0004 0649 ldr r1, .L54
729 0006 0220 movs r0, #2
730 .LVL47:
731 .loc 1 172 5 is_stmt 0 view .LVU148
732 0008 FFF7FEFF bl seriow_log
733 .LVL48:
173:Src/squeow.c **** si5351_set_frequency(freq, 0);
734 .loc 1 173 5 is_stmt 1 view .LVU149
735 000c 0021 movs r1, #0
736 000e 2046 mov r0, r4
737 0010 FFF7FEFF bl si5351_set_frequency
738 .LVL49:
174:Src/squeow.c **** si5351_set_frequency(freq, 1);
739 .loc 1 174 5 view .LVU150
740 0014 0121 movs r1, #1
741 0016 2046 mov r0, r4
742 0018 FFF7FEFF bl si5351_set_frequency
743 .LVL50:
175:Src/squeow.c **** }
744 .loc 1 175 1 is_stmt 0 view .LVU151
745 001c 10BD pop {r4, pc}
746 .LVL51:
747 .L55:
748 .loc 1 175 1 view .LVU152
749 001e 00BF .align 2
750 .L54:
751 0020 00000000 .word .LC5
752 .cfi_endproc
753 .LFE344:
755 .section .rodata.squeow_synth_on.str1.4,"aMS",%progbits,1
ARM GAS /tmp/ccxqDFkN.s page 18
756 .align 2
757 .LC6:
758 0000 73796E74 .ascii "synth on\000"
758 68206F6E
758 00
759 .section .text.squeow_synth_on,"ax",%progbits
760 .align 1
761 .global squeow_synth_on
762 .syntax unified
763 .thumb
764 .thumb_func
766 squeow_synth_on:
767 .LFB345:
176:Src/squeow.c ****
177:Src/squeow.c **** void squeow_synth_on(void) {
768 .loc 1 177 28 is_stmt 1 view -0
769 .cfi_startproc
770 @ args = 0, pretend = 0, frame = 0
771 @ frame_needed = 0, uses_anonymous_args = 0
772 0000 08B5 push {r3, lr}
773 .LCFI9:
774 .cfi_def_cfa_offset 8
775 .cfi_offset 3, -8
776 .cfi_offset 14, -4
178:Src/squeow.c **** seriow_log(2, "synth on");
777 .loc 1 178 5 view .LVU154
778 0002 0549 ldr r1, .L58
779 0004 0220 movs r0, #2
780 0006 FFF7FEFF bl seriow_log
781 .LVL52:
179:Src/squeow.c **** si5351_on_clk(0);
782 .loc 1 179 5 view .LVU155
783 000a 0020 movs r0, #0
784 000c FFF7FEFF bl si5351_on_clk
785 .LVL53:
180:Src/squeow.c **** si5351_on_clk(1);
786 .loc 1 180 5 view .LVU156
787 0010 0120 movs r0, #1
788 0012 FFF7FEFF bl si5351_on_clk
789 .LVL54:
181:Src/squeow.c **** }
790 .loc 1 181 1 is_stmt 0 view .LVU157
791 0016 08BD pop {r3, pc}
792 .L59:
793 .align 2
794 .L58:
795 0018 00000000 .word .LC6
796 .cfi_endproc
797 .LFE345:
799 .section .rodata.squeow_synth_off.str1.4,"aMS",%progbits,1
800 .align 2
801 .LC7:
802 0000 73796E74 .ascii "synth off\000"
802 68206F66
802 6600
803 .section .text.squeow_synth_off,"ax",%progbits
804 .align 1
ARM GAS /tmp/ccxqDFkN.s page 19
805 .global squeow_synth_off
806 .syntax unified
807 .thumb
808 .thumb_func
810 squeow_synth_off:
811 .LFB346:
182:Src/squeow.c ****
183:Src/squeow.c **** void squeow_synth_off(void) {
812 .loc 1 183 29 is_stmt 1 view -0
813 .cfi_startproc
814 @ args = 0, pretend = 0, frame = 0
815 @ frame_needed = 0, uses_anonymous_args = 0
816 0000 08B5 push {r3, lr}
817 .LCFI10:
818 .cfi_def_cfa_offset 8
819 .cfi_offset 3, -8
820 .cfi_offset 14, -4
184:Src/squeow.c **** seriow_log(2, "synth off");
821 .loc 1 184 5 view .LVU159
822 0002 0549 ldr r1, .L62
823 0004 0220 movs r0, #2
824 0006 FFF7FEFF bl seriow_log
825 .LVL55:
185:Src/squeow.c **** si5351_off_clk(0);
826 .loc 1 185 5 view .LVU160
827 000a 0020 movs r0, #0
828 000c FFF7FEFF bl si5351_off_clk
829 .LVL56:
186:Src/squeow.c **** si5351_off_clk(1);
830 .loc 1 186 5 view .LVU161
831 0010 0120 movs r0, #1
832 0012 FFF7FEFF bl si5351_off_clk
833 .LVL57:
187:Src/squeow.c **** }
834 .loc 1 187 1 is_stmt 0 view .LVU162
835 0016 08BD pop {r3, pc}
836 .L63:
837 .align 2
838 .L62:
839 0018 00000000 .word .LC7
840 .cfi_endproc
841 .LFE346:
843 .section .bss.angle.0,"aw",%nobits
844 .align 3
847 angle.0:
848 0000 00000000 .space 8
848 00000000
849 .global rails_number
850 .section .bss.rails_number,"aw",%nobits
853 rails_number:
854 0000 00 .space 1
855 .global pwm_value4
856 .section .bss.pwm_value4,"aw",%nobits
857 .align 1
860 pwm_value4:
861 0000 0000 .space 2
862 .global pwm_value3
ARM GAS /tmp/ccxqDFkN.s page 20
863 .section .bss.pwm_value3,"aw",%nobits
864 .align 1
867 pwm_value3:
868 0000 0000 .space 2
869 .global pwm_value2
870 .section .bss.pwm_value2,"aw",%nobits
871 .align 1
874 pwm_value2:
875 0000 0000 .space 2
876 .global pwm_value1
877 .section .bss.pwm_value1,"aw",%nobits
878 .align 1
881 pwm_value1:
882 0000 0000 .space 2
883 .global analog_wd_status
884 .section .bss.analog_wd_status,"aw",%nobits
887 analog_wd_status:
888 0000 00 .space 1
889 .global usb_audio_tick
890 .section .bss.usb_audio_tick,"aw",%nobits
893 usb_audio_tick:
894 0000 00 .space 1
895 .global samples_ringbuf_output_index
896 .section .bss.samples_ringbuf_output_index,"aw",%nobits
897 .align 2
900 samples_ringbuf_output_index:
901 0000 00000000 .space 4
902 .global samples_ringbuf_input_index
903 .section .bss.samples_ringbuf_input_index,"aw",%nobits
904 .align 2
907 samples_ringbuf_input_index:
908 0000 00000000 .space 4
909 .global samples_ringbuf
910 .section .bss.samples_ringbuf,"aw",%nobits
911 .align 2
914 samples_ringbuf:
915 0000 00000000 .space 2048
915 00000000
915 00000000
915 00000000
915 00000000
916 .global sine_increment
917 .section .bss.sine_increment,"aw",%nobits
918 .align 3
921 sine_increment:
922 0000 00000000 .space 8
922 00000000
923 .global stato_audio
924 .section .bss.stato_audio,"aw",%nobits
927 stato_audio:
928 0000 00 .space 1
929 .global sample_value
930 .section .bss.sample_value,"aw",%nobits
931 .align 1
934 sample_value:
935 0000 0000 .space 2
936 .global adc_allarmi
ARM GAS /tmp/ccxqDFkN.s page 21
937 .section .bss.adc_allarmi,"aw",%nobits
938 .align 2
941 adc_allarmi:
942 0000 00000000 .space 4
943 .global adc_blocco
944 .section .bss.adc_blocco,"aw",%nobits
947 adc_blocco:
948 0000 00 .space 1
949 .global adc2_done
950 .section .bss.adc2_done,"aw",%nobits
953 adc2_done:
954 0000 00 .space 1
955 .global adc2_valori
956 .section .bss.adc2_valori,"aw",%nobits
957 .align 2
960 adc2_valori:
961 0000 00000000 .space 8
961 00000000
962 .global adc1_valore
963 .section .bss.adc1_valore,"aw",%nobits
964 .align 1
967 adc1_valore:
968 0000 0000 .space 2
969 .global freq
970 .section .bss.freq,"aw",%nobits
971 .align 2
974 freq:
975 0000 00000000 .space 4
976 .global UART_RX_buf
977 .section .bss.UART_RX_buf,"aw",%nobits
978 .align 2
981 UART_RX_buf:
982 0000 00000000 .space 64
982 00000000
982 00000000
982 00000000
982 00000000
983 .global pwm_tick
984 .section .bss.pwm_tick,"aw",%nobits
987 pwm_tick:
988 0000 00 .space 1
989 .global sys_tick_prescale
990 .section .bss.sys_tick_prescale,"aw",%nobits
993 sys_tick_prescale:
994 0000 00 .space 1
995 .global sys_tick
996 .section .bss.sys_tick,"aw",%nobits
999 sys_tick:
1000 0000 00 .space 1
1001 .text
1002 .Letext0:
1003 .file 2 "/home/fra/bin/arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/mach
1004 .file 3 "/home/fra/bin/arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/sys/
1005 .file 4 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
1006 .file 5 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h"
1007 .file 6 "Inc/squeow.h"
1008 .file 7 "Inc/squeow_ui.h"
ARM GAS /tmp/ccxqDFkN.s page 22
1009 .file 8 "Inc/si5351.h"
1010 .file 9 "/home/fra/bin/arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi/arm-none-eabi/include/math
ARM GAS /tmp/ccxqDFkN.s page 23
2023-07-02 17:09:41 +02:00
DEFINED SYMBOLS
*ABS*:00000000 squeow.c
2025-01-28 19:01:22 +01:00
/tmp/ccxqDFkN.s:21 .rodata.squeow_init.str1.4:00000000 $d
/tmp/ccxqDFkN.s:25 .text.squeow_init:00000000 $t
/tmp/ccxqDFkN.s:31 .text.squeow_init:00000000 squeow_init
/tmp/ccxqDFkN.s:89 .text.squeow_init:00000040 $d
/tmp/ccxqDFkN.s:921 .bss.sine_increment:00000000 sine_increment
/tmp/ccxqDFkN.s:907 .bss.samples_ringbuf_input_index:00000000 samples_ringbuf_input_index
/tmp/ccxqDFkN.s:900 .bss.samples_ringbuf_output_index:00000000 samples_ringbuf_output_index
/tmp/ccxqDFkN.s:974 .bss.freq:00000000 freq
/tmp/ccxqDFkN.s:960 .bss.adc2_valori:00000000 adc2_valori
/tmp/ccxqDFkN.s:102 .text.sat_sub:00000000 $t
/tmp/ccxqDFkN.s:108 .text.sat_sub:00000000 sat_sub
/tmp/ccxqDFkN.s:147 .text.u12_sine:00000000 $t
/tmp/ccxqDFkN.s:153 .text.u12_sine:00000000 u12_sine
/tmp/ccxqDFkN.s:215 .text.u12_sine:00000058 $d
/tmp/ccxqDFkN.s:847 .bss.angle.0:00000000 angle.0
/tmp/ccxqDFkN.s:225 .text.ringbuf_increment:00000000 $t
/tmp/ccxqDFkN.s:231 .text.ringbuf_increment:00000000 ringbuf_increment
/tmp/ccxqDFkN.s:260 .text.store_sample:00000000 $t
/tmp/ccxqDFkN.s:266 .text.store_sample:00000000 store_sample
/tmp/ccxqDFkN.s:298 .text.store_sample:00000018 $d
/tmp/ccxqDFkN.s:914 .bss.samples_ringbuf:00000000 samples_ringbuf
/tmp/ccxqDFkN.s:304 .text.store_samples:00000000 $t
/tmp/ccxqDFkN.s:310 .text.store_samples:00000000 store_samples
/tmp/ccxqDFkN.s:356 .text.get_sample:00000000 $t
/tmp/ccxqDFkN.s:362 .text.get_sample:00000000 get_sample
/tmp/ccxqDFkN.s:389 .text.get_sample:00000018 $d
/tmp/ccxqDFkN.s:395 .text.store_buffer:00000000 $t
/tmp/ccxqDFkN.s:401 .text.store_buffer:00000000 store_buffer
/tmp/ccxqDFkN.s:455 .text.vu_meter:00000000 $t
/tmp/ccxqDFkN.s:461 .text.vu_meter:00000000 vu_meter
/tmp/ccxqDFkN.s:508 .text.vu_meter:00000028 $d
/tmp/ccxqDFkN.s:513 .rodata.adc_rileva_soglie.str1.4:00000000 $d
/tmp/ccxqDFkN.s:523 .text.adc_rileva_soglie:00000000 $t
/tmp/ccxqDFkN.s:529 .text.adc_rileva_soglie:00000000 adc_rileva_soglie
/tmp/ccxqDFkN.s:634 .text.adc_rileva_soglie:00000070 $d
/tmp/ccxqDFkN.s:941 .bss.adc_allarmi:00000000 adc_allarmi
/tmp/ccxqDFkN.s:947 .bss.adc_blocco:00000000 adc_blocco
/tmp/ccxqDFkN.s:644 .text.array_values_mean:00000000 $t
/tmp/ccxqDFkN.s:650 .text.array_values_mean:00000000 array_values_mean
/tmp/ccxqDFkN.s:664 .rodata.squeow_synth_init.str1.4:00000000 $d
/tmp/ccxqDFkN.s:668 .text.squeow_synth_init:00000000 $t
/tmp/ccxqDFkN.s:674 .text.squeow_synth_init:00000000 squeow_synth_init
/tmp/ccxqDFkN.s:698 .text.squeow_synth_init:00000010 $d
/tmp/ccxqDFkN.s:703 .rodata.squeow_synth_set.str1.4:00000000 $d
/tmp/ccxqDFkN.s:707 .text.squeow_synth_set:00000000 $t
/tmp/ccxqDFkN.s:713 .text.squeow_synth_set:00000000 squeow_synth_set
/tmp/ccxqDFkN.s:751 .text.squeow_synth_set:00000020 $d
/tmp/ccxqDFkN.s:756 .rodata.squeow_synth_on.str1.4:00000000 $d
/tmp/ccxqDFkN.s:760 .text.squeow_synth_on:00000000 $t
/tmp/ccxqDFkN.s:766 .text.squeow_synth_on:00000000 squeow_synth_on
/tmp/ccxqDFkN.s:795 .text.squeow_synth_on:00000018 $d
/tmp/ccxqDFkN.s:800 .rodata.squeow_synth_off.str1.4:00000000 $d
/tmp/ccxqDFkN.s:804 .text.squeow_synth_off:00000000 $t
/tmp/ccxqDFkN.s:810 .text.squeow_synth_off:00000000 squeow_synth_off
/tmp/ccxqDFkN.s:839 .text.squeow_synth_off:00000018 $d
ARM GAS /tmp/ccxqDFkN.s page 24
/tmp/ccxqDFkN.s:844 .bss.angle.0:00000000 $d
/tmp/ccxqDFkN.s:853 .bss.rails_number:00000000 rails_number
/tmp/ccxqDFkN.s:854 .bss.rails_number:00000000 $d
/tmp/ccxqDFkN.s:860 .bss.pwm_value4:00000000 pwm_value4
/tmp/ccxqDFkN.s:857 .bss.pwm_value4:00000000 $d
/tmp/ccxqDFkN.s:867 .bss.pwm_value3:00000000 pwm_value3
/tmp/ccxqDFkN.s:864 .bss.pwm_value3:00000000 $d
/tmp/ccxqDFkN.s:874 .bss.pwm_value2:00000000 pwm_value2
/tmp/ccxqDFkN.s:871 .bss.pwm_value2:00000000 $d
/tmp/ccxqDFkN.s:881 .bss.pwm_value1:00000000 pwm_value1
/tmp/ccxqDFkN.s:878 .bss.pwm_value1:00000000 $d
/tmp/ccxqDFkN.s:887 .bss.analog_wd_status:00000000 analog_wd_status
/tmp/ccxqDFkN.s:888 .bss.analog_wd_status:00000000 $d
/tmp/ccxqDFkN.s:893 .bss.usb_audio_tick:00000000 usb_audio_tick
/tmp/ccxqDFkN.s:894 .bss.usb_audio_tick:00000000 $d
/tmp/ccxqDFkN.s:897 .bss.samples_ringbuf_output_index:00000000 $d
/tmp/ccxqDFkN.s:904 .bss.samples_ringbuf_input_index:00000000 $d
/tmp/ccxqDFkN.s:911 .bss.samples_ringbuf:00000000 $d
/tmp/ccxqDFkN.s:918 .bss.sine_increment:00000000 $d
/tmp/ccxqDFkN.s:927 .bss.stato_audio:00000000 stato_audio
/tmp/ccxqDFkN.s:928 .bss.stato_audio:00000000 $d
/tmp/ccxqDFkN.s:934 .bss.sample_value:00000000 sample_value
/tmp/ccxqDFkN.s:931 .bss.sample_value:00000000 $d
/tmp/ccxqDFkN.s:938 .bss.adc_allarmi:00000000 $d
/tmp/ccxqDFkN.s:948 .bss.adc_blocco:00000000 $d
/tmp/ccxqDFkN.s:953 .bss.adc2_done:00000000 adc2_done
/tmp/ccxqDFkN.s:954 .bss.adc2_done:00000000 $d
/tmp/ccxqDFkN.s:957 .bss.adc2_valori:00000000 $d
/tmp/ccxqDFkN.s:967 .bss.adc1_valore:00000000 adc1_valore
/tmp/ccxqDFkN.s:964 .bss.adc1_valore:00000000 $d
/tmp/ccxqDFkN.s:971 .bss.freq:00000000 $d
/tmp/ccxqDFkN.s:981 .bss.UART_RX_buf:00000000 UART_RX_buf
/tmp/ccxqDFkN.s:978 .bss.UART_RX_buf:00000000 $d
/tmp/ccxqDFkN.s:987 .bss.pwm_tick:00000000 pwm_tick
/tmp/ccxqDFkN.s:988 .bss.pwm_tick:00000000 $d
/tmp/ccxqDFkN.s:993 .bss.sys_tick_prescale:00000000 sys_tick_prescale
/tmp/ccxqDFkN.s:994 .bss.sys_tick_prescale:00000000 $d
/tmp/ccxqDFkN.s:999 .bss.sys_tick:00000000 sys_tick
/tmp/ccxqDFkN.s:1000 .bss.sys_tick:00000000 $d
2023-07-02 17:09:41 +02:00
UNDEFINED SYMBOLS
2025-01-28 19:01:22 +01:00
seriow_log
2023-07-02 17:09:41 +02:00
__aeabi_dadd
__aeabi_dcmpge
__aeabi_dmul
__aeabi_d2uiz
sin
2025-01-28 19:01:22 +01:00
vu_tmp_value
HAL_GPIO_WritePin
si5351_initialize
si5351_set_frequency
si5351_on_clk
si5351_off_clk