Battery done

This commit is contained in:
Morgane Foussats 2020-11-11 15:49:52 +01:00
parent e74a474507
commit 0c3aafc1ba
26 changed files with 522 additions and 379 deletions

View file

@ -22,13 +22,13 @@ Dialog DLL: TARMSTM.DLL V1.66.0.0
<h2>Project:</h2>
C:\Users\momof\Documents\projet_voilier\keil_project\MDK-ARM\Project.uvprojx
Project File Date: 11/09/2020
Project File Date: 11/11/2020
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'Simulateur'
linking...
Program Size: Code=2412 RO-data=268 RW-data=44 ZI-data=1028
Program Size: Code=2672 RO-data=268 RW-data=40 ZI-data=1024
"NUCLEO-F103RB\NUCLEO-F103RB.axf" - 0 Error(s), 0 Warning(s).
<h2>Software Packages used:</h2>

View file

@ -3,11 +3,11 @@
<title>Static Call Graph - [NUCLEO-F103RB\NUCLEO-F103RB.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image NUCLEO-F103RB\NUCLEO-F103RB.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Mon Nov 09 20:40:37 2020
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Wed Nov 11 15:46:52 2020
<BR><P>
<H3>Maximum Stack Usage = 96 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
<H3>Maximum Stack Usage = 136 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main &rArr; accelero_init &rArr; LL_ADC_REG_Init
main &rArr; is_level_enough &rArr; get_battery_level &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
<P>
<H3>
Mutually Recursive functions
@ -90,25 +90,25 @@ Global Symbols
<P><STRONG><a name="[37]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(.text)
</UL>
<P><STRONG><a name="[52]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[51]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[38]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<BR><BR>[Calls]<UL><LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>
<P><STRONG><a name="[40]"></a>__main_after_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<P><STRONG><a name="[42]"></a>__main_after_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<BR><BR>[Called By]<UL><LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>
<P><STRONG><a name="[53]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[52]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[54]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[53]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[55]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[54]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[56]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
<P><STRONG><a name="[55]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
<P><STRONG><a name="[57]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[56]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f103xb.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
@ -297,96 +297,125 @@ Global Symbols
<P><STRONG><a name="[a]"></a>WWDG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f103xb.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
</UL>
<P><STRONG><a name="[3a]"></a>__aeabi_ddiv</STRONG> (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text))
<P><STRONG><a name="[3a]"></a>__aeabi_dmul</STRONG> (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<P><STRONG><a name="[3c]"></a>__aeabi_ddiv</STRONG> (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __aeabi_ddiv &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
<BR>[Calls]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
</UL>
<BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<P><STRONG><a name="[3c]"></a>__aeabi_i2d</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, dflti.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = __aeabi_i2d &rArr; _double_epilogue &rArr; _double_round
<P><STRONG><a name="[3e]"></a>__aeabi_ui2f</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, ffltui.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = __aeabi_ui2f &rArr; _float_epilogue
</UL>
<BR>[Calls]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
<BR>[Calls]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_float_epilogue
</UL>
<BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<P><STRONG><a name="[4c]"></a>__aeabi_cdrcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<P><STRONG><a name="[4d]"></a>__aeabi_f2d</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_level_enough
<LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<P><STRONG><a name="[58]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[57]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
<P><STRONG><a name="[3b]"></a>_double_round</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text))
<P><STRONG><a name="[50]"></a>__aeabi_cdcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_level_enough
</UL>
<P><STRONG><a name="[4e]"></a>__aeabi_d2f</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<P><STRONG><a name="[58]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
<P><STRONG><a name="[59]"></a>_float_round</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text), UNUSED)
<P><STRONG><a name="[3f]"></a>_float_epilogue</STRONG> (Thumb, 92 bytes, Stack size 4 bytes, fepilogue.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = _float_epilogue
</UL>
<BR>[Called By]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2f
</UL>
<P><STRONG><a name="[3d]"></a>_double_round</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = _double_round
</UL>
<BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[3d]"></a>_double_epilogue</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
<P><STRONG><a name="[3b]"></a>_double_epilogue</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
<LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
<BR>[Calls]<UL><LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
<LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
</UL>
<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
<BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
</UL>
<P><STRONG><a name="[39]"></a>__scatterload</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main_after_scatterload
<BR><BR>[Calls]<UL><LI><a href="#[42]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main_after_scatterload
</UL>
<BR>[Called By]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
</UL>
<P><STRONG><a name="[59]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[5a]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[3e]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
<P><STRONG><a name="[40]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[5a]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[5b]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
<P><STRONG><a name="[3f]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
<P><STRONG><a name="[41]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
</UL>
<P><STRONG><a name="[5b]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[5c]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
<P><STRONG><a name="[41]"></a>LL_ADC_Init</STRONG> (Thumb, 120 bytes, Stack size 16 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_Init))
<P><STRONG><a name="[43]"></a>LL_ADC_Init</STRONG> (Thumb, 120 bytes, Stack size 16 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_Init))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LL_ADC_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsEnabled
<LI><a href="#[42]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;assert_failed
<BR>[Calls]<UL><LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsEnabled
<LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;assert_failed
</UL>
<BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_init
<BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alimentation_init
</UL>
<P><STRONG><a name="[44]"></a>LL_ADC_REG_Init</STRONG> (Thumb, 454 bytes, Stack size 16 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init))
<P><STRONG><a name="[46]"></a>LL_ADC_REG_Init</STRONG> (Thumb, 454 bytes, Stack size 16 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LL_ADC_REG_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsEnabled
<LI><a href="#[42]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;assert_failed
<BR>[Calls]<UL><LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsEnabled
<LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;assert_failed
</UL>
<BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_init
<BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alimentation_init
</UL>
<P><STRONG><a name="[46]"></a>LL_Init1msTick</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_ll_utils.o(i.LL_Init1msTick))
<BR><BR>[Called By]<UL><LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<P><STRONG><a name="[48]"></a>LL_Init1msTick</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_ll_utils.o(i.LL_Init1msTick))
<BR><BR>[Called By]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL>
<P><STRONG><a name="[47]"></a>LL_SetSystemCoreClock</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock))
<BR><BR>[Called By]<UL><LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<P><STRONG><a name="[49]"></a>LL_SetSystemCoreClock</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock))
<BR><BR>[Called By]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL>
<P><STRONG><a name="[45]"></a>SystemClock_Config</STRONG> (Thumb, 226 bytes, Stack size 8 bytes, main.o(i.SystemClock_Config))
<P><STRONG><a name="[47]"></a>SystemClock_Config</STRONG> (Thumb, 226 bytes, Stack size 8 bytes, main.o(i.SystemClock_Config))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SystemClock_Config
</UL>
<BR>[Calls]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_SetSystemCoreClock
<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_Init1msTick
<BR>[Calls]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_SetSystemCoreClock
<LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_Init1msTick
</UL>
<BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
@ -397,129 +426,97 @@ Global Symbols
<P><STRONG><a name="[23]"></a>TIM1_UP_IRQHandler</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, mytimer.o(i.TIM1_UP_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIM1_UP_IRQHandler
</UL>
<BR>[Calls]<UL><LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
</UL>
<P><STRONG><a name="[26]"></a>TIM2_IRQHandler</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, mytimer.o(i.TIM2_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIM2_IRQHandler
</UL>
<BR>[Calls]<UL><LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
</UL>
<P><STRONG><a name="[27]"></a>TIM3_IRQHandler</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, mytimer.o(i.TIM3_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIM3_IRQHandler
</UL>
<BR>[Calls]<UL><LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
</UL>
<P><STRONG><a name="[28]"></a>TIM4_IRQHandler</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, mytimer.o(i.TIM4_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIM4_IRQHandler
</UL>
<BR>[Calls]<UL><LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_TIM_ClearFlag_UPDATE
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xb.o(RESET)
</UL>
<P><STRONG><a name="[5c]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[5d]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[5d]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[5e]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[5e]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[5f]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[49]"></a>accelero_angle_bon</STRONG> (Thumb, 78 bytes, Stack size 24 bytes, accelerometer.o(i.accelero_angle_bon))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = accelero_angle_bon &rArr; __aeabi_i2d &rArr; _double_epilogue &rArr; _double_round
<P><STRONG><a name="[4b]"></a>alimentation_init</STRONG> (Thumb, 146 bytes, Stack size 80 bytes, alimentation.o(i.alimentation_init))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = alimentation_init &rArr; LL_ADC_REG_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
<LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
<LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_y
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_x
<BR>[Calls]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
</UL>
<BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[4a]"></a>accelero_get_x</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, accelerometer.o(i.accelero_get_x))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = accelero_get_x &rArr; LL_ADC_REG_SetSequencerRanks
</UL>
<BR>[Calls]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_StartConversionSWStart
<LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_SetSequencerRanks
<LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsActiveFlag_EOS
</UL>
<BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<P><STRONG><a name="[44]"></a>assert_failed</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, main.o(i.assert_failed))
<BR><BR>[Called By]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
</UL>
<P><STRONG><a name="[4b]"></a>accelero_get_y</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, accelerometer.o(i.accelero_get_y))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = accelero_get_y &rArr; LL_ADC_REG_SetSequencerRanks
<P><STRONG><a name="[4c]"></a>get_battery_level</STRONG> (Thumb, 166 bytes, Stack size 32 bytes, alimentation.o(i.get_battery_level))
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = get_battery_level &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_StartConversionSWStart
<LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_SetSequencerRanks
<LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_IsActiveFlag_EOS
<BR>[Calls]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2f
<LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
<LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
<LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<BR>[Called By]<UL><LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_level_enough
<LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[50]"></a>accelero_init</STRONG> (Thumb, 170 bytes, Stack size 80 bytes, accelerometer.o(i.accelero_init))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = accelero_init &rArr; LL_ADC_REG_Init
<P><STRONG><a name="[4f]"></a>is_level_enough</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, alimentation.o(i.is_level_enough))
<BR><BR>[Stack]<UL><LI>Max Depth = 136<LI>Call Chain = is_level_enough &rArr; get_battery_level &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<BR>[Calls]<UL><LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_SetChannelSamplingTime
<BR>[Calls]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdcmple
<LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
</UL>
<BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[42]"></a>assert_failed</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, main.o(i.assert_failed))
<BR><BR>[Called By]<UL><LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
<P><STRONG><a name="[35]"></a>main</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, main.o(i.main))
<BR><BR>[Stack]<UL><LI>Max Depth = 136<LI>Call Chain = main &rArr; is_level_enough &rArr; get_battery_level &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
</UL>
<P><STRONG><a name="[35]"></a>main</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, main.o(i.main))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = main &rArr; accelero_init &rArr; LL_ADC_REG_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_init
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_angle_bon
<LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<BR>[Calls]<UL><LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_level_enough
<LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_battery_level
<LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;alimentation_init
<LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL>
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
</UL><P>
<H3>
Local Symbols
</H3>
<P><STRONG><a name="[4f]"></a>LL_ADC_IsActiveFlag_EOS</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, accelerometer.o(i.LL_ADC_IsActiveFlag_EOS))
<BR><BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_y
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_x
</UL>
<P><STRONG><a name="[4d]"></a>LL_ADC_REG_SetSequencerRanks</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, accelerometer.o(i.LL_ADC_REG_SetSequencerRanks))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LL_ADC_REG_SetSequencerRanks
</UL>
<BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_y
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_x
</UL>
<P><STRONG><a name="[4e]"></a>LL_ADC_REG_StartConversionSWStart</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, accelerometer.o(i.LL_ADC_REG_StartConversionSWStart))
<BR><BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_y
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_get_x
</UL>
<P><STRONG><a name="[51]"></a>LL_ADC_SetChannelSamplingTime</STRONG> (Thumb, 82 bytes, Stack size 16 bytes, accelerometer.o(i.LL_ADC_SetChannelSamplingTime))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LL_ADC_SetChannelSamplingTime
</UL>
<BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;accelero_init
</UL>
<P><STRONG><a name="[48]"></a>LL_TIM_ClearFlag_UPDATE</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, mytimer.o(i.LL_TIM_ClearFlag_UPDATE))
<P><STRONG><a name="[4a]"></a>LL_TIM_ClearFlag_UPDATE</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, mytimer.o(i.LL_TIM_ClearFlag_UPDATE))
<BR><BR>[Called By]<UL><LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM4_IRQHandler
<LI><a href="#[27]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM3_IRQHandler
<LI><a href="#[26]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM2_IRQHandler
<LI><a href="#[23]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM1_UP_IRQHandler
</UL>
<P><STRONG><a name="[43]"></a>LL_ADC_IsEnabled</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled))
<BR><BR>[Called By]<UL><LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
<P><STRONG><a name="[45]"></a>LL_ADC_IsEnabled</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled))
<BR><BR>[Called By]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_REG_Init
<LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LL_ADC_Init
</UL>
<P>
<H3>

