From a489e104f73fe7bbe78892b416f716ef501059cc Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期二, 12 三月 2024 11:07:13 +0800
Subject: [PATCH] 修复灯乱闪的bug

---
 MDK-ARM/L071/L071.htm |  480 ++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 246 insertions(+), 234 deletions(-)

diff --git a/MDK-ARM/L071/L071.htm b/MDK-ARM/L071/L071.htm
index 98c85b4..746e6aa 100644
--- a/MDK-ARM/L071/L071.htm
+++ b/MDK-ARM/L071/L071.htm
@@ -3,7 +3,7 @@
 <title>Static Call Graph - [L071\L071.axf]</title></head>
 <body><HR>
 <H1>Static Call Graph for image L071\L071.axf</H1><HR>
-<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Fri Jan 05 18:02:13 2024
+<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Tue Mar 12 11:01:29 2024
 <BR><P>
 <H3>Maximum Stack Usage =        860 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
 Call chain for Maximum Stack Depth:</H3>
@@ -102,7 +102,7 @@
 <P><STRONG><a name="[26]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(.text)
 </UL>
-<P><STRONG><a name="[193]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
+<P><STRONG><a name="[194]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
 
 <P><STRONG><a name="[4a]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
 <BR><BR>[Calls]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
@@ -112,15 +112,15 @@
 <BR><BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
 </UL>
 
-<P><STRONG><a name="[194]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
+<P><STRONG><a name="[195]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
 
-<P><STRONG><a name="[195]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
+<P><STRONG><a name="[196]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
 
-<P><STRONG><a name="[196]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
+<P><STRONG><a name="[197]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
 
-<P><STRONG><a name="[197]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
+<P><STRONG><a name="[198]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
 
-<P><STRONG><a name="[198]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
+<P><STRONG><a name="[199]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
 
 <P><STRONG><a name="[2]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32l071xx.o(.text))
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(RESET)
@@ -195,7 +195,7 @@
 <P><STRONG><a name="[8]"></a>WWDG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32l071xx.o(.text))
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(RESET)
 </UL>
-<P><STRONG><a name="[199]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
+<P><STRONG><a name="[19a]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
 
 <P><STRONG><a name="[6f]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text))
 <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = __aeabi_uidivmod
@@ -213,7 +213,7 @@
 <LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_BaseQueueDequeue
 <LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueIsFull
 <LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueIsEmpty
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
 </UL>
 
 <P><STRONG><a name="[4c]"></a>__aeabi_uldivmod</STRONG> (Thumb, 96 bytes, Stack size 48 bytes, uldiv.o(.text))
@@ -224,14 +224,14 @@
 </UL>
 <BR>[Called By]<UL><LI><a href="#[e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq
 <LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_SetConfig
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[123]"></a>__aeabi_memcpy</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
 <LI><a href="#[b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsartParseDataHandler
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
+<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
 <LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueOut
 <LI><a href="#[121]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueIn
 </UL>
@@ -240,16 +240,16 @@
 <BR><BR>[Called By]<UL><LI><a href="#[be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_ParseGGA
 </UL>
 
-<P><STRONG><a name="[19a]"></a>__aeabi_memcpy8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)
+<P><STRONG><a name="[19b]"></a>__aeabi_memcpy8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)
 
 <P><STRONG><a name="[50]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_memset$wrapper
 <LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
 </UL>
 
-<P><STRONG><a name="[19b]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
+<P><STRONG><a name="[19c]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
 
-<P><STRONG><a name="[19c]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
+<P><STRONG><a name="[19d]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
 
 <P><STRONG><a name="[4f]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))
 <BR><BR>[Calls]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
@@ -271,7 +271,7 @@
 <LI><a href="#[be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_ParseGGA
 </UL>
 
-<P><STRONG><a name="[19d]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
+<P><STRONG><a name="[19e]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
 
 <P><STRONG><a name="[51]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
 <BR><BR>[Calls]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
@@ -284,7 +284,7 @@
 </UL>
 
 <P><STRONG><a name="[b0]"></a>strlen</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, strlen.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR><BR>[Called By]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPutString
 <LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPrintf
 <LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UtilStrStr
@@ -348,7 +348,7 @@
 <BR><BR>[Called By]<UL><LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_VoltageConvert
 </UL>
 
-<P><STRONG><a name="[19e]"></a>scalbnf</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, fscalb.o(.text), UNUSED)
+<P><STRONG><a name="[19f]"></a>scalbnf</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, fscalb.o(.text), UNUSED)
 
 <P><STRONG><a name="[5b]"></a>__aeabi_dadd</STRONG> (Thumb, 328 bytes, Stack size 48 bytes, dadd.o(.text), UNUSED)
 <BR><BR>[Calls]<UL><LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_lasr
@@ -358,7 +358,7 @@
 </UL>
 <BR>[Called By]<UL><LI><a href="#[60]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
 <LI><a href="#[5f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[5f]"></a>__aeabi_dsub</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, dadd.o(.text), UNUSED)
@@ -375,7 +375,7 @@
 <BR>[Calls]<UL><LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
 </UL>
 <BR>[Called By]<UL><LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_VoltageConvert
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[62]"></a>__aeabi_ddiv</STRONG> (Thumb, 234 bytes, Stack size 40 bytes, ddiv.o(.text))
@@ -385,7 +385,7 @@
 </UL>
 <BR>[Called By]<UL><LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 <LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_VoltageConvert
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[63]"></a>__aeabi_ui2d</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, dfltui.o(.text))
@@ -409,13 +409,13 @@
 <BR>[Called By]<UL><LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 </UL>
 
-<P><STRONG><a name="[177]"></a>__aeabi_f2d</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, f2d.o(.text))
+<P><STRONG><a name="[178]"></a>__aeabi_f2d</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, f2d.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_Info
 </UL>
 
 <P><STRONG><a name="[9f]"></a>__aeabi_cdrcmple</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, cdrcmple.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_GetPercentage
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[65]"></a>__aeabi_d2f</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
@@ -435,7 +435,7 @@
 <LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
 </UL>
 
-<P><STRONG><a name="[19f]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)
+<P><STRONG><a name="[1a0]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)
 
 <P><STRONG><a name="[4d]"></a>__aeabi_llsr</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, llushr.o(.text))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_llsr
@@ -446,13 +446,13 @@
 <LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
 </UL>
 
-<P><STRONG><a name="[1a0]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)
+<P><STRONG><a name="[1a1]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)
 
 <P><STRONG><a name="[5c]"></a>__aeabi_lasr</STRONG> (Thumb, 38 bytes, Stack size 8 bytes, llsshr.o(.text), UNUSED)
 <BR><BR>[Called By]<UL><LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
 </UL>
 
-<P><STRONG><a name="[1a1]"></a>_ll_sshift_r</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llsshr.o(.text), UNUSED)
+<P><STRONG><a name="[1a2]"></a>_ll_sshift_r</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, llsshr.o(.text), UNUSED)
 
 <P><STRONG><a name="[54]"></a>strtol</STRONG> (Thumb, 108 bytes, Stack size 32 bytes, strtol.o(.text))
 <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = strtol &rArr; _strtoul
@@ -464,7 +464,7 @@
 <BR>[Called By]<UL><LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atoi
 </UL>
 
-<P><STRONG><a name="[1a2]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
+<P><STRONG><a name="[1a3]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
 
 <P><STRONG><a name="[57]"></a>_float_round</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, fepilogue.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
@@ -503,7 +503,7 @@
 <BR><BR>[Calls]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
 <LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
 </UL>
-<BR>[Called By]<UL><LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<BR>[Called By]<UL><LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
 
 <P><STRONG><a name="[4b]"></a>__scatterload</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
@@ -512,7 +512,7 @@
 <BR>[Called By]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
 </UL>
 
