solved Task 3.2

This commit is contained in:
Schrom01
2022-10-28 10:46:13 +02:00
parent 6f4740e719
commit 36f6411dd2
10 changed files with 294 additions and 155 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
Dependencies for Project 'bcd', Target 'Target 1': (DO NOT MODIFY !)
CompilerVersion: 6180000::V6.18::ARMCLANG
F (.\app\main.s)(0x635B82E1)(--cpu Cortex-M0 --pd "__EVAL SETA 1" -g
F (.\app\main.s)(0x635B9615)(--cpu Cortex-M0 --pd "__EVAL SETA 1" -g
-I.\RTE\_Target_1
+158 -72
View File
@@ -103,22 +103,22 @@ ARM Macro Assembler Page 2
50 00000000
51 00000000 ; STUDENTS: To be programmed
52 00000000
53 00000000 4A17 LDR R2, =MASK_LOW_NIBBLE
53 00000000 4A23 LDR R2, =MASK_LOW_NIBBLE
54 00000002
55 00000002 ; Load BCD Tens in R0
56 00000002 4818 LDR R0, =ADDR_DIP_SWITCH_15_8
56 00000002 4824 LDR R0, =ADDR_DIP_SWITCH_15_8
57 00000004 7800 LDRB R0, [R0]
58 00000006 4010 ANDS R0, R0, R2
59 00000008
60 00000008 ; Load BCD Ones in R1
61 00000008 4917 LDR R1, =ADDR_DIP_SWITCH_7_0
61 00000008 4923 LDR R1, =ADDR_DIP_SWITCH_7_0
62 0000000A 7809 LDRB R1, [R1]
63 0000000C 4011 ANDS R1, R1, R2
64 0000000E
65 0000000E ; Check if T0 is pressed. If pressed goto CalcByMult
66 0000000E 4B17 LDR R3, =ADDR_BUTTONS ; load base a
66 0000000E 4B23 LDR R3, =ADDR_BUTTONS ; load base a
ddress of keys
67 00000010 4C17 LDR R4, =BITMASK_KEY_T0
67 00000010 4C23 LDR R4, =BITMASK_KEY_T0
; load key mask T0
68 00000012 781A LDRB R2, [R3] ; load key values
69 00000014 4222 TST R2, R4 ; check, if key T0
@@ -134,11 +134,11 @@ ARM Macro Assembler Page 2
ARM Macro Assembler Page 3
75 00000018 4A16 LDR R2, =ADDR_LCD_RED
76 0000001A 4B17 LDR R3, =0xffff
75 00000018 4A22 LDR R2, =ADDR_LCD_RED
76 0000001A 4B23 LDR R3, =0xffff
77 0000001C 8013 STRH R3, [R2]
78 0000001E 4A17 LDR R2, =ADDR_LCD_BLUE
79 00000020 4B17 LDR R3, =0x0
78 0000001E 4A23 LDR R2, =ADDR_LCD_BLUE
79 00000020 4B23 LDR R3, =0x0
80 00000022 8013 STRH R3, [R2]
81 00000024
82 00000024 ; Calculate Bin Value to R2 by Bit Shifting
@@ -156,16 +156,16 @@ ARM Macro Assembler Page 3
94 0000002E CalcByMult
95 0000002E
96 0000002E ; set the LCD background to blue
97 0000002E 4A11 LDR R2, =ADDR_LCD_RED
98 00000030 4B13 LDR R3, =0x0
97 0000002E 4A1D LDR R2, =ADDR_LCD_RED
98 00000030 4B1F LDR R3, =0x0
99 00000032 8013 STRH R3, [R2]
100 00000034 4A11 LDR R2, =ADDR_LCD_BLUE
101 00000036 4B10 LDR R3, =0xffff
100 00000034 4A1D LDR R2, =ADDR_LCD_BLUE
101 00000036 4B1C LDR R3, =0xffff
102 00000038 8013 STRH R3, [R2]
103 0000003A
104 0000003A ; Calculate Bin Value to R2 by Multiplication
105 0000003A ; R2 = R0 * 10
106 0000003A 4A12 LDR R2, =FACTOR_10
106 0000003A 4A1E LDR R2, =FACTOR_10
107 0000003C 4342 MULS R2, R0, R2
108 0000003E 1852 ADDS R2, R2, R1
109 00000040
@@ -180,52 +180,102 @@ ARM Macro Assembler Page 3
118 00000044 0212 LSLS R2, R2, #8
119 00000046 4310 ORRS R0, R0, R2
120 00000048
121 00000048
122 00000048 ; Show R0 on LEDs
123 00000048 4A0F LDR R2, =ADDR_LED_15_0
124 0000004A 8010 STRH R0, [R2]
125 0000004C
126 0000004C ; Show R0 on 7-Segment
127 0000004C 4A0F LDR R2, =ADDR_7_SEG_BIN_DS3_0
128 0000004E 8010 STRH R0, [R2]
129 00000050
130 00000050 ; END: To be programmed
131 00000050
132 00000050 E7FE B main
133 00000052 ENDP
121 00000048 ; Show R0 on LEDs 15-0
122 00000048 4B1B LDR R3, =ADDR_LED_15_0
123 0000004A 8018 STRH R0, [R3]
124 0000004C
125 0000004C ; Show R0 on 7-Segment
126 0000004C 4B1B LDR R3, =ADDR_7_SEG_BIN_DS3_0
127 0000004E 8018 STRH R0, [R3]
128 00000050
129 00000050 ; Count positive Bits in Higher Byte of R2 to R1
130 00000050 4917 LDR R1, =0 ; initialize R1 wit
h 0
131 00000052 4B13 LDR R3, =0x1 ; mask to set first
bit and to substra
ARM Macro Assembler Page 4
134 00000052
135 00000052 ;----------------------------------------------------
136 00000052 ; Subroutines
137 00000052 ;----------------------------------------------------
138 00000052
139 00000052 ;----------------------------------------------------
140 00000052 ; pause for disco_lights
141 00000052 pause PROC
142 00000052 B403 PUSH {R0, R1}
143 00000054 4906 LDR R1, =1
144 00000056 480E LDR R0, =0x000FFFFF
145 00000058
146 00000058 loop
147 00000058 1A40 SUBS R0, R0, R1
148 0000005A D2FD BCS loop
149 0000005C
150 0000005C BC03 POP {R0, R1}
151 0000005E 4770 BX LR
152 00000060 ALIGN
153 00000060 ENDP
154 00000060
155 00000060 ; ------------------------------------------------------
ct counter
132 00000054 4C1A LDR R4, =9 ; counter for loop
133 00000056 0412 LSLS R2, R2, #16
134 00000058 CheckBitLoop
135 00000058 1AE4 SUBS R4, R4, R3
136 0000005A D004 BEQ EndCheckBitLoop ; goto EndCheck
BitLoop if R4 (coun
ter) = 0
137 0000005C 0052 LSLS R2, R2, #1 ; Shift Bits in R2
138 0000005E D3FB BCC CheckBitLoop ; goto CheckBitLoo
p if carry = 0
139 00000060 4319 ORRS R1, R3 ; Add Carry to R1
140 00000062 0049 LSLS R1, R1, #1 ; Shift Bits in R1
141 00000064 E7F8 B CheckBitLoop
; goto checkBitLoop
142 00000066 EndCheckBitLoop
143 00000066 0849 LSRS R1, R1, #1 ; Shift Bits in R1
144 00000068
145 00000068 ; Rotate LEDs 31-16
146 00000068 4A16 LDR R2, =ADDR_LED_31_16
147 0000006A 4C17 LDR R4, =17 ; Counter for LedRo
tationLoop
148 0000006C LedRotationLoop
149 0000006C 1AE4 SUBS R4, R4, R3
150 0000006E D007 BEQ EndLedRotationLoop ; goto EndCh
eckBitLoop if R4 (c
ounter) = 0
151 00000070 F7FF FFFE BL pause
152 00000074 8011 STRH R1, [R2] ; Show R1 on LEDs 3
1-16
153 00000076 460D MOV R5, R1 ; Coppy R1 to R5
154 00000078 042D LSLS R5, R5, #16 ; Shift Bits in R5
155 0000007A 4329 ORRS R1, R1, R5 ; Coppy lower bytes
of R1 in upper byt
es in R1
156 0000007C 41D9 RORS R1, R1, R3
157 0000007E E7F5 B LedRotationLoop
158 00000080 EndLedRotationLoop
159 00000080
160 00000080 ; END: To be programmed
161 00000080
162 00000080 E7FE B main
163 00000082 ENDP
164 00000082
165 00000082 ;----------------------------------------------------
166 00000082 ; Subroutines
167 00000082 ;----------------------------------------------------
168 00000082
169 00000082 ;----------------------------------------------------
170 00000082 ; pause for disco_lights
171 00000082 pause PROC
172 00000082 B403 PUSH {R0, R1}
173 00000084 4906 LDR R1, =1
174 00000086 4811 LDR R0, =0x000FFFFF
175 00000088
176 00000088 loop
177 00000088 1A40 SUBS R0, R0, R1
178 0000008A D2FD BCS loop
ARM Macro Assembler Page 5
179 0000008C
180 0000008C BC03 POP {R0, R1}
181 0000008E 4770 BX LR
182 00000090 ALIGN
183 00000090 ENDP
184 00000090
185 00000090 ; ------------------------------------------------------
------------
156 00000060 ; End of code
157 00000060 ; ------------------------------------------------------
186 00000090 ; End of code
187 00000090 ; ------------------------------------------------------
------------
158 00000060 END
188 00000090 END
0000000F
60000201
60000200
@@ -238,6 +288,9 @@ ARM Macro Assembler Page 4
0000000A
60000100
60000114
00000009
60000102
00000011
000FFFFF
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M0 --depend=.\bu
ild\main.d -o.\build\main.o -I.\RTE\_Target_1 -IC:\Users\roman\AppData\Local\Ar
@@ -268,6 +321,15 @@ Symbol: CalcByMult
Uses
At line 70 in file app\main.s
Comment: CalcByMult used once
CheckBitLoop 00000058
Symbol: CheckBitLoop
Definitions
At line 134 in file app\main.s
Uses
At line 138 in file app\main.s
At line 141 in file app\main.s
EndCalcByBitShift 0000002C
Symbol: EndCalcByBitShift
@@ -284,13 +346,43 @@ Symbol: EndCalcByMult
Uses
At line 92 in file app\main.s
Comment: EndCalcByMult used once
loop 00000058
EndCheckBitLoop 00000066
Symbol: EndCheckBitLoop
Definitions
At line 142 in file app\main.s
Uses
At line 136 in file app\main.s
Comment: EndCheckBitLoop used once
EndLedRotationLoop 00000080
Symbol: EndLedRotationLoop
Definitions
At line 158 in file app\main.s
Uses
At line 150 in file app\main.s
Comment: EndLedRotationLoop used once
LedRotationLoop 0000006C
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Relocatable symbols
Symbol: LedRotationLoop
Definitions
At line 148 in file app\main.s
Uses
At line 157 in file app\main.s
Comment: LedRotationLoop used once
loop 00000088
Symbol: loop
Definitions
At line 146 in file app\main.s
At line 176 in file app\main.s
Uses
At line 148 in file app\main.s
At line 178 in file app\main.s
Comment: loop used once
main 00000000
@@ -299,7 +391,7 @@ Symbol: main
At line 48 in file app\main.s
Uses
At line 49 in file app\main.s
At line 132 in file app\main.s
At line 162 in file app\main.s
myCode 00000000
@@ -309,21 +401,15 @@ Symbol: myCode
Uses
None
Comment: myCode unused
pause 00000052
ARM Macro Assembler Page 2 Alphabetic symbol ordering
Relocatable symbols
pause 00000082
Symbol: pause
Definitions
At line 141 in file app\main.s
At line 171 in file app\main.s
Uses
None
Comment: pause unused
8 symbols
At line 151 in file app\main.s
Comment: pause used once
12 symbols
@@ -336,7 +422,7 @@ Symbol: ADDR_7_SEG_BIN_DS3_0
Definitions
At line 28 in file app\main.s
Uses
At line 127 in file app\main.s
At line 126 in file app\main.s
Comment: ADDR_7_SEG_BIN_DS3_0 used once
ADDR_BUTTONS 60000210
@@ -400,7 +486,7 @@ Symbol: ADDR_LED_15_0
Definitions
At line 24 in file app\main.s
Uses
At line 123 in file app\main.s
At line 122 in file app\main.s
Comment: ADDR_LED_15_0 used once
ADDR_LED_31_16 60000102
@@ -408,8 +494,8 @@ Symbol: ADDR_LED_31_16
Definitions
At line 25 in file app\main.s
Uses
None
Comment: ADDR_LED_31_16 unused
At line 146 in file app\main.s
Comment: ADDR_LED_31_16 used once
BITMASK_KEY_T0 00000001
Symbol: BITMASK_KEY_T0
@@ -451,4 +537,4 @@ Symbol: MASK_LOW_NIBBLE
At line 53 in file app\main.s
Comment: MASK_LOW_NIBBLE used once
14 symbols
357 symbols in table
361 symbols in table
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -36,7 +36,7 @@ compiling system_ctboard.c...
compiling hal_rcc.c...
compiling hal_gpio.c...
linking...
Program Size: Code=3532 RO-data=428 RW-data=0 ZI-data=8192
Program Size: Code=3592 RO-data=428 RW-data=0 ZI-data=8192
".\build\mul.axf" - 0 Error(s), 0 Warning(s).
<h2>Software Packages used:</h2>
+57 -52
View File
@@ -3,7 +3,7 @@
<title>Static Call Graph - [.\build\mul.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\build\mul.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 6180002: Last Updated: Fri Oct 28 09:21:17 2022
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 6180002: Last Updated: Fri Oct 28 10:43:03 2022
<BR><P>
<H3>Maximum Stack Usage = 132 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@@ -485,120 +485,121 @@ Global Symbols
<P><STRONG><a name="[66]"></a>__system</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, system_ctboard.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 132<LI>Call Chain = __system &rArr; system_enter_run &rArr; hal_gpio_init_alternate &rArr; hal_gpio_init_output
</UL>
<BR>[Calls]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Calls]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_ctboard.o(.text)
</UL>
<P><STRONG><a name="[68]"></a>system_enter_run</STRONG> (Thumb, 280 bytes, Stack size 48 bytes, system_ctboard.o(.text))
<P><STRONG><a name="[69]"></a>system_enter_run</STRONG> (Thumb, 280 bytes, Stack size 48 bytes, system_ctboard.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 124<LI>Call Chain = system_enter_run &rArr; hal_gpio_init_alternate &rArr; hal_gpio_init_output
</UL>
<BR>[Calls]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_fmc_init_sram
<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_alternate
<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_setup_clock
<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_pwr_set_overdrive
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_setup_pll
<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_set_osc
<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_reset
<BR>[Calls]<UL><LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_fmc_init_sram
<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_alternate
<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_setup_clock
<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_pwr_set_overdrive
<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_setup_pll
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_set_osc
<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_rcc_reset
</UL>
<BR>[Called By]<UL><LI><a href="#[66]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__system
</UL>
<P><STRONG><a name="[71]"></a>system_enter_sleep</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[72]"></a>system_enter_sleep</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[72]"></a>system_enter_stop</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[73]"></a>system_enter_stop</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[73]"></a>system_enter_standby</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[74]"></a>system_enter_standby</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system_ctboard.o(.text), UNUSED)
<P><STRONG><a name="[74]"></a>hal_fmc_reset</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, hal_fmc.o(.text), UNUSED)
<P><STRONG><a name="[75]"></a>hal_fmc_reset</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, hal_fmc.o(.text), UNUSED)
<P><STRONG><a name="[6f]"></a>hal_fmc_init_sram</STRONG> (Thumb, 264 bytes, Stack size 36 bytes, hal_fmc.o(.text))
<P><STRONG><a name="[70]"></a>hal_fmc_init_sram</STRONG> (Thumb, 264 bytes, Stack size 36 bytes, hal_fmc.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = hal_fmc_init_sram
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[75]"></a>hal_gpio_reset</STRONG> (Thumb, 68 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[76]"></a>hal_gpio_reset</STRONG> (Thumb, 68 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[76]"></a>hal_gpio_init_input</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[77]"></a>hal_gpio_init_input</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[77]"></a>hal_gpio_init_analog</STRONG> (Thumb, 240 bytes, Stack size 36 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[78]"></a>hal_gpio_init_analog</STRONG> (Thumb, 240 bytes, Stack size 36 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[70]"></a>hal_gpio_init_output</STRONG> (Thumb, 276 bytes, Stack size 36 bytes, hal_gpio.o(.text))
<P><STRONG><a name="[71]"></a>hal_gpio_init_output</STRONG> (Thumb, 276 bytes, Stack size 36 bytes, hal_gpio.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = hal_gpio_init_output
</UL>
<BR>[Called By]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_alternate
<BR>[Called By]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_alternate
</UL>
<P><STRONG><a name="[6e]"></a>hal_gpio_init_alternate</STRONG> (Thumb, 262 bytes, Stack size 40 bytes, hal_gpio.o(.text))
<P><STRONG><a name="[6f]"></a>hal_gpio_init_alternate</STRONG> (Thumb, 262 bytes, Stack size 40 bytes, hal_gpio.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = hal_gpio_init_alternate &rArr; hal_gpio_init_output
</UL>
<BR>[Calls]<UL><LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_output
<BR>[Calls]<UL><LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_gpio_init_output
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[78]"></a>hal_gpio_input_read</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[79]"></a>hal_gpio_input_read</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[79]"></a>hal_gpio_output_read</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7a]"></a>hal_gpio_output_read</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7a]"></a>hal_gpio_output_write</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7b]"></a>hal_gpio_output_write</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7b]"></a>hal_gpio_bit_set</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7c]"></a>hal_gpio_bit_set</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7c]"></a>hal_gpio_bit_reset</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7d]"></a>hal_gpio_bit_reset</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7d]"></a>hal_gpio_bit_toggle</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7e]"></a>hal_gpio_bit_toggle</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7e]"></a>hal_gpio_irq_set</STRONG> (Thumb, 292 bytes, Stack size 36 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7f]"></a>hal_gpio_irq_set</STRONG> (Thumb, 292 bytes, Stack size 36 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[7f]"></a>hal_gpio_irq_status</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[80]"></a>hal_gpio_irq_status</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[80]"></a>hal_gpio_irq_clear</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[81]"></a>hal_gpio_irq_clear</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, hal_gpio.o(.text), UNUSED)
<P><STRONG><a name="[81]"></a>hal_pwr_reset</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[82]"></a>hal_pwr_reset</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[82]"></a>hal_pwr_set_backup_domain</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[83]"></a>hal_pwr_set_backup_domain</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[83]"></a>hal_pwr_set_backup_access</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[84]"></a>hal_pwr_set_backup_access</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[84]"></a>hal_pwr_set_wakeup_pin</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[85]"></a>hal_pwr_set_wakeup_pin</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[85]"></a>hal_pwr_set_flash_powerdown</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[86]"></a>hal_pwr_set_flash_powerdown</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[6c]"></a>hal_pwr_set_overdrive</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, hal_pwr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<P><STRONG><a name="[6d]"></a>hal_pwr_set_overdrive</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, hal_pwr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[86]"></a>hal_pwr_set_underdrive</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[87]"></a>hal_pwr_set_underdrive</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, hal_pwr.o(.text), UNUSED)
<P><STRONG><a name="[69]"></a>hal_rcc_reset</STRONG> (Thumb, 104 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<P><STRONG><a name="[6a]"></a>hal_rcc_reset</STRONG> (Thumb, 104 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = hal_rcc_reset
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[87]"></a>hal_rcc_set_peripheral</STRONG> (Thumb, 228 bytes, Stack size 8 bytes, hal_rcc.o(.text), UNUSED)
<P><STRONG><a name="[88]"></a>hal_rcc_set_peripheral</STRONG> (Thumb, 228 bytes, Stack size 8 bytes, hal_rcc.o(.text), UNUSED)
<P><STRONG><a name="[6a]"></a>hal_rcc_set_osc</STRONG> (Thumb, 108 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<P><STRONG><a name="[6b]"></a>hal_rcc_set_osc</STRONG> (Thumb, 108 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = hal_rcc_set_osc
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[6b]"></a>hal_rcc_setup_pll</STRONG> (Thumb, 220 bytes, Stack size 24 bytes, hal_rcc.o(.text))
<P><STRONG><a name="[6c]"></a>hal_rcc_setup_pll</STRONG> (Thumb, 220 bytes, Stack size 24 bytes, hal_rcc.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = hal_rcc_setup_pll
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[6d]"></a>hal_rcc_setup_clock</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<P><STRONG><a name="[6e]"></a>hal_rcc_setup_clock</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, hal_rcc.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = hal_rcc_setup_clock
</UL>
<BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
<BR>[Called By]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;system_enter_run
</UL>
<P><STRONG><a name="[65]"></a>main</STRONG> (Thumb, 82 bytes, Stack size 0 bytes, main.o(myCode))
<P><STRONG><a name="[65]"></a>main</STRONG> (Thumb, 130 bytes, Stack size 0 bytes, main.o(myCode))
<BR><BR>[Calls]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pause
</UL>
<BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
@@ -606,7 +607,11 @@ Global Symbols
</UL><P>
<H3>
Local Symbols
</H3><P>
</H3>
<P><STRONG><a name="[68]"></a>pause</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, main.o(myCode))
<BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P>
<H3>
Undefined Global Symbols
</H3><HR></body></html>
+16 -15
View File
@@ -125,7 +125,8 @@ Image Symbol Table
__arm_cp.3_5 0x08000e88 Number 4 hal_rcc.o(.text)
__arm_cp.4_0 0x08000edc Number 4 hal_rcc.o(.text)
__arm_cp.4_1 0x08000ee0 Number 4 hal_rcc.o(.text)
myCode 0x08000ee4 Section 148 main.o(myCode)
myCode 0x08000ee4 Section 208 main.o(myCode)
pause 0x08000f67 Thumb Code 14 main.o(myCode)
STACK 0x20000000 Section 8192 startup_ctboard.o(STACK)
__initial_sp 0x20002000 Data 0 startup_ctboard.o(STACK)
@@ -277,8 +278,8 @@ Image Symbol Table
hal_rcc_set_osc 0x08000d25 Thumb Code 108 hal_rcc.o(.text)
hal_rcc_setup_pll 0x08000d99 Thumb Code 220 hal_rcc.o(.text)
hal_rcc_setup_clock 0x08000e8d Thumb Code 80 hal_rcc.o(.text)
main 0x08000ee5 Thumb Code 82 main.o(myCode)
Image$$RO$$Limit 0x08000f78 Number 0 anon$$obj.o ABSOLUTE
main 0x08000ee5 Thumb Code 130 main.o(myCode)
Image$$RO$$Limit 0x08000fb4 Number 0 anon$$obj.o ABSOLUTE
Image$$RW$$Base 0x20000000 Number 0 anon$$obj.o ABSOLUTE
Image$$ZI$$Base 0x20000000 Number 0 anon$$obj.o ABSOLUTE
Stack_Mem 0x20000000 Data 8192 startup_ctboard.o(STACK)
@@ -292,9 +293,9 @@ Memory Map of the image
Image Entry point : 0x08000229
Load Region LR_1 (Base: 0x08000000, Size: 0x00000f78, Max: 0xffffffff, ABSOLUTE)
Load Region LR_1 (Base: 0x08000000, Size: 0x00000fb4, Max: 0xffffffff, ABSOLUTE)
Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000f78, Max: 0xffffffff, ABSOLUTE)
Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000fb4, Max: 0xffffffff, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
@@ -307,15 +308,15 @@ Memory Map of the image
0x08000504 0x08000504 0x00000604 Code RO 34 .text hal_gpio.o
0x08000b08 0x08000b08 0x000000ac Code RO 42 .text hal_pwr.o
0x08000bb4 0x08000bb4 0x00000330 Code RO 50 .text hal_rcc.o
0x08000ee4 0x08000ee4 0x00000094 Code RO 1 * myCode main.o
0x08000ee4 0x08000ee4 0x000000d0 Code RO 1 * myCode main.o
Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x08000f78, Size: 0x00000000, Max: 0xffffffff, ABSOLUTE)
Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x08000fb4, Size: 0x00000000, Max: 0xffffffff, ABSOLUTE)
**** No section assigned to this execution region ****
Execution Region ER_ZI (Exec base: 0x20000000, Load base: 0x08000f78, Size: 0x00002000, Max: 0xffffffff, ABSOLUTE)
Execution Region ER_ZI (Exec base: 0x20000000, Load base: 0x08000fb4, Size: 0x00002000, Max: 0xffffffff, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
@@ -334,12 +335,12 @@ Image component sizes
1540 96 0 0 0 11993 hal_gpio.o
172 20 0 0 0 2124 hal_pwr.o
816 168 0 0 0 5352 hal_rcc.o
148 52 0 0 0 424 main.o
208 64 0 0 0 448 main.o
36 8 428 0 8192 820 startup_ctboard.o
354 60 0 0 0 6763 system_ctboard.o
----------------------------------------------------------------------
3532 470 428 0 8192 31725 Object Totals
3592 482 428 0 8192 31749 Object Totals
0 0 0 0 0 0 (incl. Generated)
2 0 0 0 0 0 (incl. Padding)
@@ -354,15 +355,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
3532 470 428 0 8192 31541 Grand Totals
3532 470 428 0 8192 31541 ELF Image Totals
3532 470 428 0 0 0 ROM Totals
3592 482 428 0 8192 31565 Grand Totals
3592 482 428 0 8192 31565 ELF Image Totals
3592 482 428 0 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 3960 ( 3.87kB)
Total RO Size (Code + RO Data) 4020 ( 3.93kB)
Total RW Size (RW Data + ZI Data) 8192 ( 8.00kB)
Total ROM Size (Code + RO Data + RW Data) 3960 ( 3.87kB)
Total ROM Size (Code + RO Data + RW Data) 4020 ( 3.93kB)
==============================================================================