View file

@ -1,7 +1,7 @@
--cpu Cortex-M3
"nucleo-f103rb\main.o"
"nucleo-f103rb\chrono.o"
"nucleo-f103rb\accelerometer.o"
"nucleo-f103rb\alimentation.o"
"nucleo-f103rb\mytimer.o"
"nucleo-f103rb\stm32f1xx_ll_rcc.o"
"nucleo-f103rb\stm32f1xx_ll_utils.o"

View file

@ -7,9 +7,10 @@ Section Cross References
main.o(i.SystemClock_Config) refers to stm32f1xx_ll_utils.o(i.LL_Init1msTick) for LL_Init1msTick
main.o(i.SystemClock_Config) refers to stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock) for LL_SetSystemCoreClock
main.o(i.main) refers to main.o(i.SystemClock_Config) for SystemClock_Config
main.o(i.main) refers to accelerometer.o(i.accelero_init) for accelero_init
main.o(i.main) refers to accelerometer.o(i.accelero_angle_bon) for accelero_angle_bon
main.o(i.main) refers to main.o(.data) for angle_bon
main.o(i.main) refers to alimentation.o(i.alimentation_init) for alimentation_init
main.o(i.main) refers to alimentation.o(i.get_battery_level) for get_battery_level
main.o(i.main) refers to alimentation.o(i.is_level_enough) for is_level_enough
main.o(i.main) refers to main.o(.data) for level
chrono.o(i.Chrono_Background) refers to chrono.o(i.LL_GPIO_IsInputPinSet) for LL_GPIO_IsInputPinSet
chrono.o(i.Chrono_Background) refers to chrono.o(i.Chrono_Stop) for Chrono_Stop
chrono.o(i.Chrono_Background) refers to chrono.o(i.Chrono_Start) for Chrono_Start
@ -30,21 +31,17 @@ Section Cross References
chrono.o(i.Chrono_Stop) refers to mytimer.o(i.MyTimer_Stop) for MyTimer_Stop
chrono.o(i.Chrono_Stop) refers to chrono.o(.data) for Chrono_Timer
chrono.o(i.Chrono_Task_10ms) refers to chrono.o(.data) for Chrono_Time
accelerometer.o(i.accelero_angle_bon) refers to accelerometer.o(i.accelero_get_x) for accelero_get_x
accelerometer.o(i.accelero_angle_bon) refers to accelerometer.o(i.accelero_get_y) for accelero_get_y
accelerometer.o(i.accelero_angle_bon) refers to dflti.o(.text) for __aeabi_i2d
accelerometer.o(i.accelero_angle_bon) refers to ddiv.o(.text) for __aeabi_ddiv
accelerometer.o(i.accelero_angle_bon) refers to cdrcmple.o(.text) for __aeabi_cdrcmple
accelerometer.o(i.accelero_angle_bon) refers to accelerometer.o(.data) for x
accelerometer.o(i.accelero_get_x) refers to accelerometer.o(i.LL_ADC_REG_SetSequencerRanks) for LL_ADC_REG_SetSequencerRanks
accelerometer.o(i.accelero_get_x) refers to accelerometer.o(i.LL_ADC_REG_StartConversionSWStart) for LL_ADC_REG_StartConversionSWStart
accelerometer.o(i.accelero_get_x) refers to accelerometer.o(i.LL_ADC_IsActiveFlag_EOS) for LL_ADC_IsActiveFlag_EOS
accelerometer.o(i.accelero_get_y) refers to accelerometer.o(i.LL_ADC_REG_SetSequencerRanks) for LL_ADC_REG_SetSequencerRanks
accelerometer.o(i.accelero_get_y) refers to accelerometer.o(i.LL_ADC_REG_StartConversionSWStart) for LL_ADC_REG_StartConversionSWStart
accelerometer.o(i.accelero_get_y) refers to accelerometer.o(i.LL_ADC_IsActiveFlag_EOS) for LL_ADC_IsActiveFlag_EOS
accelerometer.o(i.accelero_init) refers to stm32f1xx_ll_adc.o(i.LL_ADC_Init) for LL_ADC_Init
accelerometer.o(i.accelero_init) refers to stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init) for LL_ADC_REG_Init
accelerometer.o(i.accelero_init) refers to accelerometer.o(i.LL_ADC_SetChannelSamplingTime) for LL_ADC_SetChannelSamplingTime
alimentation.o(i.alimentation_init) refers to stm32f1xx_ll_adc.o(i.LL_ADC_Init) for LL_ADC_Init
alimentation.o(i.alimentation_init) refers to stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init) for LL_ADC_REG_Init
alimentation.o(i.get_battery_level) refers to ffltui.o(.text) for __aeabi_ui2f
alimentation.o(i.get_battery_level) refers to f2d.o(.text) for __aeabi_f2d
alimentation.o(i.get_battery_level) refers to dmul.o(.text) for __aeabi_dmul
alimentation.o(i.get_battery_level) refers to ddiv.o(.text) for __aeabi_ddiv
alimentation.o(i.get_battery_level) refers to d2f.o(.text) for __aeabi_d2f
alimentation.o(i.get_battery_level) refers to alimentation.o(.data) for battery_level
alimentation.o(i.is_level_enough) refers to alimentation.o(i.get_battery_level) for get_battery_level
alimentation.o(i.is_level_enough) refers to f2d.o(.text) for __aeabi_f2d
alimentation.o(i.is_level_enough) refers to cdcmple.o(.text) for __aeabi_cdcmple
mytimer.o(i.MyTimer_Conf) refers to mytimer.o(i.LL_APB1_GRP1_EnableClock) for LL_APB1_GRP1_EnableClock
mytimer.o(i.MyTimer_Conf) refers to stm32f1xx_ll_tim.o(i.LL_TIM_Init) for LL_TIM_Init
mytimer.o(i.MyTimer_Conf) refers to mytimer.o(i.LL_TIM_DisableIT_UPDATE) for LL_TIM_DisableIT_UPDATE
@ -154,11 +151,16 @@ Section Cross References
entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry9a.o(.ARM.Collect$$$$0000000B) for _main_init
entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry5.o(.ARM.Collect$$$$00000004) for _main_scatterload
entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry2.o(.ARM.Collect$$$$00000001) for _main_stk
dmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
dmul.o(.text) refers to depilogue.o(.text) for _double_epilogue
ddiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
ddiv.o(.text) refers to depilogue.o(.text) for _double_round
dflti.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
dflti.o(.text) refers to depilogue.o(.text) for _double_epilogue
cdrcmple.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
ffltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
ffltui.o(.text) refers to fepilogue.o(.text) for _float_epilogue
f2d.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
cdcmple.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
d2f.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp
d2f.o(.text) refers to fepilogue.o(.text) for _float_round
entry2.o(.ARM.Collect$$$$00000001) refers to entry2.o(.ARM.Collect$$$$00002712) for __lit__00000000
entry2.o(.ARM.Collect$$$$00002712) refers to startup_stm32f103xb.o(STACK) for __initial_sp
entry2.o(__vectab_stack_and_reset_area) refers to startup_stm32f103xb.o(STACK) for __initial_sp
@ -191,9 +193,9 @@ Removing Unused input sections from the image.
Removing chrono.o(i.Chrono_Task_10ms), (124 bytes).
Removing chrono.o(i.LL_GPIO_IsInputPinSet), (26 bytes).
Removing chrono.o(.data), (12 bytes).
Removing accelerometer.o(.rev16_text), (4 bytes).
Removing accelerometer.o(.revsh_text), (4 bytes).
Removing accelerometer.o(.rrx_text), (6 bytes).
Removing alimentation.o(.rev16_text), (4 bytes).
Removing alimentation.o(.revsh_text), (4 bytes).
Removing alimentation.o(.rrx_text), (6 bytes).
Removing mytimer.o(.rev16_text), (4 bytes).
Removing mytimer.o(.revsh_text), (4 bytes).
Removing mytimer.o(.rrx_text), (6 bytes).
@ -300,25 +302,29 @@ Image Symbol Table
../Src/main.c 0x00000000 Number 0 main.o ABSOLUTE
../Src/system_stm32f1xx.c 0x00000000 Number 0 system_stm32f1xx.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
../fplib/microlib/d2f.c 0x00000000 Number 0 d2f.o ABSOLUTE
../fplib/microlib/f2d.c 0x00000000 Number 0 f2d.o ABSOLUTE
../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE
../fplib/microlib/fpflt.c 0x00000000 Number 0 dflti.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE
../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE
..\LLDrivers\src\stm32f1xx_ll_adc.c 0x00000000 Number 0 stm32f1xx_ll_adc.o ABSOLUTE
..\LLDrivers\src\stm32f1xx_ll_gpio.c 0x00000000 Number 0 stm32f1xx_ll_gpio.o ABSOLUTE
..\LLDrivers\src\stm32f1xx_ll_rcc.c 0x00000000 Number 0 stm32f1xx_ll_rcc.o ABSOLUTE
@ -326,7 +332,7 @@ Image Symbol Table
..\LLDrivers\src\stm32f1xx_ll_utils.c 0x00000000 Number 0 stm32f1xx_ll_utils.o ABSOLUTE
..\MyDrivers\MyTimer.c 0x00000000 Number 0 mytimer.o ABSOLUTE
..\Services\Chrono.c 0x00000000 Number 0 chrono.o ABSOLUTE
..\Services\accelerometer.c 0x00000000 Number 0 accelerometer.o ABSOLUTE
..\Services\alimentation.c 0x00000000 Number 0 alimentation.o ABSOLUTE
..\Src\main.c 0x00000000 Number 0 main.o ABSOLUTE
..\Src\system_stm32f1xx.c 0x00000000 Number 0 system_stm32f1xx.o ABSOLUTE
..\\LLDrivers\\src\\stm32f1xx_ll_adc.c 0x00000000 Number 0 stm32f1xx_ll_adc.o ABSOLUTE
@ -336,8 +342,8 @@ Image Symbol Table
..\\LLDrivers\\src\\stm32f1xx_ll_utils.c 0x00000000 Number 0 stm32f1xx_ll_utils.o ABSOLUTE
..\\MyDrivers\\MyTimer.c 0x00000000 Number 0 mytimer.o ABSOLUTE
..\\Services\\Chrono.c 0x00000000 Number 0 chrono.o ABSOLUTE
..\\Services\\accelerometer.c 0x00000000 Number 0 accelerometer.o ABSOLUTE
cdrcmple.s 0x00000000 Number 0 cdrcmple.o ABSOLUTE
..\\Services\\alimentation.c 0x00000000 Number 0 alimentation.o ABSOLUTE
cdcmple.s 0x00000000 Number 0 cdcmple.o ABSOLUTE
dc.s 0x00000000 Number 0 dc.o ABSOLUTE
handlers.s 0x00000000 Number 0 handlers.o ABSOLUTE
init.s 0x00000000 Number 0 init.o ABSOLUTE
@ -354,56 +360,51 @@ Image Symbol Table
.ARM.Collect$$$$00002712 0x080000fc Section 4 entry2.o(.ARM.Collect$$$$00002712)
__lit__00000000 0x080000fc Data 4 entry2.o(.ARM.Collect$$$$00002712)
.text 0x08000100 Section 36 startup_stm32f103xb.o(.text)
.text 0x08000124 Section 0 ddiv.o(.text)
.text 0x08000202 Section 0 dflti.o(.text)
.text 0x08000224 Section 48 cdrcmple.o(.text)
.text 0x08000254 Section 0 depilogue.o(.text)
.text 0x08000254 Section 0 iusefp.o(.text)
.text 0x08000310 Section 36 init.o(.text)
.text 0x08000334 Section 0 llshl.o(.text)
.text 0x08000352 Section 0 llushr.o(.text)
i.LL_ADC_Init 0x08000374 Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_Init)
i.LL_ADC_IsActiveFlag_EOS 0x08000418 Section 0 accelerometer.o(i.LL_ADC_IsActiveFlag_EOS)
LL_ADC_IsActiveFlag_EOS 0x08000419 Thumb Code 10 accelerometer.o(i.LL_ADC_IsActiveFlag_EOS)
i.LL_ADC_IsEnabled 0x08000422 Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled)
LL_ADC_IsEnabled 0x08000423 Thumb Code 10 stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled)
i.LL_ADC_REG_Init 0x0800042c Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init)
i.LL_ADC_REG_SetSequencerRanks 0x08000624 Section 0 accelerometer.o(i.LL_ADC_REG_SetSequencerRanks)
LL_ADC_REG_SetSequencerRanks 0x08000625 Thumb Code 56 accelerometer.o(i.LL_ADC_REG_SetSequencerRanks)
i.LL_ADC_REG_StartConversionSWStart 0x0800065c Section 0 accelerometer.o(i.LL_ADC_REG_StartConversionSWStart)
LL_ADC_REG_StartConversionSWStart 0x0800065d Thumb Code 10 accelerometer.o(i.LL_ADC_REG_StartConversionSWStart)
i.LL_ADC_SetChannelSamplingTime 0x08000666 Section 0 accelerometer.o(i.LL_ADC_SetChannelSamplingTime)
LL_ADC_SetChannelSamplingTime 0x08000667 Thumb Code 82 accelerometer.o(i.LL_ADC_SetChannelSamplingTime)
i.LL_Init1msTick 0x080006b8 Section 0 stm32f1xx_ll_utils.o(i.LL_Init1msTick)
i.LL_SetSystemCoreClock 0x080006d4 Section 0 stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock)
i.LL_TIM_ClearFlag_UPDATE 0x080006e0 Section 0 mytimer.o(i.LL_TIM_ClearFlag_UPDATE)
LL_TIM_ClearFlag_UPDATE 0x080006e1 Thumb Code 8 mytimer.o(i.LL_TIM_ClearFlag_UPDATE)
i.SystemClock_Config 0x080006e8 Section 0 main.o(i.SystemClock_Config)
i.SystemInit 0x080007d8 Section 0 system_stm32f1xx.o(i.SystemInit)
i.TIM1_UP_IRQHandler 0x08000830 Section 0 mytimer.o(i.TIM1_UP_IRQHandler)
i.TIM2_IRQHandler 0x08000848 Section 0 mytimer.o(i.TIM2_IRQHandler)
i.TIM3_IRQHandler 0x08000860 Section 0 mytimer.o(i.TIM3_IRQHandler)
i.TIM4_IRQHandler 0x08000878 Section 0 mytimer.o(i.TIM4_IRQHandler)
i.__scatterload_copy 0x08000890 Section 14 handlers.o(i.__scatterload_copy)
i.__scatterload_null 0x0800089e Section 2 handlers.o(i.__scatterload_null)
i.__scatterload_zeroinit 0x080008a0 Section 14 handlers.o(i.__scatterload_zeroinit)
i.accelero_angle_bon 0x080008b0 Section 0 accelerometer.o(i.accelero_angle_bon)
i.accelero_get_x 0x08000914 Section 0 accelerometer.o(i.accelero_get_x)
i.accelero_get_y 0x08000948 Section 0 accelerometer.o(i.accelero_get_y)
i.accelero_init 0x08000980 Section 0 accelerometer.o(i.accelero_init)
i.assert_failed 0x08000a3c Section 0 main.o(i.assert_failed)
i.main 0x08000a40 Section 0 main.o(i.main)
.data 0x20000000 Section 4 main.o(.data)
.data 0x20000008 Section 16 accelerometer.o(.data)
.data 0x20000018 Section 16 mytimer.o(.data)
.data 0x20000028 Section 4 system_stm32f1xx.o(.data)
STACK 0x20000030 Section 1024 startup_stm32f103xb.o(STACK)
.text 0x08000124 Section 0 dmul.o(.text)
.text 0x08000208 Section 0 ddiv.o(.text)
.text 0x080002e6 Section 0 ffltui.o(.text)
.text 0x080002f0 Section 0 f2d.o(.text)
.text 0x08000318 Section 48 cdcmple.o(.text)
.text 0x08000348 Section 0 d2f.o(.text)
.text 0x08000380 Section 0 fepilogue.o(.text)
.text 0x08000380 Section 0 iusefp.o(.text)
.text 0x080003ee Section 0 depilogue.o(.text)
.text 0x080004a8 Section 36 init.o(.text)
.text 0x080004cc Section 0 llshl.o(.text)
.text 0x080004ea Section 0 llushr.o(.text)
i.LL_ADC_Init 0x0800050c Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_Init)
i.LL_ADC_IsEnabled 0x080005b0 Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled)
LL_ADC_IsEnabled 0x080005b1 Thumb Code 10 stm32f1xx_ll_adc.o(i.LL_ADC_IsEnabled)
i.LL_ADC_REG_Init 0x080005bc Section 0 stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init)
i.LL_Init1msTick 0x080007b4 Section 0 stm32f1xx_ll_utils.o(i.LL_Init1msTick)
i.LL_SetSystemCoreClock 0x080007d0 Section 0 stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock)
i.LL_TIM_ClearFlag_UPDATE 0x080007dc Section 0 mytimer.o(i.LL_TIM_ClearFlag_UPDATE)
LL_TIM_ClearFlag_UPDATE 0x080007dd Thumb Code 8 mytimer.o(i.LL_TIM_ClearFlag_UPDATE)
i.SystemClock_Config 0x080007e4 Section 0 main.o(i.SystemClock_Config)
i.SystemInit 0x080008d4 Section 0 system_stm32f1xx.o(i.SystemInit)
i.TIM1_UP_IRQHandler 0x0800092c Section 0 mytimer.o(i.TIM1_UP_IRQHandler)
i.TIM2_IRQHandler 0x08000944 Section 0 mytimer.o(i.TIM2_IRQHandler)
i.TIM3_IRQHandler 0x0800095c Section 0 mytimer.o(i.TIM3_IRQHandler)
i.TIM4_IRQHandler 0x08000974 Section 0 mytimer.o(i.TIM4_IRQHandler)
i.__scatterload_copy 0x0800098c Section 14 handlers.o(i.__scatterload_copy)
i.__scatterload_null 0x0800099a Section 2 handlers.o(i.__scatterload_null)
i.__scatterload_zeroinit 0x0800099c Section 14 handlers.o(i.__scatterload_zeroinit)
i.alimentation_init 0x080009ac Section 0 alimentation.o(i.alimentation_init)
i.assert_failed 0x08000a48 Section 0 main.o(i.assert_failed)
i.get_battery_level 0x08000a4c Section 0 alimentation.o(i.get_battery_level)
i.is_level_enough 0x08000b10 Section 0 alimentation.o(i.is_level_enough)
i.main 0x08000b38 Section 0 main.o(i.main)
.data 0x20000000 Section 8 main.o(.data)
.data 0x20000008 Section 12 alimentation.o(.data)
.data 0x20000014 Section 16 mytimer.o(.data)
.data 0x20000024 Section 4 system_stm32f1xx.o(.data)
STACK 0x20000028 Section 1024 startup_stm32f103xb.o(STACK)
Global Symbols
Symbol Name Value Ov Type Size Object(Section)
BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$ROPI$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE
BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OTIME$ROPI$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE
__ARM_use_no_argv 0x00000000 Number 0 main.o ABSOLUTE
__cpp_initialize__aeabi_ - Undefined Weak Reference
__cxa_finalize - Undefined Weak Reference
@ -471,49 +472,55 @@ Image Symbol Table
USB_HP_CAN1_TX_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f103xb.o(.text)
USB_LP_CAN1_RX0_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f103xb.o(.text)
WWDG_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f103xb.o(.text)
__aeabi_ddiv 0x08000125 Thumb Code 222 ddiv.o(.text)
__aeabi_i2d 0x08000203 Thumb Code 34 dflti.o(.text)
__aeabi_cdrcmple 0x08000225 Thumb Code 48 cdrcmple.o(.text)
__I$use$fp 0x08000255 Thumb Code 0 iusefp.o(.text)
_double_round 0x08000255 Thumb Code 30 depilogue.o(.text)
_double_epilogue 0x08000273 Thumb Code 156 depilogue.o(.text)
__scatterload 0x08000311 Thumb Code 28 init.o(.text)
__scatterload_rt2 0x08000311 Thumb Code 0 init.o(.text)
__aeabi_llsl 0x08000335 Thumb Code 30 llshl.o(.text)
_ll_shift_l 0x08000335 Thumb Code 0 llshl.o(.text)
__aeabi_llsr 0x08000353 Thumb Code 32 llushr.o(.text)
_ll_ushift_r 0x08000353 Thumb Code 0 llushr.o(.text)
LL_ADC_Init 0x08000375 Thumb Code 120 stm32f1xx_ll_adc.o(i.LL_ADC_Init)
LL_ADC_REG_Init 0x0800042d Thumb Code 454 stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init)
LL_Init1msTick 0x080006b9 Thumb Code 28 stm32f1xx_ll_utils.o(i.LL_Init1msTick)
LL_SetSystemCoreClock 0x080006d5 Thumb Code 6 stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock)
SystemClock_Config 0x080006e9 Thumb Code 226 main.o(i.SystemClock_Config)
SystemInit 0x080007d9 Thumb Code 70 system_stm32f1xx.o(i.SystemInit)
TIM1_UP_IRQHandler 0x08000831 Thumb Code 16 mytimer.o(i.TIM1_UP_IRQHandler)
TIM2_IRQHandler 0x08000849 Thumb Code 18 mytimer.o(i.TIM2_IRQHandler)
TIM3_IRQHandler 0x08000861 Thumb Code 16 mytimer.o(i.TIM3_IRQHandler)
TIM4_IRQHandler 0x08000879 Thumb Code 16 mytimer.o(i.TIM4_IRQHandler)
__scatterload_copy 0x08000891 Thumb Code 14 handlers.o(i.__scatterload_copy)
__scatterload_null 0x0800089f Thumb Code 2 handlers.o(i.__scatterload_null)
__scatterload_zeroinit 0x080008a1 Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
accelero_angle_bon 0x080008b1 Thumb Code 78 accelerometer.o(i.accelero_angle_bon)
accelero_get_x 0x08000915 Thumb Code 46 accelerometer.o(i.accelero_get_x)
accelero_get_y 0x08000949 Thumb Code 46 accelerometer.o(i.accelero_get_y)
accelero_init 0x08000981 Thumb Code 170 accelerometer.o(i.accelero_init)
assert_failed 0x08000a3d Thumb Code 4 main.o(i.assert_failed)
main 0x08000a41 Thumb Code 20 main.o(i.main)
Region$$Table$$Base 0x08000a58 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08000a78 Number 0 anon$$obj.o(Region$$Table)
angle_bon 0x20000000 Data 4 main.o(.data)
x 0x20000008 Data 4 accelerometer.o(.data)
y 0x2000000c Data 4 accelerometer.o(.data)
angle 0x20000010 Data 8 accelerometer.o(.data)
Ptr_ItFct_TIM1 0x20000018 Data 4 mytimer.o(.data)
Ptr_ItFct_TIM2 0x2000001c Data 4 mytimer.o(.data)
Ptr_ItFct_TIM3 0x20000020 Data 4 mytimer.o(.data)
Ptr_ItFct_TIM4 0x20000024 Data 4 mytimer.o(.data)
SystemCoreClock 0x20000028 Data 4 system_stm32f1xx.o(.data)
__initial_sp 0x20000430 Data 0 startup_stm32f103xb.o(STACK)
__aeabi_dmul 0x08000125 Thumb Code 228 dmul.o(.text)
__aeabi_ddiv 0x08000209 Thumb Code 222 ddiv.o(.text)
__aeabi_ui2f 0x080002e7 Thumb Code 10 ffltui.o(.text)
__aeabi_f2d 0x080002f1 Thumb Code 38 f2d.o(.text)
__aeabi_cdcmpeq 0x08000319 Thumb Code 0 cdcmple.o(.text)
__aeabi_cdcmple 0x08000319 Thumb Code 48 cdcmple.o(.text)
__aeabi_d2f 0x08000349 Thumb Code 56 d2f.o(.text)
__I$use$fp 0x08000381 Thumb Code 0 iusefp.o(.text)
_float_round 0x08000381 Thumb Code 18 fepilogue.o(.text)
_float_epilogue 0x08000393 Thumb Code 92 fepilogue.o(.text)
_double_round 0x080003ef Thumb Code 30 depilogue.o(.text)
_double_epilogue 0x0800040d Thumb Code 156 depilogue.o(.text)
__scatterload 0x080004a9 Thumb Code 28 init.o(.text)
__scatterload_rt2 0x080004a9 Thumb Code 0 init.o(.text)
__aeabi_llsl 0x080004cd Thumb Code 30 llshl.o(.text)
_ll_shift_l 0x080004cd Thumb Code 0 llshl.o(.text)
__aeabi_llsr 0x080004eb Thumb Code 32 llushr.o(.text)
_ll_ushift_r 0x080004eb Thumb Code 0 llushr.o(.text)
LL_ADC_Init 0x0800050d Thumb Code 120 stm32f1xx_ll_adc.o(i.LL_ADC_Init)
LL_ADC_REG_Init 0x080005bd Thumb Code 454 stm32f1xx_ll_adc.o(i.LL_ADC_REG_Init)
LL_Init1msTick 0x080007b5 Thumb Code 28 stm32f1xx_ll_utils.o(i.LL_Init1msTick)
LL_SetSystemCoreClock 0x080007d1 Thumb Code 6 stm32f1xx_ll_utils.o(i.LL_SetSystemCoreClock)
SystemClock_Config 0x080007e5 Thumb Code 226 main.o(i.SystemClock_Config)
SystemInit 0x080008d5 Thumb Code 70 system_stm32f1xx.o(i.SystemInit)
TIM1_UP_IRQHandler 0x0800092d Thumb Code 16 mytimer.o(i.TIM1_UP_IRQHandler)
TIM2_IRQHandler 0x08000945 Thumb Code 18 mytimer.o(i.TIM2_IRQHandler)
TIM3_IRQHandler 0x0800095d Thumb Code 16 mytimer.o(i.TIM3_IRQHandler)
TIM4_IRQHandler 0x08000975 Thumb Code 16 mytimer.o(i.TIM4_IRQHandler)
__scatterload_copy 0x0800098d Thumb Code 14 handlers.o(i.__scatterload_copy)
__scatterload_null 0x0800099b Thumb Code 2 handlers.o(i.__scatterload_null)
__scatterload_zeroinit 0x0800099d Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
alimentation_init 0x080009ad Thumb Code 146 alimentation.o(i.alimentation_init)
assert_failed 0x08000a49 Thumb Code 4 main.o(i.assert_failed)
get_battery_level 0x08000a4d Thumb Code 166 alimentation.o(i.get_battery_level)
is_level_enough 0x08000b11 Thumb Code 32 alimentation.o(i.is_level_enough)
main 0x08000b39 Thumb Code 28 main.o(i.main)
Region$$Table$$Base 0x08000b5c Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08000b7c Number 0 anon$$obj.o(Region$$Table)
level 0x20000000 Data 4 main.o(.data)
level_enough 0x20000004 Data 4 main.o(.data)
u2 0x20000008 Data 4 alimentation.o(.data)
niv_batterie 0x2000000c Data 4 alimentation.o(.data)
battery_level 0x20000010 Data 4 alimentation.o(.data)
Ptr_ItFct_TIM1 0x20000014 Data 4 mytimer.o(.data)
Ptr_ItFct_TIM2 0x20000018 Data 4 mytimer.o(.data)
Ptr_ItFct_TIM3 0x2000001c Data 4 mytimer.o(.data)
Ptr_ItFct_TIM4 0x20000020 Data 4 mytimer.o(.data)
SystemCoreClock 0x20000024 Data 4 system_stm32f1xx.o(.data)
__initial_sp 0x20000428 Data 0 startup_stm32f103xb.o(STACK)
@ -523,73 +530,71 @@ Memory Map of the image
Image Entry point : 0x080000ed
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00000aa4, Max: 0x00020000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00000ba4, Max: 0x00020000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000a78, Max: 0x00020000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000b7c, Max: 0x00020000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x000000ec Data RO 873 RESET startup_stm32f103xb.o
0x080000ec 0x080000ec 0x00000000 Code RO 878 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x080000ec 0x080000ec 0x00000004 Code RO 887 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x080000f0 0x080000f0 0x00000004 Code RO 890 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x080000f4 0x080000f4 0x00000000 Code RO 892 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x080000f4 0x080000f4 0x00000000 Code RO 894 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x080000f4 0x080000f4 0x00000008 Code RO 895 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x080000fc 0x080000fc 0x00000000 Code RO 897 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x080000fc 0x080000fc 0x00000000 Code RO 899 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x080000fc 0x080000fc 0x00000004 Code RO 888 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000100 0x08000100 0x00000024 Code RO 874 .text startup_stm32f103xb.o
0x08000124 0x08000124 0x000000de Code RO 881 .text mf_w.l(ddiv.o)
0x08000202 0x08000202 0x00000022 Code RO 883 .text mf_w.l(dflti.o)
0x08000224 0x08000224 0x00000030 Code RO 885 .text mf_w.l(cdrcmple.o)
0x08000254 0x08000254 0x00000000 Code RO 901 .text mc_w.l(iusefp.o)
0x08000254 0x08000254 0x000000ba Code RO 902 .text mf_w.l(depilogue.o)
0x0800030e 0x0800030e 0x00000002 PAD
0x08000310 0x08000310 0x00000024 Code RO 904 .text mc_w.l(init.o)
0x08000334 0x08000334 0x0000001e Code RO 906 .text mc_w.l(llshl.o)
0x08000352 0x08000352 0x00000020 Code RO 908 .text mc_w.l(llushr.o)
0x08000372 0x08000372 0x00000002 PAD
0x08000374 0x08000374 0x000000a4 Code RO 757 i.LL_ADC_Init stm32f1xx_ll_adc.o
0x08000418 0x08000418 0x0000000a Code RO 170 i.LL_ADC_IsActiveFlag_EOS accelerometer.o
0x08000422 0x08000422 0x0000000a Code RO 758 i.LL_ADC_IsEnabled stm32f1xx_ll_adc.o
0x0800042c 0x0800042c 0x000001f8 Code RO 759 i.LL_ADC_REG_Init stm32f1xx_ll_adc.o
0x08000624 0x08000624 0x00000038 Code RO 171 i.LL_ADC_REG_SetSequencerRanks accelerometer.o
0x0800065c 0x0800065c 0x0000000a Code RO 172 i.LL_ADC_REG_StartConversionSWStart accelerometer.o
0x08000666 0x08000666 0x00000052 Code RO 173 i.LL_ADC_SetChannelSamplingTime accelerometer.o
0x080006b8 0x080006b8 0x0000001c Code RO 443 i.LL_Init1msTick stm32f1xx_ll_utils.o
0x080006d4 0x080006d4 0x0000000c Code RO 450 i.LL_SetSystemCoreClock stm32f1xx_ll_utils.o
0x080006e0 0x080006e0 0x00000008 Code RO 252 i.LL_TIM_ClearFlag_UPDATE mytimer.o
0x080006e8 0x080006e8 0x000000f0 Code RO 4 i.SystemClock_Config main.o
0x080007d8 0x080007d8 0x00000058 Code RO 838 i.SystemInit system_stm32f1xx.o
0x08000830 0x08000830 0x00000018 Code RO 261 i.TIM1_UP_IRQHandler mytimer.o
0x08000848 0x08000848 0x00000018 Code RO 262 i.TIM2_IRQHandler mytimer.o
0x08000860 0x08000860 0x00000018 Code RO 263 i.TIM3_IRQHandler mytimer.o
0x08000878 0x08000878 0x00000018 Code RO 264 i.TIM4_IRQHandler mytimer.o
0x08000890 0x08000890 0x0000000e Code RO 912 i.__scatterload_copy mc_w.l(handlers.o)
0x0800089e 0x0800089e 0x00000002 Code RO 913 i.__scatterload_null mc_w.l(handlers.o)
0x080008a0 0x080008a0 0x0000000e Code RO 914 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080008ae 0x080008ae 0x00000002 PAD
0x080008b0 0x080008b0 0x00000064 Code RO 174 i.accelero_angle_bon accelerometer.o
0x08000914 0x08000914 0x00000034 Code RO 175 i.accelero_get_x accelerometer.o
0x08000948 0x08000948 0x00000038 Code RO 176 i.accelero_get_y accelerometer.o
0x08000980 0x08000980 0x000000bc Code RO 177 i.accelero_init accelerometer.o
0x08000a3c 0x08000a3c 0x00000004 Code RO 5 i.assert_failed main.o
0x08000a40 0x08000a40 0x00000018 Code RO 6 i.main main.o
0x08000a58 0x08000a58 0x00000020 Data RO 910 Region$$Table anon$$obj.o
0x08000000 0x08000000 0x000000ec Data RO 853 RESET startup_stm32f103xb.o
0x080000ec 0x080000ec 0x00000000 Code RO 858 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x080000ec 0x080000ec 0x00000004 Code RO 873 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x080000f0 0x080000f0 0x00000004 Code RO 876 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x080000f4 0x080000f4 0x00000000 Code RO 878 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x080000f4 0x080000f4 0x00000000 Code RO 880 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x080000f4 0x080000f4 0x00000008 Code RO 881 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x080000fc 0x080000fc 0x00000000 Code RO 883 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x080000fc 0x080000fc 0x00000000 Code RO 885 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x080000fc 0x080000fc 0x00000004 Code RO 874 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000100 0x08000100 0x00000024 Code RO 854 .text startup_stm32f103xb.o
0x08000124 0x08000124 0x000000e4 Code RO 861 .text mf_w.l(dmul.o)
0x08000208 0x08000208 0x000000de Code RO 863 .text mf_w.l(ddiv.o)
0x080002e6 0x080002e6 0x0000000a Code RO 865 .text mf_w.l(ffltui.o)
0x080002f0 0x080002f0 0x00000026 Code RO 867 .text mf_w.l(f2d.o)
0x08000316 0x08000316 0x00000002 PAD
0x08000318 0x08000318 0x00000030 Code RO 869 .text mf_w.l(cdcmple.o)
0x08000348 0x08000348 0x00000038 Code RO 871 .text mf_w.l(d2f.o)
0x08000380 0x08000380 0x00000000 Code RO 887 .text mc_w.l(iusefp.o)
0x08000380 0x08000380 0x0000006e Code RO 888 .text mf_w.l(fepilogue.o)
0x080003ee 0x080003ee 0x000000ba Code RO 890 .text mf_w.l(depilogue.o)
0x080004a8 0x080004a8 0x00000024 Code RO 892 .text mc_w.l(init.o)
0x080004cc 0x080004cc 0x0000001e Code RO 894 .text mc_w.l(llshl.o)
0x080004ea 0x080004ea 0x00000020 Code RO 896 .text mc_w.l(llushr.o)
0x0800050a 0x0800050a 0x00000002 PAD
0x0800050c 0x0800050c 0x000000a4 Code RO 737 i.LL_ADC_Init stm32f1xx_ll_adc.o
0x080005b0 0x080005b0 0x0000000a Code RO 738 i.LL_ADC_IsEnabled stm32f1xx_ll_adc.o
0x080005ba 0x080005ba 0x00000002 PAD
0x080005bc 0x080005bc 0x000001f8 Code RO 739 i.LL_ADC_REG_Init stm32f1xx_ll_adc.o
0x080007b4 0x080007b4 0x0000001c Code RO 423 i.LL_Init1msTick stm32f1xx_ll_utils.o
0x080007d0 0x080007d0 0x0000000c Code RO 430 i.LL_SetSystemCoreClock stm32f1xx_ll_utils.o
0x080007dc 0x080007dc 0x00000008 Code RO 232 i.LL_TIM_ClearFlag_UPDATE mytimer.o
0x080007e4 0x080007e4 0x000000f0 Code RO 4 i.SystemClock_Config main.o
0x080008d4 0x080008d4 0x00000058 Code RO 818 i.SystemInit system_stm32f1xx.o
0x0800092c 0x0800092c 0x00000018 Code RO 241 i.TIM1_UP_IRQHandler mytimer.o
0x08000944 0x08000944 0x00000018 Code RO 242 i.TIM2_IRQHandler mytimer.o
0x0800095c 0x0800095c 0x00000018 Code RO 243 i.TIM3_IRQHandler mytimer.o
0x08000974 0x08000974 0x00000018 Code RO 244 i.TIM4_IRQHandler mytimer.o
0x0800098c 0x0800098c 0x0000000e Code RO 900 i.__scatterload_copy mc_w.l(handlers.o)
0x0800099a 0x0800099a 0x00000002 Code RO 901 i.__scatterload_null mc_w.l(handlers.o)
0x0800099c 0x0800099c 0x0000000e Code RO 902 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080009aa 0x080009aa 0x00000002 PAD
0x080009ac 0x080009ac 0x0000009c Code RO 183 i.alimentation_init alimentation.o
0x08000a48 0x08000a48 0x00000004 Code RO 5 i.assert_failed main.o
0x08000a4c 0x08000a4c 0x000000c4 Code RO 184 i.get_battery_level alimentation.o
0x08000b10 0x08000b10 0x00000028 Code RO 185 i.is_level_enough alimentation.o
0x08000b38 0x08000b38 0x00000024 Code RO 6 i.main main.o
0x08000b5c 0x08000b5c 0x00000020 Data RO 898 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000a78, Size: 0x00000430, Max: 0x00005000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000b7c, Size: 0x00000428, Max: 0x00005000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x08000a78 0x00000004 Data RW 7 .data main.o
0x20000004 0x08000a7c 0x00000004 PAD
0x20000008 0x08000a80 0x00000010 Data RW 178 .data accelerometer.o
0x20000018 0x08000a90 0x00000010 Data RW 266 .data mytimer.o
0x20000028 0x08000aa0 0x00000004 Data RW 840 .data system_stm32f1xx.o
0x2000002c 0x08000aa4 0x00000004 PAD
0x20000030 - 0x00000400 Zero RW 871 STACK startup_stm32f103xb.o
0x20000000 0x08000b7c 0x00000008 Data RW 7 .data main.o
0x20000008 0x08000b84 0x0000000c Data RW 186 .data alimentation.o
0x20000014 0x08000b90 0x00000010 Data RW 246 .data mytimer.o
0x20000024 0x08000ba0 0x00000004 Data RW 820 .data system_stm32f1xx.o
0x20000028 - 0x00000400 Zero RW 851 STACK startup_stm32f103xb.o
==============================================================================
@ -599,8 +604,8 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
554 56 0 16 0 45455 accelerometer.o
268 18 0 4 0 356424 main.o
392 48 0 12 0 35394 alimentation.o
280 22 0 8 0 364305 main.o
104 30 0 16 0 27113 mytimer.o
36 8 236 0 1024 772 startup_stm32f103xb.o
678 94 0 0 0 38000 stm32f1xx_ll_adc.o
@ -608,9 +613,9 @@ Image component sizes
88 18 0 4 0 1147 system_stm32f1xx.o
----------------------------------------------------------------------
1768 230 268 44 1028 470984 Object Totals
1620 226 268 40 1024 468804 Object Totals
0 0 32 0 0 0 (incl. Generated)
0 0 0 4 4 0 (incl. Padding)
2 0 0 0 0 0 (incl. Padding)
----------------------------------------------------------------------
@ -629,13 +634,17 @@ Image component sizes
0 0 0 0 0 0 iusefp.o
30 0 0 0 0 68 llshl.o
32 0 0 0 0 68 llushr.o
48 0 0 0 0 68 cdrcmple.o
48 0 0 0 0 68 cdcmple.o
56 0 0 0 0 88 d2f.o
222 0 0 0 0 100 ddiv.o
186 0 0 0 0 176 depilogue.o
34 0 0 0 0 76 dflti.o
228 0 0 0 0 96 dmul.o
38 0 0 0 0 68 f2d.o
110 0 0 0 0 168 fepilogue.o
10 0 0 0 0 68 ffltui.o
----------------------------------------------------------------------
644 16 0 0 0 624 Library Totals
1052 16 0 0 0 1036 Library Totals
6 0 0 0 0 0 (incl. Padding)
----------------------------------------------------------------------
@ -643,10 +652,10 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Library Name
148 16 0 0 0 204 mc_w.l
490 0 0 0 0 420 mf_w.l
898 0 0 0 0 832 mf_w.l
----------------------------------------------------------------------
644 16 0 0 0 624 Library Totals
1052 16 0 0 0 1036 Library Totals
----------------------------------------------------------------------
@ -655,15 +664,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
2412 246 268 44 1028 470408 Grand Totals
2412 246 268 44 1028 470408 ELF Image Totals
2412 246 268 44 0 0 ROM Totals
2672 242 268 40 1024 468744 Grand Totals
2672 242 268 40 1024 468744 ELF Image Totals
2672 242 268 40 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 2680 ( 2.62kB)
Total RW Size (RW Data + ZI Data) 1072 ( 1.05kB)
Total ROM Size (Code + RO Data + RW Data) 2724 ( 2.66kB)
Total RO Size (Code + RO Data) 2940 ( 2.87kB)
Total RW Size (RW Data + ZI Data) 1064 ( 1.04kB)
Total ROM Size (Code + RO Data + RW Data) 2980 ( 2.91kB)
==============================================================================