-<P><STRONG><a name="[1a3]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
+<P><STRONG><a name="[1a4]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
 
 <P><STRONG><a name="[66]"></a>__rt_ctype_table</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, ctype_o.o(.text))
 <BR><BR>[Called By]<UL><LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strtol
@@ -531,9 +531,9 @@
 <BR><BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_strtoul
 </UL>
 
-<P><STRONG><a name="[1a4]"></a>__decompress</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
+<P><STRONG><a name="[1a5]"></a>__decompress</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
 
-<P><STRONG><a name="[1a5]"></a>__decompress1</STRONG> (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
+<P><STRONG><a name="[1a6]"></a>__decompress1</STRONG> (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
 
 <P><STRONG><a name="[72]"></a>APL_Init</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, apl.o(i.APL_Init))
 <BR><BR>[Stack]<UL><LI>Max Depth = 828<LI>Call Chain = APL_Init &rArr; Lora_Init &rArr; Lora_Fsm &rArr; Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
@@ -550,25 +550,25 @@
 <BR>[Called By]<UL><LI><a href="#[24]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
 </UL>
 
-<P><STRONG><a name="[7b]"></a>APL_Poll</STRONG> (Thumb, 306 bytes, Stack size 24 bytes, apl.o(i.APL_Poll))
+<P><STRONG><a name="[7b]"></a>APL_Poll</STRONG> (Thumb, 346 bytes, Stack size 24 bytes, apl.o(i.APL_Poll))
 <BR><BR>[Stack]<UL><LI>Max Depth = 860<LI>Call Chain = APL_Poll &rArr; Lora_Poll &rArr; Lora_RecvByte &rArr; Lora_Fsm &rArr; Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_Sleep
-<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
+<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
 <LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Poll
 <LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_IsIdle
 <LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerPoll
 <LI><a href="#[87]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_ReadPin
 <LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_Poll
 <LI><a href="#[83]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_IsIdle
-<LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
-<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
+<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
 <LI><a href="#[80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Sendfinalbag_Poll
 <LI><a href="#[82]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Input_5V_Poll
 <LI><a href="#[84]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsTypecCActive
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 <LI><a href="#[86]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOff
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
 <LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IdleTask
 </UL>
 <BR>[Called By]<UL><LI><a href="#[24]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
@@ -651,7 +651,7 @@
 <BR><BR>[Called By]<UL><LI><a href="#[92]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BSP_ResourceInit
 </UL>
 
-<P><STRONG><a name="[a6]"></a>Battery_Poll</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, main.o(i.Battery_Poll))
+<P><STRONG><a name="[a6]"></a>Battery_Poll</STRONG> (Thumb, 50 bytes, Stack size 8 bytes, main.o(i.Battery_Poll))
 <BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = Battery_Poll &rArr; Battery_GetPercentage &rArr; Battery_GetVoltage &rArr; Battery_VoltageConvert &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; __aeabi_llsr
 </UL>
 <BR>[Calls]<UL><LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_GetPercentage
@@ -671,17 +671,18 @@
 <BR>[Called By]<UL><LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_GetVoltage
 </UL>
 
-<P><STRONG><a name="[88]"></a>Beep_Off</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, beep.o(i.Beep_Off))
+<P><STRONG><a name="[8c]"></a>Beep_Off</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, beep.o(i.Beep_Off))
 <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = Beep_Off &rArr; HAL_TIM_PWM_Stop &rArr; TIM_CCxChannelCmd
 </UL>
 <BR>[Calls]<UL><LI><a href="#[a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_PWM_Stop
 <LI><a href="#[a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_Base_Stop_IT
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Poll
+<LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_CompareMatchCallback
 <LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_BeepOff
 </UL>
 
-<P><STRONG><a name="[8c]"></a>Beep_On</STRONG> (Thumb, 64 bytes, Stack size 8 bytes, beep.o(i.Beep_On))
+<P><STRONG><a name="[8b]"></a>Beep_On</STRONG> (Thumb, 64 bytes, Stack size 8 bytes, beep.o(i.Beep_On))
 <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = Beep_On &rArr; HAL_TIM_PWM_Start &rArr; TIM_CCxChannelCmd
 </UL>
 <BR>[Calls]<UL><LI><a href="#[ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_PWM_Start
@@ -695,10 +696,10 @@
 <BR><BR>[Called By]<UL><LI><a href="#[92]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BSP_ResourceInit
 </UL>
 
-<P><STRONG><a name="[174]"></a>Checksum_u16</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, dw_app.o(i.Checksum_u16))
+<P><STRONG><a name="[175]"></a>Checksum_u16</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, dw_app.o(i.Checksum_u16))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Checksum_u16
 </UL>
-<BR>[Called By]<UL><LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
+<BR>[Called By]<UL><LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
 </UL>
 
 <P><STRONG><a name="[74]"></a>DBG_Init</STRONG> (Thumb, 68 bytes, Stack size 32 bytes, dbg.o(i.DBG_Init))
@@ -750,7 +751,7 @@
 <LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 </UL>
 
-<P><STRONG><a name="[191]"></a>FLASH_Read</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, flash.o(i.FLASH_Read))
+<P><STRONG><a name="[192]"></a>FLASH_Read</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, flash.o(i.FLASH_Read))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = FLASH_Read
 </UL>
 <BR>[Called By]<UL><LI><a href="#[165]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;parameter_init
@@ -809,7 +810,7 @@
 </UL>
 
 <P><STRONG><a name="[15d]"></a>GPS_PowerOn</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, gps.o(i.GPS_PowerOn))
-<BR><BR>[Called By]<UL><LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
+<BR><BR>[Called By]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
 </UL>
 
 <P><STRONG><a name="[78]"></a>GPS_SetEventCallback</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, gps.o(i.GPS_SetEventCallback))
@@ -993,10 +994,10 @@
 
 <P><STRONG><a name="[a5]"></a>HAL_GPIO_WritePin</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32l0xx_hal_gpio.o(i.HAL_GPIO_WritePin))
 <BR><BR>[Called By]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_Sleep
-<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
+<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
 <LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_Init
 <LI><a href="#[15e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor_Off
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 <LI><a href="#[86]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOff
 <LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init
 <LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Wait_Ack
@@ -1032,7 +1033,7 @@
 <BR><BR>[Called By]<UL><LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init
 </UL>
 
-<P><STRONG><a name="[17a]"></a>HAL_IncTick</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32l0xx_hal.o(i.HAL_IncTick))
+<P><STRONG><a name="[17b]"></a>HAL_IncTick</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32l0xx_hal.o(i.HAL_IncTick))
 <BR><BR>[Called By]<UL><LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
 </UL>
 
@@ -1058,37 +1059,41 @@
 </UL>
 
 <P><STRONG><a name="[d9]"></a>HAL_LPTIM_AutoReloadMatchCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_AutoReloadMatchCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[dc]"></a>HAL_LPTIM_AutoReloadWriteCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_AutoReloadWriteCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
-<P><STRONG><a name="[d8]"></a>HAL_LPTIM_CompareMatchCallback</STRONG> (Thumb, 58 bytes, Stack size 0 bytes, main.o(i.HAL_LPTIM_CompareMatchCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<P><STRONG><a name="[d7]"></a>HAL_LPTIM_CompareMatchCallback</STRONG> (Thumb, 88 bytes, Stack size 8 bytes, main.o(i.HAL_LPTIM_CompareMatchCallback))
+<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = HAL_LPTIM_CompareMatchCallback &rArr; Beep_Off &rArr; HAL_TIM_PWM_Stop &rArr; TIM_CCxChannelCmd
+</UL>
+<BR>[Calls]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
+</UL>
+<BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[db]"></a>HAL_LPTIM_CompareWriteCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_CompareWriteCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[de]"></a>HAL_LPTIM_DirectionDownCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_DirectionDownCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[dd]"></a>HAL_LPTIM_DirectionUpCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_DirectionUpCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[e5]"></a>HAL_LPTIM_GetState</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_GetState))
 <BR><BR>[Called By]<UL><LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_TimeOut_Start_IT
 </UL>
 
