3205 lines
150 KiB
Plaintext
3205 lines
150 KiB
Plaintext
ARM GAS /tmp/cc16Zqrx.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 "ADBMS_Abstraction.c"
|
||
16 .text
|
||
17 .Ltext0:
|
||
18 .cfi_sections .debug_frame
|
||
19 .file 1 "Core/Src/ADBMS_Abstraction.c"
|
||
20 .section .text.amsConfig,"ax",%progbits
|
||
21 .align 1
|
||
22 .global amsConfig
|
||
23 .syntax unified
|
||
24 .thumb
|
||
25 .thumb_func
|
||
27 amsConfig:
|
||
28 .LFB125:
|
||
1:Core/Src/ADBMS_Abstraction.c **** /*
|
||
2:Core/Src/ADBMS_Abstraction.c **** * ADBMS_Abstraction.c
|
||
3:Core/Src/ADBMS_Abstraction.c **** *
|
||
4:Core/Src/ADBMS_Abstraction.c **** * Created on: 14.07.2022
|
||
5:Core/Src/ADBMS_Abstraction.c **** * Author: max
|
||
6:Core/Src/ADBMS_Abstraction.c **** */
|
||
7:Core/Src/ADBMS_Abstraction.c ****
|
||
8:Core/Src/ADBMS_Abstraction.c **** #include "ADBMS_Abstraction.h"
|
||
9:Core/Src/ADBMS_Abstraction.c **** #include "ADBMS_CMD_MAKROS.h"
|
||
10:Core/Src/ADBMS_Abstraction.c **** #include "ADBMS_LL_Driver.h"
|
||
11:Core/Src/ADBMS_Abstraction.c **** #include "ADBMS_I2C.h"
|
||
12:Core/Src/ADBMS_Abstraction.c **** #include <stddef.h>
|
||
13:Core/Src/ADBMS_Abstraction.c ****
|
||
14:Core/Src/ADBMS_Abstraction.c **** uint8 numberofcells;
|
||
15:Core/Src/ADBMS_Abstraction.c **** uint8 numberofauxchannels;
|
||
16:Core/Src/ADBMS_Abstraction.c ****
|
||
17:Core/Src/ADBMS_Abstraction.c **** #define CHECK_RETURN(x) \
|
||
18:Core/Src/ADBMS_Abstraction.c **** { \
|
||
19:Core/Src/ADBMS_Abstraction.c **** uint8 status = x; \
|
||
20:Core/Src/ADBMS_Abstraction.c **** if (status != 0) \
|
||
21:Core/Src/ADBMS_Abstraction.c **** return status; \
|
||
22:Core/Src/ADBMS_Abstraction.c **** }
|
||
23:Core/Src/ADBMS_Abstraction.c ****
|
||
24:Core/Src/ADBMS_Abstraction.c **** uint8 amsReset() {
|
||
25:Core/Src/ADBMS_Abstraction.c **** amsWakeUp();
|
||
26:Core/Src/ADBMS_Abstraction.c **** readCMD(SRST, NULL, 0);
|
||
27:Core/Src/ADBMS_Abstraction.c **** mcuDelay(10);
|
||
28:Core/Src/ADBMS_Abstraction.c **** amsWakeUp();
|
||
29:Core/Src/ADBMS_Abstraction.c **** amsStopBalancing();
|
||
30:Core/Src/ADBMS_Abstraction.c **** amsConfigOverUnderVoltage(DEFAULT_OV, DEFAULT_UV);
|
||
ARM GAS /tmp/cc16Zqrx.s page 2
|
||
|
||
|
||
31:Core/Src/ADBMS_Abstraction.c ****
|
||
32:Core/Src/ADBMS_Abstraction.c **** uint8 buffer[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
|
||
33:Core/Src/ADBMS_Abstraction.c ****
|
||
34:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLRFLAG, buffer, 6)); //clear flags,
|
||
35:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLOVUV, buffer, 6)); //OVUV flags
|
||
36:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADCV | ADCV_CONT | ADCV_RD, NULL, 0)); //start continuous cell voltage meas
|
||
37:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement
|
||
38:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
39:Core/Src/ADBMS_Abstraction.c ****
|
||
40:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
41:Core/Src/ADBMS_Abstraction.c **** }
|
||
42:Core/Src/ADBMS_Abstraction.c ****
|
||
43:Core/Src/ADBMS_Abstraction.c **** uint8 initAMS(SPI_HandleTypeDef* hspi, uint8 numofcells, uint8 numofaux) {
|
||
44:Core/Src/ADBMS_Abstraction.c **** adbmsDriverInit(hspi);
|
||
45:Core/Src/ADBMS_Abstraction.c **** numberofcells = numofcells;
|
||
46:Core/Src/ADBMS_Abstraction.c **** numberofauxchannels = numofaux;
|
||
47:Core/Src/ADBMS_Abstraction.c ****
|
||
48:Core/Src/ADBMS_Abstraction.c **** return amsReset();
|
||
49:Core/Src/ADBMS_Abstraction.c **** }
|
||
50:Core/Src/ADBMS_Abstraction.c ****
|
||
51:Core/Src/ADBMS_Abstraction.c **** uint8 amsConfig() {
|
||
29 .loc 1 51 19 view -0
|
||
30 .cfi_startproc
|
||
31 @ args = 0, pretend = 0, frame = 8
|
||
32 @ frame_needed = 0, uses_anonymous_args = 0
|
||
33 0000 00B5 push {lr}
|
||
34 .cfi_def_cfa_offset 4
|
||
35 .cfi_offset 14, -4
|
||
36 0002 83B0 sub sp, sp, #12
|
||
37 .cfi_def_cfa_offset 16
|
||
52:Core/Src/ADBMS_Abstraction.c **** uint8 buf[6] = {};
|
||
38 .loc 1 52 3 view .LVU1
|
||
39 .loc 1 52 9 is_stmt 0 view .LVU2
|
||
40 0004 0023 movs r3, #0
|
||
41 0006 0093 str r3, [sp]
|
||
42 0008 ADF80430 strh r3, [sp, #4] @ movhi
|
||
43 .LBB2:
|
||
53:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCFGA, buf, CFG_GROUP_A_SIZE));
|
||
44 .loc 1 53 3 is_stmt 1 view .LVU3
|
||
45 000c 0622 movs r2, #6
|
||
46 000e 6946 mov r1, sp
|
||
47 0010 0220 movs r0, #2
|
||
48 0012 FFF7FEFF bl readCMD
|
||
49 .LVL0:
|
||
50 .loc 1 53 3 discriminator 1 view .LVU4
|
||
51 0016 10B1 cbz r0, .L4
|
||
52 .L1:
|
||
53 .LBE2:
|
||
54:Core/Src/ADBMS_Abstraction.c **** buf[3] = buf[3] | 0b00011000;
|
||
55:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCFGA, buf, CFG_GROUP_A_SIZE))
|
||
56:Core/Src/ADBMS_Abstraction.c **** }
|
||
54 .loc 1 56 1 is_stmt 0 view .LVU5
|
||
55 0018 03B0 add sp, sp, #12
|
||
56 .cfi_remember_state
|
||
57 .cfi_def_cfa_offset 4
|
||
58 @ sp needed
|
||
59 001a 5DF804FB ldr pc, [sp], #4
|
||
ARM GAS /tmp/cc16Zqrx.s page 3
|
||
|
||
|
||
60 .L4:
|
||
61 .cfi_restore_state
|
||
53:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCFGA, buf, CFG_GROUP_A_SIZE));
|
||
62 .loc 1 53 55 is_stmt 1 discriminator 2 view .LVU6
|
||
54:Core/Src/ADBMS_Abstraction.c **** buf[3] = buf[3] | 0b00011000;
|
||
63 .loc 1 54 3 view .LVU7
|
||
54:Core/Src/ADBMS_Abstraction.c **** buf[3] = buf[3] | 0b00011000;
|
||
64 .loc 1 54 15 is_stmt 0 view .LVU8
|
||
65 001e 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
54:Core/Src/ADBMS_Abstraction.c **** buf[3] = buf[3] | 0b00011000;
|
||
66 .loc 1 54 10 view .LVU9
|
||
67 0022 43F01803 orr r3, r3, #24
|
||
68 0026 8DF80330 strb r3, [sp, #3]
|
||
69 .LBB3:
|
||
55:Core/Src/ADBMS_Abstraction.c **** }
|
||
70 .loc 1 55 3 is_stmt 1 view .LVU10
|
||
71 002a 0622 movs r2, #6
|
||
72 002c 6946 mov r1, sp
|
||
73 002e 0120 movs r0, #1
|
||
74 0030 FFF7FEFF bl writeCMD
|
||
75 .LVL1:
|
||
55:Core/Src/ADBMS_Abstraction.c **** }
|
||
76 .loc 1 55 3 discriminator 1 view .LVU11
|
||
77 0034 F0E7 b .L1
|
||
78 .LBE3:
|
||
79 .cfi_endproc
|
||
80 .LFE125:
|
||
82 .section .text.amsWakeUp,"ax",%progbits
|
||
83 .align 1
|
||
84 .global amsWakeUp
|
||
85 .syntax unified
|
||
86 .thumb
|
||
87 .thumb_func
|
||
89 amsWakeUp:
|
||
90 .LFB126:
|
||
57:Core/Src/ADBMS_Abstraction.c ****
|
||
58:Core/Src/ADBMS_Abstraction.c **** uint8 amsWakeUp() {
|
||
91 .loc 1 58 19 view -0
|
||
92 .cfi_startproc
|
||
93 @ args = 0, pretend = 0, frame = 8
|
||
94 @ frame_needed = 0, uses_anonymous_args = 0
|
||
95 0000 00B5 push {lr}
|
||
96 .cfi_def_cfa_offset 4
|
||
97 .cfi_offset 14, -4
|
||
98 0002 83B0 sub sp, sp, #12
|
||
99 .cfi_def_cfa_offset 16
|
||
59:Core/Src/ADBMS_Abstraction.c **** uint8 buf[6];
|
||
100 .loc 1 59 3 view .LVU13
|
||
60:Core/Src/ADBMS_Abstraction.c **** return readCMD(RDCFGA, buf, 6);
|
||
101 .loc 1 60 3 view .LVU14
|
||
102 .loc 1 60 10 is_stmt 0 view .LVU15
|
||
103 0004 0622 movs r2, #6
|
||
104 0006 6946 mov r1, sp
|
||
105 0008 0220 movs r0, #2
|
||
106 000a FFF7FEFF bl readCMD
|
||
107 .LVL2:
|
||
61:Core/Src/ADBMS_Abstraction.c **** }
|
||
ARM GAS /tmp/cc16Zqrx.s page 4
|
||
|
||
|
||
108 .loc 1 61 1 view .LVU16
|
||
109 000e 03B0 add sp, sp, #12
|
||
110 .cfi_def_cfa_offset 4
|
||
111 @ sp needed
|
||
112 0010 5DF804FB ldr pc, [sp], #4
|
||
113 .cfi_endproc
|
||
114 .LFE126:
|
||
116 .section .text.amsConfigCellMeasurement,"ax",%progbits
|
||
117 .align 1
|
||
118 .global amsConfigCellMeasurement
|
||
119 .syntax unified
|
||
120 .thumb
|
||
121 .thumb_func
|
||
123 amsConfigCellMeasurement:
|
||
124 .LVL3:
|
||
125 .LFB128:
|
||
62:Core/Src/ADBMS_Abstraction.c ****
|
||
63:Core/Src/ADBMS_Abstraction.c **** uint8 amsCellMeasurement(Cell_Module* module) {
|
||
64:Core/Src/ADBMS_Abstraction.c **** #warning check conversion counter to ensure that continous conversion has not been stopped
|
||
65:Core/Src/ADBMS_Abstraction.c **** #warning check for OW conditions: ADSV | ADSV_OW_0 / ADSV_OW_1
|
||
66:Core/Src/ADBMS_Abstraction.c **** return amsReadCellVoltages(module);
|
||
67:Core/Src/ADBMS_Abstraction.c **** }
|
||
68:Core/Src/ADBMS_Abstraction.c ****
|
||
69:Core/Src/ADBMS_Abstraction.c **** uint8 amsConfigCellMeasurement(uint8 numberofChannels) {
|
||
126 .loc 1 69 56 is_stmt 1 view -0
|
||
127 .cfi_startproc
|
||
128 @ args = 0, pretend = 0, frame = 0
|
||
129 @ frame_needed = 0, uses_anonymous_args = 0
|
||
130 @ link register save eliminated.
|
||
70:Core/Src/ADBMS_Abstraction.c **** numberofcells = numberofChannels;
|
||
131 .loc 1 70 3 view .LVU18
|
||
132 .loc 1 70 17 is_stmt 0 view .LVU19
|
||
133 0000 014B ldr r3, .L8
|
||
134 0002 1870 strb r0, [r3]
|
||
71:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
135 .loc 1 71 3 is_stmt 1 view .LVU20
|
||
72:Core/Src/ADBMS_Abstraction.c **** }
|
||
136 .loc 1 72 1 is_stmt 0 view .LVU21
|
||
137 0004 0020 movs r0, #0
|
||
138 .LVL4:
|
||
139 .loc 1 72 1 view .LVU22
|
||
140 0006 7047 bx lr
|
||
141 .L9:
|
||
142 .align 2
|
||
143 .L8:
|
||
144 0008 00000000 .word numberofcells
|
||
145 .cfi_endproc
|
||
146 .LFE128:
|
||
148 .global __aeabi_i2d
|
||
149 .global __aeabi_dmul
|
||
150 .global __aeabi_dadd
|
||
151 .global __aeabi_d2iz
|
||
152 .global __aeabi_d2uiz
|
||
153 .section .text.amsAuxAndStatusMeasurement,"ax",%progbits
|
||
154 .align 1
|
||
155 .global amsAuxAndStatusMeasurement
|
||
156 .syntax unified
|
||
ARM GAS /tmp/cc16Zqrx.s page 5
|
||
|
||
|
||
157 .thumb
|
||
158 .thumb_func
|
||
160 amsAuxAndStatusMeasurement:
|
||
161 .LVL5:
|
||
162 .LFB129:
|
||
73:Core/Src/ADBMS_Abstraction.c ****
|
||
74:Core/Src/ADBMS_Abstraction.c **** uint8 amsAuxAndStatusMeasurement(Cell_Module* module) {
|
||
163 .loc 1 74 55 is_stmt 1 view -0
|
||
164 .cfi_startproc
|
||
165 @ args = 0, pretend = 0, frame = 16
|
||
166 @ frame_needed = 0, uses_anonymous_args = 0
|
||
167 .loc 1 74 55 is_stmt 0 view .LVU24
|
||
168 0000 10B5 push {r4, lr}
|
||
169 .cfi_def_cfa_offset 8
|
||
170 .cfi_offset 4, -8
|
||
171 .cfi_offset 14, -4
|
||
172 0002 84B0 sub sp, sp, #16
|
||
173 .cfi_def_cfa_offset 24
|
||
174 0004 0446 mov r4, r0
|
||
75:Core/Src/ADBMS_Abstraction.c **** uint8 rxbuf[AUX_GROUP_A_SIZE] = {};
|
||
175 .loc 1 75 3 is_stmt 1 view .LVU25
|
||
176 .loc 1 75 9 is_stmt 0 view .LVU26
|
||
177 0006 0023 movs r3, #0
|
||
178 0008 0293 str r3, [sp, #8]
|
||
179 000a ADF80C30 strh r3, [sp, #12] @ movhi
|
||
180 .LBB4:
|
||
76:Core/Src/ADBMS_Abstraction.c ****
|
||
77:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDSTATC, rxbuf, STATUS_GROUP_C_SIZE));
|
||
181 .loc 1 77 3 is_stmt 1 view .LVU27
|
||
182 000e 0622 movs r2, #6
|
||
183 0010 02A9 add r1, sp, #8
|
||
184 0012 3220 movs r0, #50
|
||
185 .LVL6:
|
||
186 .loc 1 77 3 is_stmt 0 view .LVU28
|
||
187 0014 FFF7FEFF bl readCMD
|
||
188 .LVL7:
|
||
189 .loc 1 77 3 is_stmt 1 discriminator 1 view .LVU29
|
||
190 0018 08B1 cbz r0, .L13
|
||
191 .L11:
|
||
192 .LBE4:
|
||
78:Core/Src/ADBMS_Abstraction.c ****
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CS_FLT = rxbuf[0] | (rxbuf[1] << 8);
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
81:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
82:Core/Src/ADBMS_Abstraction.c **** module->status.VA_UV = (rxbuf[4] >> 6) & 0x01;
|
||
83:Core/Src/ADBMS_Abstraction.c **** module->status.VD_OV = (rxbuf[4] >> 5) & 0x01;
|
||
84:Core/Src/ADBMS_Abstraction.c **** module->status.VD_UV = (rxbuf[4] >> 4) & 0x01;
|
||
85:Core/Src/ADBMS_Abstraction.c **** module->status.CED = (rxbuf[4] >> 3) & 0x01;
|
||
86:Core/Src/ADBMS_Abstraction.c **** module->status.CMED = (rxbuf[4] >> 2) & 0x01;
|
||
87:Core/Src/ADBMS_Abstraction.c **** module->status.SED = (rxbuf[4] >> 1) & 0x01;
|
||
88:Core/Src/ADBMS_Abstraction.c **** module->status.SMED = (rxbuf[4] >> 0) & 0x01;
|
||
89:Core/Src/ADBMS_Abstraction.c **** module->status.VDEL = (rxbuf[5] >> 7) & 0x01;
|
||
90:Core/Src/ADBMS_Abstraction.c **** module->status.VDE = (rxbuf[5] >> 6) & 0x01;
|
||
91:Core/Src/ADBMS_Abstraction.c **** module->status.COMPARE= (rxbuf[5] >> 5) & 0x01;
|
||
92:Core/Src/ADBMS_Abstraction.c **** module->status.SPIFLT = (rxbuf[5] >> 4) & 0x01;
|
||
93:Core/Src/ADBMS_Abstraction.c **** module->status.SLEEP = (rxbuf[5] >> 3) & 0x01;
|
||
94:Core/Src/ADBMS_Abstraction.c **** module->status.THSD = (rxbuf[5] >> 2) & 0x01;
|
||
ARM GAS /tmp/cc16Zqrx.s page 6
|
||
|
||
|
||
95:Core/Src/ADBMS_Abstraction.c **** module->status.TMODCHK= (rxbuf[5] >> 1) & 0x01;
|
||
96:Core/Src/ADBMS_Abstraction.c **** module->status.OSCCHK = (rxbuf[5] >> 0) & 0x01;
|
||
97:Core/Src/ADBMS_Abstraction.c ****
|
||
98:Core/Src/ADBMS_Abstraction.c **** if (pollCMD(PLAUX) == 0x0) { //TODO: check for SPI fault
|
||
99:Core/Src/ADBMS_Abstraction.c **** return 0; // aux ADC data not ready
|
||
100:Core/Src/ADBMS_Abstraction.c **** }
|
||
101:Core/Src/ADBMS_Abstraction.c ****
|
||
102:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDAUXA, rxbuf, AUX_GROUP_A_SIZE));
|
||
103:Core/Src/ADBMS_Abstraction.c ****
|
||
104:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[0] = mV_from_ADBMS6830(rxbuf[0] | (rxbuf[1] << 8));
|
||
105:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[1] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
106:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[2] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
107:Core/Src/ADBMS_Abstraction.c ****
|
||
108:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDAUXB, rxbuf, AUX_GROUP_A_SIZE));
|
||
109:Core/Src/ADBMS_Abstraction.c ****
|
||
110:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[3] = mV_from_ADBMS6830(rxbuf[0] | (rxbuf[1] << 8));
|
||
111:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[4] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
112:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[5] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
113:Core/Src/ADBMS_Abstraction.c ****
|
||
114:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDAUXC, rxbuf, AUX_GROUP_A_SIZE));
|
||
115:Core/Src/ADBMS_Abstraction.c ****
|
||
116:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[6] = mV_from_ADBMS6830(rxbuf[0] | (rxbuf[1] << 8));
|
||
117:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[7] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
118:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[8] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
119:Core/Src/ADBMS_Abstraction.c ****
|
||
120:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDAUXD, rxbuf, AUX_GROUP_A_SIZE));
|
||
121:Core/Src/ADBMS_Abstraction.c ****
|
||
122:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[9] = mV_from_ADBMS6830(rxbuf[0] | (rxbuf[1] << 8));
|
||
123:Core/Src/ADBMS_Abstraction.c ****
|
||
124:Core/Src/ADBMS_Abstraction.c **** uint8 rxbuffer[STATUS_GROUP_A_SIZE];
|
||
125:Core/Src/ADBMS_Abstraction.c ****
|
||
126:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDSTATA, rxbuffer, STATUS_GROUP_A_SIZE));
|
||
127:Core/Src/ADBMS_Abstraction.c ****
|
||
128:Core/Src/ADBMS_Abstraction.c **** module->internalDieTemp = rxbuffer[2] | (rxbuffer[3] << 8);
|
||
129:Core/Src/ADBMS_Abstraction.c ****
|
||
130:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDSTATB, rxbuffer, STATUS_GROUP_B_SIZE));
|
||
131:Core/Src/ADBMS_Abstraction.c **** module->digitalSupplyVoltage = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
132:Core/Src/ADBMS_Abstraction.c **** module->analogSupplyVoltage = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
133:Core/Src/ADBMS_Abstraction.c **** module->refVoltage = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
134:Core/Src/ADBMS_Abstraction.c ****
|
||
135:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement for next cycle
|
||
136:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
137:Core/Src/ADBMS_Abstraction.c ****
|
||
138:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
139:Core/Src/ADBMS_Abstraction.c **** }
|
||
193 .loc 1 139 1 is_stmt 0 view .LVU30
|
||
194 001a 04B0 add sp, sp, #16
|
||
195 .cfi_remember_state
|
||
196 .cfi_def_cfa_offset 8
|
||
197 @ sp needed
|
||
198 001c 10BD pop {r4, pc}
|
||
199 .LVL8:
|
||
200 .L13:
|
||
201 .cfi_restore_state
|
||
77:Core/Src/ADBMS_Abstraction.c ****
|
||
202 .loc 1 77 61 is_stmt 1 discriminator 2 view .LVU31
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
ARM GAS /tmp/cc16Zqrx.s page 7
|
||
|
||
|
||
203 .loc 1 79 3 view .LVU32
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
204 .loc 1 79 32 is_stmt 0 view .LVU33
|
||
205 001e 9DF80830 ldrb r3, [sp, #8] @ zero_extendqisi2
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
206 .loc 1 79 44 view .LVU34
|
||
207 0022 9DF80920 ldrb r2, [sp, #9] @ zero_extendqisi2
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
208 .loc 1 79 36 view .LVU35
|
||
209 0026 43EA0223 orr r3, r3, r2, lsl #8
|
||
79:Core/Src/ADBMS_Abstraction.c **** module->status.CCTS = rxbuf[2] | (rxbuf[3] << 8);
|
||
210 .loc 1 79 25 view .LVU36
|
||
211 002a A386 strh r3, [r4, #52] @ movhi
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
212 .loc 1 80 3 is_stmt 1 view .LVU37
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
213 .loc 1 80 32 is_stmt 0 view .LVU38
|
||
214 002c 9DF80A30 ldrb r3, [sp, #10] @ zero_extendqisi2
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
215 .loc 1 80 44 view .LVU39
|
||
216 0030 9DF80B20 ldrb r2, [sp, #11] @ zero_extendqisi2
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
217 .loc 1 80 36 view .LVU40
|
||
218 0034 43EA0223 orr r3, r3, r2, lsl #8
|
||
80:Core/Src/ADBMS_Abstraction.c **** module->status.VA_OV = (rxbuf[4] >> 7) & 0x01;
|
||
219 .loc 1 80 25 view .LVU41
|
||
220 0038 E28E ldrh r2, [r4, #54]
|
||
221 003a 63F3CF02 bfi r2, r3, #3, #13
|
||
222 003e E286 strh r2, [r4, #54] @ movhi
|
||
81:Core/Src/ADBMS_Abstraction.c **** module->status.VA_UV = (rxbuf[4] >> 6) & 0x01;
|
||
223 .loc 1 81 3 is_stmt 1 view .LVU42
|
||
81:Core/Src/ADBMS_Abstraction.c **** module->status.VA_UV = (rxbuf[4] >> 6) & 0x01;
|
||
224 .loc 1 81 33 is_stmt 0 view .LVU43
|
||
225 0040 9DF80C30 ldrb r3, [sp, #12] @ zero_extendqisi2
|
||
81:Core/Src/ADBMS_Abstraction.c **** module->status.VA_UV = (rxbuf[4] >> 6) & 0x01;
|
||
226 .loc 1 81 43 view .LVU44
|
||
227 0044 D909 lsrs r1, r3, #7
|
||
81:Core/Src/ADBMS_Abstraction.c **** module->status.VA_UV = (rxbuf[4] >> 6) & 0x01;
|
||
228 .loc 1 81 25 view .LVU45
|
||
229 0046 94F83820 ldrb r2, [r4, #56] @ zero_extendqisi2
|
||
230 004a 61F30002 bfi r2, r1, #0, #1
|
||
231 004e 84F83820 strb r2, [r4, #56]
|
||
82:Core/Src/ADBMS_Abstraction.c **** module->status.VD_OV = (rxbuf[4] >> 5) & 0x01;
|
||
232 .loc 1 82 3 is_stmt 1 view .LVU46
|
||
82:Core/Src/ADBMS_Abstraction.c **** module->status.VD_OV = (rxbuf[4] >> 5) & 0x01;
|
||
233 .loc 1 82 43 is_stmt 0 view .LVU47
|
||
234 0052 C3F38011 ubfx r1, r3, #6, #1
|
||
82:Core/Src/ADBMS_Abstraction.c **** module->status.VD_OV = (rxbuf[4] >> 5) & 0x01;
|
||
235 .loc 1 82 25 view .LVU48
|
||
236 0056 D2B2 uxtb r2, r2
|
||
237 0058 61F34102 bfi r2, r1, #1, #1
|
||
238 005c 84F83820 strb r2, [r4, #56]
|
||
83:Core/Src/ADBMS_Abstraction.c **** module->status.VD_UV = (rxbuf[4] >> 4) & 0x01;
|
||
239 .loc 1 83 3 is_stmt 1 view .LVU49
|
||
83:Core/Src/ADBMS_Abstraction.c **** module->status.VD_UV = (rxbuf[4] >> 4) & 0x01;
|
||
240 .loc 1 83 43 is_stmt 0 view .LVU50
|
||
241 0060 C3F34011 ubfx r1, r3, #5, #1
|
||
ARM GAS /tmp/cc16Zqrx.s page 8
|
||
|
||
|
||
83:Core/Src/ADBMS_Abstraction.c **** module->status.VD_UV = (rxbuf[4] >> 4) & 0x01;
|
||
242 .loc 1 83 25 view .LVU51
|
||
243 0064 D2B2 uxtb r2, r2
|
||
244 0066 61F38202 bfi r2, r1, #2, #1
|
||
245 006a 84F83820 strb r2, [r4, #56]
|
||
84:Core/Src/ADBMS_Abstraction.c **** module->status.CED = (rxbuf[4] >> 3) & 0x01;
|
||
246 .loc 1 84 3 is_stmt 1 view .LVU52
|
||
84:Core/Src/ADBMS_Abstraction.c **** module->status.CED = (rxbuf[4] >> 3) & 0x01;
|
||
247 .loc 1 84 43 is_stmt 0 view .LVU53
|
||
248 006e C3F30011 ubfx r1, r3, #4, #1
|
||
84:Core/Src/ADBMS_Abstraction.c **** module->status.CED = (rxbuf[4] >> 3) & 0x01;
|
||
249 .loc 1 84 25 view .LVU54
|
||
250 0072 D2B2 uxtb r2, r2
|
||
251 0074 61F3C302 bfi r2, r1, #3, #1
|
||
252 0078 84F83820 strb r2, [r4, #56]
|
||
85:Core/Src/ADBMS_Abstraction.c **** module->status.CMED = (rxbuf[4] >> 2) & 0x01;
|
||
253 .loc 1 85 3 is_stmt 1 view .LVU55
|
||
85:Core/Src/ADBMS_Abstraction.c **** module->status.CMED = (rxbuf[4] >> 2) & 0x01;
|
||
254 .loc 1 85 43 is_stmt 0 view .LVU56
|
||
255 007c C3F3C001 ubfx r1, r3, #3, #1
|
||
85:Core/Src/ADBMS_Abstraction.c **** module->status.CMED = (rxbuf[4] >> 2) & 0x01;
|
||
256 .loc 1 85 25 view .LVU57
|
||
257 0080 D2B2 uxtb r2, r2
|
||
258 0082 61F30412 bfi r2, r1, #4, #1
|
||
259 0086 84F83820 strb r2, [r4, #56]
|
||
86:Core/Src/ADBMS_Abstraction.c **** module->status.SED = (rxbuf[4] >> 1) & 0x01;
|
||
260 .loc 1 86 3 is_stmt 1 view .LVU58
|
||
86:Core/Src/ADBMS_Abstraction.c **** module->status.SED = (rxbuf[4] >> 1) & 0x01;
|
||
261 .loc 1 86 43 is_stmt 0 view .LVU59
|
||
262 008a C3F38001 ubfx r1, r3, #2, #1
|
||
86:Core/Src/ADBMS_Abstraction.c **** module->status.SED = (rxbuf[4] >> 1) & 0x01;
|
||
263 .loc 1 86 25 view .LVU60
|
||
264 008e D2B2 uxtb r2, r2
|
||
265 0090 61F34512 bfi r2, r1, #5, #1
|
||
266 0094 84F83820 strb r2, [r4, #56]
|
||
87:Core/Src/ADBMS_Abstraction.c **** module->status.SMED = (rxbuf[4] >> 0) & 0x01;
|
||
267 .loc 1 87 3 is_stmt 1 view .LVU61
|
||
87:Core/Src/ADBMS_Abstraction.c **** module->status.SMED = (rxbuf[4] >> 0) & 0x01;
|
||
268 .loc 1 87 43 is_stmt 0 view .LVU62
|
||
269 0098 C3F34001 ubfx r1, r3, #1, #1
|
||
87:Core/Src/ADBMS_Abstraction.c **** module->status.SMED = (rxbuf[4] >> 0) & 0x01;
|
||
270 .loc 1 87 25 view .LVU63
|
||
271 009c D2B2 uxtb r2, r2
|
||
272 009e 61F38612 bfi r2, r1, #6, #1
|
||
273 00a2 84F83820 strb r2, [r4, #56]
|
||
88:Core/Src/ADBMS_Abstraction.c **** module->status.VDEL = (rxbuf[5] >> 7) & 0x01;
|
||
274 .loc 1 88 3 is_stmt 1 view .LVU64
|
||
88:Core/Src/ADBMS_Abstraction.c **** module->status.VDEL = (rxbuf[5] >> 7) & 0x01;
|
||
275 .loc 1 88 25 is_stmt 0 view .LVU65
|
||
276 00a6 D2B2 uxtb r2, r2
|
||
277 00a8 63F3C712 bfi r2, r3, #7, #1
|
||
278 00ac 84F83820 strb r2, [r4, #56]
|
||
89:Core/Src/ADBMS_Abstraction.c **** module->status.VDE = (rxbuf[5] >> 6) & 0x01;
|
||
279 .loc 1 89 3 is_stmt 1 view .LVU66
|
||
89:Core/Src/ADBMS_Abstraction.c **** module->status.VDE = (rxbuf[5] >> 6) & 0x01;
|
||
280 .loc 1 89 33 is_stmt 0 view .LVU67
|
||
281 00b0 9DF80D30 ldrb r3, [sp, #13] @ zero_extendqisi2
|
||
ARM GAS /tmp/cc16Zqrx.s page 9
|
||
|
||
|
||
89:Core/Src/ADBMS_Abstraction.c **** module->status.VDE = (rxbuf[5] >> 6) & 0x01;
|
||
282 .loc 1 89 43 view .LVU68
|
||
283 00b4 D909 lsrs r1, r3, #7
|
||
89:Core/Src/ADBMS_Abstraction.c **** module->status.VDE = (rxbuf[5] >> 6) & 0x01;
|
||
284 .loc 1 89 25 view .LVU69
|
||
285 00b6 94F83920 ldrb r2, [r4, #57] @ zero_extendqisi2
|
||
286 00ba 61F30002 bfi r2, r1, #0, #1
|
||
287 00be 84F83920 strb r2, [r4, #57]
|
||
90:Core/Src/ADBMS_Abstraction.c **** module->status.COMPARE= (rxbuf[5] >> 5) & 0x01;
|
||
288 .loc 1 90 3 is_stmt 1 view .LVU70
|
||
90:Core/Src/ADBMS_Abstraction.c **** module->status.COMPARE= (rxbuf[5] >> 5) & 0x01;
|
||
289 .loc 1 90 43 is_stmt 0 view .LVU71
|
||
290 00c2 C3F38011 ubfx r1, r3, #6, #1
|
||
90:Core/Src/ADBMS_Abstraction.c **** module->status.COMPARE= (rxbuf[5] >> 5) & 0x01;
|
||
291 .loc 1 90 25 view .LVU72
|
||
292 00c6 D2B2 uxtb r2, r2
|
||
293 00c8 61F34102 bfi r2, r1, #1, #1
|
||
294 00cc 84F83920 strb r2, [r4, #57]
|
||
91:Core/Src/ADBMS_Abstraction.c **** module->status.SPIFLT = (rxbuf[5] >> 4) & 0x01;
|
||
295 .loc 1 91 3 is_stmt 1 view .LVU73
|
||
91:Core/Src/ADBMS_Abstraction.c **** module->status.SPIFLT = (rxbuf[5] >> 4) & 0x01;
|
||
296 .loc 1 91 43 is_stmt 0 view .LVU74
|
||
297 00d0 C3F34011 ubfx r1, r3, #5, #1
|
||
91:Core/Src/ADBMS_Abstraction.c **** module->status.SPIFLT = (rxbuf[5] >> 4) & 0x01;
|
||
298 .loc 1 91 25 view .LVU75
|
||
299 00d4 D2B2 uxtb r2, r2
|
||
300 00d6 61F38202 bfi r2, r1, #2, #1
|
||
301 00da 84F83920 strb r2, [r4, #57]
|
||
92:Core/Src/ADBMS_Abstraction.c **** module->status.SLEEP = (rxbuf[5] >> 3) & 0x01;
|
||
302 .loc 1 92 3 is_stmt 1 view .LVU76
|
||
92:Core/Src/ADBMS_Abstraction.c **** module->status.SLEEP = (rxbuf[5] >> 3) & 0x01;
|
||
303 .loc 1 92 43 is_stmt 0 view .LVU77
|
||
304 00de C3F30011 ubfx r1, r3, #4, #1
|
||
92:Core/Src/ADBMS_Abstraction.c **** module->status.SLEEP = (rxbuf[5] >> 3) & 0x01;
|
||
305 .loc 1 92 25 view .LVU78
|
||
306 00e2 D2B2 uxtb r2, r2
|
||
307 00e4 61F3C302 bfi r2, r1, #3, #1
|
||
308 00e8 84F83920 strb r2, [r4, #57]
|
||
93:Core/Src/ADBMS_Abstraction.c **** module->status.THSD = (rxbuf[5] >> 2) & 0x01;
|
||
309 .loc 1 93 3 is_stmt 1 view .LVU79
|
||
93:Core/Src/ADBMS_Abstraction.c **** module->status.THSD = (rxbuf[5] >> 2) & 0x01;
|
||
310 .loc 1 93 43 is_stmt 0 view .LVU80
|
||
311 00ec C3F3C001 ubfx r1, r3, #3, #1
|
||
93:Core/Src/ADBMS_Abstraction.c **** module->status.THSD = (rxbuf[5] >> 2) & 0x01;
|
||
312 .loc 1 93 25 view .LVU81
|
||
313 00f0 D2B2 uxtb r2, r2
|
||
314 00f2 61F30412 bfi r2, r1, #4, #1
|
||
315 00f6 84F83920 strb r2, [r4, #57]
|
||
94:Core/Src/ADBMS_Abstraction.c **** module->status.TMODCHK= (rxbuf[5] >> 1) & 0x01;
|
||
316 .loc 1 94 3 is_stmt 1 view .LVU82
|
||
94:Core/Src/ADBMS_Abstraction.c **** module->status.TMODCHK= (rxbuf[5] >> 1) & 0x01;
|
||
317 .loc 1 94 43 is_stmt 0 view .LVU83
|
||
318 00fa C3F38001 ubfx r1, r3, #2, #1
|
||
94:Core/Src/ADBMS_Abstraction.c **** module->status.TMODCHK= (rxbuf[5] >> 1) & 0x01;
|
||
319 .loc 1 94 25 view .LVU84
|
||
320 00fe D2B2 uxtb r2, r2
|
||
321 0100 61F34512 bfi r2, r1, #5, #1
|
||
ARM GAS /tmp/cc16Zqrx.s page 10
|
||
|
||
|
||
322 0104 84F83920 strb r2, [r4, #57]
|
||
95:Core/Src/ADBMS_Abstraction.c **** module->status.OSCCHK = (rxbuf[5] >> 0) & 0x01;
|
||
323 .loc 1 95 3 is_stmt 1 view .LVU85
|
||
95:Core/Src/ADBMS_Abstraction.c **** module->status.OSCCHK = (rxbuf[5] >> 0) & 0x01;
|
||
324 .loc 1 95 43 is_stmt 0 view .LVU86
|
||
325 0108 C3F34001 ubfx r1, r3, #1, #1
|
||
95:Core/Src/ADBMS_Abstraction.c **** module->status.OSCCHK = (rxbuf[5] >> 0) & 0x01;
|
||
326 .loc 1 95 25 view .LVU87
|
||
327 010c D2B2 uxtb r2, r2
|
||
328 010e 61F38612 bfi r2, r1, #6, #1
|
||
329 0112 84F83920 strb r2, [r4, #57]
|
||
96:Core/Src/ADBMS_Abstraction.c ****
|
||
330 .loc 1 96 3 is_stmt 1 view .LVU88
|
||
96:Core/Src/ADBMS_Abstraction.c ****
|
||
331 .loc 1 96 25 is_stmt 0 view .LVU89
|
||
332 0116 D2B2 uxtb r2, r2
|
||
333 0118 63F3C712 bfi r2, r3, #7, #1
|
||
334 011c 84F83920 strb r2, [r4, #57]
|
||
98:Core/Src/ADBMS_Abstraction.c **** return 0; // aux ADC data not ready
|
||
335 .loc 1 98 3 is_stmt 1 view .LVU90
|
||
98:Core/Src/ADBMS_Abstraction.c **** return 0; // aux ADC data not ready
|
||
336 .loc 1 98 7 is_stmt 0 view .LVU91
|
||
337 0120 40F21E70 movw r0, #1822
|
||
338 0124 FFF7FEFF bl pollCMD
|
||
339 .LVL9:
|
||
98:Core/Src/ADBMS_Abstraction.c **** return 0; // aux ADC data not ready
|
||
340 .loc 1 98 6 discriminator 1 view .LVU92
|
||
341 0128 0028 cmp r0, #0
|
||
342 012a 3FF476AF beq .L11
|
||
343 .LBB5:
|
||
102:Core/Src/ADBMS_Abstraction.c ****
|
||
344 .loc 1 102 3 is_stmt 1 view .LVU93
|
||
345 012e 0622 movs r2, #6
|
||
346 0130 02A9 add r1, sp, #8
|
||
347 0132 1920 movs r0, #25
|
||
348 0134 FFF7FEFF bl readCMD
|
||
349 .LVL10:
|
||
102:Core/Src/ADBMS_Abstraction.c ****
|
||
350 .loc 1 102 3 discriminator 1 view .LVU94
|
||
351 0138 0028 cmp r0, #0
|
||
352 013a 7FF46EAF bne .L11
|
||
353 .LBE5:
|
||
102:Core/Src/ADBMS_Abstraction.c ****
|
||
354 .loc 1 102 57 discriminator 2 view .LVU95
|
||
104:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[1] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
355 .loc 1 104 3 view .LVU96
|
||
104:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[1] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
356 .loc 1 104 28 is_stmt 0 view .LVU97
|
||
357 013e 9DF80800 ldrb r0, [sp, #8] @ zero_extendqisi2
|
||
358 .LVL11:
|
||
104:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[1] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
359 .loc 1 104 28 view .LVU98
|
||
360 0142 9DF80930 ldrb r3, [sp, #9] @ zero_extendqisi2
|
||
361 0146 40EA0320 orr r0, r0, r3, lsl #8
|
||
362 014a 00B2 sxth r0, r0
|
||
363 014c FFF7FEFF bl __aeabi_i2d
|
||
364 .LVL12:
|
||
ARM GAS /tmp/cc16Zqrx.s page 11
|
||
|
||
|
||
365 0150 ABA3 adr r3, .L14
|
||
366 0152 D3E90023 ldrd r2, [r3]
|
||
367 0156 FFF7FEFF bl __aeabi_dmul
|
||
368 .LVL13:
|
||
369 015a ABA3 adr r3, .L14+8
|
||
370 015c D3E90023 ldrd r2, [r3]
|
||
371 0160 FFF7FEFF bl __aeabi_dadd
|
||
372 .LVL14:
|
||
104:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[1] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
373 .loc 1 104 26 view .LVU99
|
||
374 0164 FFF7FEFF bl __aeabi_d2iz
|
||
375 .LVL15:
|
||
376 0168 2084 strh r0, [r4, #32] @ movhi
|
||
105:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[2] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
377 .loc 1 105 3 is_stmt 1 view .LVU100
|
||
105:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[2] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
378 .loc 1 105 28 is_stmt 0 view .LVU101
|
||
379 016a 9DF80A00 ldrb r0, [sp, #10] @ zero_extendqisi2
|
||
380 016e 9DF80B30 ldrb r3, [sp, #11] @ zero_extendqisi2
|
||
381 0172 40EA0320 orr r0, r0, r3, lsl #8
|
||
382 0176 00B2 sxth r0, r0
|
||
383 0178 FFF7FEFF bl __aeabi_i2d
|
||
384 .LVL16:
|
||
385 017c A0A3 adr r3, .L14
|
||
386 017e D3E90023 ldrd r2, [r3]
|
||
387 0182 FFF7FEFF bl __aeabi_dmul
|
||
388 .LVL17:
|
||
389 0186 A0A3 adr r3, .L14+8
|
||
390 0188 D3E90023 ldrd r2, [r3]
|
||
391 018c FFF7FEFF bl __aeabi_dadd
|
||
392 .LVL18:
|
||
105:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[2] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
393 .loc 1 105 26 view .LVU102
|
||
394 0190 FFF7FEFF bl __aeabi_d2iz
|
||
395 .LVL19:
|
||
396 0194 6084 strh r0, [r4, #34] @ movhi
|
||
106:Core/Src/ADBMS_Abstraction.c ****
|
||
397 .loc 1 106 3 is_stmt 1 view .LVU103
|
||
106:Core/Src/ADBMS_Abstraction.c ****
|
||
398 .loc 1 106 28 is_stmt 0 view .LVU104
|
||
399 0196 9DF80C00 ldrb r0, [sp, #12] @ zero_extendqisi2
|
||
400 019a 9DF80D30 ldrb r3, [sp, #13] @ zero_extendqisi2
|
||
401 019e 40EA0320 orr r0, r0, r3, lsl #8
|
||
402 01a2 00B2 sxth r0, r0
|
||
403 01a4 FFF7FEFF bl __aeabi_i2d
|
||
404 .LVL20:
|
||
405 01a8 95A3 adr r3, .L14
|
||
406 01aa D3E90023 ldrd r2, [r3]
|
||
407 01ae FFF7FEFF bl __aeabi_dmul
|
||
408 .LVL21:
|
||
409 01b2 95A3 adr r3, .L14+8
|
||
410 01b4 D3E90023 ldrd r2, [r3]
|
||
411 01b8 FFF7FEFF bl __aeabi_dadd
|
||
412 .LVL22:
|
||
106:Core/Src/ADBMS_Abstraction.c ****
|
||
413 .loc 1 106 26 view .LVU105
|
||
414 01bc FFF7FEFF bl __aeabi_d2iz
|
||
ARM GAS /tmp/cc16Zqrx.s page 12
|
||
|
||
|
||
415 .LVL23:
|
||
416 01c0 A084 strh r0, [r4, #36] @ movhi
|
||
417 .LBB6:
|
||
108:Core/Src/ADBMS_Abstraction.c ****
|
||
418 .loc 1 108 3 is_stmt 1 view .LVU106
|
||
419 01c2 0622 movs r2, #6
|
||
420 01c4 02A9 add r1, sp, #8
|
||
421 01c6 1A20 movs r0, #26
|
||
422 01c8 FFF7FEFF bl readCMD
|
||
423 .LVL24:
|
||
108:Core/Src/ADBMS_Abstraction.c ****
|
||
424 .loc 1 108 3 discriminator 1 view .LVU107
|
||
425 01cc 0028 cmp r0, #0
|
||
426 01ce 7FF424AF bne .L11
|
||
427 .LBE6:
|
||
108:Core/Src/ADBMS_Abstraction.c ****
|
||
428 .loc 1 108 57 discriminator 2 view .LVU108
|
||
110:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[4] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
429 .loc 1 110 3 view .LVU109
|
||
110:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[4] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
430 .loc 1 110 28 is_stmt 0 view .LVU110
|
||
431 01d2 9DF80800 ldrb r0, [sp, #8] @ zero_extendqisi2
|
||
432 .LVL25:
|
||
110:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[4] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
433 .loc 1 110 28 view .LVU111
|
||
434 01d6 9DF80930 ldrb r3, [sp, #9] @ zero_extendqisi2
|
||
435 01da 40EA0320 orr r0, r0, r3, lsl #8
|
||
436 01de 00B2 sxth r0, r0
|
||
437 01e0 FFF7FEFF bl __aeabi_i2d
|
||
438 .LVL26:
|
||
439 01e4 86A3 adr r3, .L14
|
||
440 01e6 D3E90023 ldrd r2, [r3]
|
||
441 01ea FFF7FEFF bl __aeabi_dmul
|
||
442 .LVL27:
|
||
443 01ee 86A3 adr r3, .L14+8
|
||
444 01f0 D3E90023 ldrd r2, [r3]
|
||
445 01f4 FFF7FEFF bl __aeabi_dadd
|
||
446 .LVL28:
|
||
110:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[4] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
447 .loc 1 110 26 view .LVU112
|
||
448 01f8 FFF7FEFF bl __aeabi_d2iz
|
||
449 .LVL29:
|
||
450 01fc E084 strh r0, [r4, #38] @ movhi
|
||
111:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[5] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
451 .loc 1 111 3 is_stmt 1 view .LVU113
|
||
111:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[5] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
452 .loc 1 111 28 is_stmt 0 view .LVU114
|
||
453 01fe 9DF80A00 ldrb r0, [sp, #10] @ zero_extendqisi2
|
||
454 0202 9DF80B30 ldrb r3, [sp, #11] @ zero_extendqisi2
|
||
455 0206 40EA0320 orr r0, r0, r3, lsl #8
|
||
456 020a 00B2 sxth r0, r0
|
||
457 020c FFF7FEFF bl __aeabi_i2d
|
||
458 .LVL30:
|
||
459 0210 7BA3 adr r3, .L14
|
||
460 0212 D3E90023 ldrd r2, [r3]
|
||
461 0216 FFF7FEFF bl __aeabi_dmul
|
||
462 .LVL31:
|
||
ARM GAS /tmp/cc16Zqrx.s page 13
|
||
|
||
|
||
463 021a 7BA3 adr r3, .L14+8
|
||
464 021c D3E90023 ldrd r2, [r3]
|
||
465 0220 FFF7FEFF bl __aeabi_dadd
|
||
466 .LVL32:
|
||
111:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[5] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
467 .loc 1 111 26 view .LVU115
|
||
468 0224 FFF7FEFF bl __aeabi_d2iz
|
||
469 .LVL33:
|
||
470 0228 2085 strh r0, [r4, #40] @ movhi
|
||
112:Core/Src/ADBMS_Abstraction.c ****
|
||
471 .loc 1 112 3 is_stmt 1 view .LVU116
|
||
112:Core/Src/ADBMS_Abstraction.c ****
|
||
472 .loc 1 112 28 is_stmt 0 view .LVU117
|
||
473 022a 9DF80C00 ldrb r0, [sp, #12] @ zero_extendqisi2
|
||
474 022e 9DF80D30 ldrb r3, [sp, #13] @ zero_extendqisi2
|
||
475 0232 40EA0320 orr r0, r0, r3, lsl #8
|
||
476 0236 00B2 sxth r0, r0
|
||
477 0238 FFF7FEFF bl __aeabi_i2d
|
||
478 .LVL34:
|
||
479 023c 70A3 adr r3, .L14
|
||
480 023e D3E90023 ldrd r2, [r3]
|
||
481 0242 FFF7FEFF bl __aeabi_dmul
|
||
482 .LVL35:
|
||
483 0246 70A3 adr r3, .L14+8
|
||
484 0248 D3E90023 ldrd r2, [r3]
|
||
485 024c FFF7FEFF bl __aeabi_dadd
|
||
486 .LVL36:
|
||
112:Core/Src/ADBMS_Abstraction.c ****
|
||
487 .loc 1 112 26 view .LVU118
|
||
488 0250 FFF7FEFF bl __aeabi_d2iz
|
||
489 .LVL37:
|
||
490 0254 6085 strh r0, [r4, #42] @ movhi
|
||
491 .LBB7:
|
||
114:Core/Src/ADBMS_Abstraction.c ****
|
||
492 .loc 1 114 3 is_stmt 1 view .LVU119
|
||
493 0256 0622 movs r2, #6
|
||
494 0258 02A9 add r1, sp, #8
|
||
495 025a 1B20 movs r0, #27
|
||
496 025c FFF7FEFF bl readCMD
|
||
497 .LVL38:
|
||
114:Core/Src/ADBMS_Abstraction.c ****
|
||
498 .loc 1 114 3 discriminator 1 view .LVU120
|
||
499 0260 0028 cmp r0, #0
|
||
500 0262 7FF4DAAE bne .L11
|
||
501 .LBE7:
|
||
114:Core/Src/ADBMS_Abstraction.c ****
|
||
502 .loc 1 114 57 discriminator 2 view .LVU121
|
||
116:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[7] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
503 .loc 1 116 3 view .LVU122
|
||
116:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[7] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
504 .loc 1 116 28 is_stmt 0 view .LVU123
|
||
505 0266 9DF80800 ldrb r0, [sp, #8] @ zero_extendqisi2
|
||
506 .LVL39:
|
||
116:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[7] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
507 .loc 1 116 28 view .LVU124
|
||
508 026a 9DF80930 ldrb r3, [sp, #9] @ zero_extendqisi2
|
||
509 026e 40EA0320 orr r0, r0, r3, lsl #8
|
||
ARM GAS /tmp/cc16Zqrx.s page 14
|
||
|
||
|
||
510 0272 00B2 sxth r0, r0
|
||
511 0274 FFF7FEFF bl __aeabi_i2d
|
||
512 .LVL40:
|
||
513 0278 61A3 adr r3, .L14
|
||
514 027a D3E90023 ldrd r2, [r3]
|
||
515 027e FFF7FEFF bl __aeabi_dmul
|
||
516 .LVL41:
|
||
517 0282 61A3 adr r3, .L14+8
|
||
518 0284 D3E90023 ldrd r2, [r3]
|
||
519 0288 FFF7FEFF bl __aeabi_dadd
|
||
520 .LVL42:
|
||
116:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[7] = mV_from_ADBMS6830(rxbuf[2] | (rxbuf[3] << 8));
|
||
521 .loc 1 116 26 view .LVU125
|
||
522 028c FFF7FEFF bl __aeabi_d2iz
|
||
523 .LVL43:
|
||
524 0290 A085 strh r0, [r4, #44] @ movhi
|
||
117:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[8] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
525 .loc 1 117 3 is_stmt 1 view .LVU126
|
||
117:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[8] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
526 .loc 1 117 28 is_stmt 0 view .LVU127
|
||
527 0292 9DF80A00 ldrb r0, [sp, #10] @ zero_extendqisi2
|
||
528 0296 9DF80B30 ldrb r3, [sp, #11] @ zero_extendqisi2
|
||
529 029a 40EA0320 orr r0, r0, r3, lsl #8
|
||
530 029e 00B2 sxth r0, r0
|
||
531 02a0 FFF7FEFF bl __aeabi_i2d
|
||
532 .LVL44:
|
||
533 02a4 56A3 adr r3, .L14
|
||
534 02a6 D3E90023 ldrd r2, [r3]
|
||
535 02aa FFF7FEFF bl __aeabi_dmul
|
||
536 .LVL45:
|
||
537 02ae 56A3 adr r3, .L14+8
|
||
538 02b0 D3E90023 ldrd r2, [r3]
|
||
539 02b4 FFF7FEFF bl __aeabi_dadd
|
||
540 .LVL46:
|
||
117:Core/Src/ADBMS_Abstraction.c **** module->auxVoltages[8] = mV_from_ADBMS6830(rxbuf[4] | (rxbuf[5] << 8));
|
||
541 .loc 1 117 26 view .LVU128
|
||
542 02b8 FFF7FEFF bl __aeabi_d2iz
|
||
543 .LVL47:
|
||
544 02bc E085 strh r0, [r4, #46] @ movhi
|
||
118:Core/Src/ADBMS_Abstraction.c ****
|
||
545 .loc 1 118 3 is_stmt 1 view .LVU129
|
||
118:Core/Src/ADBMS_Abstraction.c ****
|
||
546 .loc 1 118 28 is_stmt 0 view .LVU130
|
||
547 02be 9DF80C00 ldrb r0, [sp, #12] @ zero_extendqisi2
|
||
548 02c2 9DF80D30 ldrb r3, [sp, #13] @ zero_extendqisi2
|
||
549 02c6 40EA0320 orr r0, r0, r3, lsl #8
|
||
550 02ca 00B2 sxth r0, r0
|
||
551 02cc FFF7FEFF bl __aeabi_i2d
|
||
552 .LVL48:
|
||
553 02d0 4BA3 adr r3, .L14
|
||
554 02d2 D3E90023 ldrd r2, [r3]
|
||
555 02d6 FFF7FEFF bl __aeabi_dmul
|
||
556 .LVL49:
|
||
557 02da 4BA3 adr r3, .L14+8
|
||
558 02dc D3E90023 ldrd r2, [r3]
|
||
559 02e0 FFF7FEFF bl __aeabi_dadd
|
||
560 .LVL50:
|
||
ARM GAS /tmp/cc16Zqrx.s page 15
|
||
|
||
|
||
118:Core/Src/ADBMS_Abstraction.c ****
|
||
561 .loc 1 118 26 view .LVU131
|
||
562 02e4 FFF7FEFF bl __aeabi_d2iz
|
||
563 .LVL51:
|
||
564 02e8 2086 strh r0, [r4, #48] @ movhi
|
||
565 .LBB8:
|
||
120:Core/Src/ADBMS_Abstraction.c ****
|
||
566 .loc 1 120 3 is_stmt 1 view .LVU132
|
||
567 02ea 0622 movs r2, #6
|
||
568 02ec 02A9 add r1, sp, #8
|
||
569 02ee 1F20 movs r0, #31
|
||
570 02f0 FFF7FEFF bl readCMD
|
||
571 .LVL52:
|
||
120:Core/Src/ADBMS_Abstraction.c ****
|
||
572 .loc 1 120 3 discriminator 1 view .LVU133
|
||
573 02f4 0028 cmp r0, #0
|
||
574 02f6 7FF490AE bne .L11
|
||
575 .LBE8:
|
||
120:Core/Src/ADBMS_Abstraction.c ****
|
||
576 .loc 1 120 57 discriminator 2 view .LVU134
|
||
122:Core/Src/ADBMS_Abstraction.c ****
|
||
577 .loc 1 122 3 view .LVU135
|
||
122:Core/Src/ADBMS_Abstraction.c ****
|
||
578 .loc 1 122 28 is_stmt 0 view .LVU136
|
||
579 02fa 9DF80800 ldrb r0, [sp, #8] @ zero_extendqisi2
|
||
580 .LVL53:
|
||
122:Core/Src/ADBMS_Abstraction.c ****
|
||
581 .loc 1 122 28 view .LVU137
|
||
582 02fe 9DF80930 ldrb r3, [sp, #9] @ zero_extendqisi2
|
||
583 0302 40EA0320 orr r0, r0, r3, lsl #8
|
||
584 0306 00B2 sxth r0, r0
|
||
585 0308 FFF7FEFF bl __aeabi_i2d
|
||
586 .LVL54:
|
||
587 030c 3CA3 adr r3, .L14
|
||
588 030e D3E90023 ldrd r2, [r3]
|
||
589 0312 FFF7FEFF bl __aeabi_dmul
|
||
590 .LVL55:
|
||
591 0316 3CA3 adr r3, .L14+8
|
||
592 0318 D3E90023 ldrd r2, [r3]
|
||
593 031c FFF7FEFF bl __aeabi_dadd
|
||
594 .LVL56:
|
||
122:Core/Src/ADBMS_Abstraction.c ****
|
||
595 .loc 1 122 26 view .LVU138
|
||
596 0320 FFF7FEFF bl __aeabi_d2iz
|
||
597 .LVL57:
|
||
598 0324 6086 strh r0, [r4, #50] @ movhi
|
||
124:Core/Src/ADBMS_Abstraction.c ****
|
||
599 .loc 1 124 3 is_stmt 1 view .LVU139
|
||
600 .LBB9:
|
||
126:Core/Src/ADBMS_Abstraction.c ****
|
||
601 .loc 1 126 3 view .LVU140
|
||
602 0326 0622 movs r2, #6
|
||
603 0328 6946 mov r1, sp
|
||
604 032a 3020 movs r0, #48
|
||
605 032c FFF7FEFF bl readCMD
|
||
606 .LVL58:
|
||
126:Core/Src/ADBMS_Abstraction.c ****
|
||
ARM GAS /tmp/cc16Zqrx.s page 16
|
||
|
||
|
||
607 .loc 1 126 3 discriminator 1 view .LVU141
|
||
608 0330 0028 cmp r0, #0
|
||
609 0332 7FF472AE bne .L11
|
||
610 .LBE9:
|
||
126:Core/Src/ADBMS_Abstraction.c ****
|
||
611 .loc 1 126 64 discriminator 2 view .LVU142
|
||
128:Core/Src/ADBMS_Abstraction.c ****
|
||
612 .loc 1 128 3 view .LVU143
|
||
128:Core/Src/ADBMS_Abstraction.c ****
|
||
613 .loc 1 128 37 is_stmt 0 view .LVU144
|
||
614 0336 9DF80230 ldrb r3, [sp, #2] @ zero_extendqisi2
|
||
128:Core/Src/ADBMS_Abstraction.c ****
|
||
615 .loc 1 128 52 view .LVU145
|
||
616 033a 9DF80320 ldrb r2, [sp, #3] @ zero_extendqisi2
|
||
128:Core/Src/ADBMS_Abstraction.c ****
|
||
617 .loc 1 128 41 view .LVU146
|
||
618 033e 43EA0223 orr r3, r3, r2, lsl #8
|
||
128:Core/Src/ADBMS_Abstraction.c ****
|
||
619 .loc 1 128 27 view .LVU147
|
||
620 0342 6387 strh r3, [r4, #58] @ movhi
|
||
621 .LBB10:
|
||
130:Core/Src/ADBMS_Abstraction.c **** module->digitalSupplyVoltage = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
622 .loc 1 130 3 is_stmt 1 view .LVU148
|
||
623 0344 0622 movs r2, #6
|
||
624 0346 6946 mov r1, sp
|
||
625 0348 3120 movs r0, #49
|
||
626 .LVL59:
|
||
130:Core/Src/ADBMS_Abstraction.c **** module->digitalSupplyVoltage = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
627 .loc 1 130 3 is_stmt 0 view .LVU149
|
||
628 034a FFF7FEFF bl readCMD
|
||
629 .LVL60:
|
||
130:Core/Src/ADBMS_Abstraction.c **** module->digitalSupplyVoltage = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
630 .loc 1 130 3 is_stmt 1 discriminator 1 view .LVU150
|
||
631 034e 0028 cmp r0, #0
|
||
632 0350 7FF463AE bne .L11
|
||
633 .LBE10:
|
||
130:Core/Src/ADBMS_Abstraction.c **** module->digitalSupplyVoltage = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
634 .loc 1 130 64 discriminator 2 view .LVU151
|
||
131:Core/Src/ADBMS_Abstraction.c **** module->analogSupplyVoltage = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
635 .loc 1 131 3 view .LVU152
|
||
131:Core/Src/ADBMS_Abstraction.c **** module->analogSupplyVoltage = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
636 .loc 1 131 34 is_stmt 0 view .LVU153
|
||
637 0354 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
638 .LVL61:
|
||
131:Core/Src/ADBMS_Abstraction.c **** module->analogSupplyVoltage = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
639 .loc 1 131 34 view .LVU154
|
||
640 0358 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
641 035c 40EA0320 orr r0, r0, r3, lsl #8
|
||
642 0360 00B2 sxth r0, r0
|
||
643 0362 FFF7FEFF bl __aeabi_i2d
|
||
644 .LVL62:
|
||
645 0366 26A3 adr r3, .L14
|
||
646 0368 D3E90023 ldrd r2, [r3]
|
||
647 036c FFF7FEFF bl __aeabi_dmul
|
||
648 .LVL63:
|
||
649 0370 25A3 adr r3, .L14+8
|
||
650 0372 D3E90023 ldrd r2, [r3]
|
||
ARM GAS /tmp/cc16Zqrx.s page 17
|
||
|
||
|
||
651 0376 FFF7FEFF bl __aeabi_dadd
|
||
652 .LVL64:
|
||
131:Core/Src/ADBMS_Abstraction.c **** module->analogSupplyVoltage = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
653 .loc 1 131 32 view .LVU155
|
||
654 037a FFF7FEFF bl __aeabi_d2uiz
|
||
655 .LVL65:
|
||
656 037e E087 strh r0, [r4, #62] @ movhi
|
||
132:Core/Src/ADBMS_Abstraction.c **** module->refVoltage = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
657 .loc 1 132 3 is_stmt 1 view .LVU156
|
||
132:Core/Src/ADBMS_Abstraction.c **** module->refVoltage = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
658 .loc 1 132 34 is_stmt 0 view .LVU157
|
||
659 0380 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
660 0384 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
661 0388 40EA0320 orr r0, r0, r3, lsl #8
|
||
662 038c 00B2 sxth r0, r0
|
||
663 038e FFF7FEFF bl __aeabi_i2d
|
||
664 .LVL66:
|
||
665 0392 1BA3 adr r3, .L14
|
||
666 0394 D3E90023 ldrd r2, [r3]
|
||
667 0398 FFF7FEFF bl __aeabi_dmul
|
||
668 .LVL67:
|
||
669 039c 1AA3 adr r3, .L14+8
|
||
670 039e D3E90023 ldrd r2, [r3]
|
||
671 03a2 FFF7FEFF bl __aeabi_dadd
|
||
672 .LVL68:
|
||
132:Core/Src/ADBMS_Abstraction.c **** module->refVoltage = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
673 .loc 1 132 32 view .LVU158
|
||
674 03a6 FFF7FEFF bl __aeabi_d2uiz
|
||
675 .LVL69:
|
||
676 03aa A087 strh r0, [r4, #60] @ movhi
|
||
133:Core/Src/ADBMS_Abstraction.c ****
|
||
677 .loc 1 133 3 is_stmt 1 view .LVU159
|
||
133:Core/Src/ADBMS_Abstraction.c ****
|
||
678 .loc 1 133 34 is_stmt 0 view .LVU160
|
||
679 03ac 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
680 03b0 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
681 03b4 40EA0320 orr r0, r0, r3, lsl #8
|
||
682 03b8 00B2 sxth r0, r0
|
||
683 03ba FFF7FEFF bl __aeabi_i2d
|
||
684 .LVL70:
|
||
685 03be 10A3 adr r3, .L14
|
||
686 03c0 D3E90023 ldrd r2, [r3]
|
||
687 03c4 FFF7FEFF bl __aeabi_dmul
|
||
688 .LVL71:
|
||
689 03c8 0FA3 adr r3, .L14+8
|
||
690 03ca D3E90023 ldrd r2, [r3]
|
||
691 03ce FFF7FEFF bl __aeabi_dadd
|
||
692 .LVL72:
|
||
133:Core/Src/ADBMS_Abstraction.c ****
|
||
693 .loc 1 133 32 view .LVU161
|
||
694 03d2 FFF7FEFF bl __aeabi_d2uiz
|
||
695 .LVL73:
|
||
696 03d6 A4F84200 strh r0, [r4, #66] @ movhi
|
||
697 .LBB11:
|
||
135:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
698 .loc 1 135 3 is_stmt 1 view .LVU162
|
||
699 03da 0022 movs r2, #0
|
||
ARM GAS /tmp/cc16Zqrx.s page 18
|
||
|
||
|
||
700 .LVL74:
|
||
135:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
701 .loc 1 135 3 is_stmt 0 view .LVU163
|
||
702 03dc 1146 mov r1, r2
|
||
703 03de 40F21140 movw r0, #1041
|
||
704 03e2 FFF7FEFF bl writeCMD
|
||
705 .LVL75:
|
||
135:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
706 .loc 1 135 3 is_stmt 1 discriminator 1 view .LVU164
|
||
707 03e6 0028 cmp r0, #0
|
||
708 03e8 7FF417AE bne .L11
|
||
709 .LBE11:
|
||
135:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
710 .loc 1 135 40 discriminator 2 view .LVU165
|
||
711 .LBB12:
|
||
136:Core/Src/ADBMS_Abstraction.c ****
|
||
712 .loc 1 136 3 view .LVU166
|
||
713 03ec 0022 movs r2, #0
|
||
714 .LVL76:
|
||
136:Core/Src/ADBMS_Abstraction.c ****
|
||
715 .loc 1 136 3 is_stmt 0 view .LVU167
|
||
716 03ee 1146 mov r1, r2
|
||
717 03f0 40F20140 movw r0, #1025
|
||
718 .LVL77:
|
||
136:Core/Src/ADBMS_Abstraction.c ****
|
||
719 .loc 1 136 3 view .LVU168
|
||
720 03f4 FFF7FEFF bl writeCMD
|
||
721 .LVL78:
|
||
136:Core/Src/ADBMS_Abstraction.c ****
|
||
722 .loc 1 136 3 is_stmt 1 discriminator 1 view .LVU169
|
||
723 03f8 0FE6 b .L11
|
||
724 .L15:
|
||
725 03fa 00BFAFF3 .align 3
|
||
725 0080
|
||
726 .L14:
|
||
727 0400 33333333 .word 858993459
|
||
728 0404 3333C33F .word 1069757235
|
||
729 0408 00000000 .word 0
|
||
730 040c 00709740 .word 1083666432
|
||
731 .LBE12:
|
||
732 .cfi_endproc
|
||
733 .LFE129:
|
||
735 .section .text.amsConfigBalancing,"ax",%progbits
|
||
736 .align 1
|
||
737 .global amsConfigBalancing
|
||
738 .syntax unified
|
||
739 .thumb
|
||
740 .thumb_func
|
||
742 amsConfigBalancing:
|
||
743 .LVL79:
|
||
744 .LFB130:
|
||
140:Core/Src/ADBMS_Abstraction.c ****
|
||
141:Core/Src/ADBMS_Abstraction.c **** uint8 amsConfigBalancing(uint32 channels, uint8 dutyCycle) {
|
||
745 .loc 1 141 60 view -0
|
||
746 .cfi_startproc
|
||
747 @ args = 0, pretend = 0, frame = 16
|
||
748 @ frame_needed = 0, uses_anonymous_args = 0
|
||
ARM GAS /tmp/cc16Zqrx.s page 19
|
||
|
||
|
||
749 .loc 1 141 60 is_stmt 0 view .LVU171
|
||
750 0000 30B5 push {r4, r5, lr}
|
||
751 .cfi_def_cfa_offset 12
|
||
752 .cfi_offset 4, -12
|
||
753 .cfi_offset 5, -8
|
||
754 .cfi_offset 14, -4
|
||
755 0002 85B0 sub sp, sp, #20
|
||
756 .cfi_def_cfa_offset 32
|
||
757 0004 0446 mov r4, r0
|
||
758 0006 0D46 mov r5, r1
|
||
142:Core/Src/ADBMS_Abstraction.c **** uint8 buffer_a[PWM_GROUP_A_SIZE] = {};
|
||
759 .loc 1 142 3 is_stmt 1 view .LVU172
|
||
760 .loc 1 142 9 is_stmt 0 view .LVU173
|
||
761 0008 0023 movs r3, #0
|
||
762 000a 0293 str r3, [sp, #8]
|
||
763 000c ADF80C30 strh r3, [sp, #12] @ movhi
|
||
143:Core/Src/ADBMS_Abstraction.c **** uint8 buffer_b[PWM_GROUP_B_SIZE] = {};
|
||
764 .loc 1 143 3 is_stmt 1 view .LVU174
|
||
765 .loc 1 143 9 is_stmt 0 view .LVU175
|
||
766 0010 ADF80430 strh r3, [sp, #4] @ movhi
|
||
767 .LBB13:
|
||
144:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMA, buffer_a, CFG_GROUP_A_SIZE));
|
||
768 .loc 1 144 3 is_stmt 1 view .LVU176
|
||
769 0014 0622 movs r2, #6
|
||
770 0016 02A9 add r1, sp, #8
|
||
771 .LVL80:
|
||
772 .loc 1 144 3 is_stmt 0 view .LVU177
|
||
773 0018 2220 movs r0, #34
|
||
774 .LVL81:
|
||
775 .loc 1 144 3 view .LVU178
|
||
776 001a FFF7FEFF bl readCMD
|
||
777 .LVL82:
|
||
778 .loc 1 144 3 is_stmt 1 discriminator 1 view .LVU179
|
||
779 001e 0346 mov r3, r0
|
||
780 0020 10B1 cbz r0, .L32
|
||
781 .LVL83:
|
||
782 .L17:
|
||
783 .loc 1 144 3 is_stmt 0 discriminator 1 view .LVU180
|
||
784 .LBE13:
|
||
145:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
146:Core/Src/ADBMS_Abstraction.c ****
|
||
147:Core/Src/ADBMS_Abstraction.c **** if (dutyCycle > 0x0F) { // there are only 4 bits for duty cycle
|
||
148:Core/Src/ADBMS_Abstraction.c **** return 1;
|
||
149:Core/Src/ADBMS_Abstraction.c **** }
|
||
150:Core/Src/ADBMS_Abstraction.c ****
|
||
151:Core/Src/ADBMS_Abstraction.c **** #warning fixme
|
||
152:Core/Src/ADBMS_Abstraction.c ****
|
||
153:Core/Src/ADBMS_Abstraction.c **** for (size_t i = 0; i < 16; i += 2) {
|
||
154:Core/Src/ADBMS_Abstraction.c **** if (i < 12) { // cells 0, 1 are in regbuffer[0], cells 2, 3 in regbuffer[1], ...
|
||
155:Core/Src/ADBMS_Abstraction.c **** buffer_a[i / 2] = ((channels & (1 << (i + 1))) ? (dutyCycle << 4) : 0) |
|
||
156:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
157:Core/Src/ADBMS_Abstraction.c **** } else {
|
||
158:Core/Src/ADBMS_Abstraction.c **** buffer_b[(i - 12) / 2] = ((channels & (1 << (i + 1))) ? (dutyCycle << 4) : 0) |
|
||
159:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
160:Core/Src/ADBMS_Abstraction.c **** }
|
||
161:Core/Src/ADBMS_Abstraction.c **** }
|
||
162:Core/Src/ADBMS_Abstraction.c ****
|
||
ARM GAS /tmp/cc16Zqrx.s page 20
|
||
|
||
|
||
163:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRPWMA, buffer_a, CFG_GROUP_A_SIZE));
|
||
164:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
165:Core/Src/ADBMS_Abstraction.c ****
|
||
166:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
167:Core/Src/ADBMS_Abstraction.c **** }
|
||
785 .loc 1 167 1 view .LVU181
|
||
786 0022 1846 mov r0, r3
|
||
787 0024 05B0 add sp, sp, #20
|
||
788 .cfi_remember_state
|
||
789 .cfi_def_cfa_offset 12
|
||
790 @ sp needed
|
||
791 0026 30BD pop {r4, r5, pc}
|
||
792 .LVL84:
|
||
793 .L32:
|
||
794 .cfi_restore_state
|
||
144:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMA, buffer_a, CFG_GROUP_A_SIZE));
|
||
795 .loc 1 144 60 is_stmt 1 discriminator 2 view .LVU182
|
||
796 .LBB14:
|
||
145:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
797 .loc 1 145 3 view .LVU183
|
||
798 0028 0622 movs r2, #6
|
||
799 002a 01A9 add r1, sp, #4
|
||
800 002c 2320 movs r0, #35
|
||
801 .LVL85:
|
||
145:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
802 .loc 1 145 3 is_stmt 0 view .LVU184
|
||
803 002e FFF7FEFF bl readCMD
|
||
804 .LVL86:
|
||
145:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
805 .loc 1 145 3 is_stmt 1 discriminator 1 view .LVU185
|
||
806 0032 0346 mov r3, r0
|
||
807 0034 0028 cmp r0, #0
|
||
808 0036 F4D1 bne .L17
|
||
809 .LBE14:
|
||
145:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
810 .loc 1 145 60 discriminator 2 view .LVU186
|
||
147:Core/Src/ADBMS_Abstraction.c **** return 1;
|
||
811 .loc 1 147 3 view .LVU187
|
||
147:Core/Src/ADBMS_Abstraction.c **** return 1;
|
||
812 .loc 1 147 6 is_stmt 0 view .LVU188
|
||
813 0038 0F2D cmp r5, #15
|
||
814 003a 44D8 bhi .L26
|
||
815 .LBB15:
|
||
153:Core/Src/ADBMS_Abstraction.c **** if (i < 12) { // cells 0, 1 are in regbuffer[0], cells 2, 3 in regbuffer[1], ...
|
||
816 .loc 1 153 15 view .LVU189
|
||
817 003c 0023 movs r3, #0
|
||
818 003e 09E0 b .L18
|
||
819 .LVL87:
|
||
820 .L27:
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
821 .loc 1 155 78 discriminator 2 view .LVU190
|
||
822 0040 0022 movs r2, #0
|
||
823 0042 12E0 b .L20
|
||
824 .L28:
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
825 .loc 1 155 78 discriminator 6 view .LVU191
|
||
826 0044 0021 movs r1, #0
|
||
ARM GAS /tmp/cc16Zqrx.s page 21
|
||
|
||
|
||
827 .L21:
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
828 .loc 1 155 78 discriminator 8 view .LVU192
|
||
829 0046 0A43 orrs r2, r2, r1
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
830 .loc 1 155 23 discriminator 8 view .LVU193
|
||
831 0048 04A9 add r1, sp, #16
|
||
832 004a 01EB5301 add r1, r1, r3, lsr #1
|
||
833 004e 01F8082C strb r2, [r1, #-8]
|
||
834 .L22:
|
||
153:Core/Src/ADBMS_Abstraction.c **** if (i < 12) { // cells 0, 1 are in regbuffer[0], cells 2, 3 in regbuffer[1], ...
|
||
835 .loc 1 153 32 is_stmt 1 discriminator 2 view .LVU194
|
||
836 0052 0233 adds r3, r3, #2
|
||
837 .LVL88:
|
||
838 .L18:
|
||
153:Core/Src/ADBMS_Abstraction.c **** if (i < 12) { // cells 0, 1 are in regbuffer[0], cells 2, 3 in regbuffer[1], ...
|
||
839 .loc 1 153 24 discriminator 1 view .LVU195
|
||
840 0054 0F2B cmp r3, #15
|
||
841 0056 27D8 bhi .L33
|
||
154:Core/Src/ADBMS_Abstraction.c **** buffer_a[i / 2] = ((channels & (1 << (i + 1))) ? (dutyCycle << 4) : 0) |
|
||
842 .loc 1 154 5 view .LVU196
|
||
154:Core/Src/ADBMS_Abstraction.c **** buffer_a[i / 2] = ((channels & (1 << (i + 1))) ? (dutyCycle << 4) : 0) |
|
||
843 .loc 1 154 8 is_stmt 0 view .LVU197
|
||
844 0058 0B2B cmp r3, #11
|
||
845 005a 0CD8 bhi .L19
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
846 .loc 1 155 7 is_stmt 1 view .LVU198
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
847 .loc 1 155 47 is_stmt 0 view .LVU199
|
||
848 005c 591C adds r1, r3, #1
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
849 .loc 1 155 41 view .LVU200
|
||
850 005e 0122 movs r2, #1
|
||
851 0060 8A40 lsls r2, r2, r1
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
852 .loc 1 155 78 view .LVU201
|
||
853 0062 2242 tst r2, r4
|
||
854 0064 ECD0 beq .L27
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
855 .loc 1 155 78 discriminator 1 view .LVU202
|
||
856 0066 2A01 lsls r2, r5, #4
|
||
857 0068 52B2 sxtb r2, r2
|
||
858 .L20:
|
||
156:Core/Src/ADBMS_Abstraction.c **** } else {
|
||
859 .loc 1 156 42 view .LVU203
|
||
860 006a 0120 movs r0, #1
|
||
861 006c 9840 lsls r0, r0, r3
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
862 .loc 1 155 78 discriminator 4 view .LVU204
|
||
863 006e 2042 tst r0, r4
|
||
864 0070 E8D0 beq .L28
|
||
155:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
865 .loc 1 155 78 discriminator 5 view .LVU205
|
||
866 0072 69B2 sxtb r1, r5
|
||
867 0074 E7E7 b .L21
|
||
868 .L19:
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
ARM GAS /tmp/cc16Zqrx.s page 22
|
||
|
||
|
||
869 .loc 1 158 7 is_stmt 1 view .LVU206
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
870 .loc 1 158 54 is_stmt 0 view .LVU207
|
||
871 0076 591C adds r1, r3, #1
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
872 .loc 1 158 48 view .LVU208
|
||
873 0078 0122 movs r2, #1
|
||
874 007a 8A40 lsls r2, r2, r1
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
875 .loc 1 158 85 view .LVU209
|
||
876 007c 2242 tst r2, r4
|
||
877 007e 0FD0 beq .L29
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
878 .loc 1 158 85 discriminator 1 view .LVU210
|
||
879 0080 2901 lsls r1, r5, #4
|
||
880 0082 49B2 sxtb r1, r1
|
||
881 .L23:
|
||
159:Core/Src/ADBMS_Abstraction.c **** }
|
||
882 .loc 1 159 49 view .LVU211
|
||
883 0084 0122 movs r2, #1
|
||
884 0086 9A40 lsls r2, r2, r3
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
885 .loc 1 158 85 discriminator 4 view .LVU212
|
||
886 0088 2242 tst r2, r4
|
||
887 008a 0BD0 beq .L30
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
888 .loc 1 158 85 discriminator 5 view .LVU213
|
||
889 008c 68B2 sxtb r0, r5
|
||
890 .L24:
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
891 .loc 1 158 19 discriminator 8 view .LVU214
|
||
892 008e A3F10C02 sub r2, r3, #12
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
893 .loc 1 158 85 discriminator 8 view .LVU215
|
||
894 0092 0143 orrs r1, r1, r0
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
895 .loc 1 158 30 discriminator 8 view .LVU216
|
||
896 0094 04A8 add r0, sp, #16
|
||
897 0096 00EB5202 add r2, r0, r2, lsr #1
|
||
898 009a 02F80C1C strb r1, [r2, #-12]
|
||
899 009e D8E7 b .L22
|
||
900 .L29:
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
901 .loc 1 158 85 discriminator 2 view .LVU217
|
||
902 00a0 0021 movs r1, #0
|
||
903 00a2 EFE7 b .L23
|
||
904 .L30:
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
905 .loc 1 158 85 discriminator 6 view .LVU218
|
||
906 00a4 0020 movs r0, #0
|
||
907 00a6 F2E7 b .L24
|
||
908 .L33:
|
||
158:Core/Src/ADBMS_Abstraction.c **** ((channels & (1 << i)) ? dutyCycle : 0);
|
||
909 .loc 1 158 85 discriminator 6 view .LVU219
|
||
910 .LBE15:
|
||
911 .LBB16:
|
||
163:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
ARM GAS /tmp/cc16Zqrx.s page 23
|
||
|
||
|
||
912 .loc 1 163 3 is_stmt 1 view .LVU220
|
||
913 00a8 0622 movs r2, #6
|
||
914 00aa 02A9 add r1, sp, #8
|
||
915 00ac 2020 movs r0, #32
|
||
916 00ae FFF7FEFF bl writeCMD
|
||
917 .LVL89:
|
||
163:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
918 .loc 1 163 3 discriminator 1 view .LVU221
|
||
919 00b2 0346 mov r3, r0
|
||
920 00b4 0028 cmp r0, #0
|
||
921 00b6 B4D1 bne .L17
|
||
922 .LBE16:
|
||
163:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRPWMB, buffer_b, CFG_GROUP_B_SIZE));
|
||
923 .loc 1 163 61 discriminator 2 view .LVU222
|
||
924 .LBB17:
|
||
164:Core/Src/ADBMS_Abstraction.c ****
|
||
925 .loc 1 164 3 view .LVU223
|
||
926 00b8 0622 movs r2, #6
|
||
927 00ba 01A9 add r1, sp, #4
|
||
928 00bc 2120 movs r0, #33
|
||
929 .LVL90:
|
||
164:Core/Src/ADBMS_Abstraction.c ****
|
||
930 .loc 1 164 3 is_stmt 0 view .LVU224
|
||
931 00be FFF7FEFF bl writeCMD
|
||
932 .LVL91:
|
||
164:Core/Src/ADBMS_Abstraction.c ****
|
||
933 .loc 1 164 3 view .LVU225
|
||
934 00c2 0346 mov r3, r0
|
||
935 .LVL92:
|
||
164:Core/Src/ADBMS_Abstraction.c ****
|
||
936 .loc 1 164 3 is_stmt 1 discriminator 1 view .LVU226
|
||
937 00c4 ADE7 b .L17
|
||
938 .LVL93:
|
||
939 .L26:
|
||
164:Core/Src/ADBMS_Abstraction.c ****
|
||
940 .loc 1 164 3 is_stmt 0 discriminator 1 view .LVU227
|
||
941 .LBE17:
|
||
148:Core/Src/ADBMS_Abstraction.c **** }
|
||
942 .loc 1 148 12 view .LVU228
|
||
943 00c6 0123 movs r3, #1
|
||
944 00c8 ABE7 b .L17
|
||
945 .cfi_endproc
|
||
946 .LFE130:
|
||
948 .section .text.amsStartBalancing,"ax",%progbits
|
||
949 .align 1
|
||
950 .global amsStartBalancing
|
||
951 .syntax unified
|
||
952 .thumb
|
||
953 .thumb_func
|
||
955 amsStartBalancing:
|
||
956 .LVL94:
|
||
957 .LFB131:
|
||
168:Core/Src/ADBMS_Abstraction.c ****
|
||
169:Core/Src/ADBMS_Abstraction.c **** uint8 amsStartBalancing(uint8 dutyCycle) { return writeCMD(UNMUTE, NULL, 0); }
|
||
958 .loc 1 169 42 is_stmt 1 view -0
|
||
959 .cfi_startproc
|
||
960 @ args = 0, pretend = 0, frame = 0
|
||
ARM GAS /tmp/cc16Zqrx.s page 24
|
||
|
||
|
||
961 @ frame_needed = 0, uses_anonymous_args = 0
|
||
962 .loc 1 169 42 is_stmt 0 view .LVU230
|
||
963 0000 08B5 push {r3, lr}
|
||
964 .cfi_def_cfa_offset 8
|
||
965 .cfi_offset 3, -8
|
||
966 .cfi_offset 14, -4
|
||
967 .loc 1 169 44 is_stmt 1 view .LVU231
|
||
968 .loc 1 169 51 is_stmt 0 view .LVU232
|
||
969 0002 0022 movs r2, #0
|
||
970 0004 1146 mov r1, r2
|
||
971 0006 2920 movs r0, #41
|
||
972 .LVL95:
|
||
973 .loc 1 169 51 view .LVU233
|
||
974 0008 FFF7FEFF bl writeCMD
|
||
975 .LVL96:
|
||
976 .loc 1 169 78 view .LVU234
|
||
977 000c 08BD pop {r3, pc}
|
||
978 .cfi_endproc
|
||
979 .LFE131:
|
||
981 .section .text.amsStopBalancing,"ax",%progbits
|
||
982 .align 1
|
||
983 .global amsStopBalancing
|
||
984 .syntax unified
|
||
985 .thumb
|
||
986 .thumb_func
|
||
988 amsStopBalancing:
|
||
989 .LFB132:
|
||
170:Core/Src/ADBMS_Abstraction.c ****
|
||
171:Core/Src/ADBMS_Abstraction.c **** uint8 amsStopBalancing() { return writeCMD(MUTE, NULL, 0); }
|
||
990 .loc 1 171 26 is_stmt 1 view -0
|
||
991 .cfi_startproc
|
||
992 @ args = 0, pretend = 0, frame = 0
|
||
993 @ frame_needed = 0, uses_anonymous_args = 0
|
||
994 0000 08B5 push {r3, lr}
|
||
995 .cfi_def_cfa_offset 8
|
||
996 .cfi_offset 3, -8
|
||
997 .cfi_offset 14, -4
|
||
998 .loc 1 171 28 view .LVU236
|
||
999 .loc 1 171 35 is_stmt 0 view .LVU237
|
||
1000 0002 0022 movs r2, #0
|
||
1001 0004 1146 mov r1, r2
|
||
1002 0006 2820 movs r0, #40
|
||
1003 0008 FFF7FEFF bl writeCMD
|
||
1004 .LVL97:
|
||
1005 .loc 1 171 60 view .LVU238
|
||
1006 000c 08BD pop {r3, pc}
|
||
1007 .cfi_endproc
|
||
1008 .LFE132:
|
||
1010 .section .text.amsSelfTest,"ax",%progbits
|
||
1011 .align 1
|
||
1012 .global amsSelfTest
|
||
1013 .syntax unified
|
||
1014 .thumb
|
||
1015 .thumb_func
|
||
1017 amsSelfTest:
|
||
1018 .LFB133:
|
||
172:Core/Src/ADBMS_Abstraction.c ****
|
||
ARM GAS /tmp/cc16Zqrx.s page 25
|
||
|
||
|
||
173:Core/Src/ADBMS_Abstraction.c **** uint8 amsSelfTest() { return 0; }
|
||
1019 .loc 1 173 21 is_stmt 1 view -0
|
||
1020 .cfi_startproc
|
||
1021 @ args = 0, pretend = 0, frame = 0
|
||
1022 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1023 @ link register save eliminated.
|
||
1024 .loc 1 173 23 view .LVU240
|
||
1025 .loc 1 173 33 is_stmt 0 view .LVU241
|
||
1026 0000 0020 movs r0, #0
|
||
1027 0002 7047 bx lr
|
||
1028 .cfi_endproc
|
||
1029 .LFE133:
|
||
1031 .section .text.amsConfigOverUnderVoltage,"ax",%progbits
|
||
1032 .align 1
|
||
1033 .global amsConfigOverUnderVoltage
|
||
1034 .syntax unified
|
||
1035 .thumb
|
||
1036 .thumb_func
|
||
1038 amsConfigOverUnderVoltage:
|
||
1039 .LVL98:
|
||
1040 .LFB134:
|
||
174:Core/Src/ADBMS_Abstraction.c ****
|
||
175:Core/Src/ADBMS_Abstraction.c **** uint8 amsConfigOverUnderVoltage(uint16 overVoltage, uint16 underVoltage) {
|
||
1041 .loc 1 175 74 is_stmt 1 view -0
|
||
1042 .cfi_startproc
|
||
1043 @ args = 0, pretend = 0, frame = 8
|
||
1044 @ frame_needed = 0, uses_anonymous_args = 0
|
||
176:Core/Src/ADBMS_Abstraction.c **** uint8 buffer[CFG_GROUP_A_SIZE];
|
||
1045 .loc 1 176 3 view .LVU243
|
||
177:Core/Src/ADBMS_Abstraction.c ****
|
||
178:Core/Src/ADBMS_Abstraction.c **** if (underVoltage & 0xF000 || overVoltage & 0xF000) { // only 12 bits allowed
|
||
1046 .loc 1 178 3 view .LVU244
|
||
1047 .loc 1 178 6 is_stmt 0 view .LVU245
|
||
1048 0000 B1F5805F cmp r1, #4096
|
||
1049 0004 30D2 bcs .L41
|
||
175:Core/Src/ADBMS_Abstraction.c **** uint8 buffer[CFG_GROUP_A_SIZE];
|
||
1050 .loc 1 175 74 view .LVU246
|
||
1051 0006 30B5 push {r4, r5, lr}
|
||
1052 .cfi_def_cfa_offset 12
|
||
1053 .cfi_offset 4, -12
|
||
1054 .cfi_offset 5, -8
|
||
1055 .cfi_offset 14, -4
|
||
1056 0008 83B0 sub sp, sp, #12
|
||
1057 .cfi_def_cfa_offset 24
|
||
1058 000a 0546 mov r5, r0
|
||
1059 000c 0C46 mov r4, r1
|
||
1060 .loc 1 178 29 discriminator 1 view .LVU247
|
||
1061 000e B0F5805F cmp r0, #4096
|
||
1062 0012 02D3 bcc .L47
|
||
179:Core/Src/ADBMS_Abstraction.c **** return 1;
|
||
1063 .loc 1 179 12 view .LVU248
|
||
1064 0014 0120 movs r0, #1
|
||
1065 .LVL99:
|
||
1066 .L40:
|
||
180:Core/Src/ADBMS_Abstraction.c **** }
|
||
181:Core/Src/ADBMS_Abstraction.c ****
|
||
182:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCFGB, buffer, CFG_GROUP_A_SIZE));
|
||
ARM GAS /tmp/cc16Zqrx.s page 26
|
||
|
||
|
||
183:Core/Src/ADBMS_Abstraction.c ****
|
||
184:Core/Src/ADBMS_Abstraction.c **** //UV
|
||
185:Core/Src/ADBMS_Abstraction.c **** buffer[0] = (uint8) (underVoltage & 0xFF);
|
||
186:Core/Src/ADBMS_Abstraction.c **** buffer[1] &= 0xF0;
|
||
187:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) ((underVoltage >> 8) & 0x0F);
|
||
188:Core/Src/ADBMS_Abstraction.c ****
|
||
189:Core/Src/ADBMS_Abstraction.c **** //OV
|
||
190:Core/Src/ADBMS_Abstraction.c **** buffer[1] &= 0x0F;
|
||
191:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) (overVoltage << 4);
|
||
192:Core/Src/ADBMS_Abstraction.c **** buffer[2] = (uint8) (overVoltage >> 4);
|
||
193:Core/Src/ADBMS_Abstraction.c ****
|
||
194:Core/Src/ADBMS_Abstraction.c **** return writeCMD(WRCFGB, buffer, CFG_GROUP_A_SIZE);
|
||
195:Core/Src/ADBMS_Abstraction.c **** }
|
||
1067 .loc 1 195 1 view .LVU249
|
||
1068 0016 03B0 add sp, sp, #12
|
||
1069 .cfi_remember_state
|
||
1070 .cfi_def_cfa_offset 12
|
||
1071 @ sp needed
|
||
1072 0018 30BD pop {r4, r5, pc}
|
||
1073 .LVL100:
|
||
1074 .L47:
|
||
1075 .cfi_restore_state
|
||
1076 .LBB18:
|
||
182:Core/Src/ADBMS_Abstraction.c ****
|
||
1077 .loc 1 182 3 is_stmt 1 view .LVU250
|
||
1078 001a 0622 movs r2, #6
|
||
1079 001c 6946 mov r1, sp
|
||
1080 .LVL101:
|
||
182:Core/Src/ADBMS_Abstraction.c ****
|
||
1081 .loc 1 182 3 is_stmt 0 view .LVU251
|
||
1082 001e 2620 movs r0, #38
|
||
1083 .LVL102:
|
||
182:Core/Src/ADBMS_Abstraction.c ****
|
||
1084 .loc 1 182 3 view .LVU252
|
||
1085 0020 FFF7FEFF bl readCMD
|
||
1086 .LVL103:
|
||
182:Core/Src/ADBMS_Abstraction.c ****
|
||
1087 .loc 1 182 3 is_stmt 1 discriminator 1 view .LVU253
|
||
1088 0024 0028 cmp r0, #0
|
||
1089 0026 F6D1 bne .L40
|
||
1090 .LBE18:
|
||
182:Core/Src/ADBMS_Abstraction.c ****
|
||
1091 .loc 1 182 58 discriminator 2 view .LVU254
|
||
185:Core/Src/ADBMS_Abstraction.c **** buffer[1] &= 0xF0;
|
||
1092 .loc 1 185 3 view .LVU255
|
||
185:Core/Src/ADBMS_Abstraction.c **** buffer[1] &= 0xF0;
|
||
1093 .loc 1 185 13 is_stmt 0 view .LVU256
|
||
1094 0028 8DF80040 strb r4, [sp]
|
||
186:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) ((underVoltage >> 8) & 0x0F);
|
||
1095 .loc 1 186 3 is_stmt 1 view .LVU257
|
||
186:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) ((underVoltage >> 8) & 0x0F);
|
||
1096 .loc 1 186 9 is_stmt 0 view .LVU258
|
||
1097 002c 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
186:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) ((underVoltage >> 8) & 0x0F);
|
||
1098 .loc 1 186 13 view .LVU259
|
||
1099 0030 03F0F003 and r3, r3, #240
|
||
1100 0034 8DF80130 strb r3, [sp, #1]
|
||
ARM GAS /tmp/cc16Zqrx.s page 27
|
||
|
||
|
||
187:Core/Src/ADBMS_Abstraction.c ****
|
||
1101 .loc 1 187 3 is_stmt 1 view .LVU260
|
||
187:Core/Src/ADBMS_Abstraction.c ****
|
||
1102 .loc 1 187 16 is_stmt 0 view .LVU261
|
||
1103 0038 C4F30324 ubfx r4, r4, #8, #4
|
||
1104 .LVL104:
|
||
187:Core/Src/ADBMS_Abstraction.c ****
|
||
1105 .loc 1 187 13 view .LVU262
|
||
1106 003c 2343 orrs r3, r3, r4
|
||
1107 003e 8DF80130 strb r3, [sp, #1]
|
||
190:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) (overVoltage << 4);
|
||
1108 .loc 1 190 3 is_stmt 1 view .LVU263
|
||
190:Core/Src/ADBMS_Abstraction.c **** buffer[1] |= (uint8) (overVoltage << 4);
|
||
1109 .loc 1 190 13 is_stmt 0 view .LVU264
|
||
1110 0042 03F00F03 and r3, r3, #15
|
||
1111 0046 8DF80130 strb r3, [sp, #1]
|
||
191:Core/Src/ADBMS_Abstraction.c **** buffer[2] = (uint8) (overVoltage >> 4);
|
||
1112 .loc 1 191 3 is_stmt 1 view .LVU265
|
||
191:Core/Src/ADBMS_Abstraction.c **** buffer[2] = (uint8) (overVoltage >> 4);
|
||
1113 .loc 1 191 16 is_stmt 0 view .LVU266
|
||
1114 004a 2A01 lsls r2, r5, #4
|
||
1115 004c D2B2 uxtb r2, r2
|
||
191:Core/Src/ADBMS_Abstraction.c **** buffer[2] = (uint8) (overVoltage >> 4);
|
||
1116 .loc 1 191 13 view .LVU267
|
||
1117 004e 1343 orrs r3, r3, r2
|
||
1118 0050 8DF80130 strb r3, [sp, #1]
|
||
192:Core/Src/ADBMS_Abstraction.c ****
|
||
1119 .loc 1 192 3 is_stmt 1 view .LVU268
|
||
192:Core/Src/ADBMS_Abstraction.c ****
|
||
1120 .loc 1 192 15 is_stmt 0 view .LVU269
|
||
1121 0054 C5F30715 ubfx r5, r5, #4, #8
|
||
1122 .LVL105:
|
||
192:Core/Src/ADBMS_Abstraction.c ****
|
||
1123 .loc 1 192 13 view .LVU270
|
||
1124 0058 8DF80250 strb r5, [sp, #2]
|
||
194:Core/Src/ADBMS_Abstraction.c **** }
|
||
1125 .loc 1 194 3 is_stmt 1 view .LVU271
|
||
194:Core/Src/ADBMS_Abstraction.c **** }
|
||
1126 .loc 1 194 10 is_stmt 0 view .LVU272
|
||
1127 005c 0622 movs r2, #6
|
||
1128 005e 6946 mov r1, sp
|
||
1129 0060 2420 movs r0, #36
|
||
1130 .LVL106:
|
||
194:Core/Src/ADBMS_Abstraction.c **** }
|
||
1131 .loc 1 194 10 view .LVU273
|
||
1132 0062 FFF7FEFF bl writeCMD
|
||
1133 .LVL107:
|
||
1134 0066 D6E7 b .L40
|
||
1135 .LVL108:
|
||
1136 .L41:
|
||
1137 .cfi_def_cfa_offset 0
|
||
1138 .cfi_restore 4
|
||
1139 .cfi_restore 5
|
||
1140 .cfi_restore 14
|
||
179:Core/Src/ADBMS_Abstraction.c **** }
|
||
1141 .loc 1 179 12 view .LVU274
|
||
1142 0068 0120 movs r0, #1
|
||
ARM GAS /tmp/cc16Zqrx.s page 28
|
||
|
||
|
||
1143 .LVL109:
|
||
1144 .loc 1 195 1 view .LVU275
|
||
1145 006a 7047 bx lr
|
||
1146 .cfi_endproc
|
||
1147 .LFE134:
|
||
1149 .section .rodata.amsReset.str1.4,"aMS",%progbits,1
|
||
1150 .align 2
|
||
1151 .LC0:
|
||
1152 0000 FFFFFFFF .ascii "\377\377\377\377\377\377\000"
|
||
1152 FFFF00
|
||
1153 .section .text.amsReset,"ax",%progbits
|
||
1154 .align 1
|
||
1155 .global amsReset
|
||
1156 .syntax unified
|
||
1157 .thumb
|
||
1158 .thumb_func
|
||
1160 amsReset:
|
||
1161 .LFB123:
|
||
24:Core/Src/ADBMS_Abstraction.c **** amsWakeUp();
|
||
1162 .loc 1 24 18 is_stmt 1 view -0
|
||
1163 .cfi_startproc
|
||
1164 @ args = 0, pretend = 0, frame = 8
|
||
1165 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1166 0000 00B5 push {lr}
|
||
1167 .cfi_def_cfa_offset 4
|
||
1168 .cfi_offset 14, -4
|
||
1169 0002 83B0 sub sp, sp, #12
|
||
1170 .cfi_def_cfa_offset 16
|
||
25:Core/Src/ADBMS_Abstraction.c **** readCMD(SRST, NULL, 0);
|
||
1171 .loc 1 25 3 view .LVU277
|
||
1172 0004 FFF7FEFF bl amsWakeUp
|
||
1173 .LVL110:
|
||
26:Core/Src/ADBMS_Abstraction.c **** mcuDelay(10);
|
||
1174 .loc 1 26 3 view .LVU278
|
||
1175 0008 0022 movs r2, #0
|
||
1176 000a 1146 mov r1, r2
|
||
1177 000c 2720 movs r0, #39
|
||
1178 000e FFF7FEFF bl readCMD
|
||
1179 .LVL111:
|
||
27:Core/Src/ADBMS_Abstraction.c **** amsWakeUp();
|
||
1180 .loc 1 27 3 view .LVU279
|
||
1181 0012 0A20 movs r0, #10
|
||
1182 0014 FFF7FEFF bl mcuDelay
|
||
1183 .LVL112:
|
||
28:Core/Src/ADBMS_Abstraction.c **** amsStopBalancing();
|
||
1184 .loc 1 28 3 view .LVU280
|
||
1185 0018 FFF7FEFF bl amsWakeUp
|
||
1186 .LVL113:
|
||
29:Core/Src/ADBMS_Abstraction.c **** amsConfigOverUnderVoltage(DEFAULT_OV, DEFAULT_UV);
|
||
1187 .loc 1 29 3 view .LVU281
|
||
1188 001c FFF7FEFF bl amsStopBalancing
|
||
1189 .LVL114:
|
||
30:Core/Src/ADBMS_Abstraction.c ****
|
||
1190 .loc 1 30 3 view .LVU282
|
||
1191 0020 40F2A111 movw r1, #417
|
||
1192 0024 40F26540 movw r0, #1125
|
||
1193 0028 FFF7FEFF bl amsConfigOverUnderVoltage
|
||
ARM GAS /tmp/cc16Zqrx.s page 29
|
||
|
||
|
||
1194 .LVL115:
|
||
32:Core/Src/ADBMS_Abstraction.c ****
|
||
1195 .loc 1 32 3 view .LVU283
|
||
32:Core/Src/ADBMS_Abstraction.c ****
|
||
1196 .loc 1 32 9 is_stmt 0 view .LVU284
|
||
1197 002c 1A4B ldr r3, .L52
|
||
1198 002e 93E80300 ldm r3, {r0, r1}
|
||
1199 0032 0090 str r0, [sp]
|
||
1200 0034 ADF80410 strh r1, [sp, #4] @ movhi
|
||
1201 .LBB19:
|
||
34:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLOVUV, buffer, 6)); //OVUV flags
|
||
1202 .loc 1 34 3 is_stmt 1 view .LVU285
|
||
1203 0038 0622 movs r2, #6
|
||
1204 003a 6946 mov r1, sp
|
||
1205 003c 40F21770 movw r0, #1815
|
||
1206 0040 FFF7FEFF bl writeCMD
|
||
1207 .LVL116:
|
||
34:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLOVUV, buffer, 6)); //OVUV flags
|
||
1208 .loc 1 34 3 discriminator 1 view .LVU286
|
||
1209 0044 0346 mov r3, r0
|
||
1210 0046 18B1 cbz r0, .L51
|
||
1211 .LVL117:
|
||
1212 .L49:
|
||
34:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLOVUV, buffer, 6)); //OVUV flags
|
||
1213 .loc 1 34 3 is_stmt 0 discriminator 1 view .LVU287
|
||
1214 .LBE19:
|
||
41:Core/Src/ADBMS_Abstraction.c ****
|
||
1215 .loc 1 41 1 view .LVU288
|
||
1216 0048 1846 mov r0, r3
|
||
1217 004a 03B0 add sp, sp, #12
|
||
1218 .cfi_remember_state
|
||
1219 .cfi_def_cfa_offset 4
|
||
1220 @ sp needed
|
||
1221 004c 5DF804FB ldr pc, [sp], #4
|
||
1222 .LVL118:
|
||
1223 .L51:
|
||
1224 .cfi_restore_state
|
||
34:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(CLOVUV, buffer, 6)); //OVUV flags
|
||
1225 .loc 1 34 45 is_stmt 1 discriminator 2 view .LVU289
|
||
1226 .LBB20:
|
||
35:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADCV | ADCV_CONT | ADCV_RD, NULL, 0)); //start continuous cell voltage meas
|
||
1227 .loc 1 35 3 view .LVU290
|
||
1228 0050 0622 movs r2, #6
|
||
1229 0052 6946 mov r1, sp
|
||
1230 0054 40F21570 movw r0, #1813
|
||
1231 .LVL119:
|
||
35:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADCV | ADCV_CONT | ADCV_RD, NULL, 0)); //start continuous cell voltage meas
|
||
1232 .loc 1 35 3 is_stmt 0 view .LVU291
|
||
1233 0058 FFF7FEFF bl writeCMD
|
||
1234 .LVL120:
|
||
35:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADCV | ADCV_CONT | ADCV_RD, NULL, 0)); //start continuous cell voltage meas
|
||
1235 .loc 1 35 3 is_stmt 1 discriminator 1 view .LVU292
|
||
1236 005c 0346 mov r3, r0
|
||
1237 005e 0028 cmp r0, #0
|
||
1238 0060 F2D1 bne .L49
|
||
1239 .LBE20:
|
||
35:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADCV | ADCV_CONT | ADCV_RD, NULL, 0)); //start continuous cell voltage meas
|
||
ARM GAS /tmp/cc16Zqrx.s page 30
|
||
|
||
|
||
1240 .loc 1 35 44 discriminator 2 view .LVU293
|
||
1241 .LBB21:
|
||
36:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement
|
||
1242 .loc 1 36 3 view .LVU294
|
||
1243 0062 0022 movs r2, #0
|
||
1244 0064 1146 mov r1, r2
|
||
1245 0066 4FF47870 mov r0, #992
|
||
1246 .LVL121:
|
||
36:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement
|
||
1247 .loc 1 36 3 is_stmt 0 view .LVU295
|
||
1248 006a FFF7FEFF bl writeCMD
|
||
1249 .LVL122:
|
||
36:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement
|
||
1250 .loc 1 36 3 is_stmt 1 discriminator 1 view .LVU296
|
||
1251 006e 0346 mov r3, r0
|
||
1252 0070 0028 cmp r0, #0
|
||
1253 0072 E9D1 bne .L49
|
||
1254 .LBE21:
|
||
36:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX, NULL, 0)); //start aux measurement
|
||
1255 .loc 1 36 62 discriminator 2 view .LVU297
|
||
1256 .LBB22:
|
||
37:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
1257 .loc 1 37 3 view .LVU298
|
||
1258 0074 0022 movs r2, #0
|
||
1259 0076 1146 mov r1, r2
|
||
1260 0078 40F21140 movw r0, #1041
|
||
1261 .LVL123:
|
||
37:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
1262 .loc 1 37 3 is_stmt 0 view .LVU299
|
||
1263 007c FFF7FEFF bl writeCMD
|
||
1264 .LVL124:
|
||
37:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
1265 .loc 1 37 3 is_stmt 1 discriminator 1 view .LVU300
|
||
1266 0080 0346 mov r3, r0
|
||
1267 0082 0028 cmp r0, #0
|
||
1268 0084 E0D1 bne .L49
|
||
1269 .LBE22:
|
||
37:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(ADAX2, NULL, 0)); //start aux measurement
|
||
1270 .loc 1 37 40 discriminator 2 view .LVU301
|
||
1271 .LBB23:
|
||
38:Core/Src/ADBMS_Abstraction.c ****
|
||
1272 .loc 1 38 3 view .LVU302
|
||
1273 0086 0022 movs r2, #0
|
||
1274 0088 1146 mov r1, r2
|
||
1275 008a 40F20140 movw r0, #1025
|
||
1276 .LVL125:
|
||
38:Core/Src/ADBMS_Abstraction.c ****
|
||
1277 .loc 1 38 3 is_stmt 0 view .LVU303
|
||
1278 008e FFF7FEFF bl writeCMD
|
||
1279 .LVL126:
|
||
38:Core/Src/ADBMS_Abstraction.c ****
|
||
1280 .loc 1 38 3 view .LVU304
|
||
1281 0092 0346 mov r3, r0
|
||
1282 .LVL127:
|
||
38:Core/Src/ADBMS_Abstraction.c ****
|
||
1283 .loc 1 38 3 is_stmt 1 discriminator 1 view .LVU305
|
||
1284 0094 D8E7 b .L49
|
||
ARM GAS /tmp/cc16Zqrx.s page 31
|
||
|
||
|
||
1285 .L53:
|
||
1286 0096 00BF .align 2
|
||
1287 .L52:
|
||
1288 0098 00000000 .word .LC0
|
||
1289 .LBE23:
|
||
1290 .cfi_endproc
|
||
1291 .LFE123:
|
||
1293 .section .text.initAMS,"ax",%progbits
|
||
1294 .align 1
|
||
1295 .global initAMS
|
||
1296 .syntax unified
|
||
1297 .thumb
|
||
1298 .thumb_func
|
||
1300 initAMS:
|
||
1301 .LVL128:
|
||
1302 .LFB124:
|
||
43:Core/Src/ADBMS_Abstraction.c **** adbmsDriverInit(hspi);
|
||
1303 .loc 1 43 74 view -0
|
||
1304 .cfi_startproc
|
||
1305 @ args = 0, pretend = 0, frame = 0
|
||
1306 @ frame_needed = 0, uses_anonymous_args = 0
|
||
43:Core/Src/ADBMS_Abstraction.c **** adbmsDriverInit(hspi);
|
||
1307 .loc 1 43 74 is_stmt 0 view .LVU307
|
||
1308 0000 38B5 push {r3, r4, r5, lr}
|
||
1309 .cfi_def_cfa_offset 16
|
||
1310 .cfi_offset 3, -16
|
||
1311 .cfi_offset 4, -12
|
||
1312 .cfi_offset 5, -8
|
||
1313 .cfi_offset 14, -4
|
||
1314 0002 0D46 mov r5, r1
|
||
1315 0004 1446 mov r4, r2
|
||
44:Core/Src/ADBMS_Abstraction.c **** numberofcells = numofcells;
|
||
1316 .loc 1 44 3 is_stmt 1 view .LVU308
|
||
1317 0006 FFF7FEFF bl adbmsDriverInit
|
||
1318 .LVL129:
|
||
45:Core/Src/ADBMS_Abstraction.c **** numberofauxchannels = numofaux;
|
||
1319 .loc 1 45 3 view .LVU309
|
||
45:Core/Src/ADBMS_Abstraction.c **** numberofauxchannels = numofaux;
|
||
1320 .loc 1 45 17 is_stmt 0 view .LVU310
|
||
1321 000a 034B ldr r3, .L56
|
||
1322 000c 1D70 strb r5, [r3]
|
||
46:Core/Src/ADBMS_Abstraction.c ****
|
||
1323 .loc 1 46 3 is_stmt 1 view .LVU311
|
||
46:Core/Src/ADBMS_Abstraction.c ****
|
||
1324 .loc 1 46 23 is_stmt 0 view .LVU312
|
||
1325 000e 034B ldr r3, .L56+4
|
||
1326 0010 1C70 strb r4, [r3]
|
||
48:Core/Src/ADBMS_Abstraction.c **** }
|
||
1327 .loc 1 48 3 is_stmt 1 view .LVU313
|
||
48:Core/Src/ADBMS_Abstraction.c **** }
|
||
1328 .loc 1 48 10 is_stmt 0 view .LVU314
|
||
1329 0012 FFF7FEFF bl amsReset
|
||
1330 .LVL130:
|
||
49:Core/Src/ADBMS_Abstraction.c ****
|
||
1331 .loc 1 49 1 view .LVU315
|
||
1332 0016 38BD pop {r3, r4, r5, pc}
|
||
1333 .LVL131:
|
||
ARM GAS /tmp/cc16Zqrx.s page 32
|
||
|
||
|
||
1334 .L57:
|
||
49:Core/Src/ADBMS_Abstraction.c ****
|
||
1335 .loc 1 49 1 view .LVU316
|
||
1336 .align 2
|
||
1337 .L56:
|
||
1338 0018 00000000 .word numberofcells
|
||
1339 001c 00000000 .word numberofauxchannels
|
||
1340 .cfi_endproc
|
||
1341 .LFE124:
|
||
1343 .section .text.amsCheckUnderOverVoltage,"ax",%progbits
|
||
1344 .align 1
|
||
1345 .global amsCheckUnderOverVoltage
|
||
1346 .syntax unified
|
||
1347 .thumb
|
||
1348 .thumb_func
|
||
1350 amsCheckUnderOverVoltage:
|
||
1351 .LVL132:
|
||
1352 .LFB135:
|
||
196:Core/Src/ADBMS_Abstraction.c ****
|
||
197:Core/Src/ADBMS_Abstraction.c **** uint8 amsCheckUnderOverVoltage(Cell_Module* module) {
|
||
1353 .loc 1 197 53 is_stmt 1 view -0
|
||
1354 .cfi_startproc
|
||
1355 @ args = 0, pretend = 0, frame = 8
|
||
1356 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1357 .loc 1 197 53 is_stmt 0 view .LVU318
|
||
1358 0000 10B5 push {r4, lr}
|
||
1359 .cfi_def_cfa_offset 8
|
||
1360 .cfi_offset 4, -8
|
||
1361 .cfi_offset 14, -4
|
||
1362 0002 82B0 sub sp, sp, #8
|
||
1363 .cfi_def_cfa_offset 16
|
||
1364 0004 0446 mov r4, r0
|
||
198:Core/Src/ADBMS_Abstraction.c **** uint8 regbuffer[STATUS_GROUP_D_SIZE];
|
||
1365 .loc 1 198 3 is_stmt 1 view .LVU319
|
||
199:Core/Src/ADBMS_Abstraction.c **** uint32 ov_uv_data = 0;
|
||
1366 .loc 1 199 3 view .LVU320
|
||
1367 .LVL133:
|
||
1368 .LBB24:
|
||
200:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDSTATD, regbuffer, STATUS_GROUP_D_SIZE));
|
||
1369 .loc 1 200 3 view .LVU321
|
||
1370 0006 0622 movs r2, #6
|
||
1371 0008 6946 mov r1, sp
|
||
1372 000a 3320 movs r0, #51
|
||
1373 .LVL134:
|
||
1374 .loc 1 200 3 is_stmt 0 view .LVU322
|
||
1375 000c FFF7FEFF bl readCMD
|
||
1376 .LVL135:
|
||
1377 .loc 1 200 3 is_stmt 1 discriminator 1 view .LVU323
|
||
1378 0010 38BB cbnz r0, .L59
|
||
1379 .LBE24:
|
||
1380 .loc 1 200 65 discriminator 2 view .LVU324
|
||
201:Core/Src/ADBMS_Abstraction.c **** ov_uv_data = (regbuffer[0] << 0) | (regbuffer[1] << 8) |
|
||
1381 .loc 1 201 3 view .LVU325
|
||
1382 .loc 1 201 26 is_stmt 0 view .LVU326
|
||
1383 0012 9DF800E0 ldrb lr, [sp] @ zero_extendqisi2
|
||
1384 .loc 1 201 49 view .LVU327
|
||
1385 0016 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
ARM GAS /tmp/cc16Zqrx.s page 33
|
||
|
||
|
||
1386 .loc 1 201 37 view .LVU328
|
||
1387 001a 4EEA032E orr lr, lr, r3, lsl #8
|
||
202:Core/Src/ADBMS_Abstraction.c **** (regbuffer[2] << 16) | (regbuffer[3] << 24);
|
||
1388 .loc 1 202 26 view .LVU329
|
||
1389 001e 9DF80230 ldrb r3, [sp, #2] @ zero_extendqisi2
|
||
201:Core/Src/ADBMS_Abstraction.c **** ov_uv_data = (regbuffer[0] << 0) | (regbuffer[1] << 8) |
|
||
1390 .loc 1 201 60 view .LVU330
|
||
1391 0022 4EEA034E orr lr, lr, r3, lsl #16
|
||
1392 .loc 1 202 49 view .LVU331
|
||
1393 0026 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1394 .loc 1 202 37 view .LVU332
|
||
1395 002a 4EEA036E orr lr, lr, r3, lsl #24
|
||
1396 .LVL136:
|
||
203:Core/Src/ADBMS_Abstraction.c ****
|
||
204:Core/Src/ADBMS_Abstraction.c **** module->overVoltage = 0;
|
||
1397 .loc 1 204 3 is_stmt 1 view .LVU333
|
||
1398 .loc 1 204 23 is_stmt 0 view .LVU334
|
||
1399 002e 0022 movs r2, #0
|
||
1400 0030 A265 str r2, [r4, #88]
|
||
205:Core/Src/ADBMS_Abstraction.c **** module->underVoltage = 0;
|
||
1401 .loc 1 205 3 is_stmt 1 view .LVU335
|
||
1402 .loc 1 205 24 is_stmt 0 view .LVU336
|
||
1403 0032 E265 str r2, [r4, #92]
|
||
206:Core/Src/ADBMS_Abstraction.c ****
|
||
207:Core/Src/ADBMS_Abstraction.c **** for (size_t i = 0; i < numberofcells; i++) { // ov/uv flags are 1-bit flags for each cell C0UV, C
|
||
1404 .loc 1 207 3 is_stmt 1 view .LVU337
|
||
1405 .LBB25:
|
||
1406 .loc 1 207 8 view .LVU338
|
||
1407 .LVL137:
|
||
1408 .loc 1 207 3 is_stmt 0 view .LVU339
|
||
1409 0034 11E0 b .L60
|
||
1410 .LVL138:
|
||
1411 .L61:
|
||
208:Core/Src/ADBMS_Abstraction.c **** module->underVoltage |= (ov_uv_data >> (i * 2)) & 0x01;
|
||
1412 .loc 1 208 5 is_stmt 1 view .LVU340
|
||
1413 .loc 1 208 11 is_stmt 0 view .LVU341
|
||
1414 0036 E16D ldr r1, [r4, #92]
|
||
1415 .loc 1 208 47 view .LVU342
|
||
1416 0038 5300 lsls r3, r2, #1
|
||
1417 .loc 1 208 41 view .LVU343
|
||
1418 003a 2EFA03FC lsr ip, lr, r3
|
||
1419 .loc 1 208 53 view .LVU344
|
||
1420 003e 0CF0010C and ip, ip, #1
|
||
1421 .loc 1 208 26 view .LVU345
|
||
1422 0042 41EA0C01 orr r1, r1, ip
|
||
1423 0046 E165 str r1, [r4, #92]
|
||
209:Core/Src/ADBMS_Abstraction.c **** module->overVoltage |= (ov_uv_data >> (i * 2 + 1)) & 0x01;
|
||
1424 .loc 1 209 5 is_stmt 1 view .LVU346
|
||
1425 .loc 1 209 11 is_stmt 0 view .LVU347
|
||
1426 0048 A16D ldr r1, [r4, #88]
|
||
1427 .loc 1 209 51 view .LVU348
|
||
1428 004a 0133 adds r3, r3, #1
|
||
1429 .loc 1 209 41 view .LVU349
|
||
1430 004c 2EFA03F3 lsr r3, lr, r3
|
||
1431 .loc 1 209 57 view .LVU350
|
||
1432 0050 03F00103 and r3, r3, #1
|
||
1433 .loc 1 209 26 view .LVU351
|
||
ARM GAS /tmp/cc16Zqrx.s page 34
|
||
|
||
|
||
1434 0054 1943 orrs r1, r1, r3
|
||
1435 0056 A165 str r1, [r4, #88]
|
||
207:Core/Src/ADBMS_Abstraction.c **** module->underVoltage |= (ov_uv_data >> (i * 2)) & 0x01;
|
||
1436 .loc 1 207 42 is_stmt 1 discriminator 3 view .LVU352
|
||
1437 0058 0132 adds r2, r2, #1
|
||
1438 .LVL139:
|
||
1439 .L60:
|
||
207:Core/Src/ADBMS_Abstraction.c **** module->underVoltage |= (ov_uv_data >> (i * 2)) & 0x01;
|
||
1440 .loc 1 207 24 discriminator 1 view .LVU353
|
||
1441 005a 034B ldr r3, .L63
|
||
1442 005c 1B78 ldrb r3, [r3] @ zero_extendqisi2
|
||
1443 005e 9342 cmp r3, r2
|
||
1444 0060 E9D8 bhi .L61
|
||
1445 .LVL140:
|
||
1446 .L59:
|
||
207:Core/Src/ADBMS_Abstraction.c **** module->underVoltage |= (ov_uv_data >> (i * 2)) & 0x01;
|
||
1447 .loc 1 207 24 is_stmt 0 discriminator 1 view .LVU354
|
||
1448 .LBE25:
|
||
210:Core/Src/ADBMS_Abstraction.c **** }
|
||
211:Core/Src/ADBMS_Abstraction.c ****
|
||
212:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
213:Core/Src/ADBMS_Abstraction.c **** }
|
||
1449 .loc 1 213 1 view .LVU355
|
||
1450 0062 02B0 add sp, sp, #8
|
||
1451 .cfi_def_cfa_offset 8
|
||
1452 @ sp needed
|
||
1453 0064 10BD pop {r4, pc}
|
||
1454 .LVL141:
|
||
1455 .L64:
|
||
1456 .loc 1 213 1 view .LVU356
|
||
1457 0066 00BF .align 2
|
||
1458 .L63:
|
||
1459 0068 00000000 .word numberofcells
|
||
1460 .cfi_endproc
|
||
1461 .LFE135:
|
||
1463 .section .text.amsClearAux,"ax",%progbits
|
||
1464 .align 1
|
||
1465 .global amsClearAux
|
||
1466 .syntax unified
|
||
1467 .thumb
|
||
1468 .thumb_func
|
||
1470 amsClearAux:
|
||
1471 .LFB136:
|
||
214:Core/Src/ADBMS_Abstraction.c ****
|
||
215:Core/Src/ADBMS_Abstraction.c **** uint8 amsClearAux() {
|
||
1472 .loc 1 215 21 is_stmt 1 view -0
|
||
1473 .cfi_startproc
|
||
1474 @ args = 0, pretend = 0, frame = 8
|
||
1475 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1476 0000 00B5 push {lr}
|
||
1477 .cfi_def_cfa_offset 4
|
||
1478 .cfi_offset 14, -4
|
||
1479 0002 83B0 sub sp, sp, #12
|
||
1480 .cfi_def_cfa_offset 16
|
||
216:Core/Src/ADBMS_Abstraction.c **** uint8 buffer[6];
|
||
1481 .loc 1 216 3 view .LVU358
|
||
217:Core/Src/ADBMS_Abstraction.c **** return writeCMD(CLRAUX, buffer, 0);
|
||
ARM GAS /tmp/cc16Zqrx.s page 35
|
||
|
||
|
||
1482 .loc 1 217 3 view .LVU359
|
||
1483 .loc 1 217 10 is_stmt 0 view .LVU360
|
||
1484 0004 0022 movs r2, #0
|
||
1485 0006 6946 mov r1, sp
|
||
1486 0008 40F21270 movw r0, #1810
|
||
1487 000c FFF7FEFF bl writeCMD
|
||
1488 .LVL142:
|
||
218:Core/Src/ADBMS_Abstraction.c **** }
|
||
1489 .loc 1 218 1 view .LVU361
|
||
1490 0010 03B0 add sp, sp, #12
|
||
1491 .cfi_def_cfa_offset 4
|
||
1492 @ sp needed
|
||
1493 0012 5DF804FB ldr pc, [sp], #4
|
||
1494 .cfi_endproc
|
||
1495 .LFE136:
|
||
1497 .section .text.amsClearCells,"ax",%progbits
|
||
1498 .align 1
|
||
1499 .global amsClearCells
|
||
1500 .syntax unified
|
||
1501 .thumb
|
||
1502 .thumb_func
|
||
1504 amsClearCells:
|
||
1505 .LFB137:
|
||
219:Core/Src/ADBMS_Abstraction.c ****
|
||
220:Core/Src/ADBMS_Abstraction.c **** uint8 amsClearCells() {
|
||
1506 .loc 1 220 23 is_stmt 1 view -0
|
||
1507 .cfi_startproc
|
||
1508 @ args = 0, pretend = 0, frame = 8
|
||
1509 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1510 0000 00B5 push {lr}
|
||
1511 .cfi_def_cfa_offset 4
|
||
1512 .cfi_offset 14, -4
|
||
1513 0002 83B0 sub sp, sp, #12
|
||
1514 .cfi_def_cfa_offset 16
|
||
221:Core/Src/ADBMS_Abstraction.c **** uint8 buffer[6];
|
||
1515 .loc 1 221 3 view .LVU363
|
||
222:Core/Src/ADBMS_Abstraction.c **** return writeCMD(CLRCELL, buffer, 0);
|
||
1516 .loc 1 222 3 view .LVU364
|
||
1517 .loc 1 222 10 is_stmt 0 view .LVU365
|
||
1518 0004 0022 movs r2, #0
|
||
1519 0006 6946 mov r1, sp
|
||
1520 0008 40F21170 movw r0, #1809
|
||
1521 000c FFF7FEFF bl writeCMD
|
||
1522 .LVL143:
|
||
223:Core/Src/ADBMS_Abstraction.c **** }
|
||
1523 .loc 1 223 1 view .LVU366
|
||
1524 0010 03B0 add sp, sp, #12
|
||
1525 .cfi_def_cfa_offset 4
|
||
1526 @ sp needed
|
||
1527 0012 5DF804FB ldr pc, [sp], #4
|
||
1528 .cfi_endproc
|
||
1529 .LFE137:
|
||
1531 .section .text.amsReadCellVoltages,"ax",%progbits
|
||
1532 .align 1
|
||
1533 .global amsReadCellVoltages
|
||
1534 .syntax unified
|
||
1535 .thumb
|
||
ARM GAS /tmp/cc16Zqrx.s page 36
|
||
|
||
|
||
1536 .thumb_func
|
||
1538 amsReadCellVoltages:
|
||
1539 .LVL144:
|
||
1540 .LFB138:
|
||
224:Core/Src/ADBMS_Abstraction.c ****
|
||
225:Core/Src/ADBMS_Abstraction.c **** uint8 amsReadCellVoltages(Cell_Module* module) {
|
||
1541 .loc 1 225 48 is_stmt 1 view -0
|
||
1542 .cfi_startproc
|
||
1543 @ args = 0, pretend = 0, frame = 8
|
||
1544 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1545 .loc 1 225 48 is_stmt 0 view .LVU368
|
||
1546 0000 30B5 push {r4, r5, lr}
|
||
1547 .cfi_def_cfa_offset 12
|
||
1548 .cfi_offset 4, -12
|
||
1549 .cfi_offset 5, -8
|
||
1550 .cfi_offset 14, -4
|
||
1551 0002 83B0 sub sp, sp, #12
|
||
1552 .cfi_def_cfa_offset 24
|
||
1553 0004 0446 mov r4, r0
|
||
226:Core/Src/ADBMS_Abstraction.c **** uint8 rxbuffer[CV_GROUP_A_SIZE];
|
||
1554 .loc 1 226 3 is_stmt 1 view .LVU369
|
||
1555 .LBB26:
|
||
227:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVA, rxbuffer, CV_GROUP_A_SIZE));
|
||
1556 .loc 1 227 3 view .LVU370
|
||
1557 0006 0622 movs r2, #6
|
||
1558 0008 6946 mov r1, sp
|
||
1559 000a 0420 movs r0, #4
|
||
1560 .LVL145:
|
||
1561 .loc 1 227 3 is_stmt 0 view .LVU371
|
||
1562 000c FFF7FEFF bl readCMD
|
||
1563 .LVL146:
|
||
1564 .loc 1 227 3 is_stmt 1 discriminator 1 view .LVU372
|
||
1565 0010 0546 mov r5, r0
|
||
1566 0012 10B1 cbz r0, .L72
|
||
1567 .LVL147:
|
||
1568 .L70:
|
||
1569 .loc 1 227 3 is_stmt 0 discriminator 1 view .LVU373
|
||
1570 .LBE26:
|
||
228:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[0] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
229:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[1] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
230:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[2] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
231:Core/Src/ADBMS_Abstraction.c ****
|
||
232:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVB, rxbuffer, CV_GROUP_A_SIZE));
|
||
233:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[3] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
234:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[4] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
235:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[5] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
236:Core/Src/ADBMS_Abstraction.c ****
|
||
237:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVC, rxbuffer, CV_GROUP_A_SIZE));
|
||
238:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[6] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
239:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[7] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
240:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[8] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
241:Core/Src/ADBMS_Abstraction.c ****
|
||
242:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVD, rxbuffer, CV_GROUP_A_SIZE));
|
||
243:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[9] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
244:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[10] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
245:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[11] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
246:Core/Src/ADBMS_Abstraction.c ****
|
||
ARM GAS /tmp/cc16Zqrx.s page 37
|
||
|
||
|
||
247:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVE, rxbuffer, CV_GROUP_A_SIZE));
|
||
248:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[12] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
249:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[13] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
250:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[14] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
251:Core/Src/ADBMS_Abstraction.c ****
|
||
252:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVF, rxbuffer, CV_GROUP_A_SIZE));
|
||
253:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[15] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
254:Core/Src/ADBMS_Abstraction.c ****
|
||
255:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
256:Core/Src/ADBMS_Abstraction.c **** }
|
||
1571 .loc 1 256 1 view .LVU374
|
||
1572 0014 2846 mov r0, r5
|
||
1573 0016 03B0 add sp, sp, #12
|
||
1574 .cfi_remember_state
|
||
1575 .cfi_def_cfa_offset 12
|
||
1576 @ sp needed
|
||
1577 0018 30BD pop {r4, r5, pc}
|
||
1578 .LVL148:
|
||
1579 .L72:
|
||
1580 .cfi_restore_state
|
||
227:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(readCMD(RDCVA, rxbuffer, CV_GROUP_A_SIZE));
|
||
1581 .loc 1 227 58 is_stmt 1 discriminator 2 view .LVU375
|
||
228:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[0] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1582 .loc 1 228 3 view .LVU376
|
||
228:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[0] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1583 .loc 1 228 29 is_stmt 0 view .LVU377
|
||
1584 001a 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1585 .LVL149:
|
||
228:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[0] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1586 .loc 1 228 29 view .LVU378
|
||
1587 001e 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1588 0022 40EA0320 orr r0, r0, r3, lsl #8
|
||
1589 0026 00B2 sxth r0, r0
|
||
1590 0028 FFF7FEFF bl __aeabi_i2d
|
||
1591 .LVL150:
|
||
1592 002c C2A3 adr r3, .L73
|
||
1593 002e D3E90023 ldrd r2, [r3]
|
||
1594 0032 FFF7FEFF bl __aeabi_dmul
|
||
1595 .LVL151:
|
||
1596 0036 C2A3 adr r3, .L73+8
|
||
1597 0038 D3E90023 ldrd r2, [r3]
|
||
1598 003c FFF7FEFF bl __aeabi_dadd
|
||
1599 .LVL152:
|
||
228:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[0] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1600 .loc 1 228 27 view .LVU379
|
||
1601 0040 FFF7FEFF bl __aeabi_d2iz
|
||
1602 .LVL153:
|
||
1603 0044 2080 strh r0, [r4] @ movhi
|
||
229:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[2] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1604 .loc 1 229 3 is_stmt 1 view .LVU380
|
||
229:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[2] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1605 .loc 1 229 29 is_stmt 0 view .LVU381
|
||
1606 0046 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
1607 004a 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1608 004e 40EA0320 orr r0, r0, r3, lsl #8
|
||
1609 0052 00B2 sxth r0, r0
|
||
1610 0054 FFF7FEFF bl __aeabi_i2d
|
||
ARM GAS /tmp/cc16Zqrx.s page 38
|
||
|
||
|
||
1611 .LVL154:
|
||
1612 0058 B7A3 adr r3, .L73
|
||
1613 005a D3E90023 ldrd r2, [r3]
|
||
1614 005e FFF7FEFF bl __aeabi_dmul
|
||
1615 .LVL155:
|
||
1616 0062 B7A3 adr r3, .L73+8
|
||
1617 0064 D3E90023 ldrd r2, [r3]
|
||
1618 0068 FFF7FEFF bl __aeabi_dadd
|
||
1619 .LVL156:
|
||
229:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[2] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1620 .loc 1 229 27 view .LVU382
|
||
1621 006c FFF7FEFF bl __aeabi_d2iz
|
||
1622 .LVL157:
|
||
1623 0070 6080 strh r0, [r4, #2] @ movhi
|
||
230:Core/Src/ADBMS_Abstraction.c ****
|
||
1624 .loc 1 230 3 is_stmt 1 view .LVU383
|
||
230:Core/Src/ADBMS_Abstraction.c ****
|
||
1625 .loc 1 230 29 is_stmt 0 view .LVU384
|
||
1626 0072 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
1627 0076 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
1628 007a 40EA0320 orr r0, r0, r3, lsl #8
|
||
1629 007e 00B2 sxth r0, r0
|
||
1630 0080 FFF7FEFF bl __aeabi_i2d
|
||
1631 .LVL158:
|
||
1632 0084 ACA3 adr r3, .L73
|
||
1633 0086 D3E90023 ldrd r2, [r3]
|
||
1634 008a FFF7FEFF bl __aeabi_dmul
|
||
1635 .LVL159:
|
||
1636 008e ACA3 adr r3, .L73+8
|
||
1637 0090 D3E90023 ldrd r2, [r3]
|
||
1638 0094 FFF7FEFF bl __aeabi_dadd
|
||
1639 .LVL160:
|
||
230:Core/Src/ADBMS_Abstraction.c ****
|
||
1640 .loc 1 230 27 view .LVU385
|
||
1641 0098 FFF7FEFF bl __aeabi_d2iz
|
||
1642 .LVL161:
|
||
1643 009c A080 strh r0, [r4, #4] @ movhi
|
||
1644 .LBB27:
|
||
232:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[3] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1645 .loc 1 232 3 is_stmt 1 view .LVU386
|
||
1646 009e 0622 movs r2, #6
|
||
1647 00a0 6946 mov r1, sp
|
||
1648 00a2 1046 mov r0, r2
|
||
1649 00a4 FFF7FEFF bl readCMD
|
||
1650 .LVL162:
|
||
232:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[3] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1651 .loc 1 232 3 discriminator 1 view .LVU387
|
||
1652 00a8 0546 mov r5, r0
|
||
1653 .LVL163:
|
||
232:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[3] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1654 .loc 1 232 3 is_stmt 0 discriminator 1 view .LVU388
|
||
1655 00aa 0028 cmp r0, #0
|
||
1656 00ac B2D1 bne .L70
|
||
1657 .LBE27:
|
||
232:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[3] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1658 .loc 1 232 58 is_stmt 1 discriminator 2 view .LVU389
|
||
233:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[4] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
ARM GAS /tmp/cc16Zqrx.s page 39
|
||
|
||
|
||
1659 .loc 1 233 3 view .LVU390
|
||
233:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[4] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1660 .loc 1 233 29 is_stmt 0 view .LVU391
|
||
1661 00ae 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1662 .LVL164:
|
||
233:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[4] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1663 .loc 1 233 29 view .LVU392
|
||
1664 00b2 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1665 00b6 40EA0320 orr r0, r0, r3, lsl #8
|
||
1666 00ba 00B2 sxth r0, r0
|
||
1667 00bc FFF7FEFF bl __aeabi_i2d
|
||
1668 .LVL165:
|
||
1669 00c0 9DA3 adr r3, .L73
|
||
1670 00c2 D3E90023 ldrd r2, [r3]
|
||
1671 00c6 FFF7FEFF bl __aeabi_dmul
|
||
1672 .LVL166:
|
||
1673 00ca 9DA3 adr r3, .L73+8
|
||
1674 00cc D3E90023 ldrd r2, [r3]
|
||
1675 00d0 FFF7FEFF bl __aeabi_dadd
|
||
1676 .LVL167:
|
||
233:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[4] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1677 .loc 1 233 27 view .LVU393
|
||
1678 00d4 FFF7FEFF bl __aeabi_d2iz
|
||
1679 .LVL168:
|
||
1680 00d8 E080 strh r0, [r4, #6] @ movhi
|
||
234:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[5] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1681 .loc 1 234 3 is_stmt 1 view .LVU394
|
||
234:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[5] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1682 .loc 1 234 29 is_stmt 0 view .LVU395
|
||
1683 00da 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
1684 00de 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1685 00e2 40EA0320 orr r0, r0, r3, lsl #8
|
||
1686 00e6 00B2 sxth r0, r0
|
||
1687 00e8 FFF7FEFF bl __aeabi_i2d
|
||
1688 .LVL169:
|
||
1689 00ec 92A3 adr r3, .L73
|
||
1690 00ee D3E90023 ldrd r2, [r3]
|
||
1691 00f2 FFF7FEFF bl __aeabi_dmul
|
||
1692 .LVL170:
|
||
1693 00f6 92A3 adr r3, .L73+8
|
||
1694 00f8 D3E90023 ldrd r2, [r3]
|
||
1695 00fc FFF7FEFF bl __aeabi_dadd
|
||
1696 .LVL171:
|
||
234:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[5] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1697 .loc 1 234 27 view .LVU396
|
||
1698 0100 FFF7FEFF bl __aeabi_d2iz
|
||
1699 .LVL172:
|
||
1700 0104 2081 strh r0, [r4, #8] @ movhi
|
||
235:Core/Src/ADBMS_Abstraction.c ****
|
||
1701 .loc 1 235 3 is_stmt 1 view .LVU397
|
||
235:Core/Src/ADBMS_Abstraction.c ****
|
||
1702 .loc 1 235 29 is_stmt 0 view .LVU398
|
||
1703 0106 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
1704 010a 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
1705 010e 40EA0320 orr r0, r0, r3, lsl #8
|
||
1706 0112 00B2 sxth r0, r0
|
||
1707 0114 FFF7FEFF bl __aeabi_i2d
|
||
ARM GAS /tmp/cc16Zqrx.s page 40
|
||
|
||
|
||
1708 .LVL173:
|
||
1709 0118 87A3 adr r3, .L73
|
||
1710 011a D3E90023 ldrd r2, [r3]
|
||
1711 011e FFF7FEFF bl __aeabi_dmul
|
||
1712 .LVL174:
|
||
1713 0122 87A3 adr r3, .L73+8
|
||
1714 0124 D3E90023 ldrd r2, [r3]
|
||
1715 0128 FFF7FEFF bl __aeabi_dadd
|
||
1716 .LVL175:
|
||
235:Core/Src/ADBMS_Abstraction.c ****
|
||
1717 .loc 1 235 27 view .LVU399
|
||
1718 012c FFF7FEFF bl __aeabi_d2iz
|
||
1719 .LVL176:
|
||
1720 0130 6081 strh r0, [r4, #10] @ movhi
|
||
1721 .LBB28:
|
||
237:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[6] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1722 .loc 1 237 3 is_stmt 1 view .LVU400
|
||
1723 0132 0622 movs r2, #6
|
||
1724 0134 6946 mov r1, sp
|
||
1725 0136 0820 movs r0, #8
|
||
1726 0138 FFF7FEFF bl readCMD
|
||
1727 .LVL177:
|
||
237:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[6] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1728 .loc 1 237 3 discriminator 1 view .LVU401
|
||
1729 013c 0546 mov r5, r0
|
||
1730 .LVL178:
|
||
237:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[6] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1731 .loc 1 237 3 is_stmt 0 discriminator 1 view .LVU402
|
||
1732 013e 0028 cmp r0, #0
|
||
1733 0140 7FF468AF bne .L70
|
||
1734 .LBE28:
|
||
237:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[6] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1735 .loc 1 237 58 is_stmt 1 discriminator 2 view .LVU403
|
||
238:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[7] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1736 .loc 1 238 3 view .LVU404
|
||
238:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[7] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1737 .loc 1 238 29 is_stmt 0 view .LVU405
|
||
1738 0144 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1739 .LVL179:
|
||
238:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[7] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1740 .loc 1 238 29 view .LVU406
|
||
1741 0148 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1742 014c 40EA0320 orr r0, r0, r3, lsl #8
|
||
1743 0150 00B2 sxth r0, r0
|
||
1744 0152 FFF7FEFF bl __aeabi_i2d
|
||
1745 .LVL180:
|
||
1746 0156 78A3 adr r3, .L73
|
||
1747 0158 D3E90023 ldrd r2, [r3]
|
||
1748 015c FFF7FEFF bl __aeabi_dmul
|
||
1749 .LVL181:
|
||
1750 0160 77A3 adr r3, .L73+8
|
||
1751 0162 D3E90023 ldrd r2, [r3]
|
||
1752 0166 FFF7FEFF bl __aeabi_dadd
|
||
1753 .LVL182:
|
||
238:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[7] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1754 .loc 1 238 27 view .LVU407
|
||
1755 016a FFF7FEFF bl __aeabi_d2iz
|
||
ARM GAS /tmp/cc16Zqrx.s page 41
|
||
|
||
|
||
1756 .LVL183:
|
||
1757 016e A081 strh r0, [r4, #12] @ movhi
|
||
239:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[8] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1758 .loc 1 239 3 is_stmt 1 view .LVU408
|
||
239:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[8] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1759 .loc 1 239 29 is_stmt 0 view .LVU409
|
||
1760 0170 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
1761 0174 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1762 0178 40EA0320 orr r0, r0, r3, lsl #8
|
||
1763 017c 00B2 sxth r0, r0
|
||
1764 017e FFF7FEFF bl __aeabi_i2d
|
||
1765 .LVL184:
|
||
1766 0182 6DA3 adr r3, .L73
|
||
1767 0184 D3E90023 ldrd r2, [r3]
|
||
1768 0188 FFF7FEFF bl __aeabi_dmul
|
||
1769 .LVL185:
|
||
1770 018c 6CA3 adr r3, .L73+8
|
||
1771 018e D3E90023 ldrd r2, [r3]
|
||
1772 0192 FFF7FEFF bl __aeabi_dadd
|
||
1773 .LVL186:
|
||
239:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[8] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1774 .loc 1 239 27 view .LVU410
|
||
1775 0196 FFF7FEFF bl __aeabi_d2iz
|
||
1776 .LVL187:
|
||
1777 019a E081 strh r0, [r4, #14] @ movhi
|
||
240:Core/Src/ADBMS_Abstraction.c ****
|
||
1778 .loc 1 240 3 is_stmt 1 view .LVU411
|
||
240:Core/Src/ADBMS_Abstraction.c ****
|
||
1779 .loc 1 240 29 is_stmt 0 view .LVU412
|
||
1780 019c 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
1781 01a0 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
1782 01a4 40EA0320 orr r0, r0, r3, lsl #8
|
||
1783 01a8 00B2 sxth r0, r0
|
||
1784 01aa FFF7FEFF bl __aeabi_i2d
|
||
1785 .LVL188:
|
||
1786 01ae 62A3 adr r3, .L73
|
||
1787 01b0 D3E90023 ldrd r2, [r3]
|
||
1788 01b4 FFF7FEFF bl __aeabi_dmul
|
||
1789 .LVL189:
|
||
1790 01b8 61A3 adr r3, .L73+8
|
||
1791 01ba D3E90023 ldrd r2, [r3]
|
||
1792 01be FFF7FEFF bl __aeabi_dadd
|
||
1793 .LVL190:
|
||
240:Core/Src/ADBMS_Abstraction.c ****
|
||
1794 .loc 1 240 27 view .LVU413
|
||
1795 01c2 FFF7FEFF bl __aeabi_d2iz
|
||
1796 .LVL191:
|
||
1797 01c6 2082 strh r0, [r4, #16] @ movhi
|
||
1798 .LBB29:
|
||
242:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[9] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1799 .loc 1 242 3 is_stmt 1 view .LVU414
|
||
1800 01c8 0622 movs r2, #6
|
||
1801 01ca 6946 mov r1, sp
|
||
1802 01cc 0A20 movs r0, #10
|
||
1803 01ce FFF7FEFF bl readCMD
|
||
1804 .LVL192:
|
||
242:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[9] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
ARM GAS /tmp/cc16Zqrx.s page 42
|
||
|
||
|
||
1805 .loc 1 242 3 discriminator 1 view .LVU415
|
||
1806 01d2 0546 mov r5, r0
|
||
1807 .LVL193:
|
||
242:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[9] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1808 .loc 1 242 3 is_stmt 0 discriminator 1 view .LVU416
|
||
1809 01d4 0028 cmp r0, #0
|
||
1810 01d6 7FF41DAF bne .L70
|
||
1811 .LBE29:
|
||
242:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[9] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1812 .loc 1 242 58 is_stmt 1 discriminator 2 view .LVU417
|
||
243:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[10] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1813 .loc 1 243 3 view .LVU418
|
||
243:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[10] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1814 .loc 1 243 30 is_stmt 0 view .LVU419
|
||
1815 01da 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1816 .LVL194:
|
||
243:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[10] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1817 .loc 1 243 30 view .LVU420
|
||
1818 01de 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1819 01e2 40EA0320 orr r0, r0, r3, lsl #8
|
||
1820 01e6 00B2 sxth r0, r0
|
||
1821 01e8 FFF7FEFF bl __aeabi_i2d
|
||
1822 .LVL195:
|
||
1823 01ec 52A3 adr r3, .L73
|
||
1824 01ee D3E90023 ldrd r2, [r3]
|
||
1825 01f2 FFF7FEFF bl __aeabi_dmul
|
||
1826 .LVL196:
|
||
1827 01f6 52A3 adr r3, .L73+8
|
||
1828 01f8 D3E90023 ldrd r2, [r3]
|
||
1829 01fc FFF7FEFF bl __aeabi_dadd
|
||
1830 .LVL197:
|
||
243:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[10] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1831 .loc 1 243 28 view .LVU421
|
||
1832 0200 FFF7FEFF bl __aeabi_d2iz
|
||
1833 .LVL198:
|
||
1834 0204 6082 strh r0, [r4, #18] @ movhi
|
||
244:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[11] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1835 .loc 1 244 3 is_stmt 1 view .LVU422
|
||
244:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[11] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1836 .loc 1 244 30 is_stmt 0 view .LVU423
|
||
1837 0206 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
1838 020a 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1839 020e 40EA0320 orr r0, r0, r3, lsl #8
|
||
1840 0212 00B2 sxth r0, r0
|
||
1841 0214 FFF7FEFF bl __aeabi_i2d
|
||
1842 .LVL199:
|
||
1843 0218 47A3 adr r3, .L73
|
||
1844 021a D3E90023 ldrd r2, [r3]
|
||
1845 021e FFF7FEFF bl __aeabi_dmul
|
||
1846 .LVL200:
|
||
1847 0222 47A3 adr r3, .L73+8
|
||
1848 0224 D3E90023 ldrd r2, [r3]
|
||
1849 0228 FFF7FEFF bl __aeabi_dadd
|
||
1850 .LVL201:
|
||
244:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[11] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1851 .loc 1 244 28 view .LVU424
|
||
1852 022c FFF7FEFF bl __aeabi_d2iz
|
||
ARM GAS /tmp/cc16Zqrx.s page 43
|
||
|
||
|
||
1853 .LVL202:
|
||
1854 0230 A082 strh r0, [r4, #20] @ movhi
|
||
245:Core/Src/ADBMS_Abstraction.c ****
|
||
1855 .loc 1 245 3 is_stmt 1 view .LVU425
|
||
245:Core/Src/ADBMS_Abstraction.c ****
|
||
1856 .loc 1 245 30 is_stmt 0 view .LVU426
|
||
1857 0232 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
1858 0236 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
1859 023a 40EA0320 orr r0, r0, r3, lsl #8
|
||
1860 023e 00B2 sxth r0, r0
|
||
1861 0240 FFF7FEFF bl __aeabi_i2d
|
||
1862 .LVL203:
|
||
1863 0244 3CA3 adr r3, .L73
|
||
1864 0246 D3E90023 ldrd r2, [r3]
|
||
1865 024a FFF7FEFF bl __aeabi_dmul
|
||
1866 .LVL204:
|
||
1867 024e 3CA3 adr r3, .L73+8
|
||
1868 0250 D3E90023 ldrd r2, [r3]
|
||
1869 0254 FFF7FEFF bl __aeabi_dadd
|
||
1870 .LVL205:
|
||
245:Core/Src/ADBMS_Abstraction.c ****
|
||
1871 .loc 1 245 28 view .LVU427
|
||
1872 0258 FFF7FEFF bl __aeabi_d2iz
|
||
1873 .LVL206:
|
||
1874 025c E082 strh r0, [r4, #22] @ movhi
|
||
1875 .LBB30:
|
||
247:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[12] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1876 .loc 1 247 3 is_stmt 1 view .LVU428
|
||
1877 025e 0622 movs r2, #6
|
||
1878 0260 6946 mov r1, sp
|
||
1879 0262 0920 movs r0, #9
|
||
1880 0264 FFF7FEFF bl readCMD
|
||
1881 .LVL207:
|
||
247:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[12] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1882 .loc 1 247 3 discriminator 1 view .LVU429
|
||
1883 0268 0546 mov r5, r0
|
||
1884 .LVL208:
|
||
247:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[12] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1885 .loc 1 247 3 is_stmt 0 discriminator 1 view .LVU430
|
||
1886 026a 0028 cmp r0, #0
|
||
1887 026c 7FF4D2AE bne .L70
|
||
1888 .LBE30:
|
||
247:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[12] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1889 .loc 1 247 58 is_stmt 1 discriminator 2 view .LVU431
|
||
248:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[13] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1890 .loc 1 248 3 view .LVU432
|
||
248:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[13] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1891 .loc 1 248 30 is_stmt 0 view .LVU433
|
||
1892 0270 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1893 .LVL209:
|
||
248:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[13] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1894 .loc 1 248 30 view .LVU434
|
||
1895 0274 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1896 0278 40EA0320 orr r0, r0, r3, lsl #8
|
||
1897 027c 00B2 sxth r0, r0
|
||
1898 027e FFF7FEFF bl __aeabi_i2d
|
||
1899 .LVL210:
|
||
ARM GAS /tmp/cc16Zqrx.s page 44
|
||
|
||
|
||
1900 0282 2DA3 adr r3, .L73
|
||
1901 0284 D3E90023 ldrd r2, [r3]
|
||
1902 0288 FFF7FEFF bl __aeabi_dmul
|
||
1903 .LVL211:
|
||
1904 028c 2CA3 adr r3, .L73+8
|
||
1905 028e D3E90023 ldrd r2, [r3]
|
||
1906 0292 FFF7FEFF bl __aeabi_dadd
|
||
1907 .LVL212:
|
||
248:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[13] = mV_from_ADBMS6830(rxbuffer[2] | (rxbuffer[3] << 8));
|
||
1908 .loc 1 248 28 view .LVU435
|
||
1909 0296 FFF7FEFF bl __aeabi_d2iz
|
||
1910 .LVL213:
|
||
1911 029a 2083 strh r0, [r4, #24] @ movhi
|
||
249:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[14] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1912 .loc 1 249 3 is_stmt 1 view .LVU436
|
||
249:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[14] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1913 .loc 1 249 30 is_stmt 0 view .LVU437
|
||
1914 029c 9DF80200 ldrb r0, [sp, #2] @ zero_extendqisi2
|
||
1915 02a0 9DF80330 ldrb r3, [sp, #3] @ zero_extendqisi2
|
||
1916 02a4 40EA0320 orr r0, r0, r3, lsl #8
|
||
1917 02a8 00B2 sxth r0, r0
|
||
1918 02aa FFF7FEFF bl __aeabi_i2d
|
||
1919 .LVL214:
|
||
1920 02ae 22A3 adr r3, .L73
|
||
1921 02b0 D3E90023 ldrd r2, [r3]
|
||
1922 02b4 FFF7FEFF bl __aeabi_dmul
|
||
1923 .LVL215:
|
||
1924 02b8 21A3 adr r3, .L73+8
|
||
1925 02ba D3E90023 ldrd r2, [r3]
|
||
1926 02be FFF7FEFF bl __aeabi_dadd
|
||
1927 .LVL216:
|
||
249:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[14] = mV_from_ADBMS6830(rxbuffer[4] | (rxbuffer[5] << 8));
|
||
1928 .loc 1 249 28 view .LVU438
|
||
1929 02c2 FFF7FEFF bl __aeabi_d2iz
|
||
1930 .LVL217:
|
||
1931 02c6 6083 strh r0, [r4, #26] @ movhi
|
||
250:Core/Src/ADBMS_Abstraction.c ****
|
||
1932 .loc 1 250 3 is_stmt 1 view .LVU439
|
||
250:Core/Src/ADBMS_Abstraction.c ****
|
||
1933 .loc 1 250 30 is_stmt 0 view .LVU440
|
||
1934 02c8 9DF80400 ldrb r0, [sp, #4] @ zero_extendqisi2
|
||
1935 02cc 9DF80530 ldrb r3, [sp, #5] @ zero_extendqisi2
|
||
1936 02d0 40EA0320 orr r0, r0, r3, lsl #8
|
||
1937 02d4 00B2 sxth r0, r0
|
||
1938 02d6 FFF7FEFF bl __aeabi_i2d
|
||
1939 .LVL218:
|
||
1940 02da 17A3 adr r3, .L73
|
||
1941 02dc D3E90023 ldrd r2, [r3]
|
||
1942 02e0 FFF7FEFF bl __aeabi_dmul
|
||
1943 .LVL219:
|
||
1944 02e4 16A3 adr r3, .L73+8
|
||
1945 02e6 D3E90023 ldrd r2, [r3]
|
||
1946 02ea FFF7FEFF bl __aeabi_dadd
|
||
1947 .LVL220:
|
||
250:Core/Src/ADBMS_Abstraction.c ****
|
||
1948 .loc 1 250 28 view .LVU441
|
||
1949 02ee FFF7FEFF bl __aeabi_d2iz
|
||
ARM GAS /tmp/cc16Zqrx.s page 45
|
||
|
||
|
||
1950 .LVL221:
|
||
1951 02f2 A083 strh r0, [r4, #28] @ movhi
|
||
1952 .LBB31:
|
||
252:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[15] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1953 .loc 1 252 3 is_stmt 1 view .LVU442
|
||
1954 02f4 0622 movs r2, #6
|
||
1955 02f6 6946 mov r1, sp
|
||
1956 02f8 0B20 movs r0, #11
|
||
1957 02fa FFF7FEFF bl readCMD
|
||
1958 .LVL222:
|
||
252:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[15] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1959 .loc 1 252 3 discriminator 1 view .LVU443
|
||
1960 02fe 0546 mov r5, r0
|
||
1961 .LVL223:
|
||
252:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[15] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1962 .loc 1 252 3 is_stmt 0 discriminator 1 view .LVU444
|
||
1963 0300 0028 cmp r0, #0
|
||
1964 0302 7FF487AE bne .L70
|
||
1965 .LBE31:
|
||
252:Core/Src/ADBMS_Abstraction.c **** module->cellVoltages[15] = mV_from_ADBMS6830(rxbuffer[0] | (rxbuffer[1] << 8));
|
||
1966 .loc 1 252 58 is_stmt 1 discriminator 2 view .LVU445
|
||
253:Core/Src/ADBMS_Abstraction.c ****
|
||
1967 .loc 1 253 3 view .LVU446
|
||
253:Core/Src/ADBMS_Abstraction.c ****
|
||
1968 .loc 1 253 30 is_stmt 0 view .LVU447
|
||
1969 0306 9DF80000 ldrb r0, [sp] @ zero_extendqisi2
|
||
1970 .LVL224:
|
||
253:Core/Src/ADBMS_Abstraction.c ****
|
||
1971 .loc 1 253 30 view .LVU448
|
||
1972 030a 9DF80130 ldrb r3, [sp, #1] @ zero_extendqisi2
|
||
1973 030e 40EA0320 orr r0, r0, r3, lsl #8
|
||
1974 0312 00B2 sxth r0, r0
|
||
1975 0314 FFF7FEFF bl __aeabi_i2d
|
||
1976 .LVL225:
|
||
1977 0318 07A3 adr r3, .L73
|
||
1978 031a D3E90023 ldrd r2, [r3]
|
||
1979 031e FFF7FEFF bl __aeabi_dmul
|
||
1980 .LVL226:
|
||
1981 0322 07A3 adr r3, .L73+8
|
||
1982 0324 D3E90023 ldrd r2, [r3]
|
||
1983 0328 FFF7FEFF bl __aeabi_dadd
|
||
1984 .LVL227:
|
||
253:Core/Src/ADBMS_Abstraction.c ****
|
||
1985 .loc 1 253 28 view .LVU449
|
||
1986 032c FFF7FEFF bl __aeabi_d2iz
|
||
1987 .LVL228:
|
||
1988 0330 E083 strh r0, [r4, #30] @ movhi
|
||
255:Core/Src/ADBMS_Abstraction.c **** }
|
||
1989 .loc 1 255 3 is_stmt 1 view .LVU450
|
||
255:Core/Src/ADBMS_Abstraction.c **** }
|
||
1990 .loc 1 255 10 is_stmt 0 view .LVU451
|
||
1991 0332 6FE6 b .L70
|
||
1992 .L74:
|
||
1993 0334 AFF30080 .align 3
|
||
1994 .L73:
|
||
1995 0338 33333333 .word 858993459
|
||
1996 033c 3333C33F .word 1069757235
|
||
ARM GAS /tmp/cc16Zqrx.s page 46
|
||
|
||
|
||
1997 0340 00000000 .word 0
|
||
1998 0344 00709740 .word 1083666432
|
||
1999 .cfi_endproc
|
||
2000 .LFE138:
|
||
2002 .section .text.amsCellMeasurement,"ax",%progbits
|
||
2003 .align 1
|
||
2004 .global amsCellMeasurement
|
||
2005 .syntax unified
|
||
2006 .thumb
|
||
2007 .thumb_func
|
||
2009 amsCellMeasurement:
|
||
2010 .LVL229:
|
||
2011 .LFB127:
|
||
63:Core/Src/ADBMS_Abstraction.c **** #warning check conversion counter to ensure that continous conversion has not been stopped
|
||
2012 .loc 1 63 47 is_stmt 1 view -0
|
||
2013 .cfi_startproc
|
||
2014 @ args = 0, pretend = 0, frame = 0
|
||
2015 @ frame_needed = 0, uses_anonymous_args = 0
|
||
63:Core/Src/ADBMS_Abstraction.c **** #warning check conversion counter to ensure that continous conversion has not been stopped
|
||
2016 .loc 1 63 47 is_stmt 0 view .LVU453
|
||
2017 0000 08B5 push {r3, lr}
|
||
2018 .cfi_def_cfa_offset 8
|
||
2019 .cfi_offset 3, -8
|
||
2020 .cfi_offset 14, -4
|
||
66:Core/Src/ADBMS_Abstraction.c **** }
|
||
2021 .loc 1 66 3 is_stmt 1 view .LVU454
|
||
66:Core/Src/ADBMS_Abstraction.c **** }
|
||
2022 .loc 1 66 10 is_stmt 0 view .LVU455
|
||
2023 0002 FFF7FEFF bl amsReadCellVoltages
|
||
2024 .LVL230:
|
||
67:Core/Src/ADBMS_Abstraction.c ****
|
||
2025 .loc 1 67 1 view .LVU456
|
||
2026 0006 08BD pop {r3, pc}
|
||
2027 .cfi_endproc
|
||
2028 .LFE127:
|
||
2030 .section .text.amsWriteComm,"ax",%progbits
|
||
2031 .align 1
|
||
2032 .global amsWriteComm
|
||
2033 .syntax unified
|
||
2034 .thumb
|
||
2035 .thumb_func
|
||
2037 amsWriteComm:
|
||
2038 .LVL231:
|
||
2039 .LFB139:
|
||
257:Core/Src/ADBMS_Abstraction.c ****
|
||
258:Core/Src/ADBMS_Abstraction.c **** uint8_t amsWriteComm(uint8_t device, uint8_t addr, uint8_t data) {
|
||
2040 .loc 1 258 66 is_stmt 1 view -0
|
||
2041 .cfi_startproc
|
||
2042 @ args = 0, pretend = 0, frame = 16
|
||
2043 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2044 .loc 1 258 66 is_stmt 0 view .LVU458
|
||
2045 0000 00B5 push {lr}
|
||
2046 .cfi_def_cfa_offset 4
|
||
2047 .cfi_offset 14, -4
|
||
2048 0002 85B0 sub sp, sp, #20
|
||
2049 .cfi_def_cfa_offset 24
|
||
259:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByte = (device << 1);
|
||
ARM GAS /tmp/cc16Zqrx.s page 47
|
||
|
||
|
||
2050 .loc 1 259 3 is_stmt 1 view .LVU459
|
||
2051 .loc 1 259 11 is_stmt 0 view .LVU460
|
||
2052 0004 4000 lsls r0, r0, #1
|
||
2053 .LVL232:
|
||
260:Core/Src/ADBMS_Abstraction.c **** uint8_t txbuf[6] = {I2C_STRT << 4 | SLV_ACK, ctrlByte,
|
||
2054 .loc 1 260 3 is_stmt 1 view .LVU461
|
||
2055 .loc 1 260 11 is_stmt 0 view .LVU462
|
||
2056 0006 6723 movs r3, #103
|
||
2057 0008 8DF80830 strb r3, [sp, #8]
|
||
2058 000c 8DF80900 strb r0, [sp, #9]
|
||
2059 0010 0723 movs r3, #7
|
||
2060 0012 8DF80A30 strb r3, [sp, #10]
|
||
2061 0016 8DF80B10 strb r1, [sp, #11]
|
||
2062 001a 0123 movs r3, #1
|
||
2063 001c 8DF80C30 strb r3, [sp, #12]
|
||
2064 0020 8DF80D20 strb r2, [sp, #13]
|
||
2065 .LBB32:
|
||
261:Core/Src/ADBMS_Abstraction.c **** BLANK << 4 | SLV_ACK, addr,
|
||
262:Core/Src/ADBMS_Abstraction.c **** BLANK << 4 | SLV_ACK_STP, data};
|
||
263:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, txbuf, COMM_GROUP_SIZE));
|
||
2066 .loc 1 263 3 is_stmt 1 view .LVU463
|
||
2067 0024 0622 movs r2, #6
|
||
2068 .LVL233:
|
||
2069 .loc 1 263 3 is_stmt 0 view .LVU464
|
||
2070 0026 02A9 add r1, sp, #8
|
||
2071 .LVL234:
|
||
2072 .loc 1 263 3 view .LVU465
|
||
2073 0028 40F22170 movw r0, #1825
|
||
2074 .LVL235:
|
||
2075 .loc 1 263 3 view .LVU466
|
||
2076 002c FFF7FEFF bl writeCMD
|
||
2077 .LVL236:
|
||
2078 .loc 1 263 3 is_stmt 1 discriminator 1 view .LVU467
|
||
2079 0030 0346 mov r3, r0
|
||
2080 0032 18B1 cbz r0, .L82
|
||
2081 .LVL237:
|
||
2082 .L78:
|
||
2083 .loc 1 263 3 is_stmt 0 discriminator 1 view .LVU468
|
||
2084 .LBE32:
|
||
264:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {0,0,0,0,0,0};
|
||
265:Core/Src/ADBMS_Abstraction.c **** readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE);
|
||
266:Core/Src/ADBMS_Abstraction.c **** if (rxbuf[6] != txbuf[6]) {
|
||
267:Core/Src/ADBMS_Abstraction.c **** while(1){}
|
||
268:Core/Src/ADBMS_Abstraction.c **** }
|
||
269:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 72, NULL, 0));
|
||
270:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
271:Core/Src/ADBMS_Abstraction.c **** }
|
||
2085 .loc 1 271 1 view .LVU469
|
||
2086 0034 1846 mov r0, r3
|
||
2087 0036 05B0 add sp, sp, #20
|
||
2088 .cfi_remember_state
|
||
2089 .cfi_def_cfa_offset 4
|
||
2090 @ sp needed
|
||
2091 0038 5DF804FB ldr pc, [sp], #4
|
||
2092 .LVL238:
|
||
2093 .L82:
|
||
2094 .cfi_restore_state
|
||
ARM GAS /tmp/cc16Zqrx.s page 48
|
||
|
||
|
||
263:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {0,0,0,0,0,0};
|
||
2095 .loc 1 263 57 is_stmt 1 discriminator 2 view .LVU470
|
||
264:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {0,0,0,0,0,0};
|
||
2096 .loc 1 264 3 view .LVU471
|
||
264:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {0,0,0,0,0,0};
|
||
2097 .loc 1 264 11 is_stmt 0 view .LVU472
|
||
2098 003c 0023 movs r3, #0
|
||
2099 003e 0093 str r3, [sp]
|
||
2100 0040 ADF80430 strh r3, [sp, #4] @ movhi
|
||
265:Core/Src/ADBMS_Abstraction.c **** if (rxbuf[6] != txbuf[6]) {
|
||
2101 .loc 1 265 3 is_stmt 1 view .LVU473
|
||
2102 0044 0622 movs r2, #6
|
||
2103 0046 6946 mov r1, sp
|
||
2104 0048 40F22270 movw r0, #1826
|
||
2105 .LVL239:
|
||
265:Core/Src/ADBMS_Abstraction.c **** if (rxbuf[6] != txbuf[6]) {
|
||
2106 .loc 1 265 3 is_stmt 0 view .LVU474
|
||
2107 004c FFF7FEFF bl readCMD
|
||
2108 .LVL240:
|
||
266:Core/Src/ADBMS_Abstraction.c **** while(1){}
|
||
2109 .loc 1 266 3 is_stmt 1 view .LVU475
|
||
266:Core/Src/ADBMS_Abstraction.c **** while(1){}
|
||
2110 .loc 1 266 12 is_stmt 0 view .LVU476
|
||
2111 0050 9DF80620 ldrb r2, [sp, #6] @ zero_extendqisi2
|
||
266:Core/Src/ADBMS_Abstraction.c **** while(1){}
|
||
2112 .loc 1 266 24 view .LVU477
|
||
2113 0054 9DF80E30 ldrb r3, [sp, #14] @ zero_extendqisi2
|
||
266:Core/Src/ADBMS_Abstraction.c **** while(1){}
|
||
2114 .loc 1 266 6 view .LVU478
|
||
2115 0058 9A42 cmp r2, r3
|
||
2116 005a 00D0 beq .L79
|
||
2117 .L80:
|
||
267:Core/Src/ADBMS_Abstraction.c **** }
|
||
2118 .loc 1 267 5 is_stmt 1 view .LVU479
|
||
267:Core/Src/ADBMS_Abstraction.c **** }
|
||
2119 .loc 1 267 14 view .LVU480
|
||
267:Core/Src/ADBMS_Abstraction.c **** }
|
||
2120 .loc 1 267 10 view .LVU481
|
||
2121 005c FEE7 b .L80
|
||
2122 .L79:
|
||
2123 .LBB33:
|
||
269:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
2124 .loc 1 269 3 view .LVU482
|
||
2125 005e 0023 movs r3, #0
|
||
2126 0060 1A46 mov r2, r3
|
||
2127 0062 4821 movs r1, #72
|
||
2128 0064 40F22370 movw r0, #1827
|
||
2129 0068 FFF7FEFF bl writeCMD_I2C
|
||
2130 .LVL241:
|
||
2131 006c 0346 mov r3, r0
|
||
2132 .LVL242:
|
||
269:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
2133 .loc 1 269 3 discriminator 1 view .LVU483
|
||
2134 006e E1E7 b .L78
|
||
2135 .LBE33:
|
||
2136 .cfi_endproc
|
||
2137 .LFE139:
|
||
ARM GAS /tmp/cc16Zqrx.s page 49
|
||
|
||
|
||
2139 .section .text.amsReadComm,"ax",%progbits
|
||
2140 .align 1
|
||
2141 .global amsReadComm
|
||
2142 .syntax unified
|
||
2143 .thumb
|
||
2144 .thumb_func
|
||
2146 amsReadComm:
|
||
2147 .LVL243:
|
||
2148 .LFB140:
|
||
272:Core/Src/ADBMS_Abstraction.c ****
|
||
273:Core/Src/ADBMS_Abstraction.c **** uint8_t amsReadComm(uint8_t device, uint8_t addr, uint8_t* buf) {
|
||
2149 .loc 1 273 65 view -0
|
||
2150 .cfi_startproc
|
||
2151 @ args = 0, pretend = 0, frame = 16
|
||
2152 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2153 .loc 1 273 65 is_stmt 0 view .LVU485
|
||
2154 0000 70B5 push {r4, r5, r6, lr}
|
||
2155 .cfi_def_cfa_offset 16
|
||
2156 .cfi_offset 4, -16
|
||
2157 .cfi_offset 5, -12
|
||
2158 .cfi_offset 6, -8
|
||
2159 .cfi_offset 14, -4
|
||
2160 0002 84B0 sub sp, sp, #16
|
||
2161 .cfi_def_cfa_offset 32
|
||
2162 0004 0446 mov r4, r0
|
||
2163 0006 1546 mov r5, r2
|
||
274:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByteW = (device << 1);
|
||
2164 .loc 1 274 3 is_stmt 1 view .LVU486
|
||
2165 .loc 1 274 11 is_stmt 0 view .LVU487
|
||
2166 0008 4300 lsls r3, r0, #1
|
||
2167 .LVL244:
|
||
275:Core/Src/ADBMS_Abstraction.c **** uint8_t txbuf[6] = {I2C_STRT << 4 | SLV_ACK, ctrlByteW,
|
||
2168 .loc 1 275 3 is_stmt 1 view .LVU488
|
||
2169 .loc 1 275 11 is_stmt 0 view .LVU489
|
||
2170 000a 6722 movs r2, #103
|
||
2171 .LVL245:
|
||
2172 .loc 1 275 11 view .LVU490
|
||
2173 000c 8DF80820 strb r2, [sp, #8]
|
||
2174 0010 8DF80930 strb r3, [sp, #9]
|
||
2175 0014 0723 movs r3, #7
|
||
2176 .LVL246:
|
||
2177 .loc 1 275 11 view .LVU491
|
||
2178 0016 8DF80A30 strb r3, [sp, #10]
|
||
2179 001a 8DF80B10 strb r1, [sp, #11]
|
||
2180 001e 0023 movs r3, #0
|
||
2181 0020 8DF80C30 strb r3, [sp, #12]
|
||
2182 0024 8DF80D30 strb r3, [sp, #13]
|
||
2183 .LBB34:
|
||
276:Core/Src/ADBMS_Abstraction.c **** BLANK << 4 | SLV_ACK, addr,
|
||
277:Core/Src/ADBMS_Abstraction.c **** 0, 0};
|
||
278:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, txbuf, COMM_GROUP_SIZE));
|
||
2184 .loc 1 278 3 is_stmt 1 view .LVU492
|
||
2185 0028 0622 movs r2, #6
|
||
2186 002a 02A9 add r1, sp, #8
|
||
2187 .LVL247:
|
||
2188 .loc 1 278 3 is_stmt 0 view .LVU493
|
||
2189 002c 40F22170 movw r0, #1825
|
||
ARM GAS /tmp/cc16Zqrx.s page 50
|
||
|
||
|
||
2190 .LVL248:
|
||
2191 .loc 1 278 3 view .LVU494
|
||
2192 0030 FFF7FEFF bl writeCMD
|
||
2193 .LVL249:
|
||
2194 .loc 1 278 3 is_stmt 1 discriminator 1 view .LVU495
|
||
2195 0034 0646 mov r6, r0
|
||
2196 0036 10B1 cbz r0, .L86
|
||
2197 .LVL250:
|
||
2198 .L84:
|
||
2199 .loc 1 278 3 is_stmt 0 discriminator 1 view .LVU496
|
||
2200 .LBE34:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
280:Core/Src/ADBMS_Abstraction.c ****
|
||
281:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByteR = (device << 1) | 1;
|
||
282:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {I2C_STRT << 4 | SLV_ACK, ctrlByteR,
|
||
283:Core/Src/ADBMS_Abstraction.c **** BLANK << 4 | MSTR_NO_ACK_STP, 0,
|
||
284:Core/Src/ADBMS_Abstraction.c **** 0, 0};
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
287:Core/Src/ADBMS_Abstraction.c **** if(readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE) != 0) {
|
||
288:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
289:Core/Src/ADBMS_Abstraction.c **** }
|
||
290:Core/Src/ADBMS_Abstraction.c ****
|
||
291:Core/Src/ADBMS_Abstraction.c **** *buf = rxbuf[4];
|
||
292:Core/Src/ADBMS_Abstraction.c ****
|
||
293:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
294:Core/Src/ADBMS_Abstraction.c **** }...
|
||
2201 .loc 1 294 1 view .LVU497
|
||
2202 0038 3046 mov r0, r6
|
||
2203 003a 04B0 add sp, sp, #16
|
||
2204 .cfi_remember_state
|
||
2205 .cfi_def_cfa_offset 16
|
||
2206 @ sp needed
|
||
2207 003c 70BD pop {r4, r5, r6, pc}
|
||
2208 .LVL251:
|
||
2209 .L86:
|
||
2210 .cfi_restore_state
|
||
278:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, txbuf, COMM_GROUP_SIZE));
|
||
2211 .loc 1 278 57 is_stmt 1 discriminator 2 view .LVU498
|
||
2212 .LBB35:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2213 .loc 1 279 3 view .LVU499
|
||
2214 003e 0023 movs r3, #0
|
||
2215 0040 1A46 mov r2, r3
|
||
2216 0042 3021 movs r1, #48
|
||
2217 0044 40F22370 movw r0, #1827
|
||
2218 .LVL252:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2219 .loc 1 279 3 is_stmt 0 view .LVU500
|
||
2220 0048 FFF7FEFF bl writeCMD_I2C
|
||
2221 .LVL253:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2222 .loc 1 279 3 is_stmt 1 discriminator 1 view .LVU501
|
||
2223 004c 0646 mov r6, r0
|
||
2224 .LVL254:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2225 .loc 1 279 3 is_stmt 0 discriminator 1 view .LVU502
|
||
ARM GAS /tmp/cc16Zqrx.s page 51
|
||
|
||
|
||
2226 004e 0028 cmp r0, #0
|
||
2227 0050 F2D1 bne .L84
|
||
2228 .LBE35:
|
||
279:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2229 .loc 1 279 50 is_stmt 1 discriminator 2 view .LVU503
|
||
281:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByteR = (device << 1) | 1;
|
||
2230 .loc 1 281 3 view .LVU504
|
||
281:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByteR = (device << 1) | 1;
|
||
2231 .loc 1 281 37 is_stmt 0 view .LVU505
|
||
2232 0052 6400 lsls r4, r4, #1
|
||
2233 .LVL255:
|
||
281:Core/Src/ADBMS_Abstraction.c **** uint8_t ctrlByteR = (device << 1) | 1;
|
||
2234 .loc 1 281 37 view .LVU506
|
||
2235 0054 44F00104 orr r4, r4, #1
|
||
2236 .LVL256:
|
||
282:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {I2C_STRT << 4 | SLV_ACK, ctrlByteR,
|
||
2237 .loc 1 282 3 is_stmt 1 view .LVU507
|
||
282:Core/Src/ADBMS_Abstraction.c **** uint8_t rxbuf[6] = {I2C_STRT << 4 | SLV_ACK, ctrlByteR,
|
||
2238 .loc 1 282 11 is_stmt 0 view .LVU508
|
||
2239 0058 6723 movs r3, #103
|
||
2240 005a 8DF80030 strb r3, [sp]
|
||
2241 005e 8DF80140 strb r4, [sp, #1]
|
||
2242 0062 0923 movs r3, #9
|
||
2243 0064 8DF80230 strb r3, [sp, #2]
|
||
2244 0068 0023 movs r3, #0
|
||
2245 006a 8DF80330 strb r3, [sp, #3]
|
||
2246 006e 8DF80430 strb r3, [sp, #4]
|
||
2247 0072 8DF80530 strb r3, [sp, #5]
|
||
2248 .LBB36:
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
2249 .loc 1 285 3 is_stmt 1 view .LVU509
|
||
2250 0076 0622 movs r2, #6
|
||
2251 0078 6946 mov r1, sp
|
||
2252 007a 40F22170 movw r0, #1825
|
||
2253 .LVL257:
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
2254 .loc 1 285 3 is_stmt 0 view .LVU510
|
||
2255 007e FFF7FEFF bl writeCMD
|
||
2256 .LVL258:
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
2257 .loc 1 285 3 is_stmt 1 discriminator 1 view .LVU511
|
||
2258 0082 0646 mov r6, r0
|
||
2259 .LVL259:
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
2260 .loc 1 285 3 is_stmt 0 discriminator 1 view .LVU512
|
||
2261 0084 0028 cmp r0, #0
|
||
2262 0086 D7D1 bne .L84
|
||
2263 .LBE36:
|
||
285:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD(WRCOMM, rxbuf, COMM_GROUP_SIZE));
|
||
2264 .loc 1 285 57 is_stmt 1 discriminator 2 view .LVU513
|
||
2265 .LBB37:
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2266 .loc 1 286 3 view .LVU514
|
||
2267 0088 0023 movs r3, #0
|
||
2268 008a 1A46 mov r2, r3
|
||
2269 008c 3021 movs r1, #48
|
||
2270 008e 40F22370 movw r0, #1827
|
||
ARM GAS /tmp/cc16Zqrx.s page 52
|
||
|
||
|
||
2271 .LVL260:
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2272 .loc 1 286 3 is_stmt 0 view .LVU515
|
||
2273 0092 FFF7FEFF bl writeCMD_I2C
|
||
2274 .LVL261:
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2275 .loc 1 286 3 is_stmt 1 discriminator 1 view .LVU516
|
||
2276 0096 0646 mov r6, r0
|
||
2277 .LVL262:
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2278 .loc 1 286 3 is_stmt 0 discriminator 1 view .LVU517
|
||
2279 0098 0028 cmp r0, #0
|
||
2280 009a CDD1 bne .L84
|
||
2281 .LBE37:
|
||
286:Core/Src/ADBMS_Abstraction.c **** CHECK_RETURN(writeCMD_I2C(STCOMM, 48, NULL, 0));
|
||
2282 .loc 1 286 50 is_stmt 1 discriminator 2 view .LVU518
|
||
287:Core/Src/ADBMS_Abstraction.c **** if(readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE) != 0) {
|
||
2283 .loc 1 287 3 view .LVU519
|
||
287:Core/Src/ADBMS_Abstraction.c **** if(readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE) != 0) {
|
||
2284 .loc 1 287 6 is_stmt 0 view .LVU520
|
||
2285 009c 0622 movs r2, #6
|
||
2286 009e 6946 mov r1, sp
|
||
2287 00a0 40F22270 movw r0, #1826
|
||
2288 .LVL263:
|
||
287:Core/Src/ADBMS_Abstraction.c **** if(readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE) != 0) {
|
||
2289 .loc 1 287 6 view .LVU521
|
||
2290 00a4 FFF7FEFF bl readCMD
|
||
2291 .LVL264:
|
||
287:Core/Src/ADBMS_Abstraction.c **** if(readCMD(RDCOMM, rxbuf, COMM_GROUP_SIZE) != 0) {
|
||
2292 .loc 1 287 5 discriminator 1 view .LVU522
|
||
2293 00a8 0028 cmp r0, #0
|
||
2294 00aa C5D1 bne .L84
|
||
291:Core/Src/ADBMS_Abstraction.c **** *buf = rxbuf[4];
|
||
2295 .loc 1 291 3 is_stmt 1 view .LVU523
|
||
291:Core/Src/ADBMS_Abstraction.c **** *buf = rxbuf[4];
|
||
2296 .loc 1 291 15 is_stmt 0 view .LVU524
|
||
2297 00ac 9DF80420 ldrb r2, [sp, #4] @ zero_extendqisi2
|
||
291:Core/Src/ADBMS_Abstraction.c **** *buf = rxbuf[4];
|
||
2298 .loc 1 291 8 view .LVU525
|
||
2299 00b0 2A70 strb r2, [r5]
|
||
293:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
2300 .loc 1 293 3 is_stmt 1 view .LVU526
|
||
293:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
2301 .loc 1 293 10 is_stmt 0 view .LVU527
|
||
2302 00b2 0646 mov r6, r0
|
||
2303 .LVL265:
|
||
293:Core/Src/ADBMS_Abstraction.c **** return 0;
|
||
2304 .loc 1 293 10 view .LVU528
|
||
2305 00b4 C0E7 b .L84
|
||
2306 .cfi_endproc
|
||
2307 .LFE140:
|
||
2309 .global numberofauxchannels
|
||
2310 .section .bss.numberofauxchannels,"aw",%nobits
|
||
2313 numberofauxchannels:
|
||
2314 0000 00 .space 1
|
||
2315 .global numberofcells
|
||
2316 .section .bss.numberofcells,"aw",%nobits
|
||
ARM GAS /tmp/cc16Zqrx.s page 53
|
||
|
||
|
||
2319 numberofcells:
|
||
2320 0000 00 .space 1
|
||
2321 .text
|
||
2322 .Letext0:
|
||
2323 .file 2 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm-
|
||
2324 .file 3 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm-
|
||
2325 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302x8.h"
|
||
2326 .file 5 "/home/chiangni/.config/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-tools/arm-
|
||
2327 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
|
||
2328 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
|
||
2329 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_spi.h"
|
||
2330 .file 9 "Core/Inc/ADBMS_LL_Driver.h"
|
||
2331 .file 10 "Core/Inc/ADBMS_Abstraction.h"
|
||
ARM GAS /tmp/cc16Zqrx.s page 54
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:00000000 ADBMS_Abstraction.c
|
||
/tmp/cc16Zqrx.s:21 .text.amsConfig:00000000 $t
|
||
/tmp/cc16Zqrx.s:27 .text.amsConfig:00000000 amsConfig
|
||
/tmp/cc16Zqrx.s:83 .text.amsWakeUp:00000000 $t
|
||
/tmp/cc16Zqrx.s:89 .text.amsWakeUp:00000000 amsWakeUp
|
||
/tmp/cc16Zqrx.s:117 .text.amsConfigCellMeasurement:00000000 $t
|
||
/tmp/cc16Zqrx.s:123 .text.amsConfigCellMeasurement:00000000 amsConfigCellMeasurement
|
||
/tmp/cc16Zqrx.s:144 .text.amsConfigCellMeasurement:00000008 $d
|
||
/tmp/cc16Zqrx.s:2319 .bss.numberofcells:00000000 numberofcells
|
||
/tmp/cc16Zqrx.s:154 .text.amsAuxAndStatusMeasurement:00000000 $t
|
||
/tmp/cc16Zqrx.s:160 .text.amsAuxAndStatusMeasurement:00000000 amsAuxAndStatusMeasurement
|
||
/tmp/cc16Zqrx.s:727 .text.amsAuxAndStatusMeasurement:00000400 $d
|
||
/tmp/cc16Zqrx.s:736 .text.amsConfigBalancing:00000000 $t
|
||
/tmp/cc16Zqrx.s:742 .text.amsConfigBalancing:00000000 amsConfigBalancing
|
||
/tmp/cc16Zqrx.s:949 .text.amsStartBalancing:00000000 $t
|
||
/tmp/cc16Zqrx.s:955 .text.amsStartBalancing:00000000 amsStartBalancing
|
||
/tmp/cc16Zqrx.s:982 .text.amsStopBalancing:00000000 $t
|
||
/tmp/cc16Zqrx.s:988 .text.amsStopBalancing:00000000 amsStopBalancing
|
||
/tmp/cc16Zqrx.s:1011 .text.amsSelfTest:00000000 $t
|
||
/tmp/cc16Zqrx.s:1017 .text.amsSelfTest:00000000 amsSelfTest
|
||
/tmp/cc16Zqrx.s:1032 .text.amsConfigOverUnderVoltage:00000000 $t
|
||
/tmp/cc16Zqrx.s:1038 .text.amsConfigOverUnderVoltage:00000000 amsConfigOverUnderVoltage
|
||
/tmp/cc16Zqrx.s:1150 .rodata.amsReset.str1.4:00000000 $d
|
||
/tmp/cc16Zqrx.s:1154 .text.amsReset:00000000 $t
|
||
/tmp/cc16Zqrx.s:1160 .text.amsReset:00000000 amsReset
|
||
/tmp/cc16Zqrx.s:1288 .text.amsReset:00000098 $d
|
||
/tmp/cc16Zqrx.s:1294 .text.initAMS:00000000 $t
|
||
/tmp/cc16Zqrx.s:1300 .text.initAMS:00000000 initAMS
|
||
/tmp/cc16Zqrx.s:1338 .text.initAMS:00000018 $d
|
||
/tmp/cc16Zqrx.s:2313 .bss.numberofauxchannels:00000000 numberofauxchannels
|
||
/tmp/cc16Zqrx.s:1344 .text.amsCheckUnderOverVoltage:00000000 $t
|
||
/tmp/cc16Zqrx.s:1350 .text.amsCheckUnderOverVoltage:00000000 amsCheckUnderOverVoltage
|
||
/tmp/cc16Zqrx.s:1459 .text.amsCheckUnderOverVoltage:00000068 $d
|
||
/tmp/cc16Zqrx.s:1464 .text.amsClearAux:00000000 $t
|
||
/tmp/cc16Zqrx.s:1470 .text.amsClearAux:00000000 amsClearAux
|
||
/tmp/cc16Zqrx.s:1498 .text.amsClearCells:00000000 $t
|
||
/tmp/cc16Zqrx.s:1504 .text.amsClearCells:00000000 amsClearCells
|
||
/tmp/cc16Zqrx.s:1532 .text.amsReadCellVoltages:00000000 $t
|
||
/tmp/cc16Zqrx.s:1538 .text.amsReadCellVoltages:00000000 amsReadCellVoltages
|
||
/tmp/cc16Zqrx.s:1995 .text.amsReadCellVoltages:00000338 $d
|
||
/tmp/cc16Zqrx.s:2003 .text.amsCellMeasurement:00000000 $t
|
||
/tmp/cc16Zqrx.s:2009 .text.amsCellMeasurement:00000000 amsCellMeasurement
|
||
/tmp/cc16Zqrx.s:2031 .text.amsWriteComm:00000000 $t
|
||
/tmp/cc16Zqrx.s:2037 .text.amsWriteComm:00000000 amsWriteComm
|
||
/tmp/cc16Zqrx.s:2140 .text.amsReadComm:00000000 $t
|
||
/tmp/cc16Zqrx.s:2146 .text.amsReadComm:00000000 amsReadComm
|
||
/tmp/cc16Zqrx.s:2314 .bss.numberofauxchannels:00000000 $d
|
||
/tmp/cc16Zqrx.s:2320 .bss.numberofcells:00000000 $d
|
||
|
||
UNDEFINED SYMBOLS
|
||
readCMD
|
||
writeCMD
|
||
__aeabi_i2d
|
||
__aeabi_dmul
|
||
__aeabi_dadd
|
||
__aeabi_d2iz
|
||
ARM GAS /tmp/cc16Zqrx.s page 55
|
||
|
||
|
||
__aeabi_d2uiz
|
||
pollCMD
|
||
mcuDelay
|
||
adbmsDriverInit
|
||
writeCMD_I2C
|