PDU_Code/build/Channel_Control.lst

365 lines
18 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 C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 1
1 .cpu cortex-m4
2 .arch armv7e-m
3 .fpu fpv4-sp-d16
4 .eabi_attribute 27, 1
5 .eabi_attribute 28, 1
6 .eabi_attribute 20, 1
7 .eabi_attribute 21, 1
8 .eabi_attribute 23, 3
9 .eabi_attribute 24, 1
10 .eabi_attribute 25, 1
11 .eabi_attribute 26, 1
12 .eabi_attribute 30, 1
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "Channel_Control.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Core/Src/Channel_Control.c"
20 .section .text.ChannelControl_UpdateGPIOs,"ax",%progbits
21 .align 1
22 .global ChannelControl_UpdateGPIOs
23 .syntax unified
24 .thumb
25 .thumb_func
27 ChannelControl_UpdateGPIOs:
28 .LVL0:
29 .LFB131:
1:Core/Src/Channel_Control.c **** /*
2:Core/Src/Channel_Control.c **** * Channel_Control.c
3:Core/Src/Channel_Control.c **** *
4:Core/Src/Channel_Control.c **** * Created on: 24. April, 2024
5:Core/Src/Channel_Control.c **** * Author: nived
6:Core/Src/Channel_Control.c **** */
7:Core/Src/Channel_Control.c ****
8:Core/Src/Channel_Control.c **** #include "Channel_Control.h"
9:Core/Src/Channel_Control.c **** #include "PCA9535D_Driver.h"
10:Core/Src/Channel_Control.c ****
11:Core/Src/Channel_Control.c **** PortExtenderGPIO EN_Ports;
12:Core/Src/Channel_Control.c ****
13:Core/Src/Channel_Control.c **** uint8_t timer3_running = 0;
14:Core/Src/Channel_Control.c **** uint8_t timer2_running = 0;
15:Core/Src/Channel_Control.c **** TIM_HandleTypeDef* pwmtimer3;
16:Core/Src/Channel_Control.c **** TIM_HandleTypeDef* pwmtimer2;
17:Core/Src/Channel_Control.c ****
18:Core/Src/Channel_Control.c **** void ChannelControl_init(I2C_HandleTypeDef* hi2c, TIM_HandleTypeDef* timer3,
19:Core/Src/Channel_Control.c **** TIM_HandleTypeDef* timer2) {
20:Core/Src/Channel_Control.c ****
21:Core/Src/Channel_Control.c **** pwmtimer3 = timer3;
22:Core/Src/Channel_Control.c **** pwmtimer2 = timer2;
23:Core/Src/Channel_Control.c **** PCA9535_init(hi2c, 0);
24:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTA, 0x00);
25:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTB, 0x00);
26:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortDirection(PC9535_PORTA, 0x00);
27:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortDirection(PC9535_PORTB, 0x00);
28:Core/Src/Channel_Control.c ****
29:Core/Src/Channel_Control.c **** EN_Ports.porta.porta = 0;
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 2
30:Core/Src/Channel_Control.c **** EN_Ports.portb.portb = 0;
31:Core/Src/Channel_Control.c **** EN_Ports.porta.alwayson = 1;
32:Core/Src/Channel_Control.c **** ChannelControl_UpdateGPIOs(EN_Ports);
33:Core/Src/Channel_Control.c **** ChannelControl_UpdatePWMs(0, 0, 0, 0);
34:Core/Src/Channel_Control.c **** }
35:Core/Src/Channel_Control.c ****
36:Core/Src/Channel_Control.c **** void ChannelControl_UpdateGPIOs(PortExtenderGPIO UpdatePorts) { // ctrl + left click auf portextend
30 .loc 1 36 63 view -0
31 .cfi_startproc
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
34 .loc 1 36 63 is_stmt 0 view .LVU1
35 0000 10B5 push {r4, lr}
36 .cfi_def_cfa_offset 8
37 .cfi_offset 4, -8
38 .cfi_offset 14, -4
37:Core/Src/Channel_Control.c **** EN_Ports = UpdatePorts;
39 .loc 1 37 3 is_stmt 1 view .LVU2
40 .loc 1 37 12 is_stmt 0 view .LVU3
41 0002 0B4B ldr r3, .L3
42 0004 1880 strh r0, [r3] @ movhi
38:Core/Src/Channel_Control.c **** UpdatePorts.porta.alwayson = 1;// Always on stays always on
43 .loc 1 38 3 is_stmt 1 view .LVU4
44 .loc 1 38 30 is_stmt 0 view .LVU5
45 0006 40F08004 orr r4, r0, #128
39:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTA, UpdatePorts.porta.porta);
46 .loc 1 39 2 is_stmt 1 view .LVU6
47 000a E1B2 uxtb r1, r4
48 000c 0020 movs r0, #0
49 .LVL1:
50 .loc 1 39 2 is_stmt 0 view .LVU7
51 000e FFF7FEFF bl PCA9535_setGPIOPortOutput
52 .LVL2:
40:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTB, UpdatePorts.portb.portb);
53 .loc 1 40 2 is_stmt 1 view .LVU8
54 0012 C4F30721 ubfx r1, r4, #8, #8
55 0016 0120 movs r0, #1
56 0018 FFF7FEFF bl PCA9535_setGPIOPortOutput
57 .LVL3:
41:Core/Src/Channel_Control.c **** gpio_port_b testb={};
58 .loc 1 41 2 view .LVU9
42:Core/Src/Channel_Control.c **** testb.en16=1;
59 .loc 1 42 2 view .LVU10
43:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTB, testb.portb);
60 .loc 1 43 2 view .LVU11
61 001c 8021 movs r1, #128
62 001e 0120 movs r0, #1
63 0020 FFF7FEFF bl PCA9535_setGPIOPortOutput
64 .LVL4:
44:Core/Src/Channel_Control.c **** gpio_port_a testa={};
65 .loc 1 44 3 view .LVU12
45:Core/Src/Channel_Control.c **** testa.en1=1;
66 .loc 1 45 3 view .LVU13
46:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTA, testa.porta);
67 .loc 1 46 3 view .LVU14
68 0024 0821 movs r1, #8
69 0026 0020 movs r0, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 3
70 0028 FFF7FEFF bl PCA9535_setGPIOPortOutput
71 .LVL5:
47:Core/Src/Channel_Control.c ****
48:Core/Src/Channel_Control.c ****
49:Core/Src/Channel_Control.c **** }
72 .loc 1 49 1 is_stmt 0 view .LVU15
73 002c 10BD pop {r4, pc}
74 .L4:
75 002e 00BF .align 2
76 .L3:
77 0030 00000000 .word EN_Ports
78 .cfi_endproc
79 .LFE131:
81 .section .text.ChannelControl_init,"ax",%progbits
82 .align 1
83 .global ChannelControl_init
84 .syntax unified
85 .thumb
86 .thumb_func
88 ChannelControl_init:
89 .LVL6:
90 .LFB130:
19:Core/Src/Channel_Control.c ****
91 .loc 1 19 53 is_stmt 1 view -0
92 .cfi_startproc
93 @ args = 0, pretend = 0, frame = 0
94 @ frame_needed = 0, uses_anonymous_args = 0
19:Core/Src/Channel_Control.c ****
95 .loc 1 19 53 is_stmt 0 view .LVU17
96 0000 08B5 push {r3, lr}
97 .cfi_def_cfa_offset 8
98 .cfi_offset 3, -8
99 .cfi_offset 14, -4
21:Core/Src/Channel_Control.c **** pwmtimer2 = timer2;
100 .loc 1 21 3 is_stmt 1 view .LVU18
21:Core/Src/Channel_Control.c **** pwmtimer2 = timer2;
101 .loc 1 21 13 is_stmt 0 view .LVU19
102 0002 104B ldr r3, .L7
103 0004 1960 str r1, [r3]
22:Core/Src/Channel_Control.c **** PCA9535_init(hi2c, 0);
104 .loc 1 22 3 is_stmt 1 view .LVU20
22:Core/Src/Channel_Control.c **** PCA9535_init(hi2c, 0);
105 .loc 1 22 13 is_stmt 0 view .LVU21
106 0006 104B ldr r3, .L7+4
107 0008 1A60 str r2, [r3]
23:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTA, 0x00);
108 .loc 1 23 3 is_stmt 1 view .LVU22
109 000a 0021 movs r1, #0
110 .LVL7:
23:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTA, 0x00);
111 .loc 1 23 3 is_stmt 0 view .LVU23
112 000c FFF7FEFF bl PCA9535_init
113 .LVL8:
24:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortOutput(PC9535_PORTB, 0x00);
114 .loc 1 24 3 is_stmt 1 view .LVU24
115 0010 0021 movs r1, #0
116 0012 0846 mov r0, r1
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 4
117 0014 FFF7FEFF bl PCA9535_setGPIOPortOutput
118 .LVL9:
25:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortDirection(PC9535_PORTA, 0x00);
119 .loc 1 25 3 view .LVU25
120 0018 0021 movs r1, #0
121 001a 0120 movs r0, #1
122 001c FFF7FEFF bl PCA9535_setGPIOPortOutput
123 .LVL10:
26:Core/Src/Channel_Control.c **** PCA9535_setGPIOPortDirection(PC9535_PORTB, 0x00);
124 .loc 1 26 3 view .LVU26
125 0020 0021 movs r1, #0
126 0022 0846 mov r0, r1
127 0024 FFF7FEFF bl PCA9535_setGPIOPortDirection
128 .LVL11:
27:Core/Src/Channel_Control.c ****
129 .loc 1 27 3 view .LVU27
130 0028 0021 movs r1, #0
131 002a 0120 movs r0, #1
132 002c FFF7FEFF bl PCA9535_setGPIOPortDirection
133 .LVL12:
29:Core/Src/Channel_Control.c **** EN_Ports.portb.portb = 0;
134 .loc 1 29 3 view .LVU28
29:Core/Src/Channel_Control.c **** EN_Ports.portb.portb = 0;
135 .loc 1 29 24 is_stmt 0 view .LVU29
136 0030 064B ldr r3, .L7+8
137 0032 0022 movs r2, #0
138 0034 1A70 strb r2, [r3]
30:Core/Src/Channel_Control.c **** EN_Ports.porta.alwayson = 1;
139 .loc 1 30 3 is_stmt 1 view .LVU30
30:Core/Src/Channel_Control.c **** EN_Ports.porta.alwayson = 1;
140 .loc 1 30 24 is_stmt 0 view .LVU31
141 0036 5A70 strb r2, [r3, #1]
31:Core/Src/Channel_Control.c **** ChannelControl_UpdateGPIOs(EN_Ports);
142 .loc 1 31 3 is_stmt 1 view .LVU32
31:Core/Src/Channel_Control.c **** ChannelControl_UpdateGPIOs(EN_Ports);
143 .loc 1 31 27 is_stmt 0 view .LVU33
144 0038 8022 movs r2, #128
145 003a 1A70 strb r2, [r3]
32:Core/Src/Channel_Control.c **** ChannelControl_UpdatePWMs(0, 0, 0, 0);
146 .loc 1 32 3 is_stmt 1 view .LVU34
147 003c 1888 ldrh r0, [r3]
148 003e FFF7FEFF bl ChannelControl_UpdateGPIOs
149 .LVL13:
33:Core/Src/Channel_Control.c **** }
150 .loc 1 33 3 view .LVU35
34:Core/Src/Channel_Control.c ****
151 .loc 1 34 1 is_stmt 0 view .LVU36
152 0042 08BD pop {r3, pc}
153 .L8:
154 .align 2
155 .L7:
156 0044 00000000 .word pwmtimer3
157 0048 00000000 .word pwmtimer2
158 004c 00000000 .word EN_Ports
159 .cfi_endproc
160 .LFE130:
162 .section .text.ChannelControl_UpdatePWMs,"ax",%progbits
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 5
163 .align 1
164 .global ChannelControl_UpdatePWMs
165 .syntax unified
166 .thumb
167 .thumb_func
169 ChannelControl_UpdatePWMs:
170 .LVL14:
171 .LFB132:
50:Core/Src/Channel_Control.c ****
51:Core/Src/Channel_Control.c **** void ChannelControl_UpdatePWMs(uint8_t radiatorfans,uint8_t tsacfans , uint8_t pwmaggregat,
52:Core/Src/Channel_Control.c **** uint8_t pwmpumps){
172 .loc 1 52 49 is_stmt 1 view -0
173 .cfi_startproc
174 @ args = 0, pretend = 0, frame = 0
175 @ frame_needed = 0, uses_anonymous_args = 0
176 @ link register save eliminated.
53:Core/Src/Channel_Control.c ****
54:Core/Src/Channel_Control.c **** return;
177 .loc 1 54 3 view .LVU38
55:Core/Src/Channel_Control.c ****
56:Core/Src/Channel_Control.c **** pwmtimer3->Instance->CCR4 = pwmpumps << 8;
57:Core/Src/Channel_Control.c **** pwmtimer3->Instance->CCR1 = radiatorfans << 8;
58:Core/Src/Channel_Control.c **** pwmtimer2->Instance->CCR2 = tsacfans << 8;
59:Core/Src/Channel_Control.c ****
60:Core/Src/Channel_Control.c **** if (timer3_running) {
61:Core/Src/Channel_Control.c **** if ((pwmpumps == 0) && (radiatorfans == 0)) {
62:Core/Src/Channel_Control.c **** timer3_running = 0;
63:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Stop(pwmtimer3, TIM_CHANNEL_4);
64:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Stop(pwmtimer3, TIM_CHANNEL_1);
65:Core/Src/Channel_Control.c **** }
66:Core/Src/Channel_Control.c **** } else {
67:Core/Src/Channel_Control.c **** if ( (pwmpumps != 0) || (radiatorfans != 0)) {
68:Core/Src/Channel_Control.c **** timer3_running = 1;
69:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Start(pwmtimer3, TIM_CHANNEL_4);
70:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Start(pwmtimer3, TIM_CHANNEL_1);
71:Core/Src/Channel_Control.c **** }
72:Core/Src/Channel_Control.c **** }
73:Core/Src/Channel_Control.c ****
74:Core/Src/Channel_Control.c **** if (timer2_running) {
75:Core/Src/Channel_Control.c **** if (tsacfans == 0) {
76:Core/Src/Channel_Control.c **** timer2_running = 0;
77:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Stop(pwmtimer2, TIM_CHANNEL_2);
78:Core/Src/Channel_Control.c **** }
79:Core/Src/Channel_Control.c **** } else {
80:Core/Src/Channel_Control.c **** if (tsacfans != 0) {
81:Core/Src/Channel_Control.c **** timer2_running = 1;
82:Core/Src/Channel_Control.c **** HAL_TIM_PWM_Start(pwmtimer2, TIM_CHANNEL_2);
83:Core/Src/Channel_Control.c **** }
84:Core/Src/Channel_Control.c **** }
85:Core/Src/Channel_Control.c ****
86:Core/Src/Channel_Control.c ****
87:Core/Src/Channel_Control.c **** }
178 .loc 1 87 1 is_stmt 0 view .LVU39
179 0000 7047 bx lr
180 .cfi_endproc
181 .LFE132:
183 .global pwmtimer2
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 6
184 .section .bss.pwmtimer2,"aw",%nobits
185 .align 2
188 pwmtimer2:
189 0000 00000000 .space 4
190 .global pwmtimer3
191 .section .bss.pwmtimer3,"aw",%nobits
192 .align 2
195 pwmtimer3:
196 0000 00000000 .space 4
197 .global timer2_running
198 .section .bss.timer2_running,"aw",%nobits
201 timer2_running:
202 0000 00 .space 1
203 .global timer3_running
204 .section .bss.timer3_running,"aw",%nobits
207 timer3_running:
208 0000 00 .space 1
209 .global EN_Ports
210 .section .bss.EN_Ports,"aw",%nobits
211 .align 2
214 EN_Ports:
215 0000 0000 .space 2
216 .text
217 .Letext0:
218 .file 2 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
219 .file 3 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
220 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
221 .file 5 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
222 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
223 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_i2c.h"
224 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_tim.h"
225 .file 9 "Core/Inc/Channel_Control.h"
226 .file 10 "Core/Inc/PCA9535D_Driver.h"
ARM GAS C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s page 7
DEFINED SYMBOLS
*ABS*:00000000 Channel_Control.c
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:21 .text.ChannelControl_UpdateGPIOs:00000000 $t
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:27 .text.ChannelControl_UpdateGPIOs:00000000 ChannelControl_UpdateGPIOs
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:77 .text.ChannelControl_UpdateGPIOs:00000030 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:214 .bss.EN_Ports:00000000 EN_Ports
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:82 .text.ChannelControl_init:00000000 $t
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:88 .text.ChannelControl_init:00000000 ChannelControl_init
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:156 .text.ChannelControl_init:00000044 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:195 .bss.pwmtimer3:00000000 pwmtimer3
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:188 .bss.pwmtimer2:00000000 pwmtimer2
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:163 .text.ChannelControl_UpdatePWMs:00000000 $t
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:169 .text.ChannelControl_UpdatePWMs:00000000 ChannelControl_UpdatePWMs
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:185 .bss.pwmtimer2:00000000 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:192 .bss.pwmtimer3:00000000 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:201 .bss.timer2_running:00000000 timer2_running
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:202 .bss.timer2_running:00000000 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:207 .bss.timer3_running:00000000 timer3_running
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:208 .bss.timer3_running:00000000 $d
C:\Users\nived\AppData\Local\Temp\cc8T0p9d.s:211 .bss.EN_Ports:00000000 $d
UNDEFINED SYMBOLS
PCA9535_setGPIOPortOutput
PCA9535_init
PCA9535_setGPIOPortDirection