-<P><STRONG><a name="[d7]"></a>HAL_LPTIM_IRQHandler</STRONG> (Thumb, 202 bytes, Stack size 8 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = HAL_LPTIM_IRQHandler
+<P><STRONG><a name="[d8]"></a>HAL_LPTIM_IRQHandler</STRONG> (Thumb, 202 bytes, Stack size 8 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_IRQHandler))
+<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = HAL_LPTIM_IRQHandler &rArr; HAL_LPTIM_CompareMatchCallback &rArr; Beep_Off &rArr; HAL_TIM_PWM_Stop &rArr; TIM_CCxChannelCmd
 </UL>
-<BR>[Calls]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_CompareMatchCallback
+<BR>[Calls]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_CompareMatchCallback
 <LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_TriggerCallback
 <LI><a href="#[dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_DirectionUpCallback
 <LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_DirectionDownCallback
@@ -1127,7 +1132,7 @@
 </UL>
 
 <P><STRONG><a name="[da]"></a>HAL_LPTIM_TriggerCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_lptim.o(i.HAL_LPTIM_TriggerCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 
 <P><STRONG><a name="[d4]"></a>HAL_MspInit</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, stm32l0xx_hal_msp.o(i.HAL_MspInit))
@@ -1151,7 +1156,7 @@
 <LI><a href="#[d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
 </UL>
 
-<P><STRONG><a name="[17b]"></a>HAL_PWR_EnableBkUpAccess</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32l0xx_hal_pwr.o(i.HAL_PWR_EnableBkUpAccess))
+<P><STRONG><a name="[17c]"></a>HAL_PWR_EnableBkUpAccess</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32l0xx_hal_pwr.o(i.HAL_PWR_EnableBkUpAccess))
 <BR><BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
 </UL>
 
@@ -1300,11 +1305,11 @@
 </UL>
 
 <P><STRONG><a name="[aa]"></a>HAL_TIM_Base_Start_IT</STRONG> (Thumb, 82 bytes, Stack size 0 bytes, stm32l0xx_hal_tim.o(i.HAL_TIM_Base_Start_IT))
-<BR><BR>[Called By]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
+<BR><BR>[Called By]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
 </UL>
 
 <P><STRONG><a name="[a9]"></a>HAL_TIM_Base_Stop_IT</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, stm32l0xx_hal_tim.o(i.HAL_TIM_Base_Stop_IT))
-<BR><BR>[Called By]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
+<BR><BR>[Called By]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
 </UL>
 
 <P><STRONG><a name="[f7]"></a>HAL_TIM_ConfigClockSource</STRONG> (Thumb, 232 bytes, Stack size 24 bytes, stm32l0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource))
@@ -1356,7 +1361,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM_CCxChannelCmd
 </UL>
-<BR>[Called By]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
+<BR>[Called By]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
 </UL>
 
 <P><STRONG><a name="[a8]"></a>HAL_TIM_PWM_Stop</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, stm32l0xx_hal_tim.o(i.HAL_TIM_PWM_Stop))
@@ -1364,7 +1369,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIM_CCxChannelCmd
 </UL>
-<BR>[Called By]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
+<BR>[Called By]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
 </UL>
 
 <P><STRONG><a name="[10d]"></a>HAL_UARTEx_RxEventCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_uart.o(i.HAL_UARTEx_RxEventCallback))
@@ -1451,7 +1456,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_Start_Receive_DMA
 </UL>
-<BR>[Called By]<UL><LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
+<BR>[Called By]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
 </UL>
 
 <P><STRONG><a name="[118]"></a>HAL_UART_Receive_IT</STRONG> (Thumb, 100 bytes, Stack size 16 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_Receive_IT))
@@ -1459,7 +1464,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[119]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_Start_Receive_IT
 </UL>
-<BR>[Called By]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
+<BR>[Called By]<UL><LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
 </UL>
 
 <P><STRONG><a name="[11a]"></a>HAL_UART_RxCpltCallback</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp.o(i.HAL_UART_RxCpltCallback))
@@ -1472,7 +1477,7 @@
 <LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_DMAReceiveCplt
 </UL>
 
-<P><STRONG><a name="[17e]"></a>HAL_UART_RxHalfCpltCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_RxHalfCpltCallback))
+<P><STRONG><a name="[17f]"></a>HAL_UART_RxHalfCpltCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_RxHalfCpltCallback))
 <BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_DMARxHalfCplt
 </UL>
 
@@ -1494,7 +1499,7 @@
 <LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_TxOverFromISR
 </UL>
 
-<P><STRONG><a name="[185]"></a>HAL_UART_Transmit_IT</STRONG> (Thumb, 128 bytes, Stack size 8 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_Transmit_IT))
+<P><STRONG><a name="[186]"></a>HAL_UART_Transmit_IT</STRONG> (Thumb, 128 bytes, Stack size 8 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_Transmit_IT))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = HAL_UART_Transmit_IT
 </UL>
 <BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
@@ -1510,15 +1515,15 @@
 <LI><a href="#[2d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_DMATransmitCplt
 </UL>
 
-<P><STRONG><a name="[17f]"></a>HAL_UART_TxHalfCpltCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_TxHalfCpltCallback))
+<P><STRONG><a name="[180]"></a>HAL_UART_TxHalfCpltCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_hal_uart.o(i.HAL_UART_TxHalfCpltCallback))
 <BR><BR>[Called By]<UL><LI><a href="#[2e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_DMATxHalfCplt
 </UL>
 
-<P><STRONG><a name="[175]"></a>HIDO_ATLiteDebugOff</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hido_atlite.o(i.HIDO_ATLiteDebugOff))
+<P><STRONG><a name="[176]"></a>HIDO_ATLiteDebugOff</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hido_atlite.o(i.HIDO_ATLiteDebugOff))
 <BR><BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_DebugOff
 </UL>
 
-<P><STRONG><a name="[176]"></a>HIDO_ATLiteDebugOn</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hido_atlite.o(i.HIDO_ATLiteDebugOn))
+<P><STRONG><a name="[177]"></a>HIDO_ATLiteDebugOn</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hido_atlite.o(i.HIDO_ATLiteDebugOn))
 <BR><BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_DebugOn
 </UL>
 
@@ -1532,7 +1537,7 @@
 <BR>[Called By]<UL><LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RxOverFromISR
 </UL>
 
-<P><STRONG><a name="[180]"></a>HIDO_ArraryQueueInit</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, hido_arraryqueue.o(i.HIDO_ArraryQueueInit))
+<P><STRONG><a name="[181]"></a>HIDO_ArraryQueueInit</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, hido_arraryqueue.o(i.HIDO_ArraryQueueInit))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = HIDO_ArraryQueueInit
 </UL>
 <BR>[Called By]<UL><LI><a href="#[ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Init
@@ -1609,7 +1614,7 @@
 <BR><BR>[Called By]<UL><LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQGetEnqueueMember
 </UL>
 
-<P><STRONG><a name="[89]"></a>HIDO_Debug</STRONG> (Thumb, 60 bytes, Stack size 536 bytes, dbg.o(i.HIDO_Debug))
+<P><STRONG><a name="[88]"></a>HIDO_Debug</STRONG> (Thumb, 60 bytes, Stack size 536 bytes, dbg.o(i.HIDO_Debug))
 <BR><BR>[Stack]<UL><LI>Max Depth = 676<LI>Call Chain = HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
@@ -1638,11 +1643,11 @@
 <BR><BR>[Called By]<UL><LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_Init
 </UL>
 
-<P><STRONG><a name="[183]"></a>HIDO_Lock</STRONG> (Thumb, 44 bytes, Stack size 0 bytes, hido_lock.o(i.HIDO_Lock))
+<P><STRONG><a name="[184]"></a>HIDO_Lock</STRONG> (Thumb, 44 bytes, Stack size 0 bytes, hido_lock.o(i.HIDO_Lock))
 <BR><BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
 </UL>
 
