Files
bassofono/codice/build/main.lst
nzasch 5610d2606c opamp
2021-07-03 04:08:08 +02:00

4055 lines
168 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.
ARM GAS /tmp/ccX7ayIU.s page 1
1 .cpu cortex-m4
2 .eabi_attribute 27, 1
3 .eabi_attribute 28, 1
4 .eabi_attribute 23, 1
5 .eabi_attribute 24, 1
6 .eabi_attribute 25, 1
7 .eabi_attribute 26, 1
8 .eabi_attribute 30, 2
9 .eabi_attribute 34, 1
10 .eabi_attribute 18, 4
11 .file "main.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.HAL_ADC_ConvCpltCallback,"ax",%progbits
16 .align 1
17 .p2align 2,,3
18 .global HAL_ADC_ConvCpltCallback
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv4-sp-d16
24 HAL_ADC_ConvCpltCallback:
25 .LFB376:
26 .file 1 "Core/Src/main.c"
1:Core/Src/main.c **** /* USER CODE BEGIN Header */
2:Core/Src/main.c **** /**
3:Core/Src/main.c **** ******************************************************************************
4:Core/Src/main.c **** * @file : main.c
5:Core/Src/main.c **** * @brief : Main program body
6:Core/Src/main.c **** ******************************************************************************
7:Core/Src/main.c **** * @attention
8:Core/Src/main.c **** *
9:Core/Src/main.c **** * <h2><center>&copy; Copyright (c) 2020 STMicroelectronics.
10:Core/Src/main.c **** * All rights reserved.</center></h2>
11:Core/Src/main.c **** *
12:Core/Src/main.c **** * This software component is licensed by ST under BSD 3-Clause license,
13:Core/Src/main.c **** * the "License"; You may not use this file except in compliance with the
14:Core/Src/main.c **** * License. You may obtain a copy of the License at:
15:Core/Src/main.c **** * opensource.org/licenses/BSD-3-Clause
16:Core/Src/main.c **** *
17:Core/Src/main.c **** ******************************************************************************
18:Core/Src/main.c **** */
19:Core/Src/main.c **** /* USER CODE END Header */
20:Core/Src/main.c **** /* Includes ------------------------------------------------------------------*/
21:Core/Src/main.c **** #include "main.h"
22:Core/Src/main.c ****
23:Core/Src/main.c **** /* Private includes ----------------------------------------------------------*/
24:Core/Src/main.c **** /* USER CODE BEGIN Includes */
25:Core/Src/main.c **** #include <stdio.h>
26:Core/Src/main.c **** #include "bassofono.h"
27:Core/Src/main.c **** #include "interface.h"
28:Core/Src/main.c ****
29:Core/Src/main.c **** /* USER CODE END Includes */
30:Core/Src/main.c ****
31:Core/Src/main.c **** /* Private typedef -----------------------------------------------------------*/
32:Core/Src/main.c **** /* USER CODE BEGIN PTD */
ARM GAS /tmp/ccX7ayIU.s page 2
33:Core/Src/main.c ****
34:Core/Src/main.c **** /* USER CODE END PTD */
35:Core/Src/main.c ****
36:Core/Src/main.c **** /* Private define ------------------------------------------------------------*/
37:Core/Src/main.c **** /* USER CODE BEGIN PD */
38:Core/Src/main.c **** /* USER CODE END PD */
39:Core/Src/main.c ****
40:Core/Src/main.c **** /* Private macro -------------------------------------------------------------*/
41:Core/Src/main.c **** /* USER CODE BEGIN PM */
42:Core/Src/main.c ****
43:Core/Src/main.c **** /* USER CODE END PM */
44:Core/Src/main.c ****
45:Core/Src/main.c **** /* Private variables ---------------------------------------------------------*/
46:Core/Src/main.c **** ADC_HandleTypeDef hadc1;
47:Core/Src/main.c **** DMA_HandleTypeDef hdma_adc1;
48:Core/Src/main.c ****
49:Core/Src/main.c **** CORDIC_HandleTypeDef hcordic;
50:Core/Src/main.c ****
51:Core/Src/main.c **** DAC_HandleTypeDef hdac1;
52:Core/Src/main.c **** DMA_HandleTypeDef hdma_dac1_ch1;
53:Core/Src/main.c **** DMA_HandleTypeDef hdma_dac1_ch2;
54:Core/Src/main.c ****
55:Core/Src/main.c **** OPAMP_HandleTypeDef hopamp1;
56:Core/Src/main.c ****
57:Core/Src/main.c **** TIM_HandleTypeDef htim6;
58:Core/Src/main.c **** TIM_HandleTypeDef htim7;
59:Core/Src/main.c **** TIM_HandleTypeDef htim8;
60:Core/Src/main.c ****
61:Core/Src/main.c **** UART_HandleTypeDef huart1;
62:Core/Src/main.c **** DMA_HandleTypeDef hdma_usart1_tx;
63:Core/Src/main.c ****
64:Core/Src/main.c **** /* USER CODE BEGIN PV */
65:Core/Src/main.c ****
66:Core/Src/main.c **** volatile uint8_t tick;
67:Core/Src/main.c ****
68:Core/Src/main.c **** // RX
69:Core/Src/main.c **** volatile uint8_t rx_adc_buffer_ready, half_rx_dac_buffer_empty;
70:Core/Src/main.c ****
71:Core/Src/main.c **** // TX
72:Core/Src/main.c **** // volatile uint8_t half_tx_dac_buffer_empty, tx_dac_buffer_toggle;
73:Core/Src/main.c ****
74:Core/Src/main.c **** /* USER CODE END PV */
75:Core/Src/main.c ****
76:Core/Src/main.c **** /* Private function prototypes -----------------------------------------------*/
77:Core/Src/main.c **** void SystemClock_Config(void);
78:Core/Src/main.c **** static void MX_GPIO_Init(void);
79:Core/Src/main.c **** static void MX_DMA_Init(void);
80:Core/Src/main.c **** static void MX_DAC1_Init(void);
81:Core/Src/main.c **** static void MX_ADC1_Init(void);
82:Core/Src/main.c **** static void MX_TIM7_Init(void);
83:Core/Src/main.c **** static void MX_TIM6_Init(void);
84:Core/Src/main.c **** static void MX_CORDIC_Init(void);
85:Core/Src/main.c **** static void MX_USART1_UART_Init(void);
86:Core/Src/main.c **** static void MX_TIM8_Init(void);
87:Core/Src/main.c **** static void MX_OPAMP1_Init(void);
88:Core/Src/main.c **** /* USER CODE BEGIN PFP */
89:Core/Src/main.c ****
ARM GAS /tmp/ccX7ayIU.s page 3
90:Core/Src/main.c **** /* USER CODE END PFP */
91:Core/Src/main.c ****
92:Core/Src/main.c **** /* Private user code ---------------------------------------------------------*/
93:Core/Src/main.c **** /* USER CODE BEGIN 0 */
94:Core/Src/main.c ****
95:Core/Src/main.c **** // IRQ
96:Core/Src/main.c ****
97:Core/Src/main.c **** // ADC
98:Core/Src/main.c ****
99:Core/Src/main.c **** void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc){
27 .loc 1 99 0
28 .cfi_startproc
29 @ args = 0, pretend = 0, frame = 0
30 @ frame_needed = 0, uses_anonymous_args = 0
31 @ link register save eliminated.
32 .LVL0:
100:Core/Src/main.c **** if(hadc->Instance == ADC1){
33 .loc 1 100 0
34 0000 0368 ldr r3, [r0]
35 0002 B3F1A04F cmp r3, #1342177280
36 0006 02D1 bne .L1
101:Core/Src/main.c **** rx_adc_buffer_ready = 1;
37 .loc 1 101 0
38 0008 014B ldr r3, .L4
39 000a 0122 movs r2, #1
40 000c 1A70 strb r2, [r3]
41 .L1:
102:Core/Src/main.c **** }
103:Core/Src/main.c **** }
42 .loc 1 103 0
43 000e 7047 bx lr
44 .L5:
45 .align 2
46 .L4:
47 0010 00000000 .word rx_adc_buffer_ready
48 .cfi_endproc
49 .LFE376:
51 .section .text.HAL_DAC_ConvHalfCpltCallbackCh1,"ax",%progbits
52 .align 1
53 .p2align 2,,3
54 .global HAL_DAC_ConvHalfCpltCallbackCh1
55 .syntax unified
56 .thumb
57 .thumb_func
58 .fpu fpv4-sp-d16
60 HAL_DAC_ConvHalfCpltCallbackCh1:
61 .LFB377:
104:Core/Src/main.c ****
105:Core/Src/main.c **** // DAC
106:Core/Src/main.c **** // rx
107:Core/Src/main.c **** void HAL_DAC_ConvHalfCpltCallbackCh1(DAC_HandleTypeDef* hdac) {
62 .loc 1 107 0
63 .cfi_startproc
64 @ args = 0, pretend = 0, frame = 0
65 @ frame_needed = 0, uses_anonymous_args = 0
66 @ link register save eliminated.
67 .LVL1:
ARM GAS /tmp/ccX7ayIU.s page 4
108:Core/Src/main.c **** lf_buffer_toggle = 0;
68 .loc 1 108 0
69 0000 0349 ldr r1, .L7
109:Core/Src/main.c **** half_rx_dac_buffer_empty = 1;
70 .loc 1 109 0
71 0002 044B ldr r3, .L7+4
108:Core/Src/main.c **** lf_buffer_toggle = 0;
72 .loc 1 108 0
73 0004 0020 movs r0, #0
74 .LVL2:
75 .loc 1 109 0
76 0006 0122 movs r2, #1
108:Core/Src/main.c **** lf_buffer_toggle = 0;
77 .loc 1 108 0
78 0008 0870 strb r0, [r1]
79 .loc 1 109 0
80 000a 1A70 strb r2, [r3]
110:Core/Src/main.c **** }
81 .loc 1 110 0
82 000c 7047 bx lr
83 .L8:
84 000e 00BF .align 2
85 .L7:
86 0010 00000000 .word lf_buffer_toggle
87 0014 00000000 .word half_rx_dac_buffer_empty
88 .cfi_endproc
89 .LFE377:
91 .section .text.HAL_DAC_ConvCpltCallbackCh1,"ax",%progbits
92 .align 1
93 .p2align 2,,3
94 .global HAL_DAC_ConvCpltCallbackCh1
95 .syntax unified
96 .thumb
97 .thumb_func
98 .fpu fpv4-sp-d16
100 HAL_DAC_ConvCpltCallbackCh1:
101 .LFB378:
111:Core/Src/main.c ****
112:Core/Src/main.c **** void HAL_DAC_ConvCpltCallbackCh1(DAC_HandleTypeDef* hdac) {
102 .loc 1 112 0
103 .cfi_startproc
104 @ args = 0, pretend = 0, frame = 0
105 @ frame_needed = 0, uses_anonymous_args = 0
106 @ link register save eliminated.
107 .LVL3:
113:Core/Src/main.c **** lf_buffer_toggle = 1;
108 .loc 1 113 0
109 0000 0249 ldr r1, .L10
114:Core/Src/main.c **** half_rx_dac_buffer_empty = 1;
110 .loc 1 114 0
111 0002 034A ldr r2, .L10+4
113:Core/Src/main.c **** lf_buffer_toggle = 1;
112 .loc 1 113 0
113 0004 0123 movs r3, #1
114 0006 0B70 strb r3, [r1]
115 .loc 1 114 0
116 0008 1370 strb r3, [r2]
ARM GAS /tmp/ccX7ayIU.s page 5
115:Core/Src/main.c **** }
117 .loc 1 115 0
118 000a 7047 bx lr
119 .L11:
120 .align 2
121 .L10:
122 000c 00000000 .word lf_buffer_toggle
123 0010 00000000 .word half_rx_dac_buffer_empty
124 .cfi_endproc
125 .LFE378:
127 .section .text.HAL_DACEx_ConvHalfCpltCallbackCh2,"ax",%progbits
128 .align 1
129 .p2align 2,,3
130 .global HAL_DACEx_ConvHalfCpltCallbackCh2
131 .syntax unified
132 .thumb
133 .thumb_func
134 .fpu fpv4-sp-d16
136 HAL_DACEx_ConvHalfCpltCallbackCh2:
137 .LFB379:
116:Core/Src/main.c ****
117:Core/Src/main.c **** // tx
118:Core/Src/main.c **** void HAL_DACEx_ConvHalfCpltCallbackCh2(DAC_HandleTypeDef* hdac) {
138 .loc 1 118 0
139 .cfi_startproc
140 @ args = 0, pretend = 0, frame = 0
141 @ frame_needed = 0, uses_anonymous_args = 0
142 .LVL4:
143 0000 08B5 push {r3, lr}
144 .LCFI0:
145 .cfi_def_cfa_offset 8
146 .cfi_offset 3, -8
147 .cfi_offset 14, -4
119:Core/Src/main.c **** HAL_GPIO_TogglePin(OUT_GPIO_Port, OUT_Pin);
148 .loc 1 119 0
149 0002 2021 movs r1, #32
150 0004 0448 ldr r0, .L14
151 .LVL5:
152 0006 FFF7FEFF bl HAL_GPIO_TogglePin
153 .LVL6:
120:Core/Src/main.c **** tx_dac_buffer_toggle = 0;
154 .loc 1 120 0
155 000a 0449 ldr r1, .L14+4
121:Core/Src/main.c **** half_tx_dac_buffer_empty = 1;
156 .loc 1 121 0
157 000c 044B ldr r3, .L14+8
120:Core/Src/main.c **** tx_dac_buffer_toggle = 0;
158 .loc 1 120 0
159 000e 0020 movs r0, #0
160 .loc 1 121 0
161 0010 0122 movs r2, #1
120:Core/Src/main.c **** tx_dac_buffer_toggle = 0;
162 .loc 1 120 0
163 0012 0870 strb r0, [r1]
164 .loc 1 121 0
165 0014 1A70 strb r2, [r3]
122:Core/Src/main.c **** }
ARM GAS /tmp/ccX7ayIU.s page 6
166 .loc 1 122 0
167 0016 08BD pop {r3, pc}
168 .L15:
169 .align 2
170 .L14:
171 0018 00040048 .word 1207960576
172 001c 00000000 .word tx_dac_buffer_toggle
173 0020 00000000 .word half_tx_dac_buffer_empty
174 .cfi_endproc
175 .LFE379:
177 .section .text.HAL_DACEx_ConvCpltCallbackCh2,"ax",%progbits
178 .align 1
179 .p2align 2,,3
180 .global HAL_DACEx_ConvCpltCallbackCh2
181 .syntax unified
182 .thumb
183 .thumb_func
184 .fpu fpv4-sp-d16
186 HAL_DACEx_ConvCpltCallbackCh2:
187 .LFB380:
123:Core/Src/main.c ****
124:Core/Src/main.c **** void HAL_DACEx_ConvCpltCallbackCh2(DAC_HandleTypeDef* hdac) {
188 .loc 1 124 0
189 .cfi_startproc
190 @ args = 0, pretend = 0, frame = 0
191 @ frame_needed = 0, uses_anonymous_args = 0
192 .LVL7:
193 0000 08B5 push {r3, lr}
194 .LCFI1:
195 .cfi_def_cfa_offset 8
196 .cfi_offset 3, -8
197 .cfi_offset 14, -4
125:Core/Src/main.c **** HAL_GPIO_TogglePin(OUT_GPIO_Port, OUT_Pin);
198 .loc 1 125 0
199 0002 2021 movs r1, #32
200 0004 0448 ldr r0, .L18
201 .LVL8:
202 0006 FFF7FEFF bl HAL_GPIO_TogglePin
203 .LVL9:
126:Core/Src/main.c **** tx_dac_buffer_toggle = 1;
204 .loc 1 126 0
205 000a 0449 ldr r1, .L18+4
127:Core/Src/main.c **** half_tx_dac_buffer_empty = 1;
206 .loc 1 127 0
207 000c 044A ldr r2, .L18+8
126:Core/Src/main.c **** tx_dac_buffer_toggle = 1;
208 .loc 1 126 0
209 000e 0123 movs r3, #1
210 0010 0B70 strb r3, [r1]
211 .loc 1 127 0
212 0012 1370 strb r3, [r2]
128:Core/Src/main.c **** }
213 .loc 1 128 0
214 0014 08BD pop {r3, pc}
215 .L19:
216 0016 00BF .align 2
217 .L18:
ARM GAS /tmp/ccX7ayIU.s page 7
218 0018 00040048 .word 1207960576
219 001c 00000000 .word tx_dac_buffer_toggle
220 0020 00000000 .word half_tx_dac_buffer_empty
221 .cfi_endproc
222 .LFE380:
224 .section .text.HAL_TIM_PeriodElapsedCallback,"ax",%progbits
225 .align 1
226 .p2align 2,,3
227 .global HAL_TIM_PeriodElapsedCallback
228 .syntax unified
229 .thumb
230 .thumb_func
231 .fpu fpv4-sp-d16
233 HAL_TIM_PeriodElapsedCallback:
234 .LFB381:
129:Core/Src/main.c ****
130:Core/Src/main.c **** /*
131:Core/Src/main.c **** void HAL_DAC_ConvHalfCpltCallbackCh2(DAC_HandleTypeDef* hdac) {
132:Core/Src/main.c **** tx_dac_buffer_toggle = 0;
133:Core/Src/main.c **** half_tx_dac_buffer_empty = 1;
134:Core/Src/main.c **** }
135:Core/Src/main.c ****
136:Core/Src/main.c **** void HAL_DAC_ConvCpltCallbackCh2(DAC_HandleTypeDef* hdac) {
137:Core/Src/main.c **** tx_dac_buffer_toggle = 1;
138:Core/Src/main.c **** half_tx_dac_buffer_empty = 1;
139:Core/Src/main.c **** }
140:Core/Src/main.c **** */
141:Core/Src/main.c ****
142:Core/Src/main.c **** // TIMERZ
143:Core/Src/main.c **** // 10 ms
144:Core/Src/main.c **** void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){
235 .loc 1 144 0
236 .cfi_startproc
237 @ args = 0, pretend = 0, frame = 0
238 @ frame_needed = 0, uses_anonymous_args = 0
239 @ link register save eliminated.
240 .LVL10:
145:Core/Src/main.c **** if (htim->Instance == TIM7){
241 .loc 1 145 0
242 0000 0268 ldr r2, [r0]
243 0002 034B ldr r3, .L22
244 0004 9A42 cmp r2, r3
245 0006 02D1 bne .L20
146:Core/Src/main.c **** tick = 1;
246 .loc 1 146 0
247 0008 024B ldr r3, .L22+4
248 000a 0122 movs r2, #1
249 000c 1A70 strb r2, [r3]
250 .L20:
147:Core/Src/main.c **** }
148:Core/Src/main.c **** }
251 .loc 1 148 0
252 000e 7047 bx lr
253 .L23:
254 .align 2
255 .L22:
256 0010 00140040 .word 1073746944
ARM GAS /tmp/ccX7ayIU.s page 8
257 0014 00000000 .word tick
258 .cfi_endproc
259 .LFE381:
261 .section .text.HAL_UART_RxCpltCallback,"ax",%progbits
262 .align 1
263 .p2align 2,,3
264 .global HAL_UART_RxCpltCallback
265 .syntax unified
266 .thumb
267 .thumb_func
268 .fpu fpv4-sp-d16
270 HAL_UART_RxCpltCallback:
271 .LFB382:
149:Core/Src/main.c ****
150:Core/Src/main.c **** // uart
151:Core/Src/main.c **** void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart){
272 .loc 1 151 0
273 .cfi_startproc
274 @ args = 0, pretend = 0, frame = 0
275 @ frame_needed = 0, uses_anonymous_args = 0
276 .LVL11:
277 0000 38B5 push {r3, r4, r5, lr}
278 .LCFI2:
279 .cfi_def_cfa_offset 16
280 .cfi_offset 3, -16
281 .cfi_offset 4, -12
282 .cfi_offset 5, -8
283 .cfi_offset 14, -4
152:Core/Src/main.c **** if (huart == &huart1){
284 .loc 1 152 0
285 0002 084B ldr r3, .L28
286 0004 9842 cmp r0, r3
287 0006 00D0 beq .L27
153:Core/Src/main.c **** enqueue_cmd(uart_rx_buf[0]);
154:Core/Src/main.c **** HAL_UART_Receive_IT(&huart1, uart_rx_buf, 1);
155:Core/Src/main.c **** }
156:Core/Src/main.c **** /*
157:Core/Src/main.c **** if (huart == &huart2){
158:Core/Src/main.c **** enqueue_cmd(uart_rx_buf[0]);
159:Core/Src/main.c **** HAL_UART_Receive_IT(&huart2, uart_rx_buf, 1);
160:Core/Src/main.c **** }
161:Core/Src/main.c **** */
162:Core/Src/main.c **** }
288 .loc 1 162 0
289 0008 38BD pop {r3, r4, r5, pc}
290 .L27:
291 .LBB96:
153:Core/Src/main.c **** enqueue_cmd(uart_rx_buf[0]);
292 .loc 1 153 0
293 000a 074D ldr r5, .L28+4
294 000c 0446 mov r4, r0
295 000e 2878 ldrb r0, [r5] @ zero_extendqisi2
296 .LVL12:
297 0010 FFF7FEFF bl enqueue_cmd
298 .LVL13:
154:Core/Src/main.c **** }
299 .loc 1 154 0
ARM GAS /tmp/ccX7ayIU.s page 9
300 0014 2946 mov r1, r5
301 0016 2046 mov r0, r4
302 0018 0122 movs r2, #1
303 .LBE96:
304 .loc 1 162 0
305 001a BDE83840 pop {r3, r4, r5, lr}
306 .LCFI3:
307 .cfi_restore 14
308 .cfi_restore 5
309 .cfi_restore 4
310 .cfi_restore 3
311 .cfi_def_cfa_offset 0
312 .LVL14:
313 .LBB97:
154:Core/Src/main.c **** }
314 .loc 1 154 0
315 001e FFF7FEBF b HAL_UART_Receive_IT
316 .LVL15:
317 .L29:
318 0022 00BF .align 2
319 .L28:
320 0024 00000000 .word huart1
321 0028 00000000 .word uart_rx_buf
322 .LBE97:
323 .cfi_endproc
324 .LFE382:
326 .section .text.__io_putchar,"ax",%progbits
327 .align 1
328 .p2align 2,,3
329 .global __io_putchar
330 .syntax unified
331 .thumb
332 .thumb_func
333 .fpu fpv4-sp-d16
335 __io_putchar:
336 .LFB383:
163:Core/Src/main.c ****
164:Core/Src/main.c **** // non-DMA
165:Core/Src/main.c **** int __io_putchar(int ch){
337 .loc 1 165 0
338 .cfi_startproc
339 @ args = 0, pretend = 0, frame = 8
340 @ frame_needed = 0, uses_anonymous_args = 0
341 .LVL16:
342 0000 10B5 push {r4, lr}
343 .LCFI4:
344 .cfi_def_cfa_offset 8
345 .cfi_offset 4, -8
346 .cfi_offset 14, -4
347 0002 82B0 sub sp, sp, #8
348 .LCFI5:
349 .cfi_def_cfa_offset 16
166:Core/Src/main.c **** uint8_t c[1];
167:Core/Src/main.c **** c[0] = ch & 0x00FF;
350 .loc 1 167 0
351 0004 02A9 add r1, sp, #8
165:Core/Src/main.c **** uint8_t c[1];
ARM GAS /tmp/ccX7ayIU.s page 10
352 .loc 1 165 0
353 0006 0446 mov r4, r0
354 .loc 1 167 0
355 0008 01F8040D strb r0, [r1, #-4]!
168:Core/Src/main.c **** HAL_UART_Transmit(&huart1, &*c, 1, 10);
356 .loc 1 168 0
357 000c 0A23 movs r3, #10
358 000e 0122 movs r2, #1
359 0010 0248 ldr r0, .L32
360 .LVL17:
361 0012 FFF7FEFF bl HAL_UART_Transmit
362 .LVL18:
169:Core/Src/main.c **** // HAL_UART_Transmit(&huart2, &*c, 1, 10);
170:Core/Src/main.c **** return ch;
171:Core/Src/main.c **** }
363 .loc 1 171 0
364 0016 2046 mov r0, r4
365 0018 02B0 add sp, sp, #8
366 .LCFI6:
367 .cfi_def_cfa_offset 8
368 @ sp needed
369 001a 10BD pop {r4, pc}
370 .LVL19:
371 .L33:
372 .align 2
373 .L32:
374 001c 00000000 .word huart1
375 .cfi_endproc
376 .LFE383:
378 .section .text._write,"ax",%progbits
379 .align 1
380 .p2align 2,,3
381 .global _write
382 .syntax unified
383 .thumb
384 .thumb_func
385 .fpu fpv4-sp-d16
387 _write:
388 .LFB384:
172:Core/Src/main.c ****
173:Core/Src/main.c **** int _write(int file,char *ptr, int len){
389 .loc 1 173 0
390 .cfi_startproc
391 @ args = 0, pretend = 0, frame = 0
392 @ frame_needed = 0, uses_anonymous_args = 0
393 .LVL20:
394 0000 10B5 push {r4, lr}
395 .LCFI7:
396 .cfi_def_cfa_offset 8
397 .cfi_offset 4, -8
398 .cfi_offset 14, -4
174:Core/Src/main.c **** HAL_UART_Transmit_DMA(&huart1, ptr, len);
399 .loc 1 174 0
400 0002 0348 ldr r0, .L36
401 .LVL21:
173:Core/Src/main.c **** HAL_UART_Transmit_DMA(&huart1, ptr, len);
402 .loc 1 173 0
ARM GAS /tmp/ccX7ayIU.s page 11
403 0004 1446 mov r4, r2
404 .loc 1 174 0
405 0006 92B2 uxth r2, r2
406 .LVL22:
407 0008 FFF7FEFF bl HAL_UART_Transmit_DMA
408 .LVL23:
175:Core/Src/main.c **** // HAL_UART_Transmit_DMA(&huart2, ptr, len);
176:Core/Src/main.c **** /* int DataIdx;
177:Core/Src/main.c **** for(DataIdx= 0; DataIdx< len; DataIdx++) {
178:Core/Src/main.c **** __io_putchar(*ptr++);
179:Core/Src/main.c **** }*/
180:Core/Src/main.c **** return len;
181:Core/Src/main.c **** }
409 .loc 1 181 0
410 000c 2046 mov r0, r4
411 000e 10BD pop {r4, pc}
412 .LVL24:
413 .L37:
414 .align 2
415 .L36:
416 0010 00000000 .word huart1
417 .cfi_endproc
418 .LFE384:
420 .section .text.display_write,"ax",%progbits
421 .align 1
422 .p2align 2,,3
423 .global display_write
424 .syntax unified
425 .thumb
426 .thumb_func
427 .fpu fpv4-sp-d16
429 display_write:
430 .LFB385:
182:Core/Src/main.c ****
183:Core/Src/main.c **** int display_write(char *ptr, int len){
431 .loc 1 183 0
432 .cfi_startproc
433 @ args = 0, pretend = 0, frame = 0
434 @ frame_needed = 0, uses_anonymous_args = 0
435 .LVL25:
436 0000 10B5 push {r4, lr}
437 .LCFI8:
438 .cfi_def_cfa_offset 8
439 .cfi_offset 4, -8
440 .cfi_offset 14, -4
184:Core/Src/main.c **** HAL_UART_Transmit_DMA(&huart1, ptr, len);
441 .loc 1 184 0
442 0002 8AB2 uxth r2, r1
183:Core/Src/main.c **** HAL_UART_Transmit_DMA(&huart1, ptr, len);
443 .loc 1 183 0
444 0004 0C46 mov r4, r1
445 .loc 1 184 0
446 0006 0146 mov r1, r0
447 .LVL26:
448 0008 0248 ldr r0, .L40
449 .LVL27:
450 000a FFF7FEFF bl HAL_UART_Transmit_DMA
ARM GAS /tmp/ccX7ayIU.s page 12
451 .LVL28:
185:Core/Src/main.c **** // HAL_UART_Transmit_DMA(&huart2, ptr, len);
186:Core/Src/main.c **** return len;
187:Core/Src/main.c **** }
452 .loc 1 187 0
453 000e 2046 mov r0, r4
454 0010 10BD pop {r4, pc}
455 .LVL29:
456 .L41:
457 0012 00BF .align 2
458 .L40:
459 0014 00000000 .word huart1
460 .cfi_endproc
461 .LFE385:
463 .section .text.start_transmit,"ax",%progbits
464 .align 1
465 .p2align 2,,3
466 .global start_transmit
467 .syntax unified
468 .thumb
469 .thumb_func
470 .fpu fpv4-sp-d16
472 start_transmit:
473 .LFB386:
188:Core/Src/main.c ****
189:Core/Src/main.c **** void start_transmit(void){
474 .loc 1 189 0
475 .cfi_startproc
476 @ args = 0, pretend = 0, frame = 0
477 @ frame_needed = 0, uses_anonymous_args = 0
478 0000 10B5 push {r4, lr}
479 .LCFI9:
480 .cfi_def_cfa_offset 8
481 .cfi_offset 4, -8
482 .cfi_offset 14, -4
190:Core/Src/main.c **** transmit = 1;
483 .loc 1 190 0
484 0002 0B4B ldr r3, .L44
191:Core/Src/main.c **** // ADC
192:Core/Src/main.c **** // HAL_ADC_Start_DMA(&hadc1, (uint32_t*)adc_buffer, ADC_BUFFER_SIZE);
193:Core/Src/main.c ****
194:Core/Src/main.c **** // DAC
195:Core/Src/main.c **** HAL_TIM_Base_Start(&htim8);
196:Core/Src/main.c **** HAL_DAC_Start(&hdac1,DAC_CHANNEL_2);
485 .loc 1 196 0
486 0004 0B4C ldr r4, .L44+4
195:Core/Src/main.c **** HAL_DAC_Start(&hdac1,DAC_CHANNEL_2);
487 .loc 1 195 0
488 0006 0C48 ldr r0, .L44+8
189:Core/Src/main.c **** transmit = 1;
489 .loc 1 189 0
490 0008 82B0 sub sp, sp, #8
491 .LCFI10:
492 .cfi_def_cfa_offset 16
190:Core/Src/main.c **** // ADC
493 .loc 1 190 0
494 000a 0122 movs r2, #1
ARM GAS /tmp/ccX7ayIU.s page 13
495 000c 1A70 strb r2, [r3]
195:Core/Src/main.c **** HAL_DAC_Start(&hdac1,DAC_CHANNEL_2);
496 .loc 1 195 0
497 000e FFF7FEFF bl HAL_TIM_Base_Start
498 .LVL30:
499 .loc 1 196 0
500 0012 2046 mov r0, r4
501 0014 1021 movs r1, #16
502 0016 FFF7FEFF bl HAL_DAC_Start
503 .LVL31:
197:Core/Src/main.c **** HAL_DAC_Start_DMA(&hdac1, DAC_CHANNEL_2, tx_dac_buffer, (TX_DAC_BUFFER_SIZE * 2), DAC_ALIGN
504 .loc 1 197 0
505 001a 0023 movs r3, #0
506 001c 0093 str r3, [sp]
507 001e 2046 mov r0, r4
508 0020 4FF40063 mov r3, #2048
509 0024 054A ldr r2, .L44+12
510 0026 1021 movs r1, #16
511 0028 FFF7FEFF bl HAL_DAC_Start_DMA
512 .LVL32:
198:Core/Src/main.c **** }
513 .loc 1 198 0
514 002c 02B0 add sp, sp, #8
515 .LCFI11:
516 .cfi_def_cfa_offset 8
517 @ sp needed
518 002e 10BD pop {r4, pc}
519 .L45:
520 .align 2
521 .L44:
522 0030 00000000 .word transmit
523 0034 00000000 .word hdac1
524 0038 00000000 .word htim8
525 003c 00000000 .word tx_dac_buffer
526 .cfi_endproc
527 .LFE386:
529 .section .text.stop_transmit,"ax",%progbits
530 .align 1
531 .p2align 2,,3
532 .global stop_transmit
533 .syntax unified
534 .thumb
535 .thumb_func
536 .fpu fpv4-sp-d16
538 stop_transmit:
539 .LFB387:
199:Core/Src/main.c ****
200:Core/Src/main.c **** void stop_transmit(void){
540 .loc 1 200 0
541 .cfi_startproc
542 @ args = 0, pretend = 0, frame = 0
543 @ frame_needed = 0, uses_anonymous_args = 0
544 0000 10B5 push {r4, lr}
545 .LCFI12:
546 .cfi_def_cfa_offset 8
547 .cfi_offset 4, -8
548 .cfi_offset 14, -4
ARM GAS /tmp/ccX7ayIU.s page 14
201:Core/Src/main.c **** transmit = 0;
549 .loc 1 201 0
550 0002 084B ldr r3, .L48
202:Core/Src/main.c **** // ADC
203:Core/Src/main.c **** // HAL_ADC_Stop_DMA(&hadc1);
204:Core/Src/main.c ****
205:Core/Src/main.c **** // DAC
206:Core/Src/main.c **** HAL_TIM_Base_Stop(&htim8);
207:Core/Src/main.c **** HAL_DAC_Stop(&hdac1,DAC_CHANNEL_2);
551 .loc 1 207 0
552 0004 084C ldr r4, .L48+4
206:Core/Src/main.c **** HAL_DAC_Stop(&hdac1,DAC_CHANNEL_2);
553 .loc 1 206 0
554 0006 0948 ldr r0, .L48+8
201:Core/Src/main.c **** transmit = 0;
555 .loc 1 201 0
556 0008 0022 movs r2, #0
557 000a 1A70 strb r2, [r3]
206:Core/Src/main.c **** HAL_DAC_Stop(&hdac1,DAC_CHANNEL_2);
558 .loc 1 206 0
559 000c FFF7FEFF bl HAL_TIM_Base_Stop
560 .LVL33:
561 .loc 1 207 0
562 0010 2046 mov r0, r4
563 0012 1021 movs r1, #16
564 0014 FFF7FEFF bl HAL_DAC_Stop
565 .LVL34:
208:Core/Src/main.c **** HAL_DAC_Stop_DMA(&hdac1, DAC_CHANNEL_2);
566 .loc 1 208 0
567 0018 2046 mov r0, r4
568 001a 1021 movs r1, #16
209:Core/Src/main.c **** }
569 .loc 1 209 0
570 001c BDE81040 pop {r4, lr}
571 .LCFI13:
572 .cfi_restore 14
573 .cfi_restore 4
574 .cfi_def_cfa_offset 0
208:Core/Src/main.c **** HAL_DAC_Stop_DMA(&hdac1, DAC_CHANNEL_2);
575 .loc 1 208 0
576 0020 FFF7FEBF b HAL_DAC_Stop_DMA
577 .LVL35:
578 .L49:
579 .align 2
580 .L48:
581 0024 00000000 .word transmit
582 0028 00000000 .word hdac1
583 002c 00000000 .word htim8
584 .cfi_endproc
585 .LFE387:
587 .section .text.start_receive,"ax",%progbits
588 .align 1
589 .p2align 2,,3
590 .global start_receive
591 .syntax unified
592 .thumb
593 .thumb_func
ARM GAS /tmp/ccX7ayIU.s page 15
594 .fpu fpv4-sp-d16
596 start_receive:
597 .LFB388:
210:Core/Src/main.c ****
211:Core/Src/main.c **** void start_receive(void){
598 .loc 1 211 0
599 .cfi_startproc
600 @ args = 0, pretend = 0, frame = 0
601 @ frame_needed = 0, uses_anonymous_args = 0
602 0000 30B5 push {r4, r5, lr}
603 .LCFI14:
604 .cfi_def_cfa_offset 12
605 .cfi_offset 4, -12
606 .cfi_offset 5, -8
607 .cfi_offset 14, -4
212:Core/Src/main.c **** receive = 1;
608 .loc 1 212 0
609 0002 0D4B ldr r3, .L52
213:Core/Src/main.c **** // ADC
214:Core/Src/main.c **** HAL_ADC_Start_DMA(&hadc1, (uint32_t*)adc_buffer, ADC_BUFFER_SIZE);
610 .loc 1 214 0
611 0004 0D49 ldr r1, .L52+4
215:Core/Src/main.c ****
216:Core/Src/main.c **** // DAC
217:Core/Src/main.c **** HAL_TIM_Base_Start(&htim6);
218:Core/Src/main.c **** HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);
612 .loc 1 218 0
613 0006 0E4C ldr r4, .L52+8
214:Core/Src/main.c ****
614 .loc 1 214 0
615 0008 0E48 ldr r0, .L52+12
211:Core/Src/main.c **** receive = 1;
616 .loc 1 211 0
617 000a 83B0 sub sp, sp, #12
618 .LCFI15:
619 .cfi_def_cfa_offset 24
214:Core/Src/main.c ****
620 .loc 1 214 0
621 000c 4FF48062 mov r2, #1024
212:Core/Src/main.c **** // ADC
622 .loc 1 212 0
623 0010 0125 movs r5, #1
624 0012 1D70 strb r5, [r3]
214:Core/Src/main.c ****
625 .loc 1 214 0
626 0014 FFF7FEFF bl HAL_ADC_Start_DMA
627 .LVL36:
217:Core/Src/main.c **** HAL_DAC_Start(&hdac1,DAC_CHANNEL_1);
628 .loc 1 217 0
629 0018 0B48 ldr r0, .L52+16
630 001a FFF7FEFF bl HAL_TIM_Base_Start
631 .LVL37:
632 .loc 1 218 0
633 001e 2046 mov r0, r4
634 0020 0021 movs r1, #0
635 0022 FFF7FEFF bl HAL_DAC_Start
636 .LVL38:
ARM GAS /tmp/ccX7ayIU.s page 16
219:Core/Src/main.c **** HAL_DAC_Start_DMA(&hdac1, DAC_CHANNEL_1, lf_buffer, (LF_BUFFER_SIZE * 2), DAC_ALIGN_12B_R);
637 .loc 1 219 0
638 0026 0021 movs r1, #0
639 0028 2046 mov r0, r4
640 002a 0091 str r1, [sp]
641 002c 8023 movs r3, #128
642 002e 074A ldr r2, .L52+20
643 0030 FFF7FEFF bl HAL_DAC_Start_DMA
644 .LVL39:
220:Core/Src/main.c **** }
645 .loc 1 220 0
646 0034 03B0 add sp, sp, #12
647 .LCFI16:
648 .cfi_def_cfa_offset 12
649 @ sp needed
650 0036 30BD pop {r4, r5, pc}
651 .L53:
652 .align 2
653 .L52:
654 0038 00000000 .word receive
655 003c 00000000 .word adc_buffer
656 0040 00000000 .word hdac1
657 0044 00000000 .word hadc1
658 0048 00000000 .word htim6
659 004c 00000000 .word lf_buffer
660 .cfi_endproc
661 .LFE388:
663 .section .text.stop_receive,"ax",%progbits
664 .align 1
665 .p2align 2,,3
666 .global stop_receive
667 .syntax unified
668 .thumb
669 .thumb_func
670 .fpu fpv4-sp-d16
672 stop_receive:
673 .LFB389:
221:Core/Src/main.c ****
222:Core/Src/main.c **** void stop_receive(void){
674 .loc 1 222 0
675 .cfi_startproc
676 @ args = 0, pretend = 0, frame = 0
677 @ frame_needed = 0, uses_anonymous_args = 0
678 0000 38B5 push {r3, r4, r5, lr}
679 .LCFI17:
680 .cfi_def_cfa_offset 16
681 .cfi_offset 3, -16
682 .cfi_offset 4, -12
683 .cfi_offset 5, -8
684 .cfi_offset 14, -4
223:Core/Src/main.c **** receive = 0;
685 .loc 1 223 0
686 0002 0A4B ldr r3, .L56
224:Core/Src/main.c **** // ADC
225:Core/Src/main.c **** HAL_ADC_Stop_DMA(&hadc1);
226:Core/Src/main.c ****
227:Core/Src/main.c **** // DAC
ARM GAS /tmp/ccX7ayIU.s page 17
228:Core/Src/main.c **** HAL_TIM_Base_Stop(&htim6);
229:Core/Src/main.c **** HAL_DAC_Stop(&hdac1,DAC_CHANNEL_1);
687 .loc 1 229 0
688 0004 0A4D ldr r5, .L56+4
225:Core/Src/main.c ****
689 .loc 1 225 0
690 0006 0B48 ldr r0, .L56+8
223:Core/Src/main.c **** receive = 0;
691 .loc 1 223 0
692 0008 0024 movs r4, #0
693 000a 1C70 strb r4, [r3]
225:Core/Src/main.c ****
694 .loc 1 225 0
695 000c FFF7FEFF bl HAL_ADC_Stop_DMA
696 .LVL40:
228:Core/Src/main.c **** HAL_DAC_Stop(&hdac1,DAC_CHANNEL_1);
697 .loc 1 228 0
698 0010 0948 ldr r0, .L56+12
699 0012 FFF7FEFF bl HAL_TIM_Base_Stop
700 .LVL41:
701 .loc 1 229 0
702 0016 2146 mov r1, r4
703 0018 2846 mov r0, r5
704 001a FFF7FEFF bl HAL_DAC_Stop
705 .LVL42:
230:Core/Src/main.c **** HAL_DAC_Stop_DMA(&hdac1, DAC_CHANNEL_1);
706 .loc 1 230 0
707 001e 2146 mov r1, r4
708 0020 2846 mov r0, r5
231:Core/Src/main.c **** }
709 .loc 1 231 0
710 0022 BDE83840 pop {r3, r4, r5, lr}
711 .LCFI18:
712 .cfi_restore 14
713 .cfi_restore 5
714 .cfi_restore 4
715 .cfi_restore 3
716 .cfi_def_cfa_offset 0
230:Core/Src/main.c **** HAL_DAC_Stop_DMA(&hdac1, DAC_CHANNEL_1);
717 .loc 1 230 0
718 0026 FFF7FEBF b HAL_DAC_Stop_DMA
719 .LVL43:
720 .L57:
721 002a 00BF .align 2
722 .L56:
723 002c 00000000 .word receive
724 0030 00000000 .word hdac1
725 0034 00000000 .word hadc1
726 0038 00000000 .word htim6
727 .cfi_endproc
728 .LFE389:
730 .section .text.set_gain,"ax",%progbits
731 .align 1
732 .p2align 2,,3
733 .global set_gain
734 .syntax unified
735 .thumb
ARM GAS /tmp/ccX7ayIU.s page 18
736 .thumb_func
737 .fpu fpv4-sp-d16
739 set_gain:
740 .LFB390:
232:Core/Src/main.c ****
233:Core/Src/main.c **** void set_gain(void){
741 .loc 1 233 0
742 .cfi_startproc
743 @ args = 0, pretend = 0, frame = 0
744 @ frame_needed = 0, uses_anonymous_args = 0
745 0000 08B5 push {r3, lr}
746 .LCFI19:
747 .cfi_def_cfa_offset 8
748 .cfi_offset 3, -8
749 .cfi_offset 14, -4
234:Core/Src/main.c **** HAL_OPAMP_Stop(&hopamp1);
750 .loc 1 234 0
751 0002 2148 ldr r0, .L68
752 0004 FFF7FEFF bl HAL_OPAMP_Stop
753 .LVL44:
235:Core/Src/main.c **** switch (gain){
754 .loc 1 235 0
755 0008 204B ldr r3, .L68+4
756 000a 1B68 ldr r3, [r3]
757 000c 023B subs r3, r3, #2
758 000e 042B cmp r3, #4
759 0010 04D8 bhi .L59
760 0012 DFE803F0 tbb [pc, r3]
761 .L61:
762 0016 14 .byte (.L60-.L61)/2
763 0017 1D .byte (.L62-.L61)/2
764 0018 26 .byte (.L63-.L61)/2
765 0019 0B .byte (.L64-.L61)/2
766 001a 2F .byte (.L65-.L61)/2
767 001b 00 .p2align 1
768 .L59:
236:Core/Src/main.c **** case 1:
237:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_2_OR_MINUS_1;
769 .loc 1 237 0
770 001c 1A4B ldr r3, .L68
238:Core/Src/main.c **** break;
239:Core/Src/main.c **** case 2:
240:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_4_OR_MINUS_3;
241:Core/Src/main.c **** break;
242:Core/Src/main.c **** case 3:
243:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_8_OR_MINUS_7;
244:Core/Src/main.c **** break;
245:Core/Src/main.c **** case 4:
246:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_16_OR_MINUS_15;
247:Core/Src/main.c **** break;
248:Core/Src/main.c **** case 5:
249:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_32_OR_MINUS_31;
250:Core/Src/main.c **** break;
251:Core/Src/main.c **** case 6:
252:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_64_OR_MINUS_63;
253:Core/Src/main.c **** break;
254:Core/Src/main.c **** default:
ARM GAS /tmp/ccX7ayIU.s page 19
255:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_2_OR_MINUS_1;
256:Core/Src/main.c **** break;
257:Core/Src/main.c **** }
258:Core/Src/main.c **** HAL_OPAMP_Start(&hopamp1);
771 .loc 1 258 0
772 001e 1A48 ldr r0, .L68
237:Core/Src/main.c **** break;
773 .loc 1 237 0
774 0020 0022 movs r2, #0
775 0022 9A62 str r2, [r3, #40]
259:Core/Src/main.c ****
260:Core/Src/main.c **** }
776 .loc 1 260 0
777 0024 BDE80840 pop {r3, lr}
258:Core/Src/main.c ****
778 .loc 1 258 0
779 0028 FFF7FEBF b HAL_OPAMP_Start
780 .LVL45:
781 .L64:
249:Core/Src/main.c **** break;
782 .loc 1 249 0
783 002c 164B ldr r3, .L68
258:Core/Src/main.c ****
784 .loc 1 258 0
785 002e 1648 ldr r0, .L68
249:Core/Src/main.c **** break;
786 .loc 1 249 0
787 0030 4FF48032 mov r2, #65536
788 0034 9A62 str r2, [r3, #40]
789 .loc 1 260 0
790 0036 BDE80840 pop {r3, lr}
791 .LCFI20:
792 .cfi_remember_state
793 .cfi_restore 14
794 .cfi_restore 3
795 .cfi_def_cfa_offset 0
258:Core/Src/main.c ****
796 .loc 1 258 0
797 003a FFF7FEBF b HAL_OPAMP_Start
798 .LVL46:
799 .L60:
800 .LCFI21:
801 .cfi_restore_state
240:Core/Src/main.c **** break;
802 .loc 1 240 0
803 003e 124B ldr r3, .L68
258:Core/Src/main.c ****
804 .loc 1 258 0
805 0040 1148 ldr r0, .L68
240:Core/Src/main.c **** break;
806 .loc 1 240 0
807 0042 4FF48042 mov r2, #16384
808 0046 9A62 str r2, [r3, #40]
809 .loc 1 260 0
810 0048 BDE80840 pop {r3, lr}
811 .LCFI22:
812 .cfi_remember_state
ARM GAS /tmp/ccX7ayIU.s page 20
813 .cfi_restore 14
814 .cfi_restore 3
815 .cfi_def_cfa_offset 0
258:Core/Src/main.c ****
816 .loc 1 258 0
817 004c FFF7FEBF b HAL_OPAMP_Start
818 .LVL47:
819 .L62:
820 .LCFI23:
821 .cfi_restore_state
243:Core/Src/main.c **** break;
822 .loc 1 243 0
823 0050 0D4B ldr r3, .L68
258:Core/Src/main.c ****
824 .loc 1 258 0
825 0052 0D48 ldr r0, .L68
243:Core/Src/main.c **** break;
826 .loc 1 243 0
827 0054 4FF40042 mov r2, #32768
828 0058 9A62 str r2, [r3, #40]
829 .loc 1 260 0
830 005a BDE80840 pop {r3, lr}
831 .LCFI24:
832 .cfi_remember_state
833 .cfi_restore 14
834 .cfi_restore 3
835 .cfi_def_cfa_offset 0
258:Core/Src/main.c ****
836 .loc 1 258 0
837 005e FFF7FEBF b HAL_OPAMP_Start
838 .LVL48:
839 .L63:
840 .LCFI25:
841 .cfi_restore_state
246:Core/Src/main.c **** break;
842 .loc 1 246 0
843 0062 094B ldr r3, .L68
258:Core/Src/main.c ****
844 .loc 1 258 0
845 0064 0848 ldr r0, .L68
246:Core/Src/main.c **** break;
846 .loc 1 246 0
847 0066 4FF44042 mov r2, #49152
848 006a 9A62 str r2, [r3, #40]
849 .loc 1 260 0
850 006c BDE80840 pop {r3, lr}
851 .LCFI26:
852 .cfi_remember_state
853 .cfi_restore 14
854 .cfi_restore 3
855 .cfi_def_cfa_offset 0
258:Core/Src/main.c ****
856 .loc 1 258 0
857 0070 FFF7FEBF b HAL_OPAMP_Start
858 .LVL49:
859 .L65:
860 .LCFI27:
ARM GAS /tmp/ccX7ayIU.s page 21
861 .cfi_restore_state
252:Core/Src/main.c **** break;
862 .loc 1 252 0
863 0074 044B ldr r3, .L68
258:Core/Src/main.c ****
864 .loc 1 258 0
865 0076 0448 ldr r0, .L68
252:Core/Src/main.c **** break;
866 .loc 1 252 0
867 0078 4FF4A032 mov r2, #81920
868 007c 9A62 str r2, [r3, #40]
869 .loc 1 260 0
870 007e BDE80840 pop {r3, lr}
871 .LCFI28:
872 .cfi_restore 14
873 .cfi_restore 3
874 .cfi_def_cfa_offset 0
258:Core/Src/main.c ****
875 .loc 1 258 0
876 0082 FFF7FEBF b HAL_OPAMP_Start
877 .LVL50:
878 .L69:
879 0086 00BF .align 2
880 .L68:
881 0088 00000000 .word hopamp1
882 008c 00000000 .word gain
883 .cfi_endproc
884 .LFE390:
886 .section .text.SystemClock_Config,"ax",%progbits
887 .align 1
888 .p2align 2,,3
889 .global SystemClock_Config
890 .syntax unified
891 .thumb
892 .thumb_func
893 .fpu fpv4-sp-d16
895 SystemClock_Config:
896 .LFB392:
261:Core/Src/main.c ****
262:Core/Src/main.c ****
263:Core/Src/main.c **** /* USER CODE END 0 */
264:Core/Src/main.c ****
265:Core/Src/main.c **** /**
266:Core/Src/main.c **** * @brief The application entry point.
267:Core/Src/main.c **** * @retval int
268:Core/Src/main.c **** */
269:Core/Src/main.c **** int main(void)
270:Core/Src/main.c **** {
271:Core/Src/main.c **** /* USER CODE BEGIN 1 */
272:Core/Src/main.c **** state_changed = 0;
273:Core/Src/main.c **** display_init();
274:Core/Src/main.c **** state_set_default();
275:Core/Src/main.c **** interface_set_default();
276:Core/Src/main.c **** display_update_mode();
277:Core/Src/main.c **** display_update_state();
278:Core/Src/main.c **** /* USER CODE END 1 */
279:Core/Src/main.c ****
ARM GAS /tmp/ccX7ayIU.s page 22
280:Core/Src/main.c **** /* MCU Configuration--------------------------------------------------------*/
281:Core/Src/main.c ****
282:Core/Src/main.c **** /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
283:Core/Src/main.c **** HAL_Init();
284:Core/Src/main.c ****
285:Core/Src/main.c **** /* USER CODE BEGIN Init */
286:Core/Src/main.c ****
287:Core/Src/main.c **** /* USER CODE END Init */
288:Core/Src/main.c ****
289:Core/Src/main.c **** /* Configure the system clock */
290:Core/Src/main.c **** SystemClock_Config();
291:Core/Src/main.c ****
292:Core/Src/main.c **** /* USER CODE BEGIN SysInit */
293:Core/Src/main.c ****
294:Core/Src/main.c **** /* USER CODE END SysInit */
295:Core/Src/main.c ****
296:Core/Src/main.c **** /* Initialize all configured peripherals */
297:Core/Src/main.c **** MX_GPIO_Init();
298:Core/Src/main.c **** MX_DMA_Init();
299:Core/Src/main.c **** MX_DAC1_Init();
300:Core/Src/main.c **** MX_ADC1_Init();
301:Core/Src/main.c **** MX_TIM7_Init();
302:Core/Src/main.c **** MX_TIM6_Init();
303:Core/Src/main.c **** MX_CORDIC_Init();
304:Core/Src/main.c **** MX_USART1_UART_Init();
305:Core/Src/main.c **** MX_TIM8_Init();
306:Core/Src/main.c **** MX_OPAMP1_Init();
307:Core/Src/main.c **** /* USER CODE BEGIN 2 */
308:Core/Src/main.c **** st2_filter_init();
309:Core/Src/main.c **** audio_filter_init();
310:Core/Src/main.c **** // diag();
311:Core/Src/main.c **** HAL_OPAMP_Start(&hopamp1);
312:Core/Src/main.c **** HAL_TIM_Base_Start_IT(&htim7);
313:Core/Src/main.c **** HAL_UART_Receive_IT(&huart1, uart_rx_buf, 1);
314:Core/Src/main.c **** // HAL_UART_Receive_IT(&huart2, uart_rx_buf, 1);
315:Core/Src/main.c ****
316:Core/Src/main.c **** start_receive();
317:Core/Src/main.c **** /* USER CODE END 2 */
318:Core/Src/main.c ****
319:Core/Src/main.c **** /* Infinite loop */
320:Core/Src/main.c **** /* USER CODE BEGIN WHILE */
321:Core/Src/main.c **** while (1){
322:Core/Src/main.c **** /* USER CODE END WHILE */
323:Core/Src/main.c ****
324:Core/Src/main.c **** /* USER CODE BEGIN 3 */
325:Core/Src/main.c **** if(receive){
326:Core/Src/main.c **** if(rx_adc_buffer_ready){
327:Core/Src/main.c **** HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, SET);
328:Core/Src/main.c **** rx_mixer(adc_buffer, ADC_BUFFER_SIZE, if_I, if_Q, nco1_increment);
329:Core/Src/main.c **** HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, RESET);
330:Core/Src/main.c **** rx_adc_buffer_ready = 0;
331:Core/Src/main.c **** }
332:Core/Src/main.c **** if(half_rx_dac_buffer_empty){
333:Core/Src/main.c **** if (modulation == MOD_DC) dc_demodulator(if_I, LF_BUFFER_SIZE, prefilter_lf_buffer);
334:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_demodulator(if_I, if_Q, LF_BUFFER_SI
335:Core/Src/main.c **** else if (modulation == MOD_AM) am_demodulator(if_I, if_Q, LF_BUFFER_SIZE, prefilter_lf_buffer);
336:Core/Src/main.c **** arm_fir_q31(&audio_filter_struct, prefilter_lf_buffer, lf_buffer[lf_buffer_toggle], AUDIO_FILTER
ARM GAS /tmp/ccX7ayIU.s page 23
337:Core/Src/main.c **** half_rx_dac_buffer_empty = 0;
338:Core/Src/main.c **** }
339:Core/Src/main.c **** }
340:Core/Src/main.c **** if (transmit){
341:Core/Src/main.c **** if(half_tx_dac_buffer_empty){
342:Core/Src/main.c **** // HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, SET);
343:Core/Src/main.c **** tx_mixer(tx_dac_buffer[tx_dac_buffer_toggle], TX_DAC_BUFFER_SIZE, if_I, if_Q, nco1_increment);
344:Core/Src/main.c **** half_tx_dac_buffer_empty = 0;
345:Core/Src/main.c **** // HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, RESET);
346:Core/Src/main.c **** }
347:Core/Src/main.c **** if(tx_adc_buffer_ready){
348:Core/Src/main.c **** if (modulation == MOD_DC) dc_modulator(if_I, LF_BUFFER_SIZE, prefilter_lf_buffer);
349:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_modulator(if_I,
350:Core/Src/main.c **** else if (modulation == MOD_AM) am_modulator(if_I, if_Q, LF_BUFFER_SIZE, pre
351:Core/Src/main.c **** }
352:Core/Src/main.c **** }
353:Core/Src/main.c **** if(tick){
354:Core/Src/main.c **** if(receive){
355:Core/Src/main.c **** // TODO
356:Core/Src/main.c **** rx_measure_signal(if_I, LF_BUFFER_SIZE);
357:Core/Src/main.c **** }
358:Core/Src/main.c **** // HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
359:Core/Src/main.c **** while(rx_cmd_rb_in_idx != rx_cmd_rb_out_idx) dequeue_cmd();
360:Core/Src/main.c **** if(state_changed) display_update_state();
361:Core/Src/main.c **** if(uart_tx_buf_in_idx){
362:Core/Src/main.c **** display_write(uart_tx_buf, uart_tx_buf_in_idx);
363:Core/Src/main.c **** uart_tx_buf_in_idx = 0;
364:Core/Src/main.c **** }
365:Core/Src/main.c ****
366:Core/Src/main.c **** tick = 0;
367:Core/Src/main.c **** }
368:Core/Src/main.c **** }
369:Core/Src/main.c **** /* USER CODE END 3 */
370:Core/Src/main.c **** }
371:Core/Src/main.c ****
372:Core/Src/main.c **** /**
373:Core/Src/main.c **** * @brief System Clock Configuration
374:Core/Src/main.c **** * @retval None
375:Core/Src/main.c **** */
376:Core/Src/main.c **** void SystemClock_Config(void)
377:Core/Src/main.c **** {
897 .loc 1 377 0
898 .cfi_startproc
899 @ args = 0, pretend = 0, frame = 144
900 @ frame_needed = 0, uses_anonymous_args = 0
901 0000 30B5 push {r4, r5, lr}
902 .LCFI29:
903 .cfi_def_cfa_offset 12
904 .cfi_offset 4, -12
905 .cfi_offset 5, -8
906 .cfi_offset 14, -4
378:Core/Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0};
907 .loc 1 378 0
908 0002 0021 movs r1, #0
377:Core/Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0};
909 .loc 1 377 0
910 0004 A5B0 sub sp, sp, #148
ARM GAS /tmp/ccX7ayIU.s page 24
911 .LCFI30:
912 .cfi_def_cfa_offset 160
379:Core/Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
913 .loc 1 379 0
914 0006 0C46 mov r4, r1
378:Core/Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0};
915 .loc 1 378 0
916 0008 3822 movs r2, #56
917 000a 05A8 add r0, sp, #20
918 000c FFF7FEFF bl memset
919 .LVL51:
380:Core/Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};
920 .loc 1 380 0
921 0010 2146 mov r1, r4
922 0012 4422 movs r2, #68
923 0014 13A8 add r0, sp, #76
379:Core/Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
924 .loc 1 379 0
925 0016 CDE90044 strd r4, r4, [sp]
926 001a CDE90244 strd r4, r4, [sp, #8]
927 001e 0494 str r4, [sp, #16]
928 .loc 1 380 0
929 0020 FFF7FEFF bl memset
930 .LVL52:
381:Core/Src/main.c ****
382:Core/Src/main.c **** /** Configure the main internal regulator output voltage
383:Core/Src/main.c **** */
384:Core/Src/main.c **** HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1_BOOST);
931 .loc 1 384 0
932 0024 2046 mov r0, r4
933 0026 FFF7FEFF bl HAL_PWREx_ControlVoltageScaling
934 .LVL53:
385:Core/Src/main.c **** /** Initializes the RCC Oscillators according to the specified parameters
386:Core/Src/main.c **** * in the RCC_OscInitTypeDef structure.
387:Core/Src/main.c **** */
388:Core/Src/main.c **** RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
389:Core/Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON;
390:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
391:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
935 .loc 1 391 0
936 002a 0324 movs r4, #3
390:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
937 .loc 1 390 0
938 002c 0223 movs r3, #2
388:Core/Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON;
939 .loc 1 388 0
940 002e 0125 movs r5, #1
389:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
941 .loc 1 389 0
942 0030 4FF48031 mov r1, #65536
392:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLM = RCC_PLLM_DIV2;
393:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 28;
943 .loc 1 393 0
944 0034 1C22 movs r2, #28
394:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
395:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV2;
396:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2;
ARM GAS /tmp/ccX7ayIU.s page 25
397:Core/Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
945 .loc 1 397 0
946 0036 05A8 add r0, sp, #20
389:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
947 .loc 1 389 0
948 0038 CDE90551 strd r5, r1, [sp, #20]
390:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
949 .loc 1 390 0
950 003c 0C93 str r3, [sp, #48]
392:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 28;
951 .loc 1 392 0
952 003e 0E93 str r3, [sp, #56]
395:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2;
953 .loc 1 395 0
954 0040 CDE91033 strd r3, r3, [sp, #64]
396:Core/Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
955 .loc 1 396 0
956 0044 1293 str r3, [sp, #72]
391:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLM = RCC_PLLM_DIV2;
957 .loc 1 391 0
958 0046 0D94 str r4, [sp, #52]
393:Core/Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
959 .loc 1 393 0
960 0048 0F92 str r2, [sp, #60]
961 .loc 1 397 0
962 004a FFF7FEFF bl HAL_RCC_OscConfig
963 .LVL54:
964 004e 08B1 cbz r0, .L71
965 .LBB98:
966 .LBB99:
967 .LBB100:
968 .file 2 "Drivers/CMSIS/Include/cmsis_gcc.h"
1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//**
2:Drivers/CMSIS/Include/cmsis_gcc.h **** * @file cmsis_gcc.h
3:Drivers/CMSIS/Include/cmsis_gcc.h **** * @brief CMSIS compiler GCC header file
4:Drivers/CMSIS/Include/cmsis_gcc.h **** * @version V5.2.0
5:Drivers/CMSIS/Include/cmsis_gcc.h **** * @date 08. May 2019
6:Drivers/CMSIS/Include/cmsis_gcc.h **** ******************************************************************************/
7:Drivers/CMSIS/Include/cmsis_gcc.h **** /*
8:Drivers/CMSIS/Include/cmsis_gcc.h **** * Copyright (c) 2009-2019 Arm Limited. All rights reserved.
9:Drivers/CMSIS/Include/cmsis_gcc.h **** *
10:Drivers/CMSIS/Include/cmsis_gcc.h **** * SPDX-License-Identifier: Apache-2.0
11:Drivers/CMSIS/Include/cmsis_gcc.h **** *
12:Drivers/CMSIS/Include/cmsis_gcc.h **** * Licensed under the Apache License, Version 2.0 (the License); you may
13:Drivers/CMSIS/Include/cmsis_gcc.h **** * not use this file except in compliance with the License.
14:Drivers/CMSIS/Include/cmsis_gcc.h **** * You may obtain a copy of the License at
15:Drivers/CMSIS/Include/cmsis_gcc.h **** *
16:Drivers/CMSIS/Include/cmsis_gcc.h **** * www.apache.org/licenses/LICENSE-2.0
17:Drivers/CMSIS/Include/cmsis_gcc.h **** *
18:Drivers/CMSIS/Include/cmsis_gcc.h **** * Unless required by applicable law or agreed to in writing, software
19:Drivers/CMSIS/Include/cmsis_gcc.h **** * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20:Drivers/CMSIS/Include/cmsis_gcc.h **** * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21:Drivers/CMSIS/Include/cmsis_gcc.h **** * See the License for the specific language governing permissions and
22:Drivers/CMSIS/Include/cmsis_gcc.h **** * limitations under the License.
23:Drivers/CMSIS/Include/cmsis_gcc.h **** */
24:Drivers/CMSIS/Include/cmsis_gcc.h ****
25:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __CMSIS_GCC_H
ARM GAS /tmp/ccX7ayIU.s page 26
26:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_H
27:Drivers/CMSIS/Include/cmsis_gcc.h ****
28:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ignore some GCC warnings */
29:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
30:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wsign-conversion"
31:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wconversion"
32:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wunused-parameter"
33:Drivers/CMSIS/Include/cmsis_gcc.h ****
34:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Fallback for __has_builtin */
35:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __has_builtin
36:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __has_builtin(x) (0)
37:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
38:Drivers/CMSIS/Include/cmsis_gcc.h ****
39:Drivers/CMSIS/Include/cmsis_gcc.h **** /* CMSIS compiler specific defines */
40:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ASM
41:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ASM __asm
42:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
43:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __INLINE
44:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __INLINE inline
45:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
46:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_INLINE
47:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_INLINE static inline
48:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
49:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_FORCEINLINE
50:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline
51:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
52:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __NO_RETURN
53:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __NO_RETURN __attribute__((__noreturn__))
54:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
55:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __USED
56:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __USED __attribute__((used))
57:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
58:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __WEAK
59:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WEAK __attribute__((weak))
60:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
61:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED
62:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED __attribute__((packed, aligned(1)))
63:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
64:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_STRUCT
65:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_STRUCT struct __attribute__((packed, aligned(1)))
66:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_UNION
68:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_UNION union __attribute__((packed, aligned(1)))
69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
70:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32 /* deprecated */
71:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
72:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
73:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
74:Drivers/CMSIS/Include/cmsis_gcc.h **** struct __attribute__((packed)) T_UINT32 { uint32_t v; };
75:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
76:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
77:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
78:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_WRITE
79:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
80:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
81:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
82:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
ARM GAS /tmp/ccX7ayIU.s page 27
83:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
84:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))-
85:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
86:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_READ
87:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
88:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
89:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
90:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
91:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
92:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(add
93:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
94:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_WRITE
95:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
96:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
97:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
98:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
99:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
100:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))-
101:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
102:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_READ
103:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
104:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
105:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
106:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
107:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
108:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(add
109:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
110:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ALIGNED
111:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ALIGNED(x) __attribute__((aligned(x)))
112:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
113:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __RESTRICT
114:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __RESTRICT __restrict
115:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
116:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __COMPILER_BARRIER
117:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __COMPILER_BARRIER() __ASM volatile("":::"memory")
118:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
119:Drivers/CMSIS/Include/cmsis_gcc.h ****
120:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ######################### Startup and Lowlevel Init ######################## */
121:Drivers/CMSIS/Include/cmsis_gcc.h ****
122:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PROGRAM_START
123:Drivers/CMSIS/Include/cmsis_gcc.h ****
124:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
125:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Initializes data and bss sections
126:Drivers/CMSIS/Include/cmsis_gcc.h **** \details This default implementations initialized all data and additional bss
127:Drivers/CMSIS/Include/cmsis_gcc.h **** sections relying on .copy.table and .zero.table specified properly
128:Drivers/CMSIS/Include/cmsis_gcc.h **** in the used linker script.
129:Drivers/CMSIS/Include/cmsis_gcc.h ****
130:Drivers/CMSIS/Include/cmsis_gcc.h **** */
131:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE __NO_RETURN void __cmsis_start(void)
132:Drivers/CMSIS/Include/cmsis_gcc.h **** {
133:Drivers/CMSIS/Include/cmsis_gcc.h **** extern void _start(void) __NO_RETURN;
134:Drivers/CMSIS/Include/cmsis_gcc.h ****
135:Drivers/CMSIS/Include/cmsis_gcc.h **** typedef struct {
136:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t const* src;
137:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t* dest;
138:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t wlen;
139:Drivers/CMSIS/Include/cmsis_gcc.h **** } __copy_table_t;
ARM GAS /tmp/ccX7ayIU.s page 28
140:Drivers/CMSIS/Include/cmsis_gcc.h ****
141:Drivers/CMSIS/Include/cmsis_gcc.h **** typedef struct {
142:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t* dest;
143:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t wlen;
144:Drivers/CMSIS/Include/cmsis_gcc.h **** } __zero_table_t;
145:Drivers/CMSIS/Include/cmsis_gcc.h ****
146:Drivers/CMSIS/Include/cmsis_gcc.h **** extern const __copy_table_t __copy_table_start__;
147:Drivers/CMSIS/Include/cmsis_gcc.h **** extern const __copy_table_t __copy_table_end__;
148:Drivers/CMSIS/Include/cmsis_gcc.h **** extern const __zero_table_t __zero_table_start__;
149:Drivers/CMSIS/Include/cmsis_gcc.h **** extern const __zero_table_t __zero_table_end__;
150:Drivers/CMSIS/Include/cmsis_gcc.h ****
151:Drivers/CMSIS/Include/cmsis_gcc.h **** for (__copy_table_t const* pTable = &__copy_table_start__; pTable < &__copy_table_end__; ++pTable
152:Drivers/CMSIS/Include/cmsis_gcc.h **** for(uint32_t i=0u; i<pTable->wlen; ++i) {
153:Drivers/CMSIS/Include/cmsis_gcc.h **** pTable->dest[i] = pTable->src[i];
154:Drivers/CMSIS/Include/cmsis_gcc.h **** }
155:Drivers/CMSIS/Include/cmsis_gcc.h **** }
156:Drivers/CMSIS/Include/cmsis_gcc.h ****
157:Drivers/CMSIS/Include/cmsis_gcc.h **** for (__zero_table_t const* pTable = &__zero_table_start__; pTable < &__zero_table_end__; ++pTable
158:Drivers/CMSIS/Include/cmsis_gcc.h **** for(uint32_t i=0u; i<pTable->wlen; ++i) {
159:Drivers/CMSIS/Include/cmsis_gcc.h **** pTable->dest[i] = 0u;
160:Drivers/CMSIS/Include/cmsis_gcc.h **** }
161:Drivers/CMSIS/Include/cmsis_gcc.h **** }
162:Drivers/CMSIS/Include/cmsis_gcc.h ****
163:Drivers/CMSIS/Include/cmsis_gcc.h **** _start();
164:Drivers/CMSIS/Include/cmsis_gcc.h **** }
165:Drivers/CMSIS/Include/cmsis_gcc.h ****
166:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PROGRAM_START __cmsis_start
167:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
168:Drivers/CMSIS/Include/cmsis_gcc.h ****
169:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __INITIAL_SP
170:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __INITIAL_SP __StackTop
171:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
172:Drivers/CMSIS/Include/cmsis_gcc.h ****
173:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STACK_LIMIT
174:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STACK_LIMIT __StackLimit
175:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
176:Drivers/CMSIS/Include/cmsis_gcc.h ****
177:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __VECTOR_TABLE
178:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __VECTOR_TABLE __Vectors
179:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
180:Drivers/CMSIS/Include/cmsis_gcc.h ****
181:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __VECTOR_TABLE_ATTRIBUTE
182:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __VECTOR_TABLE_ATTRIBUTE __attribute((used, section(".vectors")))
183:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
184:Drivers/CMSIS/Include/cmsis_gcc.h ****
185:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ########################### Core Function Access ########################### */
186:Drivers/CMSIS/Include/cmsis_gcc.h **** /** \ingroup CMSIS_Core_FunctionInterface
187:Drivers/CMSIS/Include/cmsis_gcc.h **** \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
188:Drivers/CMSIS/Include/cmsis_gcc.h **** @{
189:Drivers/CMSIS/Include/cmsis_gcc.h **** */
190:Drivers/CMSIS/Include/cmsis_gcc.h ****
191:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
192:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable IRQ Interrupts
193:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables IRQ interrupts by clearing the I-bit in the CPSR.
194:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
195:Drivers/CMSIS/Include/cmsis_gcc.h **** */
196:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_irq(void)
ARM GAS /tmp/ccX7ayIU.s page 29
197:Drivers/CMSIS/Include/cmsis_gcc.h **** {
198:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsie i" : : : "memory");
199:Drivers/CMSIS/Include/cmsis_gcc.h **** }
200:Drivers/CMSIS/Include/cmsis_gcc.h ****
201:Drivers/CMSIS/Include/cmsis_gcc.h ****
202:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
203:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Disable IRQ Interrupts
204:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Disables IRQ interrupts by setting the I-bit in the CPSR.
205:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
206:Drivers/CMSIS/Include/cmsis_gcc.h **** */
207:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_irq(void)
208:Drivers/CMSIS/Include/cmsis_gcc.h **** {
209:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsid i" : : : "memory");
969 .loc 2 209 0
970 .syntax unified
971 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
972 0050 72B6 cpsid i
973 @ 0 "" 2
974 .thumb
975 .syntax unified
976 .L72:
977 0052 FEE7 b .L72
978 .L71:
979 0054 0346 mov r3, r0
980 .LBE100:
981 .LBE99:
982 .LBE98:
398:Core/Src/main.c **** {
399:Core/Src/main.c **** Error_Handler();
400:Core/Src/main.c **** }
401:Core/Src/main.c **** /** Initializes the CPU, AHB and APB buses clocks
402:Core/Src/main.c **** */
403:Core/Src/main.c **** RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
983 .loc 1 403 0
984 0056 0F22 movs r2, #15
404:Core/Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
405:Core/Src/main.c **** RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
406:Core/Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
407:Core/Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
408:Core/Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
409:Core/Src/main.c ****
410:Core/Src/main.c **** if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK)
985 .loc 1 410 0
986 0058 6846 mov r0, sp
987 005a 0421 movs r1, #4
406:Core/Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
988 .loc 1 406 0
989 005c CDE90143 strd r4, r3, [sp, #4]
408:Core/Src/main.c ****
990 .loc 1 408 0
991 0060 CDE90333 strd r3, r3, [sp, #12]
403:Core/Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
992 .loc 1 403 0
993 0064 0092 str r2, [sp]
994 .loc 1 410 0
995 0066 FFF7FEFF bl HAL_RCC_ClockConfig
996 .LVL55:
ARM GAS /tmp/ccX7ayIU.s page 30
997 006a 0346 mov r3, r0
998 006c 08B1 cbz r0, .L73
999 .LBB101:
1000 .LBB102:
1001 .LBB103:
1002 .loc 2 209 0
1003 .syntax unified
1004 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1005 006e 72B6 cpsid i
1006 @ 0 "" 2
1007 .thumb
1008 .syntax unified
1009 .L74:
1010 0070 FEE7 b .L74
1011 .L73:
1012 .LBE103:
1013 .LBE102:
1014 .LBE101:
411:Core/Src/main.c **** {
412:Core/Src/main.c **** Error_Handler();
413:Core/Src/main.c **** }
414:Core/Src/main.c **** /** Initializes the peripherals clocks
415:Core/Src/main.c **** */
416:Core/Src/main.c **** PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART1|RCC_PERIPHCLK_ADC12;
1015 .loc 1 416 0
1016 0072 48F20101 movw r1, #32769
417:Core/Src/main.c **** PeriphClkInit.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2;
418:Core/Src/main.c **** PeriphClkInit.Adc12ClockSelection = RCC_ADC12CLKSOURCE_SYSCLK;
1017 .loc 1 418 0
1018 0076 4FF00052 mov r2, #536870912
419:Core/Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
1019 .loc 1 419 0
1020 007a 13A8 add r0, sp, #76
416:Core/Src/main.c **** PeriphClkInit.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2;
1021 .loc 1 416 0
1022 007c CDE91313 strd r1, r3, [sp, #76]
418:Core/Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
1023 .loc 1 418 0
1024 0080 2292 str r2, [sp, #136]
1025 .loc 1 419 0
1026 0082 FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig
1027 .LVL56:
1028 0086 08B1 cbz r0, .L70
1029 .LBB104:
1030 .LBB105:
1031 .LBB106:
1032 .loc 2 209 0
1033 .syntax unified
1034 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1035 0088 72B6 cpsid i
1036 @ 0 "" 2
1037 .thumb
1038 .syntax unified
1039 .L76:
1040 008a FEE7 b .L76
1041 .L70:
1042 .LBE106:
ARM GAS /tmp/ccX7ayIU.s page 31
1043 .LBE105:
1044 .LBE104:
420:Core/Src/main.c **** {
421:Core/Src/main.c **** Error_Handler();
422:Core/Src/main.c **** }
423:Core/Src/main.c **** }
1045 .loc 1 423 0
1046 008c 25B0 add sp, sp, #148
1047 .LCFI31:
1048 .cfi_def_cfa_offset 12
1049 @ sp needed
1050 008e 30BD pop {r4, r5, pc}
1051 .cfi_endproc
1052 .LFE392:
1054 .section .text.startup.main,"ax",%progbits
1055 .align 1
1056 .p2align 2,,3
1057 .global main
1058 .syntax unified
1059 .thumb
1060 .thumb_func
1061 .fpu fpv4-sp-d16
1063 main:
1064 .LFB391:
270:Core/Src/main.c **** /* USER CODE BEGIN 1 */
1065 .loc 1 270 0
1066 .cfi_startproc
1067 @ Volatile: function does not return.
1068 @ args = 0, pretend = 0, frame = 80
1069 @ frame_needed = 0, uses_anonymous_args = 0
1070 0000 2DE98048 push {r7, fp, lr}
1071 .LCFI32:
1072 .cfi_def_cfa_offset 12
1073 .cfi_offset 7, -12
1074 .cfi_offset 11, -8
1075 .cfi_offset 14, -4
272:Core/Src/main.c **** display_init();
1076 .loc 1 272 0
1077 0004 DFF8F4A2 ldr r10, .L166+52
1078 .LBB193:
1079 .LBB194:
1080 .LBB195:
424:Core/Src/main.c ****
425:Core/Src/main.c **** /**
426:Core/Src/main.c **** * @brief ADC1 Initialization Function
427:Core/Src/main.c **** * @param None
428:Core/Src/main.c **** * @retval None
429:Core/Src/main.c **** */
430:Core/Src/main.c **** static void MX_ADC1_Init(void)
431:Core/Src/main.c **** {
432:Core/Src/main.c ****
433:Core/Src/main.c **** /* USER CODE BEGIN ADC1_Init 0 */
434:Core/Src/main.c ****
435:Core/Src/main.c **** /* USER CODE END ADC1_Init 0 */
436:Core/Src/main.c ****
437:Core/Src/main.c **** ADC_MultiModeTypeDef multimode = {0};
438:Core/Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0};
ARM GAS /tmp/ccX7ayIU.s page 32
439:Core/Src/main.c ****
440:Core/Src/main.c **** /* USER CODE BEGIN ADC1_Init 1 */
441:Core/Src/main.c ****
442:Core/Src/main.c **** /* USER CODE END ADC1_Init 1 */
443:Core/Src/main.c **** /** Common config
444:Core/Src/main.c **** */
445:Core/Src/main.c **** hadc1.Instance = ADC1;
446:Core/Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
447:Core/Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B;
448:Core/Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
449:Core/Src/main.c **** hadc1.Init.GainCompensation = 0;
450:Core/Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE;
451:Core/Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;
452:Core/Src/main.c **** hadc1.Init.LowPowerAutoWait = DISABLE;
453:Core/Src/main.c **** hadc1.Init.ContinuousConvMode = ENABLE;
454:Core/Src/main.c **** hadc1.Init.NbrOfConversion = 1;
455:Core/Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE;
456:Core/Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;
457:Core/Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
458:Core/Src/main.c **** hadc1.Init.DMAContinuousRequests = ENABLE;
459:Core/Src/main.c **** hadc1.Init.Overrun = ADC_OVR_DATA_PRESERVED;
460:Core/Src/main.c **** hadc1.Init.OversamplingMode = ENABLE;
461:Core/Src/main.c **** hadc1.Init.Oversampling.Ratio = ADC_OVERSAMPLING_RATIO_2;
462:Core/Src/main.c **** hadc1.Init.Oversampling.RightBitShift = ADC_RIGHTBITSHIFT_NONE;
463:Core/Src/main.c **** hadc1.Init.Oversampling.TriggeredMode = ADC_TRIGGEREDMODE_SINGLE_TRIGGER;
464:Core/Src/main.c **** hadc1.Init.Oversampling.OversamplingStopReset = ADC_REGOVERSAMPLING_CONTINUED_MODE;
465:Core/Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK)
466:Core/Src/main.c **** {
467:Core/Src/main.c **** Error_Handler();
468:Core/Src/main.c **** }
469:Core/Src/main.c **** /** Configure the ADC multi-mode
470:Core/Src/main.c **** */
471:Core/Src/main.c **** multimode.Mode = ADC_MODE_INDEPENDENT;
472:Core/Src/main.c **** if (HAL_ADCEx_MultiModeConfigChannel(&hadc1, &multimode) != HAL_OK)
473:Core/Src/main.c **** {
474:Core/Src/main.c **** Error_Handler();
475:Core/Src/main.c **** }
476:Core/Src/main.c **** /** Configure Regular Channel
477:Core/Src/main.c **** */
478:Core/Src/main.c **** sConfig.Channel = ADC_CHANNEL_VOPAMP1;
479:Core/Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1;
480:Core/Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_47CYCLES_5;
481:Core/Src/main.c **** sConfig.SingleDiff = ADC_SINGLE_ENDED;
482:Core/Src/main.c **** sConfig.OffsetNumber = ADC_OFFSET_NONE;
483:Core/Src/main.c **** sConfig.Offset = 0;
484:Core/Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
485:Core/Src/main.c **** {
486:Core/Src/main.c **** Error_Handler();
487:Core/Src/main.c **** }
488:Core/Src/main.c **** /* USER CODE BEGIN ADC1_Init 2 */
489:Core/Src/main.c ****
490:Core/Src/main.c **** /* USER CODE END ADC1_Init 2 */
491:Core/Src/main.c ****
492:Core/Src/main.c **** }
493:Core/Src/main.c ****
494:Core/Src/main.c **** /**
495:Core/Src/main.c **** * @brief CORDIC Initialization Function
ARM GAS /tmp/ccX7ayIU.s page 33
496:Core/Src/main.c **** * @param None
497:Core/Src/main.c **** * @retval None
498:Core/Src/main.c **** */
499:Core/Src/main.c **** static void MX_CORDIC_Init(void)
500:Core/Src/main.c **** {
501:Core/Src/main.c ****
502:Core/Src/main.c **** /* USER CODE BEGIN CORDIC_Init 0 */
503:Core/Src/main.c **** // CORDIC_HandleTypeDef hcordic = {0};
504:Core/Src/main.c **** CORDIC_ConfigTypeDef sConfig = {0};
505:Core/Src/main.c **** sConfig.Function = CORDIC_FUNCTION_SINE;
506:Core/Src/main.c **** sConfig.Precision = CORDIC_PRECISION_4CYCLES;
507:Core/Src/main.c **** sConfig.Scale = CORDIC_SCALE_0;
508:Core/Src/main.c **** sConfig.NbWrite = CORDIC_NBWRITE_1;
509:Core/Src/main.c **** sConfig.NbRead = CORDIC_NBREAD_1;
510:Core/Src/main.c **** sConfig.InSize = CORDIC_INSIZE_32BITS;
511:Core/Src/main.c **** sConfig.OutSize = CORDIC_OUTSIZE_16BITS;
512:Core/Src/main.c **** /* USER CODE END CORDIC_Init 0 */
513:Core/Src/main.c ****
514:Core/Src/main.c **** /* USER CODE BEGIN CORDIC_Init 1 */
515:Core/Src/main.c **** /* USER CODE END CORDIC_Init 1 */
516:Core/Src/main.c **** hcordic.Instance = CORDIC;
517:Core/Src/main.c **** if (HAL_CORDIC_Init(&hcordic) != HAL_OK)
518:Core/Src/main.c **** {
519:Core/Src/main.c **** Error_Handler();
520:Core/Src/main.c **** }
521:Core/Src/main.c **** /* USER CODE BEGIN CORDIC_Init 2 */
522:Core/Src/main.c **** HAL_CORDIC_Configure(&hcordic, &sConfig);
523:Core/Src/main.c **** /* USER CODE END CORDIC_Init 2 */
524:Core/Src/main.c ****
525:Core/Src/main.c **** }
526:Core/Src/main.c ****
527:Core/Src/main.c **** /**
528:Core/Src/main.c **** * @brief DAC1 Initialization Function
529:Core/Src/main.c **** * @param None
530:Core/Src/main.c **** * @retval None
531:Core/Src/main.c **** */
532:Core/Src/main.c **** static void MX_DAC1_Init(void)
533:Core/Src/main.c **** {
534:Core/Src/main.c ****
535:Core/Src/main.c **** /* USER CODE BEGIN DAC1_Init 0 */
536:Core/Src/main.c ****
537:Core/Src/main.c **** /* USER CODE END DAC1_Init 0 */
538:Core/Src/main.c ****
539:Core/Src/main.c **** DAC_ChannelConfTypeDef sConfig = {0};
540:Core/Src/main.c ****
541:Core/Src/main.c **** /* USER CODE BEGIN DAC1_Init 1 */
542:Core/Src/main.c ****
543:Core/Src/main.c **** /* USER CODE END DAC1_Init 1 */
544:Core/Src/main.c **** /** DAC Initialization
545:Core/Src/main.c **** */
546:Core/Src/main.c **** hdac1.Instance = DAC1;
547:Core/Src/main.c **** if (HAL_DAC_Init(&hdac1) != HAL_OK)
548:Core/Src/main.c **** {
549:Core/Src/main.c **** Error_Handler();
550:Core/Src/main.c **** }
551:Core/Src/main.c **** /** DAC channel OUT1 config
552:Core/Src/main.c **** */
ARM GAS /tmp/ccX7ayIU.s page 34
553:Core/Src/main.c **** sConfig.DAC_HighFrequency = DAC_HIGH_FREQUENCY_INTERFACE_MODE_AUTOMATIC;
554:Core/Src/main.c **** sConfig.DAC_DMADoubleDataMode = DISABLE;
555:Core/Src/main.c **** sConfig.DAC_SignedFormat = ENABLE;
556:Core/Src/main.c **** sConfig.DAC_SampleAndHold = DAC_SAMPLEANDHOLD_DISABLE;
557:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO;
558:Core/Src/main.c **** sConfig.DAC_Trigger2 = DAC_TRIGGER_NONE;
559:Core/Src/main.c **** sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE;
560:Core/Src/main.c **** sConfig.DAC_ConnectOnChipPeripheral = DAC_CHIPCONNECT_EXTERNAL;
561:Core/Src/main.c **** sConfig.DAC_UserTrimming = DAC_TRIMMING_FACTORY;
562:Core/Src/main.c **** if (HAL_DAC_ConfigChannel(&hdac1, &sConfig, DAC_CHANNEL_1) != HAL_OK)
563:Core/Src/main.c **** {
564:Core/Src/main.c **** Error_Handler();
565:Core/Src/main.c **** }
566:Core/Src/main.c **** /** DAC channel OUT2 config
567:Core/Src/main.c **** */
568:Core/Src/main.c **** sConfig.DAC_SignedFormat = DISABLE;
569:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_NONE;
570:Core/Src/main.c **** if (HAL_DAC_ConfigChannel(&hdac1, &sConfig, DAC_CHANNEL_2) != HAL_OK)
571:Core/Src/main.c **** {
572:Core/Src/main.c **** Error_Handler();
573:Core/Src/main.c **** }
574:Core/Src/main.c **** /* USER CODE BEGIN DAC1_Init 2 */
575:Core/Src/main.c ****
576:Core/Src/main.c **** /* USER CODE END DAC1_Init 2 */
577:Core/Src/main.c ****
578:Core/Src/main.c **** }
579:Core/Src/main.c ****
580:Core/Src/main.c **** /**
581:Core/Src/main.c **** * @brief OPAMP1 Initialization Function
582:Core/Src/main.c **** * @param None
583:Core/Src/main.c **** * @retval None
584:Core/Src/main.c **** */
585:Core/Src/main.c **** static void MX_OPAMP1_Init(void)
586:Core/Src/main.c **** {
587:Core/Src/main.c ****
588:Core/Src/main.c **** /* USER CODE BEGIN OPAMP1_Init 0 */
589:Core/Src/main.c ****
590:Core/Src/main.c **** /* USER CODE END OPAMP1_Init 0 */
591:Core/Src/main.c ****
592:Core/Src/main.c **** /* USER CODE BEGIN OPAMP1_Init 1 */
593:Core/Src/main.c ****
594:Core/Src/main.c **** /* USER CODE END OPAMP1_Init 1 */
595:Core/Src/main.c **** hopamp1.Instance = OPAMP1;
596:Core/Src/main.c **** hopamp1.Init.PowerMode = OPAMP_POWERMODE_HIGHSPEED;
597:Core/Src/main.c **** hopamp1.Init.Mode = OPAMP_PGA_MODE;
598:Core/Src/main.c **** hopamp1.Init.NonInvertingInput = OPAMP_NONINVERTINGINPUT_IO0;
599:Core/Src/main.c **** hopamp1.Init.InternalOutput = ENABLE;
600:Core/Src/main.c **** hopamp1.Init.TimerControlledMuxmode = OPAMP_TIMERCONTROLLEDMUXMODE_DISABLE;
601:Core/Src/main.c **** hopamp1.Init.PgaConnect = OPAMP_PGA_CONNECT_INVERTINGINPUT_IO0_BIAS;
602:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_64_OR_MINUS_63;
603:Core/Src/main.c **** hopamp1.Init.UserTrimming = OPAMP_TRIMMING_FACTORY;
604:Core/Src/main.c **** if (HAL_OPAMP_Init(&hopamp1) != HAL_OK)
605:Core/Src/main.c **** {
606:Core/Src/main.c **** Error_Handler();
607:Core/Src/main.c **** }
608:Core/Src/main.c **** /* USER CODE BEGIN OPAMP1_Init 2 */
609:Core/Src/main.c ****
ARM GAS /tmp/ccX7ayIU.s page 35
610:Core/Src/main.c **** /* USER CODE END OPAMP1_Init 2 */
611:Core/Src/main.c ****
612:Core/Src/main.c **** }
613:Core/Src/main.c ****
614:Core/Src/main.c **** /**
615:Core/Src/main.c **** * @brief TIM6 Initialization Function
616:Core/Src/main.c **** * @param None
617:Core/Src/main.c **** * @retval None
618:Core/Src/main.c **** */
619:Core/Src/main.c **** static void MX_TIM6_Init(void)
620:Core/Src/main.c **** {
621:Core/Src/main.c ****
622:Core/Src/main.c **** /* USER CODE BEGIN TIM6_Init 0 */
623:Core/Src/main.c ****
624:Core/Src/main.c **** /* USER CODE END TIM6_Init 0 */
625:Core/Src/main.c ****
626:Core/Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0};
627:Core/Src/main.c ****
628:Core/Src/main.c **** /* USER CODE BEGIN TIM6_Init 1 */
629:Core/Src/main.c ****
630:Core/Src/main.c **** /* USER CODE END TIM6_Init 1 */
631:Core/Src/main.c **** htim6.Instance = TIM6;
632:Core/Src/main.c **** htim6.Init.Prescaler = 0;
633:Core/Src/main.c **** htim6.Init.CounterMode = TIM_COUNTERMODE_UP;
634:Core/Src/main.c **** htim6.Init.Period = 7679;
635:Core/Src/main.c **** htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
636:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim6) != HAL_OK)
637:Core/Src/main.c **** {
638:Core/Src/main.c **** Error_Handler();
639:Core/Src/main.c **** }
640:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_UPDATE;
641:Core/Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
642:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim6, &sMasterConfig) != HAL_OK)
643:Core/Src/main.c **** {
644:Core/Src/main.c **** Error_Handler();
645:Core/Src/main.c **** }
646:Core/Src/main.c **** /* USER CODE BEGIN TIM6_Init 2 */
647:Core/Src/main.c ****
648:Core/Src/main.c **** /* USER CODE END TIM6_Init 2 */
649:Core/Src/main.c ****
650:Core/Src/main.c **** }
651:Core/Src/main.c ****
652:Core/Src/main.c **** /**
653:Core/Src/main.c **** * @brief TIM7 Initialization Function
654:Core/Src/main.c **** * @param None
655:Core/Src/main.c **** * @retval None
656:Core/Src/main.c **** */
657:Core/Src/main.c **** static void MX_TIM7_Init(void)
658:Core/Src/main.c **** {
659:Core/Src/main.c ****
660:Core/Src/main.c **** /* USER CODE BEGIN TIM7_Init 0 */
661:Core/Src/main.c ****
662:Core/Src/main.c **** /* USER CODE END TIM7_Init 0 */
663:Core/Src/main.c ****
664:Core/Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0};
665:Core/Src/main.c ****
666:Core/Src/main.c **** /* USER CODE BEGIN TIM7_Init 1 */
ARM GAS /tmp/ccX7ayIU.s page 36
667:Core/Src/main.c ****
668:Core/Src/main.c **** /* USER CODE END TIM7_Init 1 */
669:Core/Src/main.c **** htim7.Instance = TIM7;
670:Core/Src/main.c **** htim7.Init.Prescaler = 1679;
671:Core/Src/main.c **** htim7.Init.CounterMode = TIM_COUNTERMODE_UP;
672:Core/Src/main.c **** htim7.Init.Period = 999;
673:Core/Src/main.c **** htim7.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
674:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim7) != HAL_OK)
675:Core/Src/main.c **** {
676:Core/Src/main.c **** Error_Handler();
677:Core/Src/main.c **** }
678:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
679:Core/Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
680:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim7, &sMasterConfig) != HAL_OK)
681:Core/Src/main.c **** {
682:Core/Src/main.c **** Error_Handler();
683:Core/Src/main.c **** }
684:Core/Src/main.c **** /* USER CODE BEGIN TIM7_Init 2 */
685:Core/Src/main.c ****
686:Core/Src/main.c **** /* USER CODE END TIM7_Init 2 */
687:Core/Src/main.c ****
688:Core/Src/main.c **** }
689:Core/Src/main.c ****
690:Core/Src/main.c **** /**
691:Core/Src/main.c **** * @brief TIM8 Initialization Function
692:Core/Src/main.c **** * @param None
693:Core/Src/main.c **** * @retval None
694:Core/Src/main.c **** */
695:Core/Src/main.c **** static void MX_TIM8_Init(void)
696:Core/Src/main.c **** {
697:Core/Src/main.c ****
698:Core/Src/main.c **** /* USER CODE BEGIN TIM8_Init 0 */
699:Core/Src/main.c ****
700:Core/Src/main.c **** /* USER CODE END TIM8_Init 0 */
701:Core/Src/main.c ****
702:Core/Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0};
703:Core/Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0};
704:Core/Src/main.c ****
705:Core/Src/main.c **** /* USER CODE BEGIN TIM8_Init 1 */
706:Core/Src/main.c ****
707:Core/Src/main.c **** /* USER CODE END TIM8_Init 1 */
708:Core/Src/main.c **** htim8.Instance = TIM8;
709:Core/Src/main.c **** htim8.Init.Prescaler = 0;
710:Core/Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP;
711:Core/Src/main.c **** htim8.Init.Period = 239;
712:Core/Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
713:Core/Src/main.c **** htim8.Init.RepetitionCounter = 0;
714:Core/Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
715:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK)
716:Core/Src/main.c **** {
717:Core/Src/main.c **** Error_Handler();
718:Core/Src/main.c **** }
719:Core/Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
720:Core/Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK)
721:Core/Src/main.c **** {
722:Core/Src/main.c **** Error_Handler();
723:Core/Src/main.c **** }
ARM GAS /tmp/ccX7ayIU.s page 37
724:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_UPDATE;
725:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET;
726:Core/Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
727:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK)
728:Core/Src/main.c **** {
729:Core/Src/main.c **** Error_Handler();
730:Core/Src/main.c **** }
731:Core/Src/main.c **** /* USER CODE BEGIN TIM8_Init 2 */
732:Core/Src/main.c ****
733:Core/Src/main.c **** /* USER CODE END TIM8_Init 2 */
734:Core/Src/main.c ****
735:Core/Src/main.c **** }
736:Core/Src/main.c ****
737:Core/Src/main.c **** /**
738:Core/Src/main.c **** * @brief USART1 Initialization Function
739:Core/Src/main.c **** * @param None
740:Core/Src/main.c **** * @retval None
741:Core/Src/main.c **** */
742:Core/Src/main.c **** static void MX_USART1_UART_Init(void)
743:Core/Src/main.c **** {
744:Core/Src/main.c ****
745:Core/Src/main.c **** /* USER CODE BEGIN USART1_Init 0 */
746:Core/Src/main.c ****
747:Core/Src/main.c **** /* USER CODE END USART1_Init 0 */
748:Core/Src/main.c ****
749:Core/Src/main.c **** /* USER CODE BEGIN USART1_Init 1 */
750:Core/Src/main.c ****
751:Core/Src/main.c **** /* USER CODE END USART1_Init 1 */
752:Core/Src/main.c **** huart1.Instance = USART1;
753:Core/Src/main.c **** huart1.Init.BaudRate = 115200;
754:Core/Src/main.c **** huart1.Init.WordLength = UART_WORDLENGTH_8B;
755:Core/Src/main.c **** huart1.Init.StopBits = UART_STOPBITS_1;
756:Core/Src/main.c **** huart1.Init.Parity = UART_PARITY_NONE;
757:Core/Src/main.c **** huart1.Init.Mode = UART_MODE_TX_RX;
758:Core/Src/main.c **** huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
759:Core/Src/main.c **** huart1.Init.OverSampling = UART_OVERSAMPLING_16;
760:Core/Src/main.c **** huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
761:Core/Src/main.c **** huart1.Init.ClockPrescaler = UART_PRESCALER_DIV1;
762:Core/Src/main.c **** huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
763:Core/Src/main.c **** if (HAL_UART_Init(&huart1) != HAL_OK)
764:Core/Src/main.c **** {
765:Core/Src/main.c **** Error_Handler();
766:Core/Src/main.c **** }
767:Core/Src/main.c **** if (HAL_UARTEx_SetTxFifoThreshold(&huart1, UART_TXFIFO_THRESHOLD_1_8) != HAL_OK)
768:Core/Src/main.c **** {
769:Core/Src/main.c **** Error_Handler();
770:Core/Src/main.c **** }
771:Core/Src/main.c **** if (HAL_UARTEx_SetRxFifoThreshold(&huart1, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK)
772:Core/Src/main.c **** {
773:Core/Src/main.c **** Error_Handler();
774:Core/Src/main.c **** }
775:Core/Src/main.c **** if (HAL_UARTEx_DisableFifoMode(&huart1) != HAL_OK)
776:Core/Src/main.c **** {
777:Core/Src/main.c **** Error_Handler();
778:Core/Src/main.c **** }
779:Core/Src/main.c **** /* USER CODE BEGIN USART1_Init 2 */
780:Core/Src/main.c ****
ARM GAS /tmp/ccX7ayIU.s page 38
781:Core/Src/main.c **** /* USER CODE END USART1_Init 2 */
782:Core/Src/main.c ****
783:Core/Src/main.c **** }
784:Core/Src/main.c ****
785:Core/Src/main.c **** /**
786:Core/Src/main.c **** * Enable DMA controller clock
787:Core/Src/main.c **** */
788:Core/Src/main.c **** static void MX_DMA_Init(void)
789:Core/Src/main.c **** {
790:Core/Src/main.c ****
791:Core/Src/main.c **** /* DMA controller clock enable */
792:Core/Src/main.c **** __HAL_RCC_DMAMUX1_CLK_ENABLE();
793:Core/Src/main.c **** __HAL_RCC_DMA1_CLK_ENABLE();
794:Core/Src/main.c ****
795:Core/Src/main.c **** /* DMA interrupt init */
796:Core/Src/main.c **** /* DMA1_Channel1_IRQn interrupt configuration */
797:Core/Src/main.c **** HAL_NVIC_SetPriority(DMA1_Channel1_IRQn, 0, 0);
798:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
799:Core/Src/main.c **** /* DMA1_Channel2_IRQn interrupt configuration */
800:Core/Src/main.c **** HAL_NVIC_SetPriority(DMA1_Channel2_IRQn, 0, 0);
801:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel2_IRQn);
802:Core/Src/main.c **** /* DMA1_Channel4_IRQn interrupt configuration */
803:Core/Src/main.c **** HAL_NVIC_SetPriority(DMA1_Channel4_IRQn, 0, 0);
804:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel4_IRQn);
805:Core/Src/main.c **** /* DMA1_Channel5_IRQn interrupt configuration */
806:Core/Src/main.c **** HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 0, 0);
807:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn);
808:Core/Src/main.c ****
809:Core/Src/main.c **** }
810:Core/Src/main.c ****
811:Core/Src/main.c **** /**
812:Core/Src/main.c **** * @brief GPIO Initialization Function
813:Core/Src/main.c **** * @param None
814:Core/Src/main.c **** * @retval None
815:Core/Src/main.c **** */
816:Core/Src/main.c **** static void MX_GPIO_Init(void)
817:Core/Src/main.c **** {
818:Core/Src/main.c **** GPIO_InitTypeDef GPIO_InitStruct = {0};
819:Core/Src/main.c ****
820:Core/Src/main.c **** /* GPIO Ports Clock Enable */
821:Core/Src/main.c **** __HAL_RCC_GPIOF_CLK_ENABLE();
1081 .loc 1 821 0
1082 0008 AF4D ldr r5, .L166
1083 .LBE195:
1084 .LBE194:
1085 .LBE193:
1086 .LBB202:
1087 .LBB203:
546:Core/Src/main.c **** if (HAL_DAC_Init(&hdac1) != HAL_OK)
1088 .loc 1 546 0
1089 000a DFF8F482 ldr r8, .L166+56
1090 .LBE203:
1091 .LBE202:
270:Core/Src/main.c **** /* USER CODE BEGIN 1 */
1092 .loc 1 270 0
1093 000e 97B0 sub sp, sp, #92
1094 .LCFI33:
ARM GAS /tmp/ccX7ayIU.s page 39
1095 .cfi_def_cfa_offset 104
272:Core/Src/main.c **** display_init();
1096 .loc 1 272 0
1097 0010 0024 movs r4, #0
1098 0012 AAF80040 strh r4, [r10] @ movhi
273:Core/Src/main.c **** state_set_default();
1099 .loc 1 273 0
1100 0016 FFF7FEFF bl display_init
1101 .LVL57:
274:Core/Src/main.c **** interface_set_default();
1102 .loc 1 274 0
1103 001a FFF7FEFF bl state_set_default
1104 .LVL58:
275:Core/Src/main.c **** display_update_mode();
1105 .loc 1 275 0
1106 001e FFF7FEFF bl interface_set_default
1107 .LVL59:
276:Core/Src/main.c **** display_update_state();
1108 .loc 1 276 0
1109 0022 FFF7FEFF bl display_update_mode
1110 .LVL60:
277:Core/Src/main.c **** /* USER CODE END 1 */
1111 .loc 1 277 0
1112 0026 FFF7FEFF bl display_update_state
1113 .LVL61:
283:Core/Src/main.c ****
1114 .loc 1 283 0
1115 002a FFF7FEFF bl HAL_Init
1116 .LVL62:
290:Core/Src/main.c ****
1117 .loc 1 290 0
1118 002e FFF7FEFF bl SystemClock_Config
1119 .LVL63:
1120 .LBB214:
1121 .LBB201:
818:Core/Src/main.c ****
1122 .loc 1 818 0
1123 0032 CDE90A44 strd r4, r4, [sp, #40]
1124 0036 CDE90C44 strd r4, r4, [sp, #48]
1125 003a 0E94 str r4, [sp, #56]
1126 .LBB196:
1127 .loc 1 821 0
1128 003c EB6C ldr r3, [r5, #76]
1129 .LBE196:
822:Core/Src/main.c **** __HAL_RCC_GPIOA_CLK_ENABLE();
823:Core/Src/main.c **** __HAL_RCC_GPIOB_CLK_ENABLE();
824:Core/Src/main.c ****
825:Core/Src/main.c **** /*Configure GPIO pin Output Level */
826:Core/Src/main.c **** HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, GPIO_PIN_RESET);
1130 .loc 1 826 0
1131 003e A348 ldr r0, .L166+4
1132 .LBB197:
821:Core/Src/main.c **** __HAL_RCC_GPIOA_CLK_ENABLE();
1133 .loc 1 821 0
1134 0040 43F02003 orr r3, r3, #32
1135 0044 EB64 str r3, [r5, #76]
1136 0046 EB6C ldr r3, [r5, #76]
ARM GAS /tmp/ccX7ayIU.s page 40
1137 0048 03F02003 and r3, r3, #32
1138 004c 0493 str r3, [sp, #16]
1139 004e 049B ldr r3, [sp, #16]
1140 .LBE197:
1141 .LBB198:
822:Core/Src/main.c **** __HAL_RCC_GPIOA_CLK_ENABLE();
1142 .loc 1 822 0
1143 0050 EB6C ldr r3, [r5, #76]
1144 0052 43F00103 orr r3, r3, #1
1145 0056 EB64 str r3, [r5, #76]
1146 0058 EB6C ldr r3, [r5, #76]
1147 005a 03F00103 and r3, r3, #1
1148 005e 0593 str r3, [sp, #20]
1149 0060 059B ldr r3, [sp, #20]
1150 .LBE198:
1151 .LBB199:
823:Core/Src/main.c ****
1152 .loc 1 823 0
1153 0062 EB6C ldr r3, [r5, #76]
1154 0064 43F00203 orr r3, r3, #2
1155 0068 EB64 str r3, [r5, #76]
1156 006a EB6C ldr r3, [r5, #76]
1157 006c 03F00203 and r3, r3, #2
1158 .LBE199:
1159 .loc 1 826 0
1160 0070 2246 mov r2, r4
1161 0072 2021 movs r1, #32
1162 .LBB200:
823:Core/Src/main.c ****
1163 .loc 1 823 0
1164 0074 0693 str r3, [sp, #24]
1165 0076 069B ldr r3, [sp, #24]
1166 .LBE200:
827:Core/Src/main.c ****
828:Core/Src/main.c **** /*Configure GPIO pin : OUT_Pin */
829:Core/Src/main.c **** GPIO_InitStruct.Pin = OUT_Pin;
1167 .loc 1 829 0
1168 0078 0E46 mov r6, r1
830:Core/Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
1169 .loc 1 830 0
1170 007a 0127 movs r7, #1
826:Core/Src/main.c ****
1171 .loc 1 826 0
1172 007c FFF7FEFF bl HAL_GPIO_WritePin
1173 .LVL64:
831:Core/Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL;
832:Core/Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
833:Core/Src/main.c **** HAL_GPIO_Init(OUT_GPIO_Port, &GPIO_InitStruct);
1174 .loc 1 833 0
1175 0080 0AA9 add r1, sp, #40
1176 0082 9248 ldr r0, .L166+4
832:Core/Src/main.c **** HAL_GPIO_Init(OUT_GPIO_Port, &GPIO_InitStruct);
1177 .loc 1 832 0
1178 0084 CDE90C44 strd r4, r4, [sp, #48]
830:Core/Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL;
1179 .loc 1 830 0
1180 0088 CDE90A67 strd r6, r7, [sp, #40]
ARM GAS /tmp/ccX7ayIU.s page 41
1181 .loc 1 833 0
1182 008c FFF7FEFF bl HAL_GPIO_Init
1183 .LVL65:
1184 .LBE201:
1185 .LBE214:
1186 .LBB215:
1187 .LBB216:
1188 .LBB217:
792:Core/Src/main.c **** __HAL_RCC_DMA1_CLK_ENABLE();
1189 .loc 1 792 0
1190 0090 AB6C ldr r3, [r5, #72]
1191 0092 43F00403 orr r3, r3, #4
1192 0096 AB64 str r3, [r5, #72]
1193 0098 AB6C ldr r3, [r5, #72]
1194 009a 03F00403 and r3, r3, #4
1195 009e 0293 str r3, [sp, #8]
1196 00a0 029B ldr r3, [sp, #8]
1197 .LBE217:
1198 .LBB218:
793:Core/Src/main.c ****
1199 .loc 1 793 0
1200 00a2 AB6C ldr r3, [r5, #72]
1201 00a4 3B43 orrs r3, r3, r7
1202 00a6 AB64 str r3, [r5, #72]
1203 00a8 AB6C ldr r3, [r5, #72]
1204 00aa 3B40 ands r3, r3, r7
1205 .LBE218:
797:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
1206 .loc 1 797 0
1207 00ac 2246 mov r2, r4
1208 00ae 2146 mov r1, r4
1209 .LBB219:
793:Core/Src/main.c ****
1210 .loc 1 793 0
1211 00b0 0393 str r3, [sp, #12]
1212 .LBE219:
797:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
1213 .loc 1 797 0
1214 00b2 0B20 movs r0, #11
1215 .LBB220:
793:Core/Src/main.c ****
1216 .loc 1 793 0
1217 00b4 039B ldr r3, [sp, #12]
1218 .LBE220:
797:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn);
1219 .loc 1 797 0
1220 00b6 FFF7FEFF bl HAL_NVIC_SetPriority
1221 .LVL66:
798:Core/Src/main.c **** /* DMA1_Channel2_IRQn interrupt configuration */
1222 .loc 1 798 0
1223 00ba 0B20 movs r0, #11
1224 00bc FFF7FEFF bl HAL_NVIC_EnableIRQ
1225 .LVL67:
800:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel2_IRQn);
1226 .loc 1 800 0
1227 00c0 2246 mov r2, r4
1228 00c2 2146 mov r1, r4
ARM GAS /tmp/ccX7ayIU.s page 42
1229 00c4 0C20 movs r0, #12
1230 00c6 FFF7FEFF bl HAL_NVIC_SetPriority
1231 .LVL68:
801:Core/Src/main.c **** /* DMA1_Channel4_IRQn interrupt configuration */
1232 .loc 1 801 0
1233 00ca 0C20 movs r0, #12
1234 00cc FFF7FEFF bl HAL_NVIC_EnableIRQ
1235 .LVL69:
803:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel4_IRQn);
1236 .loc 1 803 0
1237 00d0 2246 mov r2, r4
1238 00d2 2146 mov r1, r4
1239 00d4 0E20 movs r0, #14
1240 00d6 FFF7FEFF bl HAL_NVIC_SetPriority
1241 .LVL70:
804:Core/Src/main.c **** /* DMA1_Channel5_IRQn interrupt configuration */
1242 .loc 1 804 0
1243 00da 0E20 movs r0, #14
1244 00dc FFF7FEFF bl HAL_NVIC_EnableIRQ
1245 .LVL71:
806:Core/Src/main.c **** HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn);
1246 .loc 1 806 0
1247 00e0 2246 mov r2, r4
1248 00e2 2146 mov r1, r4
1249 00e4 0F20 movs r0, #15
1250 00e6 FFF7FEFF bl HAL_NVIC_SetPriority
1251 .LVL72:
807:Core/Src/main.c ****
1252 .loc 1 807 0
1253 00ea 0F20 movs r0, #15
1254 00ec FFF7FEFF bl HAL_NVIC_EnableIRQ
1255 .LVL73:
1256 .LBE216:
1257 .LBE215:
1258 .LBB221:
1259 .LBB213:
539:Core/Src/main.c ****
1260 .loc 1 539 0
1261 00f0 2146 mov r1, r4
1262 00f2 0AA8 add r0, sp, #40
1263 00f4 3022 movs r2, #48
1264 00f6 FFF7FEFF bl memset
1265 .LVL74:
546:Core/Src/main.c **** if (HAL_DAC_Init(&hdac1) != HAL_OK)
1266 .loc 1 546 0
1267 00fa 754B ldr r3, .L166+8
1268 00fc C8F80030 str r3, [r8]
547:Core/Src/main.c **** {
1269 .loc 1 547 0
1270 0100 4046 mov r0, r8
1271 0102 FFF7FEFF bl HAL_DAC_Init
1272 .LVL75:
1273 0106 08B1 cbz r0, .L79
1274 .LBB204:
1275 .LBB205:
1276 .LBB206:
1277 .loc 2 209 0
ARM GAS /tmp/ccX7ayIU.s page 43
1278 .syntax unified
1279 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1280 0108 72B6 cpsid i
1281 @ 0 "" 2
1282 .thumb
1283 .syntax unified
1284 .L80:
1285 010a FEE7 b .L80
1286 .L79:
1287 .LBE206:
1288 .LBE205:
1289 .LBE204:
556:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO;
1290 .loc 1 556 0
1291 010c 0024 movs r4, #0
1292 010e 1E25 movs r5, #30
1293 0110 CDE90C45 strd r4, [sp, #48]
1294 0114 0024 movs r4, #0
1295 0116 0025 movs r5, #0
553:Core/Src/main.c **** sConfig.DAC_DMADoubleDataMode = DISABLE;
1296 .loc 1 553 0
1297 0118 0223 movs r3, #2
556:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO;
1298 .loc 1 556 0
1299 011a CDE90E45 strd r4, [sp, #56]
562:Core/Src/main.c **** {
1300 .loc 1 562 0
1301 011e 0246 mov r2, r0
554:Core/Src/main.c **** sConfig.DAC_SignedFormat = ENABLE;
1302 .loc 1 554 0
1303 0120 8DF82C00 strb r0, [sp, #44]
562:Core/Src/main.c **** {
1304 .loc 1 562 0
1305 0124 0AA9 add r1, sp, #40
556:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO;
1306 .loc 1 556 0
1307 0126 0124 movs r4, #1
1308 0128 0025 movs r5, #0
562:Core/Src/main.c **** {
1309 .loc 1 562 0
1310 012a 4046 mov r0, r8
553:Core/Src/main.c **** sConfig.DAC_DMADoubleDataMode = DISABLE;
1311 .loc 1 553 0
1312 012c 0A93 str r3, [sp, #40]
555:Core/Src/main.c **** sConfig.DAC_SampleAndHold = DAC_SAMPLEANDHOLD_DISABLE;
1313 .loc 1 555 0
1314 012e 8DF82D70 strb r7, [sp, #45]
556:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_T6_TRGO;
1315 .loc 1 556 0
1316 0132 CDE91045 strd r4, [sp, #64]
562:Core/Src/main.c **** {
1317 .loc 1 562 0
1318 0136 FFF7FEFF bl HAL_DAC_ConfigChannel
1319 .LVL76:
1320 013a 0346 mov r3, r0
1321 013c 08B1 cbz r0, .L81
1322 .LBB207:
ARM GAS /tmp/ccX7ayIU.s page 44
1323 .LBB208:
1324 .LBB209:
1325 .loc 2 209 0
1326 .syntax unified
1327 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1328 013e 72B6 cpsid i
1329 @ 0 "" 2
1330 .thumb
1331 .syntax unified
1332 .L82:
1333 0140 FEE7 b .L82
1334 .L81:
1335 .LBE209:
1336 .LBE208:
1337 .LBE207:
570:Core/Src/main.c **** {
1338 .loc 1 570 0
1339 0142 4046 mov r0, r8
1340 0144 1022 movs r2, #16
1341 0146 0AA9 add r1, sp, #40
568:Core/Src/main.c **** sConfig.DAC_Trigger = DAC_TRIGGER_NONE;
1342 .loc 1 568 0
1343 0148 8DF82D30 strb r3, [sp, #45]
569:Core/Src/main.c **** if (HAL_DAC_ConfigChannel(&hdac1, &sConfig, DAC_CHANNEL_2) != HAL_OK)
1344 .loc 1 569 0
1345 014c 0D93 str r3, [sp, #52]
570:Core/Src/main.c **** {
1346 .loc 1 570 0
1347 014e FFF7FEFF bl HAL_DAC_ConfigChannel
1348 .LVL77:
1349 0152 0546 mov r5, r0
1350 0154 08B1 cbz r0, .L83
1351 .LBB210:
1352 .LBB211:
1353 .LBB212:
1354 .loc 2 209 0
1355 .syntax unified
1356 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1357 0156 72B6 cpsid i
1358 @ 0 "" 2
1359 .thumb
1360 .syntax unified
1361 .L84:
1362 0158 FEE7 b .L84
1363 .L83:
1364 .LBE212:
1365 .LBE211:
1366 .LBE210:
1367 .LBE213:
1368 .LBE221:
1369 .LBB222:
1370 .LBB223:
445:Core/Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
1371 .loc 1 445 0
1372 015a 5E4C ldr r4, .L166+12
437:Core/Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0};
1373 .loc 1 437 0
ARM GAS /tmp/ccX7ayIU.s page 45
1374 015c 0790 str r0, [sp, #28]
438:Core/Src/main.c ****
1375 .loc 1 438 0
1376 015e 0146 mov r1, r0
1377 0160 3246 mov r2, r6
1378 0162 0AA8 add r0, sp, #40
437:Core/Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0};
1379 .loc 1 437 0
1380 0164 CDE90855 strd r5, r5, [sp, #32]
451:Core/Src/main.c **** hadc1.Init.LowPowerAutoWait = DISABLE;
1381 .loc 1 451 0
1382 0168 4FF00408 mov r8, #4
438:Core/Src/main.c ****
1383 .loc 1 438 0
1384 016c FFF7FEFF bl memset
1385 .LVL78:
446:Core/Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B;
1386 .loc 1 446 0
1387 0170 4FF44033 mov r3, #196608
445:Core/Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
1388 .loc 1 445 0
1389 0174 4FF0A042 mov r2, #1342177280
465:Core/Src/main.c **** {
1390 .loc 1 465 0
1391 0178 2046 mov r0, r4
446:Core/Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B;
1392 .loc 1 446 0
1393 017a C4E90023 strd r2, r3, [r4]
448:Core/Src/main.c **** hadc1.Init.GainCompensation = 0;
1394 .loc 1 448 0
1395 017e C4E90255 strd r5, r5, [r4, #8]
450:Core/Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;
1396 .loc 1 450 0
1397 0182 C4E90455 strd r5, r5, [r4, #16]
452:Core/Src/main.c **** hadc1.Init.ContinuousConvMode = ENABLE;
1398 .loc 1 452 0
1399 0186 2577 strb r5, [r4, #28]
453:Core/Src/main.c **** hadc1.Init.NbrOfConversion = 1;
1400 .loc 1 453 0
1401 0188 6777 strb r7, [r4, #29]
454:Core/Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE;
1402 .loc 1 454 0
1403 018a 2762 str r7, [r4, #32]
455:Core/Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;
1404 .loc 1 455 0
1405 018c 84F82450 strb r5, [r4, #36]
457:Core/Src/main.c **** hadc1.Init.DMAContinuousRequests = ENABLE;
1406 .loc 1 457 0
1407 0190 C4E90B55 strd r5, r5, [r4, #44]
458:Core/Src/main.c **** hadc1.Init.Overrun = ADC_OVR_DATA_PRESERVED;
1408 .loc 1 458 0
1409 0194 84F83870 strb r7, [r4, #56]
459:Core/Src/main.c **** hadc1.Init.OversamplingMode = ENABLE;
1410 .loc 1 459 0
1411 0198 E563 str r5, [r4, #60]
460:Core/Src/main.c **** hadc1.Init.Oversampling.Ratio = ADC_OVERSAMPLING_RATIO_2;
1412 .loc 1 460 0
ARM GAS /tmp/ccX7ayIU.s page 46
1413 019a 84F84070 strb r7, [r4, #64]
462:Core/Src/main.c **** hadc1.Init.Oversampling.TriggeredMode = ADC_TRIGGEREDMODE_SINGLE_TRIGGER;
1414 .loc 1 462 0
1415 019e C4E91155 strd r5, r5, [r4, #68]
463:Core/Src/main.c **** hadc1.Init.Oversampling.OversamplingStopReset = ADC_REGOVERSAMPLING_CONTINUED_MODE;
1416 .loc 1 463 0
1417 01a2 E564 str r5, [r4, #76]
464:Core/Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK)
1418 .loc 1 464 0
1419 01a4 2765 str r7, [r4, #80]
451:Core/Src/main.c **** hadc1.Init.LowPowerAutoWait = DISABLE;
1420 .loc 1 451 0
1421 01a6 C4F81880 str r8, [r4, #24]
465:Core/Src/main.c **** {
1422 .loc 1 465 0
1423 01aa FFF7FEFF bl HAL_ADC_Init
1424 .LVL79:
1425 01ae 0346 mov r3, r0
1426 01b0 08B1 cbz r0, .L85
1427 .LBB224:
1428 .LBB225:
1429 .LBB226:
1430 .loc 2 209 0
1431 .syntax unified
1432 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1433 01b2 72B6 cpsid i
1434 @ 0 "" 2
1435 .thumb
1436 .syntax unified
1437 .L86:
1438 01b4 FEE7 b .L86
1439 .L85:
1440 .LBE226:
1441 .LBE225:
1442 .LBE224:
472:Core/Src/main.c **** {
1443 .loc 1 472 0
1444 01b6 07A9 add r1, sp, #28
1445 01b8 2046 mov r0, r4
471:Core/Src/main.c **** if (HAL_ADCEx_MultiModeConfigChannel(&hadc1, &multimode) != HAL_OK)
1446 .loc 1 471 0
1447 01ba 0793 str r3, [sp, #28]
472:Core/Src/main.c **** {
1448 .loc 1 472 0
1449 01bc FFF7FEFF bl HAL_ADCEx_MultiModeConfigChannel
1450 .LVL80:
1451 01c0 0346 mov r3, r0
1452 01c2 08B1 cbz r0, .L87
1453 .LBB227:
1454 .LBB228:
1455 .LBB229:
1456 .loc 2 209 0
1457 .syntax unified
1458 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1459 01c4 72B6 cpsid i
1460 @ 0 "" 2
1461 .thumb
ARM GAS /tmp/ccX7ayIU.s page 47
1462 .syntax unified
1463 .L88:
1464 01c6 FEE7 b .L88
1465 .L87:
1466 .LBE229:
1467 .LBE228:
1468 .LBE227:
478:Core/Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1;
1469 .loc 1 478 0
1470 01c8 4349 ldr r1, .L166+16
483:Core/Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
1471 .loc 1 483 0
1472 01ca 0F93 str r3, [sp, #60]
479:Core/Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_47CYCLES_5;
1473 .loc 1 479 0
1474 01cc 0622 movs r2, #6
481:Core/Src/main.c **** sConfig.OffsetNumber = ADC_OFFSET_NONE;
1475 .loc 1 481 0
1476 01ce 7F23 movs r3, #127
478:Core/Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1;
1477 .loc 1 478 0
1478 01d0 0A91 str r1, [sp, #40]
484:Core/Src/main.c **** {
1479 .loc 1 484 0
1480 01d2 2046 mov r0, r4
1481 01d4 0AA9 add r1, sp, #40
480:Core/Src/main.c **** sConfig.SingleDiff = ADC_SINGLE_ENDED;
1482 .loc 1 480 0
1483 01d6 CDF83080 str r8, [sp, #48]
482:Core/Src/main.c **** sConfig.Offset = 0;
1484 .loc 1 482 0
1485 01da CDF83880 str r8, [sp, #56]
479:Core/Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_47CYCLES_5;
1486 .loc 1 479 0
1487 01de 0B92 str r2, [sp, #44]
481:Core/Src/main.c **** sConfig.OffsetNumber = ADC_OFFSET_NONE;
1488 .loc 1 481 0
1489 01e0 0D93 str r3, [sp, #52]
484:Core/Src/main.c **** {
1490 .loc 1 484 0
1491 01e2 FFF7FEFF bl HAL_ADC_ConfigChannel
1492 .LVL81:
1493 01e6 08B1 cbz r0, .L89
1494 .LBB230:
1495 .LBB231:
1496 .LBB232:
1497 .loc 2 209 0
1498 .syntax unified
1499 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1500 01e8 72B6 cpsid i
1501 @ 0 "" 2
1502 .thumb
1503 .syntax unified
1504 .L90:
1505 01ea FEE7 b .L90
1506 .L89:
1507 .LBE232:
ARM GAS /tmp/ccX7ayIU.s page 48
1508 .LBE231:
1509 .LBE230:
1510 .LBE223:
1511 .LBE222:
1512 .LBB233:
1513 .LBB234:
669:Core/Src/main.c **** htim7.Init.Prescaler = 1679;
1514 .loc 1 669 0
1515 01ec 3B4C ldr r4, .L166+20
1516 01ee 3C49 ldr r1, .L166+24
664:Core/Src/main.c ****
1517 .loc 1 664 0
1518 01f0 0A90 str r0, [sp, #40]
672:Core/Src/main.c **** htim7.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
1519 .loc 1 672 0
1520 01f2 40F2E733 movw r3, #999
670:Core/Src/main.c **** htim7.Init.CounterMode = TIM_COUNTERMODE_UP;
1521 .loc 1 670 0
1522 01f6 40F28F62 movw r2, #1679
664:Core/Src/main.c ****
1523 .loc 1 664 0
1524 01fa CDE90B00 strd r0, r0, [sp, #44]
671:Core/Src/main.c **** htim7.Init.Period = 999;
1525 .loc 1 671 0
1526 01fe A060 str r0, [r4, #8]
673:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim7) != HAL_OK)
1527 .loc 1 673 0
1528 0200 A061 str r0, [r4, #24]
674:Core/Src/main.c **** {
1529 .loc 1 674 0
1530 0202 2046 mov r0, r4
672:Core/Src/main.c **** htim7.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
1531 .loc 1 672 0
1532 0204 E360 str r3, [r4, #12]
669:Core/Src/main.c **** htim7.Init.Prescaler = 1679;
1533 .loc 1 669 0
1534 0206 2160 str r1, [r4]
670:Core/Src/main.c **** htim7.Init.CounterMode = TIM_COUNTERMODE_UP;
1535 .loc 1 670 0
1536 0208 6260 str r2, [r4, #4]
674:Core/Src/main.c **** {
1537 .loc 1 674 0
1538 020a FFF7FEFF bl HAL_TIM_Base_Init
1539 .LVL82:
1540 020e 0346 mov r3, r0
1541 0210 08B1 cbz r0, .L91
1542 .LBB235:
1543 .LBB236:
1544 .LBB237:
1545 .loc 2 209 0
1546 .syntax unified
1547 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1548 0212 72B6 cpsid i
1549 @ 0 "" 2
1550 .thumb
1551 .syntax unified
1552 .L92:
ARM GAS /tmp/ccX7ayIU.s page 49
1553 0214 FEE7 b .L92
1554 .L91:
1555 .LBE237:
1556 .LBE236:
1557 .LBE235:
680:Core/Src/main.c **** {
1558 .loc 1 680 0
1559 0216 2046 mov r0, r4
1560 0218 0AA9 add r1, sp, #40
678:Core/Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
1561 .loc 1 678 0
1562 021a 0A93 str r3, [sp, #40]
679:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim7, &sMasterConfig) != HAL_OK)
1563 .loc 1 679 0
1564 021c 0C93 str r3, [sp, #48]
680:Core/Src/main.c **** {
1565 .loc 1 680 0
1566 021e FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization
1567 .LVL83:
1568 0222 08B1 cbz r0, .L93
1569 .LBB238:
1570 .LBB239:
1571 .LBB240:
1572 .loc 2 209 0
1573 .syntax unified
1574 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1575 0224 72B6 cpsid i
1576 @ 0 "" 2
1577 .thumb
1578 .syntax unified
1579 .L94:
1580 0226 FEE7 b .L94
1581 .L93:
1582 .LBE240:
1583 .LBE239:
1584 .LBE238:
1585 .LBE234:
1586 .LBE233:
1587 .LBB241:
1588 .LBB242:
631:Core/Src/main.c **** htim6.Init.Prescaler = 0;
1589 .loc 1 631 0
1590 0228 2E4C ldr r4, .L166+28
1591 022a 2F4A ldr r2, .L166+32
626:Core/Src/main.c ****
1592 .loc 1 626 0
1593 022c 0A90 str r0, [sp, #40]
634:Core/Src/main.c **** htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
1594 .loc 1 634 0
1595 022e 41F6FF53 movw r3, #7679
626:Core/Src/main.c ****
1596 .loc 1 626 0
1597 0232 CDE90B00 strd r0, r0, [sp, #44]
633:Core/Src/main.c **** htim6.Init.Period = 7679;
1598 .loc 1 633 0
1599 0236 C4E90100 strd r0, r0, [r4, #4]
635:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim6) != HAL_OK)
ARM GAS /tmp/ccX7ayIU.s page 50
1600 .loc 1 635 0
1601 023a A061 str r0, [r4, #24]
636:Core/Src/main.c **** {
1602 .loc 1 636 0
1603 023c 2046 mov r0, r4
634:Core/Src/main.c **** htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
1604 .loc 1 634 0
1605 023e E360 str r3, [r4, #12]
631:Core/Src/main.c **** htim6.Init.Prescaler = 0;
1606 .loc 1 631 0
1607 0240 2260 str r2, [r4]
636:Core/Src/main.c **** {
1608 .loc 1 636 0
1609 0242 FFF7FEFF bl HAL_TIM_Base_Init
1610 .LVL84:
1611 0246 0346 mov r3, r0
1612 0248 08B1 cbz r0, .L95
1613 .LBB243:
1614 .LBB244:
1615 .LBB245:
1616 .loc 2 209 0
1617 .syntax unified
1618 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1619 024a 72B6 cpsid i
1620 @ 0 "" 2
1621 .thumb
1622 .syntax unified
1623 .L96:
1624 024c FEE7 b .L96
1625 .L95:
1626 .LBE245:
1627 .LBE244:
1628 .LBE243:
642:Core/Src/main.c **** {
1629 .loc 1 642 0
1630 024e 2046 mov r0, r4
1631 0250 0AA9 add r1, sp, #40
640:Core/Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
1632 .loc 1 640 0
1633 0252 0A96 str r6, [sp, #40]
641:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim6, &sMasterConfig) != HAL_OK)
1634 .loc 1 641 0
1635 0254 0C93 str r3, [sp, #48]
642:Core/Src/main.c **** {
1636 .loc 1 642 0
1637 0256 FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization
1638 .LVL85:
1639 025a 08B1 cbz r0, .L97
1640 .LBB246:
1641 .LBB247:
1642 .LBB248:
1643 .loc 2 209 0
1644 .syntax unified
1645 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1646 025c 72B6 cpsid i
1647 @ 0 "" 2
1648 .thumb
ARM GAS /tmp/ccX7ayIU.s page 51
1649 .syntax unified
1650 .L98:
1651 025e FEE7 b .L98
1652 .L97:
1653 .LBE248:
1654 .LBE247:
1655 .LBE246:
1656 .LBE242:
1657 .LBE241:
1658 .LBB249:
1659 .LBB250:
516:Core/Src/main.c **** if (HAL_CORDIC_Init(&hcordic) != HAL_OK)
1660 .loc 1 516 0
1661 0260 224F ldr r7, .L166+36
1662 0262 234B ldr r3, .L166+40
1663 0264 3B60 str r3, [r7]
504:Core/Src/main.c **** sConfig.Function = CORDIC_FUNCTION_SINE;
1664 .loc 1 504 0
1665 0266 0023 movs r3, #0
1666 0268 CDE90B33 strd r3, r3, [sp, #44]
1667 026c CDE90E33 strd r3, r3, [sp, #56]
517:Core/Src/main.c **** {
1668 .loc 1 517 0
1669 0270 3846 mov r0, r7
511:Core/Src/main.c **** /* USER CODE END CORDIC_Init 0 */
1670 .loc 1 511 0
1671 0272 4FF40013 mov r3, #2097152
505:Core/Src/main.c **** sConfig.Precision = CORDIC_PRECISION_4CYCLES;
1672 .loc 1 505 0
1673 0276 4FF0010B mov fp, #1
506:Core/Src/main.c **** sConfig.Scale = CORDIC_SCALE_0;
1674 .loc 1 506 0
1675 027a 4026 movs r6, #64
505:Core/Src/main.c **** sConfig.Precision = CORDIC_PRECISION_4CYCLES;
1676 .loc 1 505 0
1677 027c CDF828B0 str fp, [sp, #40]
506:Core/Src/main.c **** sConfig.Scale = CORDIC_SCALE_0;
1678 .loc 1 506 0
1679 0280 1096 str r6, [sp, #64]
511:Core/Src/main.c **** /* USER CODE END CORDIC_Init 0 */
1680 .loc 1 511 0
1681 0282 0D93 str r3, [sp, #52]
517:Core/Src/main.c **** {
1682 .loc 1 517 0
1683 0284 FFF7FEFF bl HAL_CORDIC_Init
1684 .LVL86:
1685 0288 0546 mov r5, r0
1686 028a 08B1 cbz r0, .L99
1687 .LBB251:
1688 .LBB252:
1689 .LBB253:
1690 .loc 2 209 0
1691 .syntax unified
1692 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1693 028c 72B6 cpsid i
1694 @ 0 "" 2
1695 .thumb
ARM GAS /tmp/ccX7ayIU.s page 52
1696 .syntax unified
1697 .L100:
1698 028e FEE7 b .L100
1699 .L99:
1700 .LBE253:
1701 .LBE252:
1702 .LBE251:
1703 .LBE250:
1704 .LBE249:
1705 .LBB255:
1706 .LBB256:
752:Core/Src/main.c **** huart1.Init.BaudRate = 115200;
1707 .loc 1 752 0
1708 0290 184C ldr r4, .L166+44
1709 .LBE256:
1710 .LBE255:
1711 .LBB270:
1712 .LBB254:
522:Core/Src/main.c **** /* USER CODE END CORDIC_Init 2 */
1713 .loc 1 522 0
1714 0292 0AA9 add r1, sp, #40
1715 0294 3846 mov r0, r7
1716 0296 FFF7FEFF bl HAL_CORDIC_Configure
1717 .LVL87:
1718 .LBE254:
1719 .LBE270:
1720 .LBB271:
1721 .LBB269:
752:Core/Src/main.c **** huart1.Init.BaudRate = 115200;
1722 .loc 1 752 0
1723 029a 1749 ldr r1, .L166+48
1724 029c 2160 str r1, [r4]
753:Core/Src/main.c **** huart1.Init.WordLength = UART_WORDLENGTH_8B;
1725 .loc 1 753 0
1726 029e 4FF4E132 mov r2, #115200
757:Core/Src/main.c **** huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
1727 .loc 1 757 0
1728 02a2 0C23 movs r3, #12
763:Core/Src/main.c **** {
1729 .loc 1 763 0
1730 02a4 2046 mov r0, r4
754:Core/Src/main.c **** huart1.Init.StopBits = UART_STOPBITS_1;
1731 .loc 1 754 0
1732 02a6 A560 str r5, [r4, #8]
756:Core/Src/main.c **** huart1.Init.Mode = UART_MODE_TX_RX;
1733 .loc 1 756 0
1734 02a8 C4E90355 strd r5, r5, [r4, #12]
759:Core/Src/main.c **** huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
1735 .loc 1 759 0
1736 02ac C4E90655 strd r5, r5, [r4, #24]
761:Core/Src/main.c **** huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
1737 .loc 1 761 0
1738 02b0 C4E90855 strd r5, r5, [r4, #32]
762:Core/Src/main.c **** if (HAL_UART_Init(&huart1) != HAL_OK)
1739 .loc 1 762 0
1740 02b4 A562 str r5, [r4, #40]
753:Core/Src/main.c **** huart1.Init.WordLength = UART_WORDLENGTH_8B;
ARM GAS /tmp/ccX7ayIU.s page 53
1741 .loc 1 753 0
1742 02b6 6260 str r2, [r4, #4]
757:Core/Src/main.c **** huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
1743 .loc 1 757 0
1744 02b8 6361 str r3, [r4, #20]
763:Core/Src/main.c **** {
1745 .loc 1 763 0
1746 02ba FFF7FEFF bl HAL_UART_Init
1747 .LVL88:
1748 02be 0146 mov r1, r0
1749 02c0 00B3 cbz r0, .L101
1750 .LBB257:
1751 .LBB258:
1752 .LBB259:
1753 .loc 2 209 0
1754 .syntax unified
1755 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1756 02c2 72B6 cpsid i
1757 @ 0 "" 2
1758 .thumb
1759 .syntax unified
1760 .L102:
1761 02c4 FEE7 b .L102
1762 .L167:
1763 02c6 00BF .align 2
1764 .L166:
1765 02c8 00100240 .word 1073876992
1766 02cc 00040048 .word 1207960576
1767 02d0 00080050 .word 1342179328
1768 02d4 00000000 .word hadc1
1769 02d8 002090B6 .word -1232068608
1770 02dc 00000000 .word htim7
1771 02e0 00140040 .word 1073746944
1772 02e4 00000000 .word htim6
1773 02e8 00100040 .word 1073745920
1774 02ec 00000000 .word hcordic
1775 02f0 000C0240 .word 1073875968
1776 02f4 00000000 .word huart1
1777 02f8 00380140 .word 1073821696
1778 02fc 00000000 .word state_changed
1779 0300 00000000 .word hdac1
1780 .L101:
1781 .LBE259:
1782 .LBE258:
1783 .LBE257:
767:Core/Src/main.c **** {
1784 .loc 1 767 0
1785 0304 2046 mov r0, r4
1786 0306 FFF7FEFF bl HAL_UARTEx_SetTxFifoThreshold
1787 .LVL89:
1788 030a 0146 mov r1, r0
1789 030c 08B1 cbz r0, .L103
1790 .LBB260:
1791 .LBB261:
1792 .LBB262:
1793 .loc 2 209 0
1794 .syntax unified
ARM GAS /tmp/ccX7ayIU.s page 54
1795 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1796 030e 72B6 cpsid i
1797 @ 0 "" 2
1798 .thumb
1799 .syntax unified
1800 .L104:
1801 0310 FEE7 b .L104
1802 .L103:
1803 .LBE262:
1804 .LBE261:
1805 .LBE260:
771:Core/Src/main.c **** {
1806 .loc 1 771 0
1807 0312 2046 mov r0, r4
1808 0314 FFF7FEFF bl HAL_UARTEx_SetRxFifoThreshold
1809 .LVL90:
1810 0318 08B1 cbz r0, .L105
1811 .LBB263:
1812 .LBB264:
1813 .LBB265:
1814 .loc 2 209 0
1815 .syntax unified
1816 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1817 031a 72B6 cpsid i
1818 @ 0 "" 2
1819 .thumb
1820 .syntax unified
1821 .L106:
1822 031c FEE7 b .L106
1823 .L105:
1824 .LBE265:
1825 .LBE264:
1826 .LBE263:
775:Core/Src/main.c **** {
1827 .loc 1 775 0
1828 031e 2046 mov r0, r4
1829 0320 FFF7FEFF bl HAL_UARTEx_DisableFifoMode
1830 .LVL91:
1831 0324 08B1 cbz r0, .L107
1832 .LBB266:
1833 .LBB267:
1834 .LBB268:
1835 .loc 2 209 0
1836 .syntax unified
1837 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1838 0326 72B6 cpsid i
1839 @ 0 "" 2
1840 .thumb
1841 .syntax unified
1842 .L108:
1843 0328 FEE7 b .L108
1844 .L107:
1845 .LBE268:
1846 .LBE267:
1847 .LBE266:
1848 .LBE269:
1849 .LBE271:
ARM GAS /tmp/ccX7ayIU.s page 55
1850 .LBB272:
1851 .LBB273:
708:Core/Src/main.c **** htim8.Init.Prescaler = 0;
1852 .loc 1 708 0
1853 032a 814D ldr r5, .L168
1854 032c 814A ldr r2, .L168+4
703:Core/Src/main.c ****
1855 .loc 1 703 0
1856 032e 0990 str r0, [sp, #36]
702:Core/Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0};
1857 .loc 1 702 0
1858 0330 CDE90A00 strd r0, r0, [sp, #40]
1859 0334 CDE90C00 strd r0, r0, [sp, #48]
703:Core/Src/main.c ****
1860 .loc 1 703 0
1861 0338 CDE90700 strd r0, r0, [sp, #28]
710:Core/Src/main.c **** htim8.Init.Period = 239;
1862 .loc 1 710 0
1863 033c C5E90100 strd r0, r0, [r5, #4]
713:Core/Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
1864 .loc 1 713 0
1865 0340 C5E90400 strd r0, r0, [r5, #16]
714:Core/Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK)
1866 .loc 1 714 0
1867 0344 A861 str r0, [r5, #24]
711:Core/Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
1868 .loc 1 711 0
1869 0346 EF23 movs r3, #239
715:Core/Src/main.c **** {
1870 .loc 1 715 0
1871 0348 2846 mov r0, r5
708:Core/Src/main.c **** htim8.Init.Prescaler = 0;
1872 .loc 1 708 0
1873 034a 2A60 str r2, [r5]
711:Core/Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
1874 .loc 1 711 0
1875 034c EB60 str r3, [r5, #12]
715:Core/Src/main.c **** {
1876 .loc 1 715 0
1877 034e FFF7FEFF bl HAL_TIM_Base_Init
1878 .LVL92:
1879 0352 08B1 cbz r0, .L109
1880 .LBB274:
1881 .LBB275:
1882 .LBB276:
1883 .loc 2 209 0
1884 .syntax unified
1885 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1886 0354 72B6 cpsid i
1887 @ 0 "" 2
1888 .thumb
1889 .syntax unified
1890 .L110:
1891 0356 FEE7 b .L110
1892 .L109:
1893 .LBE276:
1894 .LBE275:
ARM GAS /tmp/ccX7ayIU.s page 56
1895 .LBE274:
719:Core/Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK)
1896 .loc 1 719 0
1897 0358 4FF48053 mov r3, #4096
720:Core/Src/main.c **** {
1898 .loc 1 720 0
1899 035c 0AA9 add r1, sp, #40
1900 035e 2846 mov r0, r5
719:Core/Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK)
1901 .loc 1 719 0
1902 0360 0A93 str r3, [sp, #40]
720:Core/Src/main.c **** {
1903 .loc 1 720 0
1904 0362 FFF7FEFF bl HAL_TIM_ConfigClockSource
1905 .LVL93:
1906 0366 0346 mov r3, r0
1907 0368 08B1 cbz r0, .L111
1908 .LBB277:
1909 .LBB278:
1910 .LBB279:
1911 .loc 2 209 0
1912 .syntax unified
1913 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1914 036a 72B6 cpsid i
1915 @ 0 "" 2
1916 .thumb
1917 .syntax unified
1918 .L112:
1919 036c FEE7 b .L112
1920 .L111:
1921 .LBE279:
1922 .LBE278:
1923 .LBE277:
724:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET;
1924 .loc 1 724 0
1925 036e 2022 movs r2, #32
727:Core/Src/main.c **** {
1926 .loc 1 727 0
1927 0370 07A9 add r1, sp, #28
1928 0372 2846 mov r0, r5
726:Core/Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK)
1929 .loc 1 726 0
1930 0374 CDE90833 strd r3, r3, [sp, #32]
724:Core/Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET;
1931 .loc 1 724 0
1932 0378 0792 str r2, [sp, #28]
727:Core/Src/main.c **** {
1933 .loc 1 727 0
1934 037a FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization
1935 .LVL94:
1936 037e 08B1 cbz r0, .L113
1937 .LBB280:
1938 .LBB281:
1939 .LBB282:
1940 .loc 2 209 0
1941 .syntax unified
1942 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
ARM GAS /tmp/ccX7ayIU.s page 57
1943 0380 72B6 cpsid i
1944 @ 0 "" 2
1945 .thumb
1946 .syntax unified
1947 .L114:
1948 0382 FEE7 b .L114
1949 .L113:
1950 .LBE282:
1951 .LBE281:
1952 .LBE280:
1953 .LBE273:
1954 .LBE272:
1955 .LBB283:
1956 .LBB284:
595:Core/Src/main.c **** hopamp1.Init.PowerMode = OPAMP_POWERMODE_HIGHSPEED;
1957 .loc 1 595 0
1958 0384 6C4D ldr r5, .L168+8
1959 0386 6D4B ldr r3, .L168+12
598:Core/Src/main.c **** hopamp1.Init.InternalOutput = ENABLE;
1960 .loc 1 598 0
1961 0388 2861 str r0, [r5, #16]
596:Core/Src/main.c **** hopamp1.Init.Mode = OPAMP_PGA_MODE;
1962 .loc 1 596 0
1963 038a 8021 movs r1, #128
600:Core/Src/main.c **** hopamp1.Init.PgaConnect = OPAMP_PGA_CONNECT_INVERTINGINPUT_IO0_BIAS;
1964 .loc 1 600 0
1965 038c A861 str r0, [r5, #24]
603:Core/Src/main.c **** if (HAL_OPAMP_Init(&hopamp1) != HAL_OK)
1966 .loc 1 603 0
1967 038e E862 str r0, [r5, #44]
601:Core/Src/main.c **** hopamp1.Init.PgaGain = OPAMP_PGA_GAIN_64_OR_MINUS_63;
1968 .loc 1 601 0
1969 0390 4FF40032 mov r2, #131072
595:Core/Src/main.c **** hopamp1.Init.PowerMode = OPAMP_POWERMODE_HIGHSPEED;
1970 .loc 1 595 0
1971 0394 2B60 str r3, [r5]
604:Core/Src/main.c **** {
1972 .loc 1 604 0
1973 0396 2846 mov r0, r5
602:Core/Src/main.c **** hopamp1.Init.UserTrimming = OPAMP_TRIMMING_FACTORY;
1974 .loc 1 602 0
1975 0398 4FF4A033 mov r3, #81920
597:Core/Src/main.c **** hopamp1.Init.NonInvertingInput = OPAMP_NONINVERTINGINPUT_IO0;
1976 .loc 1 597 0
1977 039c AE60 str r6, [r5, #8]
599:Core/Src/main.c **** hopamp1.Init.TimerControlledMuxmode = OPAMP_TIMERCONTROLLEDMUXMODE_DISABLE;
1978 .loc 1 599 0
1979 039e 85F814B0 strb fp, [r5, #20]
596:Core/Src/main.c **** hopamp1.Init.Mode = OPAMP_PGA_MODE;
1980 .loc 1 596 0
1981 03a2 6960 str r1, [r5, #4]
602:Core/Src/main.c **** hopamp1.Init.UserTrimming = OPAMP_TRIMMING_FACTORY;
1982 .loc 1 602 0
1983 03a4 C5E90923 strd r2, r3, [r5, #36]
604:Core/Src/main.c **** {
1984 .loc 1 604 0
1985 03a8 FFF7FEFF bl HAL_OPAMP_Init
ARM GAS /tmp/ccX7ayIU.s page 58
1986 .LVL95:
1987 03ac 08B1 cbz r0, .L115
1988 .LBB285:
1989 .LBB286:
1990 .LBB287:
1991 .loc 2 209 0
1992 .syntax unified
1993 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
1994 03ae 72B6 cpsid i
1995 @ 0 "" 2
1996 .thumb
1997 .syntax unified
1998 .L116:
1999 03b0 FEE7 b .L116
2000 .L115:
2001 .LBE287:
2002 .LBE286:
2003 .LBE285:
2004 .LBE284:
2005 .LBE283:
308:Core/Src/main.c **** audio_filter_init();
2006 .loc 1 308 0
2007 03b2 FFF7FEFF bl st2_filter_init
2008 .LVL96:
309:Core/Src/main.c **** // diag();
2009 .loc 1 309 0
2010 03b6 FFF7FEFF bl audio_filter_init
2011 .LVL97:
311:Core/Src/main.c **** HAL_TIM_Base_Start_IT(&htim7);
2012 .loc 1 311 0
2013 03ba 2846 mov r0, r5
2014 03bc FFF7FEFF bl HAL_OPAMP_Start
2015 .LVL98:
312:Core/Src/main.c **** HAL_UART_Receive_IT(&huart1, uart_rx_buf, 1);
2016 .loc 1 312 0
2017 03c0 5F48 ldr r0, .L168+16
2018 03c2 DFF8DC91 ldr r9, .L168+112
2019 03c6 DFF8DC81 ldr r8, .L168+116
2020 03ca 5E4F ldr r7, .L168+20
2021 03cc 5E4E ldr r6, .L168+24
2022 03ce 5F4D ldr r5, .L168+28
2023 03d0 FFF7FEFF bl HAL_TIM_Base_Start_IT
2024 .LVL99:
313:Core/Src/main.c **** // HAL_UART_Receive_IT(&huart2, uart_rx_buf, 1);
2025 .loc 1 313 0
2026 03d4 5A46 mov r2, fp
2027 03d6 2046 mov r0, r4
2028 03d8 5D49 ldr r1, .L168+32
336:Core/Src/main.c **** half_rx_dac_buffer_empty = 0;
2029 .loc 1 336 0
2030 03da 5E4C ldr r4, .L168+36
334:Core/Src/main.c **** else if (modulation == MOD_AM) am_demodulator(if_I, if_Q, LF_BUFFER_SIZE, prefilter_lf_buffer);
2031 .loc 1 334 0
2032 03dc DFF8C8B1 ldr fp, .L168+120
313:Core/Src/main.c **** // HAL_UART_Receive_IT(&huart2, uart_rx_buf, 1);
2033 .loc 1 313 0
2034 03e0 FFF7FEFF bl HAL_UART_Receive_IT
ARM GAS /tmp/ccX7ayIU.s page 59
2035 .LVL100:
316:Core/Src/main.c **** /* USER CODE END 2 */
2036 .loc 1 316 0
2037 03e4 FFF7FEFF bl start_receive
2038 .LVL101:
2039 .L130:
325:Core/Src/main.c **** if(rx_adc_buffer_ready){
2040 .loc 1 325 0
2041 03e8 99F80030 ldrb r3, [r9] @ zero_extendqisi2
2042 03ec 002B cmp r3, #0
2043 03ee 34D0 beq .L118
326:Core/Src/main.c **** HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, SET);
2044 .loc 1 326 0
2045 03f0 98F80030 ldrb r3, [r8] @ zero_extendqisi2
2046 03f4 ABB1 cbz r3, .L119
327:Core/Src/main.c **** rx_mixer(adc_buffer, ADC_BUFFER_SIZE, if_I, if_Q, nco1_increment);
2047 .loc 1 327 0
2048 03f6 0122 movs r2, #1
2049 03f8 2021 movs r1, #32
2050 03fa 5748 ldr r0, .L168+40
2051 03fc FFF7FEFF bl HAL_GPIO_WritePin
2052 .LVL102:
328:Core/Src/main.c **** HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, RESET);
2053 .loc 1 328 0
2054 0400 3B68 ldr r3, [r7]
2055 0402 0093 str r3, [sp]
2056 0404 554A ldr r2, .L168+44
2057 0406 564B ldr r3, .L168+48
2058 0408 5648 ldr r0, .L168+52
2059 040a 4FF48061 mov r1, #1024
2060 040e FFF7FEFF bl rx_mixer
2061 .LVL103:
329:Core/Src/main.c **** rx_adc_buffer_ready = 0;
2062 .loc 1 329 0
2063 0412 0022 movs r2, #0
2064 0414 2021 movs r1, #32
2065 0416 5048 ldr r0, .L168+40
2066 0418 FFF7FEFF bl HAL_GPIO_WritePin
2067 .LVL104:
330:Core/Src/main.c **** }
2068 .loc 1 330 0
2069 041c 0023 movs r3, #0
2070 041e 88F80030 strb r3, [r8]
2071 .L119:
332:Core/Src/main.c **** if (modulation == MOD_DC) dc_demodulator(if_I, LF_BUFFER_SIZE, prefilter_lf_buffer);
2072 .loc 1 332 0
2073 0422 3378 ldrb r3, [r6] @ zero_extendqisi2
2074 0424 CBB1 cbz r3, .L118
333:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_demodulator(if_I, if_Q, LF_BUFFER_SI
2075 .loc 1 333 0
2076 0426 2B68 ldr r3, [r5]
2077 0428 002B cmp r3, #0
2078 042a 72D0 beq .L161
334:Core/Src/main.c **** else if (modulation == MOD_AM) am_demodulator(if_I, if_Q, LF_BUFFER_SIZE, prefilter_lf_buffer);
2079 .loc 1 334 0
2080 042c 5A1E subs r2, r3, #1
2081 042e 012A cmp r2, #1
ARM GAS /tmp/ccX7ayIU.s page 60
2082 0430 75D9 bls .L162
335:Core/Src/main.c **** arm_fir_q31(&audio_filter_struct, prefilter_lf_buffer, lf_buffer[lf_buffer_toggle], AUDIO_FILTER
2083 .loc 1 335 0
2084 0432 032B cmp r3, #3
2085 0434 05D1 bne .L122
335:Core/Src/main.c **** arm_fir_q31(&audio_filter_struct, prefilter_lf_buffer, lf_buffer[lf_buffer_toggle], AUDIO_FILTER
2086 .loc 1 335 0 is_stmt 0 discriminator 1
2087 0436 2346 mov r3, r4
2088 0438 4022 movs r2, #64
2089 043a 4949 ldr r1, .L168+48
2090 043c 4748 ldr r0, .L168+44
2091 043e FFF7FEFF bl am_demodulator
2092 .LVL105:
2093 .L122:
336:Core/Src/main.c **** half_rx_dac_buffer_empty = 0;
2094 .loc 1 336 0 is_stmt 1
2095 0442 494B ldr r3, .L168+56
2096 0444 4949 ldr r1, .L168+60
2097 0446 1A78 ldrb r2, [r3] @ zero_extendqisi2
2098 0448 4948 ldr r0, .L168+64
2099 044a 4023 movs r3, #64
2100 044c 01EB0222 add r2, r1, r2, lsl #8
2101 0450 2146 mov r1, r4
2102 0452 FFF7FEFF bl arm_fir_q31
2103 .LVL106:
337:Core/Src/main.c **** }
2104 .loc 1 337 0
2105 0456 0023 movs r3, #0
2106 0458 3370 strb r3, [r6]
2107 .L118:
340:Core/Src/main.c **** if(half_tx_dac_buffer_empty){
2108 .loc 1 340 0
2109 045a 464B ldr r3, .L168+68
2110 045c 1B78 ldrb r3, [r3] @ zero_extendqisi2
2111 045e 13B3 cbz r3, .L125
341:Core/Src/main.c **** // HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, SET);
2112 .loc 1 341 0
2113 0460 454B ldr r3, .L168+72
2114 0462 1B78 ldrb r3, [r3] @ zero_extendqisi2
2115 0464 7BB1 cbz r3, .L126
2116 .LBB288:
343:Core/Src/main.c **** half_tx_dac_buffer_empty = 0;
2117 .loc 1 343 0
2118 0466 454B ldr r3, .L168+76
2119 0468 3C4A ldr r2, .L168+44
2120 046a 1878 ldrb r0, [r3] @ zero_extendqisi2
2121 046c 3B68 ldr r3, [r7]
2122 046e 0093 str r3, [sp]
2123 0470 434B ldr r3, .L168+80
2124 0472 4FF48061 mov r1, #1024
2125 0476 03EB0030 add r0, r3, r0, lsl #12
2126 047a 394B ldr r3, .L168+48
2127 047c FFF7FEFF bl tx_mixer
2128 .LVL107:
344:Core/Src/main.c **** // HAL_GPIO_WritePin(OUT_GPIO_Port, OUT_Pin, RESET);
2129 .loc 1 344 0
2130 0480 3D4A ldr r2, .L168+72
ARM GAS /tmp/ccX7ayIU.s page 61
2131 0482 0023 movs r3, #0
2132 0484 1370 strb r3, [r2]
2133 .L126:
2134 .LBE288:
347:Core/Src/main.c **** if (modulation == MOD_DC) dc_modulator(if_I, LF_BUFFER_SIZE, prefilter_lf_buffer);
2135 .loc 1 347 0
2136 0486 3F4B ldr r3, .L168+84
2137 0488 1B78 ldrb r3, [r3] @ zero_extendqisi2
2138 048a 63B1 cbz r3, .L125
348:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_modulator(if_I,
2139 .loc 1 348 0
2140 048c 2B68 ldr r3, [r5]
2141 048e 3BB3 cbz r3, .L163
349:Core/Src/main.c **** else if (modulation == MOD_AM) am_modulator(if_I, if_Q, LF_BUFFER_SIZE, pre
2142 .loc 1 349 0
2143 0490 5A1E subs r2, r3, #1
2144 0492 012A cmp r2, #1
2145 0494 1BD9 bls .L164
350:Core/Src/main.c **** }
2146 .loc 1 350 0
2147 0496 032B cmp r3, #3
2148 0498 05D1 bne .L125
350:Core/Src/main.c **** }
2149 .loc 1 350 0 is_stmt 0 discriminator 1
2150 049a 2346 mov r3, r4
2151 049c 4022 movs r2, #64
2152 049e 3049 ldr r1, .L168+48
2153 04a0 2E48 ldr r0, .L168+44
2154 04a2 FFF7FEFF bl am_modulator
2155 .LVL108:
2156 .L125:
353:Core/Src/main.c **** if(receive){
2157 .loc 1 353 0 is_stmt 1
2158 04a6 384B ldr r3, .L168+88
2159 04a8 1B78 ldrb r3, [r3] @ zero_extendqisi2
2160 04aa 002B cmp r3, #0
2161 04ac 9CD0 beq .L130
354:Core/Src/main.c **** // TODO
2162 .loc 1 354 0
2163 04ae 99F80030 ldrb r3, [r9] @ zero_extendqisi2
2164 04b2 1BB1 cbz r3, .L132
356:Core/Src/main.c **** }
2165 .loc 1 356 0
2166 04b4 4021 movs r1, #64
2167 04b6 2948 ldr r0, .L168+44
2168 04b8 FFF7FEFF bl rx_measure_signal
2169 .LVL109:
2170 .L132:
359:Core/Src/main.c **** if(state_changed) display_update_state();
2171 .loc 1 359 0 discriminator 1
2172 04bc 334B ldr r3, .L168+92
2173 04be 1A78 ldrb r2, [r3] @ zero_extendqisi2
2174 04c0 334B ldr r3, .L168+96
2175 04c2 1B78 ldrb r3, [r3] @ zero_extendqisi2
2176 04c4 9A42 cmp r2, r3
2177 04c6 11D0 beq .L165
2178 .LBB289:
ARM GAS /tmp/ccX7ayIU.s page 62
359:Core/Src/main.c **** if(state_changed) display_update_state();
2179 .loc 1 359 0 is_stmt 0 discriminator 2
2180 04c8 FFF7FEFF bl dequeue_cmd
2181 .LVL110:
2182 04cc F6E7 b .L132
2183 .L164:
2184 .LBE289:
349:Core/Src/main.c **** else if (modulation == MOD_AM) am_modulator(if_I, if_Q, LF_BUFFER_SIZE, pre
2185 .loc 1 349 0 is_stmt 1 discriminator 1
2186 04ce CDF800B0 str fp, [sp]
2187 04d2 2346 mov r3, r4
2188 04d4 4022 movs r2, #64
2189 04d6 2249 ldr r1, .L168+48
2190 04d8 2048 ldr r0, .L168+44
2191 04da FFF7FEFF bl ssb_modulator
2192 .LVL111:
2193 04de E2E7 b .L125
2194 .L163:
348:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_modulator(if_I,
2195 .loc 1 348 0 discriminator 1
2196 04e0 2246 mov r2, r4
2197 04e2 4021 movs r1, #64
2198 04e4 1D48 ldr r0, .L168+44
2199 04e6 FFF7FEFF bl dc_modulator
2200 .LVL112:
2201 04ea DCE7 b .L125
2202 .L165:
360:Core/Src/main.c **** if(uart_tx_buf_in_idx){
2203 .loc 1 360 0
2204 04ec BAF80030 ldrh r3, [r10]
2205 04f0 0BB1 cbz r3, .L134
360:Core/Src/main.c **** if(uart_tx_buf_in_idx){
2206 .loc 1 360 0 is_stmt 0 discriminator 1
2207 04f2 FFF7FEFF bl display_update_state
2208 .LVL113:
2209 .L134:
361:Core/Src/main.c **** display_write(uart_tx_buf, uart_tx_buf_in_idx);
2210 .loc 1 361 0 is_stmt 1
2211 04f6 274B ldr r3, .L168+100
2212 04f8 1A88 ldrh r2, [r3]
2213 04fa 32B1 cbz r2, .L135
2214 .LVL114:
2215 .LBB290:
2216 .LBB291:
184:Core/Src/main.c **** // HAL_UART_Transmit_DMA(&huart2, ptr, len);
2217 .loc 1 184 0
2218 04fc 2649 ldr r1, .L168+104
2219 04fe 2748 ldr r0, .L168+108
2220 0500 FFF7FEFF bl HAL_UART_Transmit_DMA
2221 .LVL115:
2222 .LBE291:
2223 .LBE290:
363:Core/Src/main.c **** }
2224 .loc 1 363 0
2225 0504 234A ldr r2, .L168+100
2226 0506 0023 movs r3, #0
2227 0508 1380 strh r3, [r2] @ movhi
ARM GAS /tmp/ccX7ayIU.s page 63
2228 .L135:
366:Core/Src/main.c **** }
2229 .loc 1 366 0
2230 050a 1F4A ldr r2, .L168+88
2231 050c 0023 movs r3, #0
2232 050e 1370 strb r3, [r2]
2233 0510 6AE7 b .L130
2234 .L161:
333:Core/Src/main.c **** else if(modulation == MOD_LSB || modulation == MOD_USB) ssb_demodulator(if_I, if_Q, LF_BUFFER_SI
2235 .loc 1 333 0 discriminator 1
2236 0512 2246 mov r2, r4
2237 0514 4021 movs r1, #64
2238 0516 1148 ldr r0, .L168+44
2239 0518 FFF7FEFF bl dc_demodulator
2240 .LVL116:
2241 051c 91E7 b .L122
2242 .L162:
334:Core/Src/main.c **** else if (modulation == MOD_AM) am_demodulator(if_I, if_Q, LF_BUFFER_SIZE, prefilter_lf_buffer);
2243 .loc 1 334 0 discriminator 1
2244 051e CDF800B0 str fp, [sp]
2245 0522 2346 mov r3, r4
2246 0524 4022 movs r2, #64
2247 0526 0E49 ldr r1, .L168+48
2248 0528 0C48 ldr r0, .L168+44
2249 052a FFF7FEFF bl ssb_demodulator
2250 .LVL117:
2251 052e 88E7 b .L122
2252 .L169:
2253 .align 2
2254 .L168:
2255 0530 00000000 .word htim8
2256 0534 00340140 .word 1073820672
2257 0538 00000000 .word hopamp1
2258 053c 00030140 .word 1073808128
2259 0540 00000000 .word htim7
2260 0544 00000000 .word nco1_increment
2261 0548 00000000 .word half_rx_dac_buffer_empty
2262 054c 00000000 .word modulation
2263 0550 00000000 .word uart_rx_buf
2264 0554 00000000 .word prefilter_lf_buffer
2265 0558 00040048 .word 1207960576
2266 055c 00000000 .word if_I
2267 0560 00000000 .word if_Q
2268 0564 00000000 .word adc_buffer
2269 0568 00000000 .word lf_buffer_toggle
2270 056c 00000000 .word lf_buffer
2271 0570 00000000 .word audio_filter_struct
2272 0574 00000000 .word transmit
2273 0578 00000000 .word half_tx_dac_buffer_empty
2274 057c 00000000 .word tx_dac_buffer_toggle
2275 0580 00000000 .word tx_dac_buffer
2276 0584 00000000 .word tx_adc_buffer_ready
2277 0588 00000000 .word tick
2278 058c 00000000 .word rx_cmd_rb_in_idx
2279 0590 00000000 .word rx_cmd_rb_out_idx
2280 0594 00000000 .word uart_tx_buf_in_idx
2281 0598 00000000 .word uart_tx_buf
ARM GAS /tmp/ccX7ayIU.s page 64
2282 059c 00000000 .word huart1
2283 05a0 00000000 .word receive
2284 05a4 00000000 .word rx_adc_buffer_ready
2285 05a8 47E17A14 .word 343597383
2286 .cfi_endproc
2287 .LFE391:
2289 .section .text.Error_Handler,"ax",%progbits
2290 .align 1
2291 .p2align 2,,3
2292 .global Error_Handler
2293 .syntax unified
2294 .thumb
2295 .thumb_func
2296 .fpu fpv4-sp-d16
2298 Error_Handler:
2299 .LFB403:
834:Core/Src/main.c ****
835:Core/Src/main.c **** }
836:Core/Src/main.c ****
837:Core/Src/main.c **** /* USER CODE BEGIN 4 */
838:Core/Src/main.c ****
839:Core/Src/main.c **** /* USER CODE END 4 */
840:Core/Src/main.c ****
841:Core/Src/main.c **** /**
842:Core/Src/main.c **** * @brief This function is executed in case of error occurrence.
843:Core/Src/main.c **** * @retval None
844:Core/Src/main.c **** */
845:Core/Src/main.c **** void Error_Handler(void)
846:Core/Src/main.c **** {
2300 .loc 1 846 0
2301 .cfi_startproc
2302 @ Volatile: function does not return.
2303 @ args = 0, pretend = 0, frame = 0
2304 @ frame_needed = 0, uses_anonymous_args = 0
2305 @ link register save eliminated.
2306 .LBB292:
2307 .LBB293:
2308 .loc 2 209 0
2309 .syntax unified
2310 @ 209 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
2311 0000 72B6 cpsid i
2312 @ 0 "" 2
2313 .thumb
2314 .syntax unified
2315 .L171:
2316 0002 FEE7 b .L171
2317 .LBE293:
2318 .LBE292:
2319 .cfi_endproc
2320 .LFE403:
2322 .comm half_rx_dac_buffer_empty,1,1
2323 .comm rx_adc_buffer_ready,1,1
2324 .comm tick,1,1
2325 .comm hdma_usart1_tx,96,4
2326 .comm huart1,144,4
2327 .comm htim8,76,4
2328 .comm htim7,76,4
ARM GAS /tmp/ccX7ayIU.s page 65
2329 .comm htim6,76,4
2330 .comm hopamp1,60,4
2331 .comm hdma_dac1_ch2,96,4
2332 .comm hdma_dac1_ch1,96,4
2333 .comm hdac1,20,4
2334 .comm hcordic,40,4
2335 .comm hdma_adc1,96,4
2336 .comm hadc1,108,4
2337 .text
2338 .Letext0:
2339 .file 3 "/usr/include/newlib/machine/_default_types.h"
2340 .file 4 "/usr/include/newlib/sys/_stdint.h"
2341 .file 5 "Drivers/CMSIS/Include/core_cm4.h"
2342 .file 6 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h"
2343 .file 7 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
2344 .file 8 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g4xx.h"
2345 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
2346 .file 10 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc.h"
2347 .file 11 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_rcc_ex.h"
2348 .file 12 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h"
2349 .file 13 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dma.h"
2350 .file 14 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc.h"
2351 .file 15 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_adc_ex.h"
2352 .file 16 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cordic.h"
2353 .file 17 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_dac.h"
2354 .file 18 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h"
2355 .file 19 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_opamp.h"
2356 .file 20 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim.h"
2357 .file 21 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
2358 .file 22 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
2359 .file 23 "/usr/include/newlib/sys/lock.h"
2360 .file 24 "/usr/include/newlib/sys/_types.h"
2361 .file 25 "/usr/lib/gcc/arm-none-eabi/7.3.1/include/stddef.h"
2362 .file 26 "/usr/include/newlib/sys/reent.h"
2363 .file 27 "/usr/include/newlib/math.h"
2364 .file 28 "Middlewares/Third_Party/ARM_CMSIS/CMSIS/DSP/Include/arm_math.h"
2365 .file 29 "Core/Inc/rx.h"
2366 .file 30 "Core/Inc/tx.h"
2367 .file 31 "Core/Inc/bassofono.h"
2368 .file 32 "Core/Inc/interface.h"
2369 .file 33 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pwr_ex.h"
2370 .file 34 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_cortex.h"
2371 .file 35 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_tim_ex.h"
2372 .file 36 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart_ex.h"
2373 .file 37 "<built-in>"
ARM GAS /tmp/ccX7ayIU.s page 66
DEFINED SYMBOLS
*ABS*:0000000000000000 main.c
/tmp/ccX7ayIU.s:16 .text.HAL_ADC_ConvCpltCallback:0000000000000000 $t
/tmp/ccX7ayIU.s:24 .text.HAL_ADC_ConvCpltCallback:0000000000000000 HAL_ADC_ConvCpltCallback
/tmp/ccX7ayIU.s:47 .text.HAL_ADC_ConvCpltCallback:0000000000000010 $d
*COM*:0000000000000001 rx_adc_buffer_ready
/tmp/ccX7ayIU.s:52 .text.HAL_DAC_ConvHalfCpltCallbackCh1:0000000000000000 $t
/tmp/ccX7ayIU.s:60 .text.HAL_DAC_ConvHalfCpltCallbackCh1:0000000000000000 HAL_DAC_ConvHalfCpltCallbackCh1
/tmp/ccX7ayIU.s:86 .text.HAL_DAC_ConvHalfCpltCallbackCh1:0000000000000010 $d
*COM*:0000000000000001 half_rx_dac_buffer_empty
/tmp/ccX7ayIU.s:92 .text.HAL_DAC_ConvCpltCallbackCh1:0000000000000000 $t
/tmp/ccX7ayIU.s:100 .text.HAL_DAC_ConvCpltCallbackCh1:0000000000000000 HAL_DAC_ConvCpltCallbackCh1
/tmp/ccX7ayIU.s:122 .text.HAL_DAC_ConvCpltCallbackCh1:000000000000000c $d
/tmp/ccX7ayIU.s:128 .text.HAL_DACEx_ConvHalfCpltCallbackCh2:0000000000000000 $t
/tmp/ccX7ayIU.s:136 .text.HAL_DACEx_ConvHalfCpltCallbackCh2:0000000000000000 HAL_DACEx_ConvHalfCpltCallbackCh2
/tmp/ccX7ayIU.s:171 .text.HAL_DACEx_ConvHalfCpltCallbackCh2:0000000000000018 $d
/tmp/ccX7ayIU.s:178 .text.HAL_DACEx_ConvCpltCallbackCh2:0000000000000000 $t
/tmp/ccX7ayIU.s:186 .text.HAL_DACEx_ConvCpltCallbackCh2:0000000000000000 HAL_DACEx_ConvCpltCallbackCh2
/tmp/ccX7ayIU.s:218 .text.HAL_DACEx_ConvCpltCallbackCh2:0000000000000018 $d
/tmp/ccX7ayIU.s:225 .text.HAL_TIM_PeriodElapsedCallback:0000000000000000 $t
/tmp/ccX7ayIU.s:233 .text.HAL_TIM_PeriodElapsedCallback:0000000000000000 HAL_TIM_PeriodElapsedCallback
/tmp/ccX7ayIU.s:256 .text.HAL_TIM_PeriodElapsedCallback:0000000000000010 $d
*COM*:0000000000000001 tick
/tmp/ccX7ayIU.s:262 .text.HAL_UART_RxCpltCallback:0000000000000000 $t
/tmp/ccX7ayIU.s:270 .text.HAL_UART_RxCpltCallback:0000000000000000 HAL_UART_RxCpltCallback
/tmp/ccX7ayIU.s:320 .text.HAL_UART_RxCpltCallback:0000000000000024 $d
*COM*:0000000000000090 huart1
/tmp/ccX7ayIU.s:327 .text.__io_putchar:0000000000000000 $t
/tmp/ccX7ayIU.s:335 .text.__io_putchar:0000000000000000 __io_putchar
/tmp/ccX7ayIU.s:374 .text.__io_putchar:000000000000001c $d
/tmp/ccX7ayIU.s:379 .text._write:0000000000000000 $t
/tmp/ccX7ayIU.s:387 .text._write:0000000000000000 _write
/tmp/ccX7ayIU.s:416 .text._write:0000000000000010 $d
/tmp/ccX7ayIU.s:421 .text.display_write:0000000000000000 $t
/tmp/ccX7ayIU.s:429 .text.display_write:0000000000000000 display_write
/tmp/ccX7ayIU.s:459 .text.display_write:0000000000000014 $d
/tmp/ccX7ayIU.s:464 .text.start_transmit:0000000000000000 $t
/tmp/ccX7ayIU.s:472 .text.start_transmit:0000000000000000 start_transmit
/tmp/ccX7ayIU.s:522 .text.start_transmit:0000000000000030 $d
*COM*:0000000000000014 hdac1
*COM*:000000000000004c htim8
/tmp/ccX7ayIU.s:530 .text.stop_transmit:0000000000000000 $t
/tmp/ccX7ayIU.s:538 .text.stop_transmit:0000000000000000 stop_transmit
/tmp/ccX7ayIU.s:581 .text.stop_transmit:0000000000000024 $d
/tmp/ccX7ayIU.s:588 .text.start_receive:0000000000000000 $t
/tmp/ccX7ayIU.s:596 .text.start_receive:0000000000000000 start_receive
/tmp/ccX7ayIU.s:654 .text.start_receive:0000000000000038 $d
*COM*:000000000000006c hadc1
*COM*:000000000000004c htim6
/tmp/ccX7ayIU.s:664 .text.stop_receive:0000000000000000 $t
/tmp/ccX7ayIU.s:672 .text.stop_receive:0000000000000000 stop_receive
/tmp/ccX7ayIU.s:723 .text.stop_receive:000000000000002c $d
/tmp/ccX7ayIU.s:731 .text.set_gain:0000000000000000 $t
/tmp/ccX7ayIU.s:739 .text.set_gain:0000000000000000 set_gain
/tmp/ccX7ayIU.s:762 .text.set_gain:0000000000000016 $d
/tmp/ccX7ayIU.s:881 .text.set_gain:0000000000000088 $d
*COM*:000000000000003c hopamp1
ARM GAS /tmp/ccX7ayIU.s page 67
/tmp/ccX7ayIU.s:887 .text.SystemClock_Config:0000000000000000 $t
/tmp/ccX7ayIU.s:895 .text.SystemClock_Config:0000000000000000 SystemClock_Config
/tmp/ccX7ayIU.s:1055 .text.startup.main:0000000000000000 $t
/tmp/ccX7ayIU.s:1063 .text.startup.main:0000000000000000 main
/tmp/ccX7ayIU.s:1765 .text.startup.main:00000000000002c8 $d
*COM*:000000000000004c htim7
*COM*:0000000000000028 hcordic
/tmp/ccX7ayIU.s:1785 .text.startup.main:0000000000000304 $t
/tmp/ccX7ayIU.s:2255 .text.startup.main:0000000000000530 $d
/tmp/ccX7ayIU.s:2290 .text.Error_Handler:0000000000000000 $t
/tmp/ccX7ayIU.s:2298 .text.Error_Handler:0000000000000000 Error_Handler
*COM*:0000000000000060 hdma_usart1_tx
*COM*:0000000000000060 hdma_dac1_ch2
*COM*:0000000000000060 hdma_dac1_ch1
*COM*:0000000000000060 hdma_adc1
/tmp/ccX7ayIU.s:767 .text.set_gain:000000000000001b $d
/tmp/ccX7ayIU.s:767 .text.set_gain:000000000000001c $t
UNDEFINED SYMBOLS
lf_buffer_toggle
HAL_GPIO_TogglePin
tx_dac_buffer_toggle
half_tx_dac_buffer_empty
enqueue_cmd
HAL_UART_Receive_IT
uart_rx_buf
HAL_UART_Transmit
HAL_UART_Transmit_DMA
HAL_TIM_Base_Start
HAL_DAC_Start
HAL_DAC_Start_DMA
transmit
tx_dac_buffer
HAL_TIM_Base_Stop
HAL_DAC_Stop
HAL_DAC_Stop_DMA
HAL_ADC_Start_DMA
receive
adc_buffer
lf_buffer
HAL_ADC_Stop_DMA
HAL_OPAMP_Stop
HAL_OPAMP_Start
gain
memset
HAL_PWREx_ControlVoltageScaling
HAL_RCC_OscConfig
HAL_RCC_ClockConfig
HAL_RCCEx_PeriphCLKConfig
display_init
state_set_default
interface_set_default
display_update_mode
display_update_state
HAL_Init
HAL_GPIO_WritePin
HAL_GPIO_Init
ARM GAS /tmp/ccX7ayIU.s page 68
HAL_NVIC_SetPriority
HAL_NVIC_EnableIRQ
HAL_DAC_Init
HAL_DAC_ConfigChannel
HAL_ADC_Init
HAL_ADCEx_MultiModeConfigChannel
HAL_ADC_ConfigChannel
HAL_TIM_Base_Init
HAL_TIMEx_MasterConfigSynchronization
HAL_CORDIC_Init
HAL_CORDIC_Configure
HAL_UART_Init
state_changed
HAL_UARTEx_SetTxFifoThreshold
HAL_UARTEx_SetRxFifoThreshold
HAL_UARTEx_DisableFifoMode
HAL_TIM_ConfigClockSource
HAL_OPAMP_Init
st2_filter_init
audio_filter_init
HAL_TIM_Base_Start_IT
rx_mixer
am_demodulator
arm_fir_q31
tx_mixer
am_modulator
rx_measure_signal
dequeue_cmd
ssb_modulator
dc_modulator
dc_demodulator
ssb_demodulator
nco1_increment
modulation
prefilter_lf_buffer
if_I
if_Q
audio_filter_struct
tx_adc_buffer_ready
rx_cmd_rb_in_idx
rx_cmd_rb_out_idx
uart_tx_buf_in_idx
uart_tx_buf