View file

@ -1,6 +1,6 @@
Dependencies for Project 'Project', Target 'Simulateur': (DO NOT MODIFY !)
CompilerVersion: 5060750::V5.06 update 6 (build 750)::ARMCC
F (../Src/main.c)(0x5FA8517B)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\main.o --omf_browse nucleo-f103rb\main.crf --depend nucleo-f103rb\main.d)
F (../Src/main.c)(0x5FABEEFA)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\main.o --omf_browse nucleo-f103rb\main.crf --depend nucleo-f103rb\main.d)
I (..\LLDrivers\inc\stm32f1xx_ll_rcc.h)(0x5F8402DF)
I (..\Inc\stm32f1xx.h)(0x5F8402DF)
I (..\Inc\stm32f103xb.h)(0x5F8402DF)
@ -13,7 +13,11 @@ I (..\Inc\system_stm32f1xx.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_utils.h)(0x5F8402E0)
I (..\LLDrivers\inc\stm32f1xx_ll_system.h)(0x5F8402E0)
I (..\Services\Chrono.h)(0x5F8402E0)
I (..\Services\accelerometer.h)(0x5FA83AC2)
I (..\Services\alimentation.h)(0x5FABF760)
I (..\LLDrivers\inc\stm32f1xx_ll_adc.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_bus.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_gpio.h)(0x5F8402DF)
I (C:\Keil_v5\ARM\ARMCC\include\math.h)(0x5D9B3482)
F (..\Services\Chrono.c)(0x5F8402E0)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\chrono.o --omf_browse nucleo-f103rb\chrono.crf --depend nucleo-f103rb\chrono.d)
I (..\Services\Chrono.h)(0x5F8402E0)
I (..\Inc\stm32f103xb.h)(0x5F8402DF)
@ -27,9 +31,8 @@ I (..\MyDrivers\MyTimer.h)(0x5F8402E0)
I (..\LLDrivers\inc\stm32f1xx_ll_gpio.h)(0x5F8402DF)
I (..\Inc\stm32f1xx.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_bus.h)(0x5F8402DF)
F (..\Services\accelerometer.c)(0x5FA99B30)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\accelerometer.o --omf_browse nucleo-f103rb\accelerometer.crf --depend nucleo-f103rb\accelerometer.d)
I (..\LLDrivers\inc\stm32f1xx_ll_adc.h)(0x5F8402DF)
I (..\Inc\stm32f1xx.h)(0x5F8402DF)
F (..\Services\alimentation.c)(0x5FABF957)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\alimentation.o --omf_browse nucleo-f103rb\alimentation.crf --depend nucleo-f103rb\alimentation.d)
I (..\Services\alimentation.h)(0x5FABF760)
I (..\Inc\stm32f103xb.h)(0x5F8402DF)
I (C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\core_cm3.h)(0x5D25F326)
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5D9B3488)
@ -37,10 +40,13 @@ I (C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cms
I (C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cmsis_compiler.h)(0x5D25F326)
I (C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cmsis_armcc.h)(0x5D25F326)
I (..\Inc\system_stm32f1xx.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_adc.h)(0x5F8402DF)
I (..\Inc\stm32f1xx.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_bus.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_rcc.h)(0x5F8402DF)
I (..\LLDrivers\inc\stm32f1xx_ll_gpio.h)(0x5F8402DF)
I (C:\Keil_v5\ARM\ARMCC\include\math.h)(0x5D9B3482)
F (..\Services\alimentation.h)(0x5FABF760)()
F (..\MyDrivers\MyTimer.c)(0x5F8402E0)(-c --cpu Cortex-M3 -D__EVAL -D__MICROLIB -g -O0 --apcs=interwork --split_sections -I ..\Inc -I ..\LLDrivers\inc -I ..\Services -I ..\MyDrivers -I ..\MDK-ARM --C99 -I.\RTE\_Simulateur -IC:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include -IC:\Users\momof\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include -D__UVISION_VERSION="529" -D_RTE_ -DSTM32F10X_MD -DSTM32F103xB -DUSE_FULL_LL_DRIVER -DHSE_VALUE="8000000U" -DUSE_FULL_ASSERT -o nucleo-f103rb\mytimer.o --omf_browse nucleo-f103rb\mytimer.crf --depend nucleo-f103rb\mytimer.d)
I (..\MyDrivers\MyTimer.h)(0x5F8402E0)
I (..\Inc\stm32f103xb.h)(0x5F8402DF)

Binary file not shown.

View file

@ -0,0 +1,15 @@
nucleo-f103rb\alimentation.o: ..\Services\alimentation.c
nucleo-f103rb\alimentation.o: ..\Services\alimentation.h
nucleo-f103rb\alimentation.o: ..\Inc\stm32f103xb.h
nucleo-f103rb\alimentation.o: C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\core_cm3.h
nucleo-f103rb\alimentation.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h
nucleo-f103rb\alimentation.o: C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cmsis_version.h
nucleo-f103rb\alimentation.o: C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cmsis_compiler.h
nucleo-f103rb\alimentation.o: C:\Users\momof\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include\cmsis_armcc.h
nucleo-f103rb\alimentation.o: ..\Inc\system_stm32f1xx.h
nucleo-f103rb\alimentation.o: ..\LLDrivers\inc\stm32f1xx_ll_adc.h
nucleo-f103rb\alimentation.o: ..\Inc\stm32f1xx.h
nucleo-f103rb\alimentation.o: ..\LLDrivers\inc\stm32f1xx_ll_bus.h
nucleo-f103rb\alimentation.o: ..\LLDrivers\inc\stm32f1xx_ll_rcc.h
nucleo-f103rb\alimentation.o: ..\LLDrivers\inc\stm32f1xx_ll_gpio.h
nucleo-f103rb\alimentation.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\math.h

Binary file not shown.

View file

@ -11,4 +11,8 @@ nucleo-f103rb\main.o: ..\Inc\system_stm32f1xx.h
nucleo-f103rb\main.o: ..\LLDrivers\inc\stm32f1xx_ll_utils.h
nucleo-f103rb\main.o: ..\LLDrivers\inc\stm32f1xx_ll_system.h
nucleo-f103rb\main.o: ..\Services\Chrono.h
nucleo-f103rb\main.o: ..\Services\accelerometer.h
nucleo-f103rb\main.o: ..\Services\alimentation.h
nucleo-f103rb\main.o: ..\LLDrivers\inc\stm32f1xx_ll_adc.h
nucleo-f103rb\main.o: ..\LLDrivers\inc\stm32f1xx_ll_bus.h
nucleo-f103rb\main.o: ..\LLDrivers\inc\stm32f1xx_ll_gpio.h
nucleo-f103rb\main.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\math.h

File diff suppressed because one or more lines are too long

View file

@ -338,7 +338,7 @@
<SetRegEntry>
<Number>0</Number>
<Key>DLGDARM</Key>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=945,22,1745,945,0)(151=-1,-1,-1,-1,0)</Name>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=999,0,1799,923,0)(151=-1,-1,-1,-1,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
@ -377,7 +377,7 @@
<Type>0</Type>
<LineNumber>45</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134220360</Address>
<Address>134220608</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
@ -409,22 +409,27 @@
<Ww>
<count>0</count>
<WinNumber>1</WinNumber>
<ItemText>x</ItemText>
<ItemText>level</ItemText>
</Ww>
<Ww>
<count>1</count>
<WinNumber>1</WinNumber>
<ItemText>y</ItemText>
<ItemText>level_enough</ItemText>
</Ww>
<Ww>
<count>2</count>
<WinNumber>1</WinNumber>
<ItemText>angle</ItemText>
<ItemText>u2</ItemText>
</Ww>
<Ww>
<count>3</count>
<WinNumber>1</WinNumber>
<ItemText>angle_bon</ItemText>
<ItemText>niv_batterie</ItemText>
</Ww>
<Ww>
<count>4</count>
<WinNumber>1</WinNumber>
<ItemText>battery_level</ItemText>
</Ww>
</WatchWindow1>
<Tracepoint>
@ -530,8 +535,20 @@
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Services\accelerometer.c</PathWithFileName>
<FilenameWithoutPath>accelerometer.c</FilenameWithoutPath>
<PathWithFileName>..\Services\alimentation.c</PathWithFileName>
<FilenameWithoutPath>alimentation.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>4</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\Services\alimentation.h</PathWithFileName>
<FilenameWithoutPath>alimentation.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -545,7 +562,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>4</FileNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -565,7 +582,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>5</FileNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -577,7 +594,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>6</FileNumber>
<FileNumber>7</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -589,7 +606,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>7</FileNumber>
<FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -601,7 +618,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>8</FileNumber>
<FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -613,7 +630,7 @@
</File>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>9</FileNumber>
<FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -633,7 +650,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
<FileNumber>10</FileNumber>
<FileNumber>11</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -653,7 +670,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>6</GroupNumber>
<FileNumber>11</FileNumber>
<FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@ -673,7 +690,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>7</GroupNumber>
<FileNumber>12</FileNumber>
<FileNumber>13</FileNumber>
<FileType>2</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>

View file

@ -398,9 +398,14 @@
<FilePath>..\Services\Chrono.c</FilePath>
</File>
<File>
<FileName>accelerometer.c</FileName>
<FileName>alimentation.c</FileName>
<FileType>1</FileType>
<FilePath>..\Services\accelerometer.c</FilePath>
<FilePath>..\Services\alimentation.c</FilePath>
</File>
<File>
<FileName>alimentation.h</FileName>
<FileType>5</FileType>
<FilePath>..\Services\alimentation.h</FilePath>
</File>
</Files>
</Group>
@ -871,9 +876,14 @@
<FilePath>..\Services\Chrono.c</FilePath>
</File>
<File>
<FileName>accelerometer.c</FileName>
<FileName>alimentation.c</FileName>
<FileType>1</FileType>
<FilePath>..\Services\accelerometer.c</FilePath>
<FilePath>..\Services\alimentation.c</FilePath>
</File>
<File>
<FileName>alimentation.h</FileName>
<FileType>5</FileType>
<FilePath>..\Services\alimentation.h</FilePath>
</File>
</Files>
</Group>

View file

@ -0,0 +1,61 @@
#include "alimentation.h"
void alimentation_init(void){
RCC -> CFGR |= (0x1<<15);
RCC-> CFGR &= ~ (0x1<<14);
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_ADC1);
LL_APB1_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOC);
LL_GPIO_InitTypeDef pc0, pc2;
LL_ADC_InitTypeDef adc;
LL_ADC_REG_InitTypeDef adcReg;
pc0.Pin = LL_GPIO_PIN_0;
pc0.Mode = LL_GPIO_MODE_ANALOG;
pc2.Pin = LL_GPIO_PIN_2;
pc2.Mode = LL_GPIO_MODE_ANALOG;
adc.DataAlignment = LL_ADC_DATA_ALIGN_RIGHT;
adc.SequencersScanMode = LL_ADC_SEQ_SCAN_DISABLE;
LL_ADC_Init(ADC1, &adc);
adcReg.TriggerSource = LL_ADC_REG_TRIG_SOFTWARE ;
adcReg.SequencerLength = LL_ADC_REG_SEQ_SCAN_DISABLE;
adcReg.SequencerDiscont = LL_ADC_REG_SEQ_DISCONT_DISABLE;
adcReg.ContinuousMode = LL_ADC_REG_CONV_SINGLE;
adcReg.DMATransfer = LL_ADC_REG_DMA_TRANSFER_NONE;
LL_ADC_REG_Init(ADC1, &adcReg);
/*LL_ADC_SetChannelSamplingTime(ADC2, LL_ADC_CHANNEL_10, LL_ADC_SAMPLINGTIME_1CYCLE_5);
LL_ADC_SetChannelSamplingTime(ADC2, LL_ADC_CHANNEL_11, LL_ADC_SAMPLINGTIME_1CYCLE_5);
*/
LL_ADC_Enable(ADC1);
//LL_ADC_EnableIT_EOS(ADC1);
//wait 0,2 µs, calibration is advised
//LL_ADC_StartCalibration(ADC1);
}
float u2;
unsigned int niv_batterie;
float battery_level;
float get_battery_level(void){
LL_ADC_REG_SetSequencerRanks(ADC1, LL_ADC_REG_RANK_1, LL_ADC_CHANNEL_12);
LL_ADC_REG_StartConversionSWStart(ADC1);
battery_level = LL_ADC_REG_ReadConversionData12(ADC1);
u2 = (battery_level*3.3)/4095.0;
float level = u2*13.0;
return level;
}
int is_level_enough(void){
if (get_battery_level()<(0.33*13)){
return 0;
}else{
return 1;
}
}

View file

@ -0,0 +1,24 @@
// RIEN A MODIFIER //
#ifndef ALIMENTATION_H
#define ALIMENTATION_H
#include "stm32f103xb.h"
#include "stm32f1xx_ll_adc.h"
#include "stm32f1xx_ll_bus.h"
#include "stm32f1xx_ll_rcc.h"
#include "stm32f1xx_ll_gpio.h"
#include "math.h"
/* =====================================================================================
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
=======================================================================================*/
void alimentation_init(void);
float get_battery_level(void);
int is_level_enough(void);
#endif

View file

@ -21,7 +21,7 @@
#include "stm32f1xx_ll_system.h" // utile dans la fonction SystemClock_Config
#include "Chrono.h"
#include "accelerometer.h"
#include "alimentation.h"
void SystemClock_Config(void);
@ -33,18 +33,18 @@ void SystemClock_Config(void);
* @retval None
*/
int angle_bon;
int battery_level;
float level;
int level_enough;
int main(void)
{
/* Configure the system clock to 72 MHz */
SystemClock_Config();
accelero_init();
alimentation_init();
while(1){
angle_bon = accelero_angle_bon();
battery_level = get_battery_level();
level = get_battery_level();
level_enough = is_level_enough();
}