-<P><STRONG><a name="[178]"></a>HIDO_ShellCmdRegister</STRONG> (Thumb, 88 bytes, Stack size 16 bytes, hido_shell.o(i.HIDO_ShellCmdRegister))
+<P><STRONG><a name="[179]"></a>HIDO_ShellCmdRegister</STRONG> (Thumb, 88 bytes, Stack size 16 bytes, hido_shell.o(i.HIDO_ShellCmdRegister))
 <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = HIDO_ShellCmdRegister
 </UL>
 <BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_Init
@@ -1677,7 +1682,7 @@
 <P><STRONG><a name="[12b]"></a>HIDO_TimerCreate</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, hido_timer.o(i.HIDO_TimerCreate))
 <BR><BR>[Stack]<UL><LI>Max Depth = 692<LI>Call Chain = HIDO_TimerCreate &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
-<BR>[Calls]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR>[Calls]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Init
 </UL>
@@ -1691,15 +1696,15 @@
 <P><STRONG><a name="[150]"></a>HIDO_TimerStart</STRONG> (Thumb, 78 bytes, Stack size 20 bytes, hido_timer.o(i.HIDO_TimerStart))
 <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = HIDO_TimerStart
 </UL>
-<BR>[Called By]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
+<BR>[Called By]<UL><LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
 <LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_SendCmd
 </UL>
 
-<P><STRONG><a name="[179]"></a>HIDO_TimerTick</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, hido_timer.o(i.HIDO_TimerTick))
+<P><STRONG><a name="[17a]"></a>HIDO_TimerTick</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, hido_timer.o(i.HIDO_TimerTick))
 <BR><BR>[Called By]<UL><LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
 </UL>
 
-<P><STRONG><a name="[184]"></a>HIDO_UnLock</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, hido_lock.o(i.HIDO_UnLock))
+<P><STRONG><a name="[185]"></a>HIDO_UnLock</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, hido_lock.o(i.HIDO_UnLock))
 <BR><BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
 </UL>
 
@@ -1836,7 +1841,7 @@
 <BR>[Calls]<UL><LI><a href="#[a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
 <LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
 </UL>
-<BR>[Called By]<UL><LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<BR>[Called By]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 <LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_ReadOneByte
 <LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_WriteOneByte
 <LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_ReadOneByte
@@ -1848,7 +1853,7 @@
 <BR>[Calls]<UL><LI><a href="#[a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
 <LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
 </UL>
-<BR>[Called By]<UL><LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<BR>[Called By]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 <LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_ReadOneByte
 <LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_WriteOneByte
 <LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_ReadOneByte
@@ -1861,7 +1866,7 @@
 <LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
 </UL>
 <BR>[Called By]<UL><LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Wait_Ack
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 <LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_ReadOneByte
 <LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_WriteOneByte
 <LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_ReadOneByte
@@ -1875,7 +1880,7 @@
 <LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
 <LI><a href="#[13f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Stop
 </UL>
-<BR>[Called By]<UL><LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<BR>[Called By]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 <LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_ReadOneByte
 <LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_WriteOneByte
 <LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_ReadOneByte
@@ -1889,11 +1894,11 @@
 <BR>[Called By]<UL><LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Poll
 </UL>
 
-<P><STRONG><a name="[82]"></a>Input_5V_Poll</STRONG> (Thumb, 70 bytes, Stack size 16 bytes, apl.o(i.Input_5V_Poll))
+<P><STRONG><a name="[82]"></a>Input_5V_Poll</STRONG> (Thumb, 76 bytes, Stack size 16 bytes, apl.o(i.Input_5V_Poll))
 <BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = Input_5V_Poll &rArr; Set4LEDColor &rArr; RGB_Set &rArr; RGB_Set_WHITE
 </UL>
 <BR>[Calls]<UL><LI><a href="#[84]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsTypecCActive
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Poll
 </UL>
@@ -1958,9 +1963,9 @@
 </UL>
 
 <P><STRONG><a name="[14]"></a>LPTIM1_IRQHandler</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, stm32l0xx_it.o(i.LPTIM1_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LPTIM1_IRQHandler &rArr; HAL_LPTIM_IRQHandler
+<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = LPTIM1_IRQHandler &rArr; HAL_LPTIM_IRQHandler &rArr; HAL_LPTIM_CompareMatchCallback &rArr; Beep_Off &rArr; HAL_TIM_PWM_Stop &rArr; TIM_CCxChannelCmd
 </UL>
-<BR>[Calls]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
+<BR>[Calls]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_IRQHandler
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(RESET)
 </UL>
@@ -2015,13 +2020,13 @@
 <BR><BR>[Called By]<UL><LI><a href="#[92]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BSP_ResourceInit
 </UL>
 
-<P><STRONG><a name="[7f]"></a>Lora_Poll</STRONG> (Thumb, 274 bytes, Stack size 32 bytes, lora.o(i.Lora_Poll))
+<P><STRONG><a name="[7f]"></a>Lora_Poll</STRONG> (Thumb, 386 bytes, Stack size 32 bytes, lora.o(i.Lora_Poll))
 <BR><BR>[Stack]<UL><LI>Max Depth = 836<LI>Call Chain = Lora_Poll &rArr; Lora_RecvByte &rArr; Lora_Fsm &rArr; Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_IsIdle
 <LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;save_com_map_to_flash
 <LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_ms
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_GetChar
 <LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
 <LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_RecvByte
@@ -2061,8 +2066,8 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 700<LI>Call Chain = Lora_Sendfinalbag_Poll &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_SendData
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
 <LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
 </UL>
@@ -2122,7 +2127,7 @@
 <LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_GpsOff
 </UL>
 
-<P><STRONG><a name="[8a]"></a>Power_GPS_LoraOn</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, power.o(i.Power_GPS_LoraOn))
+<P><STRONG><a name="[89]"></a>Power_GPS_LoraOn</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, power.o(i.Power_GPS_LoraOn))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Power_GPS_LoraOn
 </UL>
 <BR>[Calls]<UL><LI><a href="#[a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@@ -2140,8 +2145,8 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 716<LI>Call Chain = Power_Sleep &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[15e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor_Off
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
 <LI><a href="#[cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_Init
 <LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
@@ -2160,8 +2165,8 @@
 <LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_Sleep
 </UL>
 
-<P><STRONG><a name="[164]"></a>Program_Init</STRONG> (Thumb, 450 bytes, Stack size 48 bytes, main.o(i.Program_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 148<LI>Call Chain = Program_Init &rArr; parameter_init &rArr; save_com_map_to_flash &rArr; FLASH_Prepare &rArr; HAL_FLASHEx_Erase &rArr; FLASH_WaitForLastOperation &rArr; FLASH_SetErrorCode
+<P><STRONG><a name="[164]"></a>Program_Init</STRONG> (Thumb, 474 bytes, Stack size 24 bytes, main.o(i.Program_Init))
+<BR><BR>[Stack]<UL><LI>Max Depth = 124<LI>Call Chain = Program_Init &rArr; parameter_init &rArr; save_com_map_to_flash &rArr; FLASH_Prepare &rArr; HAL_FLASHEx_Erase &rArr; FLASH_WaitForLastOperation &rArr; FLASH_SetErrorCode
 </UL>
 <BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;save_com_map_to_flash
 <LI><a href="#[165]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;parameter_init
@@ -2169,8 +2174,9 @@
 <LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
 <LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
 <LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 <LI><a href="#[166]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;STMFLASH_ReadHalfWord
+<LI><a href="#[168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot_init
 <LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_TimeOut_Start_IT
 <LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
 <LI><a href="#[bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FLASH_Write
@@ -2181,90 +2187,96 @@
 <BR>[Called By]<UL><LI><a href="#[24]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
 </UL>
 
-<P><STRONG><a name="[168]"></a>RGB_Rst</STRONG> (Thumb, 18 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Rst))
+<P><STRONG><a name="[169]"></a>RGB_Rst</STRONG> (Thumb, 18 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Rst))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Rst
 </UL>
-<BR>[Calls]<UL><LI><a href="#[169]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;w28delay
+<BR>[Calls]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;w28delay
 </UL>
-<BR>[Called By]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<BR>[Called By]<UL><LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 </UL>
 
-<P><STRONG><a name="[16a]"></a>RGB_Set</STRONG> (Thumb, 62 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set))
+<P><STRONG><a name="[16b]"></a>RGB_Set</STRONG> (Thumb, 62 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = RGB_Set &rArr; RGB_Set_WHITE
 </UL>
-<BR>[Calls]<UL><LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_WHITE
-<LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
-<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_LEDOFF
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
-<LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
+<BR>[Calls]<UL><LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_WHITE
+<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
+<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_LEDOFF
+<LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
+<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
 </UL>
-<BR>[Called By]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<BR>[Called By]<UL><LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 </UL>
 
-<P><STRONG><a name="[16e]"></a>RGB_Set_BLUE</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_BLUE))
+<P><STRONG><a name="[16f]"></a>RGB_Set_BLUE</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_BLUE))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Set_BLUE
 </UL>
-<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
+<BR>[Calls]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
+<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
 </UL>
-<BR>[Called By]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
 </UL>
 
-<P><STRONG><a name="[170]"></a>RGB_Set_Down</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, ws2812.o(i.RGB_Set_Down))
-<BR><BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
-<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_LEDOFF
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
-<LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
+<P><STRONG><a name="[171]"></a>RGB_Set_Down</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, ws2812.o(i.RGB_Set_Down))
+<BR><BR>[Called By]<UL><LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
+<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_LEDOFF
+<LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
+<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
 </UL>
 
-<P><STRONG><a name="[16c]"></a>RGB_Set_GREEN</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_GREEN))
+<P><STRONG><a name="[16d]"></a>RGB_Set_GREEN</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_GREEN))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Set_GREEN
 </UL>
-<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
+<BR>[Calls]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
+<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
 </UL>
-<BR>[Called By]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
 </UL>
 
-<P><STRONG><a name="[16f]"></a>RGB_Set_LEDOFF</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_LEDOFF))
+<P><STRONG><a name="[170]"></a>RGB_Set_LEDOFF</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_LEDOFF))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Set_LEDOFF
 </UL>
-<BR>[Calls]<UL><LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
+<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
 </UL>
-<BR>[Called By]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
 </UL>
 
-<P><STRONG><a name="[16b]"></a>RGB_Set_RED</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_RED))
+<P><STRONG><a name="[16c]"></a>RGB_Set_RED</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_RED))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Set_RED
 </UL>
-<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
+<BR>[Calls]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
+<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Down
 </UL>
-<BR>[Called By]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
 </UL>
 
-<P><STRONG><a name="[171]"></a>RGB_Set_Up</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, ws2812.o(i.RGB_Set_Up))
-<BR><BR>[Called By]<UL><LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_WHITE
-<LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
-<LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
+<P><STRONG><a name="[172]"></a>RGB_Set_Up</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, ws2812.o(i.RGB_Set_Up))
+<BR><BR>[Called By]<UL><LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_WHITE
+<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_RED
+<LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_GREEN
+<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_BLUE
 </UL>
 
-<P><STRONG><a name="[16d]"></a>RGB_Set_WHITE</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_WHITE))
+<P><STRONG><a name="[16e]"></a>RGB_Set_WHITE</STRONG> (Thumb, 100 bytes, Stack size 4 bytes, ws2812.o(i.RGB_Set_WHITE))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = RGB_Set_WHITE
 </UL>
-<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
+<BR>[Calls]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set_Up
 </UL>
-<BR>[Called By]<UL><LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<BR>[Called By]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
 </UL>
 
-<P><STRONG><a name="[172]"></a>Reboot</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, reboot.o(i.Reboot))
+<P><STRONG><a name="[173]"></a>Reboot</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, reboot.o(i.Reboot))
 <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = Reboot &rArr; HIDO_TimerStart
 </UL>
 <BR>[Calls]<UL><LI><a href="#[33]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot_TimerCallback
 <LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerStart
 </UL>
 <BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Shell_Reboot
+</UL>
+
+<P><STRONG><a name="[168]"></a>Reboot_init</STRONG> (Thumb, 78 bytes, Stack size 8 bytes, global_param.o(i.Reboot_init))
+<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Reboot_init
+</UL>
+<BR>[Called By]<UL><LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 </UL>
 
 <P><STRONG><a name="[166]"></a>STMFLASH_ReadHalfWord</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, flash.o(i.STMFLASH_ReadHalfWord))
@@ -2274,22 +2286,22 @@
 <P><STRONG><a name="[5]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32l0xx_it.o(i.SVC_Handler))
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(RESET)
 </UL>
-<P><STRONG><a name="[173]"></a>SendComMap</STRONG> (Thumb, 112 bytes, Stack size 24 bytes, serial_at_cmd_app.o(i.SendComMap))
+<P><STRONG><a name="[174]"></a>SendComMap</STRONG> (Thumb, 112 bytes, Stack size 24 bytes, serial_at_cmd_app.o(i.SendComMap))
 <BR><BR>[Stack]<UL><LI>Max Depth = 164<LI>Call Chain = SendComMap &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
-<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Checksum_u16
+<LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Checksum_u16
 <LI><a href="#[123]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
 </UL>
 <BR>[Called By]<UL><LI><a href="#[b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsartParseDataHandler
 </UL>
 
-<P><STRONG><a name="[8b]"></a>Set4LEDColor</STRONG> (Thumb, 56 bytes, Stack size 24 bytes, ws2812.o(i.Set4LEDColor))
+<P><STRONG><a name="[8a]"></a>Set4LEDColor</STRONG> (Thumb, 56 bytes, Stack size 24 bytes, ws2812.o(i.Set4LEDColor))
 <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = Set4LEDColor &rArr; RGB_Set &rArr; RGB_Set_WHITE
 </UL>
 <BR>[Calls]<UL><LI><a href="#[a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
-<LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
-<LI><a href="#[168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Rst
+<LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Set
+<LI><a href="#[169]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Rst
 </UL>
 <BR>[Called By]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_Sleep
 <LI><a href="#[80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Sendfinalbag_Poll
@@ -2312,7 +2324,7 @@
 <P><STRONG><a name="[75]"></a>Shell_Init</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, shell.o(i.Shell_Init))
 <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Shell_Init &rArr; HIDO_ShellCmdRegister
 </UL>
-<BR>[Calls]<UL><LI><a href="#[178]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellCmdRegister
+<BR>[Calls]<UL><LI><a href="#[179]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellCmdRegister
 </UL>
 <BR>[Called By]<UL><LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Init
 </UL>
@@ -2320,8 +2332,8 @@
 <P><STRONG><a name="[7]"></a>SysTick_Handler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, stm32l0xx_it.o(i.SysTick_Handler))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SysTick_Handler
 </UL>
-<BR>[Calls]<UL><LI><a href="#[179]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerTick
-<LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_IncTick
+<BR>[Calls]<UL><LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerTick
+<LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_IncTick
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(RESET)
 </UL>
@@ -2331,7 +2343,7 @@
 <BR>[Calls]<UL><LI><a href="#[ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_OscConfig
 <LI><a href="#[e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_ClockConfig
 <LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCCEx_PeriphCLKConfig
-<LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_PWR_EnableBkUpAccess
+<LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_PWR_EnableBkUpAccess
 <LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
 </UL>
 <BR>[Called By]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_Sleep
@@ -2341,7 +2353,7 @@
 <P><STRONG><a name="[25]"></a>SystemInit</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, system_stm32l0xx.o(i.SystemInit))
 <BR>[Address Reference Count : 1]<UL><LI> startup_stm32l071xx.o(.text)
 </UL>
-<P><STRONG><a name="[17c]"></a>Time_to_restart_Poll</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, main.o(i.Time_to_restart_Poll))
+<P><STRONG><a name="[17d]"></a>Time_to_restart_Poll</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, main.o(i.Time_to_restart_Poll))
 <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Time_to_restart_Poll &rArr; delay_ms
 </UL>
 <BR>[Calls]<UL><LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_ms
@@ -2431,9 +2443,9 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = Uart_Init &rArr; Uart_RXDMAEnable &rArr; HAL_UART_Receive_DMA &rArr; UART_Start_Receive_DMA &rArr; HAL_DMA_Start_IT &rArr; DMA_SetConfig
 </UL>
 <BR>[Calls]<UL><LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQInit
-<LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueInit
-<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
+<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueInit
+<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
+<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Init
 <LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GPS_Init
@@ -2444,9 +2456,9 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = Uart_ReInit &rArr; Uart_RXDMAEnable &rArr; HAL_UART_Receive_DMA &rArr; UART_Start_Receive_DMA &rArr; HAL_DMA_Start_IT &rArr; DMA_SetConfig
 </UL>
 <BR>[Calls]<UL><LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQInit
-<LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueInit
-<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
+<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueInit
+<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
+<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
 </UL>
 <BR>[Called By]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_Sleep
 </UL>
@@ -2462,8 +2474,8 @@
 <P><STRONG><a name="[108]"></a>Uart_RxErrorFromISR</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, uart.o(i.Uart_RxErrorFromISR))
 <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = Uart_RxErrorFromISR &rArr; Uart_RXDMAEnable &rArr; HAL_UART_Receive_DMA &rArr; UART_Start_Receive_DMA &rArr; HAL_DMA_Start_IT &rArr; DMA_SetConfig
 </UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
+<BR>[Calls]<UL><LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
+<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXDMAEnable
 </UL>
 <BR>[Called By]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_ErrorCallback
 </UL>
@@ -2472,7 +2484,7 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = Uart_RxOverFromISR &rArr; HIDO_ArraryQueueIn &rArr; HIDO_ArraryQueueIsFull &rArr; __aeabi_uidivmod
 </UL>
 <BR>[Calls]<UL><LI><a href="#[121]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ArraryQueueIn
-<LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
+<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_RXINTEnable
 </UL>
 <BR>[Called By]<UL><LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_RxCpltCallback
 </UL>
@@ -2483,20 +2495,20 @@
 <BR>[Calls]<UL><LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQGetEnqueueMember
 <LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQGetDequeueMember
 <LI><a href="#[130]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQEnqueue
-<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UnLock
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Lock
-<LI><a href="#[185]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_IT
+<LI><a href="#[185]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UnLock
+<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Lock
+<LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_IT
 <LI><a href="#[11e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_DMA
 <LI><a href="#[11c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit
 <LI><a href="#[123]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
 </UL>
 <BR>[Called By]<UL><LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_SendData
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_DebugString
 <LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPutString
 <LI><a href="#[2a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPutChar
 <LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPrintf
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
+<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
 <LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_SendCmd
 </UL>
 
@@ -2505,7 +2517,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQGetDequeueMember
 <LI><a href="#[12f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_VLQDequeue
-<LI><a href="#[185]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_IT
+<LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_IT
 <LI><a href="#[11e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Transmit_DMA
 </UL>
 <BR>[Called By]<UL><LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_TxCpltCallback
@@ -2516,26 +2528,26 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;save_com_map_to_flash
 <LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_ms
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
+<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendComMap
 <LI><a href="#[123]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
 </UL>
 <BR>[Called By]<UL><LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DebugPoll
 </UL>
 
-<P><STRONG><a name="[186]"></a>__0vsnprintf</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<P><STRONG><a name="[187]"></a>__0vsnprintf</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
+<BR><BR>[Calls]<UL><LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
 </UL>
 
-<P><STRONG><a name="[1a6]"></a>__1vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
+<P><STRONG><a name="[1a7]"></a>__1vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
 
-<P><STRONG><a name="[1a7]"></a>__2vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
+<P><STRONG><a name="[1a8]"></a>__2vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
 
-<P><STRONG><a name="[1a8]"></a>__c89vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
+<P><STRONG><a name="[1a9]"></a>__c89vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
 
 <P><STRONG><a name="[af]"></a>vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf))
 <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = vsnprintf
 </UL>
-<BR>[Called By]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR>[Called By]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DBG_SerialPrintf
 <LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_SendCmd
 <LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UtilSnprintf
@@ -2557,13 +2569,13 @@
 <LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atoi
 </UL>
 
-<P><STRONG><a name="[1a9]"></a>__rt_errno_addr</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr), UNUSED)
+<P><STRONG><a name="[1aa]"></a>__rt_errno_addr</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr), UNUSED)
 
-<P><STRONG><a name="[1aa]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
+<P><STRONG><a name="[1ab]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
 
-<P><STRONG><a name="[1ab]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
+<P><STRONG><a name="[1ac]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
 
-<P><STRONG><a name="[1ac]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
+<P><STRONG><a name="[1ad]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
 
 <P><STRONG><a name="[14c]"></a>delay_ms</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, dw_driver.o(i.delay_ms))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = delay_ms
@@ -2571,7 +2583,7 @@
 <BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Poll
-<LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
+<LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
 <LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 <LI><a href="#[b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsartParseDataHandler
 </UL>
@@ -2583,9 +2595,9 @@
 <LI><a href="#[13e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Start
 <LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Send_Byte
 <LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Read_Byte
-<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
+<LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
 <LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 <LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_WriteOneByte
 <LI><a href="#[90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LIS3DH_Data_Init
 <LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_NAck
@@ -2596,7 +2608,7 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 860<LI>Call Chain = main &rArr; APL_Poll &rArr; Lora_Poll &rArr; Lora_RecvByte &rArr; Lora_Fsm &rArr; Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
 <BR>[Calls]<UL><LI><a href="#[15e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor_Off
-<LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
 <LI><a href="#[86]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOff
 <LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_LPTIM_Init
 <LI><a href="#[d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Init
@@ -2604,7 +2616,7 @@
 <LI><a href="#[91]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BSP_Init
 <LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Poll
 <LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;APL_Init
-<LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
+<LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
 <LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
 <LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 <LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_Poll
@@ -2628,10 +2640,10 @@
 <LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Read_Byte
 </UL>
 <BR>[Called By]<UL><LI><a href="#[77]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Accelerometer_Init
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
+<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
 </UL>
 
-<P><STRONG><a name="[18b]"></a>mir3da_WriteOneByte</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, lis3dh_driver.o(i.mir3da_WriteOneByte))
+<P><STRONG><a name="[18c]"></a>mir3da_WriteOneByte</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, lis3dh_driver.o(i.mir3da_WriteOneByte))
 <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
 <BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
@@ -2640,77 +2652,77 @@
 <LI><a href="#[13e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Start
 <LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC2_Send_Byte
 </UL>
-<BR>[Called By]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
+<BR>[Called By]<UL><LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
 </UL>
 
 <P><STRONG><a name="[8f]"></a>mir3da_init</STRONG> (Thumb, 120 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_init))
 <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = mir3da_init &rArr; mir3da_set_enable &rArr; mir3da_register_mask_write &rArr; mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
 <BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
-<LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_step_counter_open
-<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_active_interrupt_enable
-<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
+<LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_step_counter_open
+<LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
+<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_active_interrupt_enable
+<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
+<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
 </UL>
 <BR>[Called By]<UL><LI><a href="#[77]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Accelerometer_Init
 </UL>
 
-<P><STRONG><a name="[18d]"></a>mir3da_register_mask_write</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, lis3dh_driver.o(i.mir3da_register_mask_write))
+<P><STRONG><a name="[18e]"></a>mir3da_register_mask_write</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, lis3dh_driver.o(i.mir3da_register_mask_write))
 <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = mir3da_register_mask_write &rArr; mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
-<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
+<BR>[Calls]<UL><LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
 <LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_ReadOneByte
 </UL>
-<BR>[Called By]<UL><LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
+<BR>[Called By]<UL><LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_enable
 <LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
 </UL>
 
-<P><STRONG><a name="[18c]"></a>mir3da_register_write</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_register_write))
+<P><STRONG><a name="[18d]"></a>mir3da_register_write</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_register_write))
 <BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
-<BR>[Calls]<UL><LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
+<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_WriteOneByte
 </UL>
-<BR>[Called By]<UL><LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_step_counter_open
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_active_interrupt_enable
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
+<BR>[Called By]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_step_counter_open
+<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_set_active_interrupt_enable
+<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
 <LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
 </UL>
 
-<P><STRONG><a name="[18e]"></a>mir3da_set_active_interrupt_enable</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_active_interrupt_enable))
+<P><STRONG><a name="[18f]"></a>mir3da_set_active_interrupt_enable</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_active_interrupt_enable))
 <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = mir3da_set_active_interrupt_enable &rArr; mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
-<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
+<BR>[Calls]<UL><LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
 </UL>
 <BR>[Called By]<UL><LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
 </UL>
 
-<P><STRONG><a name="[18f]"></a>mir3da_set_enable</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_enable))
+<P><STRONG><a name="[190]"></a>mir3da_set_enable</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_enable))
 <BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = mir3da_set_enable &rArr; mir3da_register_mask_write &rArr; mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
 <BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
+<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_mask_write
 </UL>
 <BR>[Called By]<UL><LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
 </UL>
 
-<P><STRONG><a name="[190]"></a>mir3da_set_step_counter_open</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_step_counter_open))
+<P><STRONG><a name="[191]"></a>mir3da_set_step_counter_open</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, lis3dh_driver.o(i.mir3da_set_step_counter_open))
 <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = mir3da_set_step_counter_open &rArr; mir3da_register_write &rArr; mir3da_WriteOneByte &rArr; IIC2_Wait_Ack &rArr; IIC2_Stop
 </UL>
-<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
+<BR>[Calls]<UL><LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_register_write
 </UL>
 <BR>[Called By]<UL><LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mir3da_init
 </UL>
 
-<P><STRONG><a name="[192]"></a>parameter_check</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, global_param.o(i.parameter_check))
+<P><STRONG><a name="[193]"></a>parameter_check</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, global_param.o(i.parameter_check))
 <BR><BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;save_com_map_to_flash
 </UL>
 
-<P><STRONG><a name="[165]"></a>parameter_init</STRONG> (Thumb, 108 bytes, Stack size 8 bytes, global_param.o(i.parameter_init))
+<P><STRONG><a name="[165]"></a>parameter_init</STRONG> (Thumb, 110 bytes, Stack size 8 bytes, global_param.o(i.parameter_init))
 <BR><BR>[Stack]<UL><LI>Max Depth = 100<LI>Call Chain = parameter_init &rArr; save_com_map_to_flash &rArr; FLASH_Prepare &rArr; HAL_FLASHEx_Erase &rArr; FLASH_WaitForLastOperation &rArr; FLASH_SetErrorCode
 </UL>
 <BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;save_com_map_to_flash
-<LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FLASH_Read
+<LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FLASH_Read
 <LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
 </UL>
 <BR>[Called By]<UL><LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
@@ -2721,7 +2733,7 @@
 </UL>
 <BR>[Calls]<UL><LI><a href="#[bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FLASH_Write
 <LI><a href="#[b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FLASH_Prepare
-<LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;parameter_check
+<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;parameter_check
 </UL>
 <BR>[Called By]<UL><LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Poll
 <LI><a href="#[165]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;parameter_init
@@ -2729,8 +2741,8 @@
 <LI><a href="#[b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsartParseDataHandler
 </UL>
 
-<P><STRONG><a name="[169]"></a>w28delay</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, ws2812.o(i.w28delay))
-<BR><BR>[Called By]<UL><LI><a href="#[168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Rst
+<P><STRONG><a name="[16a]"></a>w28delay</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, ws2812.o(i.w28delay))
+<BR><BR>[Called By]<UL><LI><a href="#[169]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RGB_Rst
 </UL>
 <P>
 <H3>
@@ -2810,7 +2822,7 @@
 </UL>
 
 <P><STRONG><a name="[167]"></a>__NVIC_SystemReset</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, main.o(i.__NVIC_SystemReset))
-<BR><BR>[Called By]<UL><LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
+<BR><BR>[Called By]<UL><LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Time_to_restart_Poll
 <LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Program_Init
 </UL>
 
@@ -2829,7 +2841,7 @@
 <P><STRONG><a name="[48]"></a>Shell_BeepOff</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, shell.o(i.Shell_BeepOff))
 <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = Shell_BeepOff &rArr; Beep_Off &rArr; HAL_TIM_PWM_Stop &rArr; TIM_CCxChannelCmd
 </UL>
-<BR>[Calls]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
+<BR>[Calls]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_Off
 <LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
@@ -2837,7 +2849,7 @@
 <P><STRONG><a name="[47]"></a>Shell_BeepOn</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, shell.o(i.Shell_BeepOn))
 <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = Shell_BeepOn &rArr; Beep_On &rArr; HAL_TIM_PWM_Start &rArr; TIM_CCxChannelCmd
 </UL>
-<BR>[Calls]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
+<BR>[Calls]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Beep_On
 <LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
@@ -2846,7 +2858,7 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = Shell_DebugOff &rArr; atoi &rArr; strtol &rArr; _strtoul
 </UL>
 <BR>[Calls]<UL><LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
-<LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ATLiteDebugOff
+<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ATLiteDebugOff
 <LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atoi
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
@@ -2855,7 +2867,7 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = Shell_DebugOn &rArr; atoi &rArr; strtol &rArr; _strtoul
 </UL>
 <BR>[Calls]<UL><LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
-<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ATLiteDebugOn
+<LI><a href="#[177]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ATLiteDebugOn
 <LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atoi
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
@@ -2871,7 +2883,7 @@
 <P><STRONG><a name="[45]"></a>Shell_GpsOn</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, shell.o(i.Shell_GpsOn))
 <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Shell_GpsOn &rArr; Power_GPS_LoraOn
 </UL>
-<BR>[Calls]<UL><LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
+<BR>[Calls]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_GPS_LoraOn
 <LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
@@ -2879,7 +2891,7 @@
 <P><STRONG><a name="[3b]"></a>Shell_Info</STRONG> (Thumb, 96 bytes, Stack size 16 bytes, shell.o(i.Shell_Info))
 <BR><BR>[Stack]<UL><LI>Max Depth = 160<LI>Call Chain = Shell_Info &rArr; Battery_GetVoltage &rArr; Battery_VoltageConvert &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; __aeabi_llsr
 </UL>
-<BR>[Calls]<UL><LI><a href="#[177]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
+<BR>[Calls]<UL><LI><a href="#[178]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
 <LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_ShellGetInput
 <LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Battery_GetVoltage
 </UL>
@@ -2898,7 +2910,7 @@
 <P><STRONG><a name="[3a]"></a>Shell_Reboot</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, shell.o(i.Shell_Reboot))
 <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = Shell_Reboot &rArr; Reboot &rArr; HIDO_TimerStart
 </UL>
-<BR>[Calls]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
+<BR>[Calls]<UL><LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> shell.o(.constdata)
 </UL>
@@ -2986,8 +2998,8 @@
 <P><STRONG><a name="[be]"></a>GPS_ParseGGA</STRONG> (Thumb, 342 bytes, Stack size 96 bytes, gps.o(i.GPS_ParseGGA))
 <BR><BR>[Stack]<UL><LI>Max Depth = 772<LI>Call Chain = GPS_ParseGGA &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
-<BR>[Calls]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR>[Calls]<UL><LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set4LEDColor
+<LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
 <LI><a href="#[c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_DebugString
 <LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UtilSnprintf
@@ -3018,7 +3030,7 @@
 <P><STRONG><a name="[14a]"></a>Lora_RecvByte</STRONG> (Thumb, 124 bytes, Stack size 16 bytes, lora.o(i.Lora_RecvByte))
 <BR><BR>[Stack]<UL><LI>Max Depth = 804<LI>Call Chain = Lora_RecvByte &rArr; Lora_Fsm &rArr; Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
-<BR>[Calls]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR>[Calls]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_UtilStrStr
 <LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerCancel
 <LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Lora_Fsm
@@ -3029,7 +3041,7 @@
 <P><STRONG><a name="[146]"></a>Lora_SendCmd</STRONG> (Thumb, 76 bytes, Stack size 96 bytes, lora.o(i.Lora_SendCmd))
 <BR><BR>[Stack]<UL><LI>Max Depth = 772<LI>Call Chain = Lora_SendCmd &rArr; HIDO_Debug &rArr; Uart_Send &rArr; HAL_UART_Transmit &rArr; UART_WaitOnFlagUntilTimeout &rArr; UART_EndRxTransfer
 </UL>
-<BR>[Calls]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
+<BR>[Calls]<UL><LI><a href="#[88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_Debug
 <LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_Send
 <LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HIDO_TimerStart
 <LI><a href="#[b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
@@ -3056,11 +3068,11 @@
 </UL>
 
 <P><STRONG><a name="[33]"></a>Reboot_TimerCallback</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, reboot.o(i.Reboot_TimerCallback))
-<BR><BR>[Called By]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
+<BR><BR>[Called By]<UL><LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Reboot
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> reboot.o(i.Reboot)
 </UL>
-<P><STRONG><a name="[181]"></a>Uart_RXDMAEnable</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, uart.o(i.Uart_RXDMAEnable))
+<P><STRONG><a name="[182]"></a>Uart_RXDMAEnable</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, uart.o(i.Uart_RXDMAEnable))
 <BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = Uart_RXDMAEnable &rArr; HAL_UART_Receive_DMA &rArr; UART_Start_Receive_DMA &rArr; HAL_DMA_Start_IT &rArr; DMA_SetConfig
 </UL>
 <BR>[Calls]<UL><LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Receive_DMA
@@ -3070,7 +3082,7 @@
 <LI><a href="#[163]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Uart_ReInit
 </UL>
 
-<P><STRONG><a name="[182]"></a>Uart_RXINTEnable</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, uart.o(i.Uart_RXINTEnable))
+<P><STRONG><a name="[183]"></a>Uart_RXINTEnable</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, uart.o(i.Uart_RXINTEnable))
 <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = Uart_RXINTEnable &rArr; HAL_UART_Receive_IT &rArr; UART_Start_Receive_IT
 </UL>
 <BR>[Calls]<UL><LI><a href="#[118]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_Receive_IT
@@ -3149,7 +3161,7 @@
 <BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = UART_DMAError &rArr; HAL_UART_ErrorCallback &rArr; Uart_RxErrorFromISR &rArr; Uart_RXDMAEnable &rArr; HAL_UART_Receive_DMA &rArr; UART_Start_Receive_DMA &rArr; HAL_DMA_Start_IT &rArr; DMA_SetConfig
 </UL>
 <BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_ErrorCallback
-<LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_EndTxTransfer
+<LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_EndTxTransfer
 <LI><a href="#[10a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_EndRxTransfer
 </UL>
 <BR>[Address Reference Count : 2]<UL><LI> stm32l0xx_hal_uart.o(i.HAL_UART_Transmit_DMA)
@@ -3166,7 +3178,7 @@
 <P><STRONG><a name="[35]"></a>UART_DMARxHalfCplt</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, stm32l0xx_hal_uart.o(i.UART_DMARxHalfCplt))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = UART_DMARxHalfCplt
 </UL>
-<BR>[Calls]<UL><LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_RxHalfCpltCallback
+<BR>[Calls]<UL><LI><a href="#[17f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_RxHalfCpltCallback
 <LI><a href="#[10d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UARTEx_RxEventCallback
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> stm32l0xx_hal_uart.o(i.UART_Start_Receive_DMA)
@@ -3181,7 +3193,7 @@
 <P><STRONG><a name="[2e]"></a>UART_DMATxHalfCplt</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, stm32l0xx_hal_uart.o(i.UART_DMATxHalfCplt))
 <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = UART_DMATxHalfCplt
 </UL>
-<BR>[Calls]<UL><LI><a href="#[17f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_TxHalfCpltCallback
+<BR>[Calls]<UL><LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_TxHalfCpltCallback
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> stm32l0xx_hal_uart.o(i.HAL_UART_Transmit_DMA)
 </UL>
@@ -3201,7 +3213,7 @@
 <BR>[Called By]<UL><LI><a href="#[109]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_UART_IRQHandler
 </UL>
 
-<P><STRONG><a name="[17d]"></a>UART_EndTxTransfer</STRONG> (Thumb, 34 bytes, Stack size 4 bytes, stm32l0xx_hal_uart.o(i.UART_EndTxTransfer))
+<P><STRONG><a name="[17e]"></a>UART_EndTxTransfer</STRONG> (Thumb, 34 bytes, Stack size 4 bytes, stm32l0xx_hal_uart.o(i.UART_EndTxTransfer))
 <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = UART_EndTxTransfer
 </UL>
 <BR>[Called By]<UL><LI><a href="#[2f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_DMAError
@@ -3308,7 +3320,7 @@
 </UL>
 <BR>[Address Reference Count : 1]<UL><LI> hido_shell.o(.data)
 </UL>
-<P><STRONG><a name="[188]"></a>_fp_digits</STRONG> (Thumb, 344 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
+<P><STRONG><a name="[189]"></a>_fp_digits</STRONG> (Thumb, 344 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
 <BR><BR>[Calls]<UL><LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
 <LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
 <LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
@@ -3316,25 +3328,25 @@
 <LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
 <LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
 </UL>
-<BR>[Called By]<UL><LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<BR>[Called By]<UL><LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
 </UL>
 
-<P><STRONG><a name="[187]"></a>_printf_core</STRONG> (Thumb, 1754 bytes, Stack size 128 bytes, printfa.o(i._printf_core), UNUSED)
+<P><STRONG><a name="[188]"></a>_printf_core</STRONG> (Thumb, 1754 bytes, Stack size 128 bytes, printfa.o(i._printf_core), UNUSED)
 <BR><BR>[Calls]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
 <LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_pre_padding
-<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_post_padding
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
+<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_pre_padding
+<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_post_padding
+<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
 </UL>
-<BR>[Called By]<UL><LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0vsnprintf
+<BR>[Called By]<UL><LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0vsnprintf
 </UL>
 
-<P><STRONG><a name="[18a]"></a>_printf_post_padding</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)
-<BR><BR>[Called By]<UL><LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<P><STRONG><a name="[18b]"></a>_printf_post_padding</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)
+<BR><BR>[Called By]<UL><LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
 </UL>
 
-<P><STRONG><a name="[189]"></a>_printf_pre_padding</STRONG> (Thumb, 44 bytes, Stack size 40 bytes, printfa.o(i._printf_pre_padding), UNUSED)
-<BR><BR>[Called By]<UL><LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
+<P><STRONG><a name="[18a]"></a>_printf_pre_padding</STRONG> (Thumb, 44 bytes, Stack size 40 bytes, printfa.o(i._printf_pre_padding), UNUSED)
+<BR><BR>[Called By]<UL><LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
 </UL>
 
 <P><STRONG><a name="[38]"></a>_snputc</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, printfa.o(i._snputc))

--
Gitblit v1.9.3