From 5dd1b7fdcc52a43867f924e8d220de8467af372a Mon Sep 17 00:00:00 2001
From: QuakeGod <quakegod@sina.com>
Date: 星期五, 12 四月 2024 14:27:26 +0800
Subject: [PATCH] Change KBus to OOP and Packge

---
 C8T6_TestApp1/MDK-ARM/F030C8T6_TestApp1/F030C8T6_TestApp1.map | 1890 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 955 insertions(+), 935 deletions(-)

diff --git a/C8T6_TestApp1/MDK-ARM/F030C8T6_TestApp1/F030C8T6_TestApp1.map b/C8T6_TestApp1/MDK-ARM/F030C8T6_TestApp1/F030C8T6_TestApp1.map
index 4d5d8c4..021cd15 100644
--- a/C8T6_TestApp1/MDK-ARM/F030C8T6_TestApp1/F030C8T6_TestApp1.map
+++ b/C8T6_TestApp1/MDK-ARM/F030C8T6_TestApp1/F030C8T6_TestApp1.map
@@ -22,6 +22,7 @@
     debug.o(i.ADCProcess) refers to debug.o(.data) for .data
     debug.o(i.ADCProcess) refers to kmachine.o(.bss) for KMem
     debug.o(i.ADCProcess) refers to kmachine.o(.data) for PowerDownEvent
+    debug.o(i.ADCProcess) refers to debug.o(.bss) for .bss
     debug.o(i.FormatHex) refers to printf8.o(i.__0sprintf$8) for __2sprintf
     debug.o(i.Locate) refers to printf8.o(i.__0sprintf$8) for __2sprintf
     debug.o(i.Locate) refers to functions.o(i.PutStr) for PutStr
@@ -70,12 +71,11 @@
     functions.o(i.LL_DMA_EnableChannel) refers to functions.o(.constdata) for .constdata
     functions.o(i.LL_DMA_EnableIT_TC) refers to functions.o(.constdata) for .constdata
     functions.o(i.LL_DMA_SetDataLength) refers to functions.o(.constdata) for .constdata
-    functions.o(i.PendSvCallBack) refers to fp0.o(i.ParseFP0Pkg) for ParseFP0Pkg
+    functions.o(i.PendSvCallBack) refers to fpx.o(i.FPxParsePkt) for FPxParsePkt
     functions.o(i.PendSvCallBack) refers to kbus.o(i.KBusParsePacket) for KBusParsePacket
     functions.o(i.PendSvCallBack) refers to functions.o(i.Uart2RecvDMA) for Uart2RecvDMA
-    functions.o(i.PendSvCallBack) refers to fp0.o(.data) for bSPI1RecvDone
-    functions.o(i.PendSvCallBack) refers to fp0.o(.data) for nSPI1RecvLenInBuf
-    functions.o(i.PendSvCallBack) refers to fp0.o(.bss) for SPI1RecvBuf
+    functions.o(i.PendSvCallBack) refers to functions.o(.data) for .data
+    functions.o(i.PendSvCallBack) refers to functions.o(.bss) for .bss
     functions.o(i.PendSvCallBack) refers to globaldef.o(.bss) for Uart2Stat
     functions.o(i.PendSvCallBack) refers to globaldef.o(.data) for Uart2RecvBuf1DataLen
     functions.o(i.PendSvCallBack) refers to globaldef.o(.bss) for Uart2RecvBuf1
@@ -92,12 +92,8 @@
     functions.o(i.ReadConfig_5) refers to functions.o(i.Input165Cfg) for Input165Cfg
     functions.o(i.SPI1_IRQ_CallBack) refers to functions.o(i.logData) for logData
     functions.o(i.SPI1_IRQ_CallBack) refers to kmachine.o(.bss) for KMem
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.data) for bSPI1Sending
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.bss) for SPI1RecvBuf
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.data) for nSPI1RecvLenInBuf
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.data) for bSPI1RecvDone
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.data) for bSPI1SendDone
-    functions.o(i.SPI1_IRQ_CallBack) refers to fp0.o(.bss) for SPI1SendBuf
+    functions.o(i.SPI1_IRQ_CallBack) refers to functions.o(.data) for .data
+    functions.o(i.SPI1_IRQ_CallBack) refers to functions.o(.bss) for .bss
     functions.o(i.SendPacket) refers to functions.o(i.PutStr1) for PutStr1
     functions.o(i.SendPacket) refers to functions.o(i.PutStr2) for PutStr2
     functions.o(i.SendPacket) refers to globaldef.o(.bss) for Uart1Stat
@@ -140,30 +136,29 @@
     functions.o(i.modbuscrc16test) refers to functions.o(i.crc16table) for crc16table
     functions.o(i.modbuscrc16test) refers to functions.o(i.crc16bitbybit) for crc16bitbybit
     functions.o(i.modbuscrc16test) refers to functions.o(.conststring) for .conststring
+    kbus.o(i.KBusAddChildAddrByInfo) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusCheckPacket) refers to memcpya.o(.text) for __aeabi_memcpy
     kbus.o(i.KBusCheckPacket) refers to kbus.o(i.KBusBCC) for KBusBCC
     kbus.o(i.KBusCheckPacket) refers to kbus.o(.data) for .data
     kbus.o(i.KBusCheckPacket) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusCheckPacket) refers to globaldef.o(.bss) for Uart2Stat
     kbus.o(i.KBusCheckPacket) refers to kmachine.o(.bss) for KMem
-    kbus.o(i.KBusMakePacket) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    kbus.o(i.KBusInit) refers to kbus.o(.bss) for .bss
+    kbus.o(i.KBusMakeDefaultClildInfo) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusMakePacket) refers to memcpya.o(.text) for __aeabi_memcpy
     kbus.o(i.KBusMakePacket) refers to kbus.o(i.KBusBCC) for KBusBCC
     kbus.o(i.KBusMasterFunc) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
     kbus.o(i.KBusMasterFunc) refers to functions.o(i.GetuS) for GetuS
+    kbus.o(i.KBusMasterFunc) refers to kbus.o(i.KBusSearchChild) for KBusSearchChild
     kbus.o(i.KBusMasterFunc) refers to kbus.o(i.KBusMakePacket) for KBusMakePacket
     kbus.o(i.KBusMasterFunc) refers to functions.o(i.SendPacket) for SendPacket
+    kbus.o(i.KBusMasterFunc) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusMasterFunc) refers to kbus.o(.data) for .data
     kbus.o(i.KBusMasterFunc) refers to kmachine.o(.bss) for KMem
-    kbus.o(i.KBusMasterFunc) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusMasterFunc) refers to globaldef.o(.bss) for Uart2Stat
-    kbus.o(i.KBusMasterParsePacket) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
-    kbus.o(i.KBusMasterParsePacket) refers to kbus.o(i.KBusMakePacket) for KBusMakePacket
-    kbus.o(i.KBusMasterParsePacket) refers to functions.o(i.SendPacket) for SendPacket
     kbus.o(i.KBusMasterParsePacket) refers to uread4.o(.text) for __aeabi_uread4
     kbus.o(i.KBusMasterParsePacket) refers to kbus.o(.data) for .data
     kbus.o(i.KBusMasterParsePacket) refers to kbus.o(.bss) for .bss
-    kbus.o(i.KBusMasterParsePacket) refers to kmachine.o(.bss) for KMem
     kbus.o(i.KBusParsePacket) refers to functions.o(i.GetuS) for GetuS
     kbus.o(i.KBusParsePacket) refers to kbus.o(i.KBusCheckPacket) for KBusCheckPacket
     kbus.o(i.KBusParsePacket) refers to kbus.o(i.KBusMasterParsePacket) for KBusMasterParsePacket
@@ -175,19 +170,25 @@
     kbus.o(i.KBusRepeaterFunc) refers to functions.o(i.ToggleRunLed) for ToggleRunLed
     kbus.o(i.KBusRepeaterFunc) refers to kmachine.o(.bss) for KMem
     kbus.o(i.KBusRepeaterFunc) refers to kbus.o(.data) for .data
+    kbus.o(i.KBusSearchChild) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
+    kbus.o(i.KBusSearchChild) refers to functions.o(i.GetuS) for GetuS
+    kbus.o(i.KBusSearchChild) refers to kbus.o(i.KBusMakeDefaultClildInfo) for KBusMakeDefaultClildInfo
+    kbus.o(i.KBusSearchChild) refers to kbus.o(i.KBusAddChildAddrByInfo) for KBusAddChildAddrByInfo
+    kbus.o(i.KBusSearchChild) refers to kbus.o(.bss) for .bss
+    kbus.o(i.KBusSetCallBackFunc) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusSlaveCheckPacket) refers to kbus.o(i.KBusBCC) for KBusBCC
     kbus.o(i.KBusSlaveCheckPacket) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusSlaveCheckPacket) refers to globaldef.o(.bss) for Uart2Stat
     kbus.o(i.KBusSlaveFunc) refers to functions.o(i.GetuS) for GetuS
     kbus.o(i.KBusSlaveFunc) refers to kbus.o(.data) for .data
     kbus.o(i.KBusSlaveFunc) refers to kmachine.o(.bss) for KMem
-    kbus.o(i.KBusSlaveParsePacket) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
     kbus.o(i.KBusSlaveParsePacket) refers to kbus.o(i.KBusMakePacket) for KBusMakePacket
     kbus.o(i.KBusSlaveParsePacket) refers to functions.o(i.SendPacket) for SendPacket
     kbus.o(i.KBusSlaveParsePacket) refers to globaldef.o(.bss) for Uart2Stat
     kbus.o(i.KBusSlaveParsePacket) refers to kbus.o(.bss) for .bss
     kbus.o(i.KBusSlaveParsePacket) refers to kbus.o(.data) for .data
     kbus.o(i.KBusSlaveParsePacket) refers to kmachine.o(.bss) for KMem
+    kbus.o(i.KBusUpdateChildInfo) refers to kbus.o(.bss) for .bss
     klink.o(i.KLCheckPacket) refers to klink.o(i.KLBCC) for KLBCC
     klink.o(i.KLMakeRplyPacket) refers to memcpya.o(.text) for __aeabi_memcpy
     klink.o(i.KLMakeRplyPacket) refers to klink.o(i.KLBCC) for KLBCC
@@ -197,30 +198,31 @@
     klink.o(i.KLParsePacket) refers to klink.o(i.KLParseReqPacket) for KLParseReqPacket
     klink.o(i.KLParsePacket) refers to klink.o(.data) for .data
     klink.o(i.KLParsePacket) refers to klink.o(.bss) for .bss
-    klink.o(i.KLParseReqPacket) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    klink.o(i.KLParseReqPacket) refers to klink.o(i.KLMakeRplyPacket) for KLMakeRplyPacket
+    klink.o(i.KLParseReqPacket) refers to functions.o(i.SendPacket) for SendPacket
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.WriteFactoryData) for WriteFactoryData
     klink.o(i.KLParseReqPacket) refers to memcpya.o(.text) for __aeabi_memcpy
     klink.o(i.KLParseReqPacket) refers to klink.o(.data) for .data
     klink.o(i.KLParseReqPacket) refers to klink.o(.bss) for .bss
-    klink.o(i.KLParseReqPacket) refers to kmachine.o(.bss) for KMem
+    klink.o(i.KLParseReqPacket) refers to kmachine.o(.bss) for KMRunStat
     klink.o(i.KLParseReqPacket) refers to plcfunctions.o(.bss) for PLCMem
     klink.o(i.KLParseReqPacket) refers to kmachine.o(.constdata) for KMInfoBlock
     klink.o(i.KLParseReqPacket) refers to kbus.o(.bss) for KBusChnStats
     klink.o(i.KLParseReqPacket) refers to kmachine.o(.bss) for storedKMSysCfg
     klink.o(i.KLParseReqPacket) refers to klink.o(i.SetBitValue) for SetBitValue
-    klink.o(i.KLParseReqPacket) refers to plcfunctions.o(i.StartPLC) for StartPLC
     klink.o(i.KLParseReqPacket) refers to plcfunctions.o(i.StopPLC) for StopPLC
+    klink.o(i.KLParseReqPacket) refers to plcfunctions.o(i.StartPLC) for StartPLC
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.WriteProgram) for WriteProgram
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.SaveRunStat) for SaveRunStat
-    klink.o(i.KLParseReqPacket) refers to klink.o(i.KLMakeRplyPacket) for KLMakeRplyPacket
-    klink.o(i.KLParseReqPacket) refers to functions.o(i.SendPacket) for SendPacket
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.WriteSysCfgToFlash) for WriteSysCfgToFlash
     klink.o(i.KLParseReqPacket) refers to memseta.o(.text) for __aeabi_memclr4
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.GetEventLogAddr) for GetEventLogAddr
     klink.o(i.KLParseReqPacket) refers to kmachine.o(i.ClearEventLog) for ClearEventLog
+    klink.o(i.KLParseReqPacket) refers to kmachine.o(i.WriteNewApp) for WriteNewApp
+    klink.o(i.KLParseReqPacket) refers to kmachine.o(i.WriteNewAppInfo) for WriteNewAppInfo
     modbusrtu.o(i.ModBusSlaveCheckPkg) refers to modbusrtu.o(i.crc16tablefast) for crc16tablefast
     modbusrtu.o(i.ModBusSlaveParsePkg) refers to modbusrtu.o(i.ModBusSlaveCheckPkg) for ModBusSlaveCheckPkg
-    modbusrtu.o(i.ModBusSlaveParsePkg) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    modbusrtu.o(i.ModBusSlaveParsePkg) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     modbusrtu.o(i.ModBusSlaveParsePkg) refers to modbusrtu.o(i.GetBitValue) for GetBitValue
     modbusrtu.o(i.ModBusSlaveParsePkg) refers to modbusrtu.o(i.SetAddrBit) for SetAddrBit
     modbusrtu.o(i.ModBusSlaveParsePkg) refers to memcpya.o(.text) for __aeabi_memcpy
@@ -253,7 +255,7 @@
     plcfunctions.o(i.IsTimerOn) refers to kmachine.o(.bss) for KMem
     plcfunctions.o(i.PopOutVal) refers to kmachine.o(.bss) for KMem
     plcfunctions.o(i.ProcessPLCBinProg) refers to kmachine.o(i.SetCoilValue) for SetCoilValue
-    plcfunctions.o(i.ProcessPLCBinProg) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    plcfunctions.o(i.ProcessPLCBinProg) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     plcfunctions.o(i.ProcessPLCBinProg) refers to plcfunctions.o(i.PopOutVal) for PopOutVal
     plcfunctions.o(i.ProcessPLCBinProg) refers to plcfunctions.o(i.PushInVal) for PushInVal
     plcfunctions.o(i.ProcessPLCBinProg) refers to kmachine.o(i.GetCoilValue) for GetCoilValue
@@ -293,18 +295,16 @@
     kmachine.o(i.CheckEventLog) refers to kmachine.o(.data) for .data
     kmachine.o(i.ClearEventLog) refers to kmachine.o(i.EraseFlashMem) for EraseFlashMem
     kmachine.o(i.ClearEventLog) refers to kmachine.o(.data) for .data
-    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock) for HAL_FLASH_Unlock
-    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase) for HAL_FLASHEx_Erase
-    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Program) for HAL_FLASH_Program
-    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock) for HAL_FLASH_Lock
-    kmachine.o(i.EraseFlashMem) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock) for HAL_FLASH_Unlock
-    kmachine.o(i.EraseFlashMem) refers to stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase) for HAL_FLASHEx_Erase
-    kmachine.o(i.EraseFlashMem) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock) for HAL_FLASH_Lock
-    kmachine.o(i.GetCoilValue) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_ll_flash.o(i.LL_Flash_Unlock) for LL_Flash_Unlock
+    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_ll_flash.o(i.LL_Flash_PageErase) for LL_Flash_PageErase
+    kmachine.o(i.EraseAndWriteToFlashMem) refers to stm32f0xx_ll_flash.o(i.LL_FLASH_Program) for LL_FLASH_Program
+    kmachine.o(i.EraseFlashMem) refers to stm32f0xx_ll_flash.o(i.LL_Flash_Unlock) for LL_Flash_Unlock
+    kmachine.o(i.EraseFlashMem) refers to stm32f0xx_ll_flash.o(i.LL_Flash_PageErase) for LL_Flash_PageErase
+    kmachine.o(i.GetCoilValue) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     kmachine.o(i.GetCoilValue) refers to kmachine.o(i.GetBitValue) for GetBitValue
     kmachine.o(i.GetCoilValue) refers to kmachine.o(.bss) for .bss
     kmachine.o(i.GetEventLogAddr) refers to kmachine.o(.data) for .data
-    kmachine.o(i.GetVarData) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    kmachine.o(i.GetVarData) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     kmachine.o(i.GetVarData) refers to kmachine.o(.bss) for .bss
     kmachine.o(i.KMachineInit) refers to kmachine.o(i.CheckEventLog) for CheckEventLog
     kmachine.o(i.KMachineInit) refers to kmachine.o(i.LoadRunStat) for LoadRunStat
@@ -325,20 +325,22 @@
     kmachine.o(i.SaveRunStat) refers to kmachine.o(i.WriteToFlashMemNoErase) for WriteToFlashMemNoErase
     kmachine.o(i.SaveRunStat) refers to kmachine.o(.data) for .data
     kmachine.o(i.SaveRunStat) refers to kmachine.o(.bss) for .bss
-    kmachine.o(i.SetCoilValue) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    kmachine.o(i.SetCoilValue) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     kmachine.o(i.SetCoilValue) refers to kmachine.o(i.SetBitValue) for SetBitValue
     kmachine.o(i.SetCoilValue) refers to kmachine.o(.bss) for .bss
-    kmachine.o(i.SetVarData) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    kmachine.o(i.SetVarData) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     kmachine.o(i.SetVarData) refers to kmachine.o(.bss) for .bss
     kmachine.o(i.WriteFactoryData) refers to kmachine.o(i.EraseAndWriteToFlashMem) for EraseAndWriteToFlashMem
+    kmachine.o(i.WriteNewApp) refers to kmachine.o(i.WriteToFlashMemNoErase) for WriteToFlashMemNoErase
+    kmachine.o(i.WriteNewApp) refers to kmachine.o(i.EraseAndWriteToFlashMem) for EraseAndWriteToFlashMem
+    kmachine.o(i.WriteNewAppInfo) refers to kmachine.o(i.EraseAndWriteToFlashMem) for EraseAndWriteToFlashMem
     kmachine.o(i.WriteProgram) refers to kmachine.o(i.WriteToFlashMemNoErase) for WriteToFlashMemNoErase
     kmachine.o(i.WriteProgram) refers to kmachine.o(i.EraseAndWriteToFlashMem) for EraseAndWriteToFlashMem
     kmachine.o(i.WriteProgram) refers to kmachine.o(.bss) for .bss
     kmachine.o(i.WriteSysCfgToFlash) refers to kmachine.o(i.WriteToFlashMemNoErase) for WriteToFlashMemNoErase
     kmachine.o(i.WriteSysCfgToFlash) refers to kmachine.o(i.EraseAndWriteToFlashMem) for EraseAndWriteToFlashMem
-    kmachine.o(i.WriteToFlashMemNoErase) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock) for HAL_FLASH_Unlock
-    kmachine.o(i.WriteToFlashMemNoErase) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Program) for HAL_FLASH_Program
-    kmachine.o(i.WriteToFlashMemNoErase) refers to stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock) for HAL_FLASH_Lock
+    kmachine.o(i.WriteToFlashMemNoErase) refers to stm32f0xx_ll_flash.o(i.LL_Flash_Unlock) for LL_Flash_Unlock
+    kmachine.o(i.WriteToFlashMemNoErase) refers to stm32f0xx_ll_flash.o(i.LL_FLASH_Program) for LL_FLASH_Program
     kmachine.o(i.next_pow_of_2) refers to kmachine.o(i.is_pow_of_2) for is_pow_of_2
     bsp.o(i.LL_DMA_SetChannelPriorityLevel) refers to bsp.o(.constdata) for .constdata
     bsp.o(i.LL_DMA_SetDataTransferDirection) refers to bsp.o(.constdata) for .constdata
@@ -430,37 +432,17 @@
     stm32f0xx_it.o(i.USART2_IRQHandler) refers to functions.o(i.Uart2RecvDone) for Uart2RecvDone
     stm32f0xx_it.o(i.USART2_IRQHandler) refers to functions.o(i.Uart2SendDone) for Uart2SendDone
     stm32f0xx_it.o(i.USART2_IRQHandler) refers to globaldef.o(.bss) for Uart2Stat
-    fp0.o(i.FP0_Init) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay
-    fp0.o(i.FP0_Init) refers to functions.o(i.GetuS) for GetuS
-    fp0.o(i.FP0_Init) refers to fp0.o(.data) for .data
-    fp0.o(i.FP0_Init) refers to kbus.o(.data) for nChilds
-    fp0.o(i.FP0_Proc) refers to fp0.o(i.LL_GPIO_IsInputPinSet) for LL_GPIO_IsInputPinSet
-    fp0.o(i.FP0_Proc) refers to functions.o(i.GetuS) for GetuS
-    fp0.o(i.FP0_Proc) refers to fp0.o(.data) for .data
-    fp0.o(i.FP0_Proc) refers to kmachine.o(.bss) for KMem
-    fp0.o(i.ParseFP0Pkg) refers to functions.o(i.logData) for logData
-    fp0.o(i.ParseFP0Pkg) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
-    fp0.o(i.ParseFP0Pkg) refers to fp0.o(i.CalFP0BCC) for CalFP0BCC
-    fp0.o(i.ParseFP0Pkg) refers to fp0.o(i.SendFP0Pkg) for SendFP0Pkg
-    fp0.o(i.ParseFP0Pkg) refers to fp0.o(.data) for .data
-    fp0.o(i.ParseFP0Pkg) refers to kmachine.o(.bss) for KMem
-    fp0.o(i.ParseFP0Pkg) refers to fp0.o(.bss) for .bss
-    fp0.o(i.SendFP0Pkg) refers to memcpya.o(.text) for __aeabi_memcpy
-    fp0.o(i.SendFP0Pkg) refers to functions.o(i.logData) for logData
-    fp0.o(i.SendFP0Pkg) refers to kmachine.o(.bss) for KMem
-    fp0.o(i.SendFP0Pkg) refers to fp0.o(.data) for .data
-    fp0.o(i.SendFP0Pkg) refers to fp0.o(.bss) for .bss
+    main.o(i.FPxCallBackFunc) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    main.o(i.FPxCallBackFunc) refers to fpx.o(.bss) for FPxMem
+    main.o(i.FPxCallBackFunc) refers to kbus.o(.bss) for KBusMem
     main.o(i.HAL_SYSTICK_Callback) refers to functions.o(.data) for CurTickuS
     main.o(i.HAL_SYSTICK_Callback) refers to kbus.o(.data) for nSlaveTick
     main.o(i.HAL_SYSTICK_Callback) refers to main.o(.data) for .data
     main.o(i.HAL_SYSTICK_Callback) refers to kmachine.o(.bss) for KMem
-    main.o(i.main) refers to stm32f0xx_ll_utils.o(i.LL_Init1msTick) for LL_Init1msTick
-    main.o(i.main) refers to functions.o(i.SetRunLed) for SetRunLed
-    main.o(i.main) refers to functions.o(i.SetErrLed) for SetErrLed
-    main.o(i.main) refers to functions.o(i.GetuS) for GetuS
-    main.o(i.main) refers to stm32f0xx_ll_utils.o(i.LL_mDelay) for LL_mDelay
-    main.o(i.main) refers to functions.o(i.ToggleRunLed) for ToggleRunLed
-    main.o(i.main) refers to functions.o(i.ToggleErrLed) for ToggleErrLed
+    main.o(i.KBusCallBackFunc) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    main.o(i.KBusCallBackFunc) refers to fpx.o(.bss) for FPxMem
+    main.o(i.KBusCallBackFunc) refers to kbus.o(.bss) for KBusMem
+    main.o(i.KBusCallBackFunc) refers to kmachine.o(.bss) for KMem
     main.o(i.main) refers to functions.o(i.InitUartstat) for InitUartstat
     main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_Init) for HAL_Init
     main.o(i.main) refers to bsp.o(i.SystemClock_Config) for SystemClock_Config
@@ -470,7 +452,11 @@
     main.o(i.main) refers to kmachine.o(i.KMachineInit) for KMachineInit
     main.o(i.main) refers to kmachine.o(i.ReadSysCfgFromFlash) for ReadSysCfgFromFlash
     main.o(i.main) refers to functions.o(i.ReadJumperSW) for ReadJumperSW
-    main.o(i.main) refers to fp0.o(i.FP0_Init) for FP0_Init
+    main.o(i.main) refers to kbus.o(i.KBusInit) for KBusInit
+    main.o(i.main) refers to kbus.o(i.KBusSetCallBackFunc) for KBusSetCallBackFunc
+    main.o(i.main) refers to fpx.o(i.FPx_Init) for FPx_Init
+    main.o(i.main) refers to fpx.o(i.FPxSetCallBackFunc) for FPxSetCallBackFunc
+    main.o(i.main) refers to fpx.o(i.FPx_SetIOCount) for FPx_SetIOCount
     main.o(i.main) refers to bsp.o(i.MX_USART1_UART_Init) for MX_USART1_UART_Init
     main.o(i.main) refers to bsp.o(i.MX_USART2_UART_Init) for MX_USART2_UART_Init
     main.o(i.main) refers to bsp.o(i.MX_SPI1_Init) for MX_SPI1_Init
@@ -478,13 +464,16 @@
     main.o(i.main) refers to bsp.o(i.MX_TIM6_Init) for MX_TIM6_Init
     main.o(i.main) refers to functions.o(i.Uart2RecvDMA) for Uart2RecvDMA
     main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay
+    main.o(i.main) refers to functions.o(i.SetRunLed) for SetRunLed
+    main.o(i.main) refers to functions.o(i.SetErrLed) for SetErrLed
     main.o(i.main) refers to functions.o(i.SetOutStat) for SetOutStat
     main.o(i.main) refers to debug.o(i.ShowInitInfo) for ShowInitInfo
+    main.o(i.main) refers to functions.o(i.GetuS) for GetuS
     main.o(i.main) refers to plcfunctions.o(i.InitPLC) for InitPLC
     main.o(i.main) refers to plcfunctions.o(i.StartPLC) for StartPLC
     main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
     main.o(i.main) refers to plcfunctions.o(i.StopPLC) for StopPLC
-    main.o(i.main) refers to fp0.o(i.FP0_Proc) for FP0_Proc
+    main.o(i.main) refers to fpx.o(i.FPx_Proc) for FPx_Proc
     main.o(i.main) refers to plcfunctions.o(i.ProcessPLCBinProg) for ProcessPLCBinProg
     main.o(i.main) refers to kbus.o(i.KBusMasterFunc) for KBusMasterFunc
     main.o(i.main) refers to kbus.o(i.KBusSlaveFunc) for KBusSlaveFunc
@@ -492,25 +481,52 @@
     main.o(i.main) refers to debug.o(.emb_text) for add1
     main.o(i.main) refers to modbusrtu.o(i.ModBusSlaveParsePkg) for ModBusSlaveParsePkg
     main.o(i.main) refers to klink.o(i.KLParsePacket) for KLParsePacket
-    main.o(i.main) refers to main.o(.data) for .data
+    main.o(i.main) refers to memcpya.o(.text) for __aeabi_memcpy4
     main.o(i.main) refers to kmachine.o(.bss) for KMRunStat
     main.o(i.main) refers to main.o(.bss) for .bss
     main.o(i.main) refers to globaldef.o(.bss) for Uart1Stat
     main.o(i.main) refers to globaldef.o(.bss) for Uart2Stat
-    main.o(i.main) refers to kbus.o(.bss) for KBusChnStats
     main.o(i.main) refers to globaldef.o(.data) for PendSvCount
     main.o(i.main) refers to functions.o(.data) for TickFreq
     main.o(i.main) refers to kmachine.o(.bss) for storedKMSysCfg
-    main.o(i.main) refers to kbus.o(.data) for nStationID
+    main.o(i.main) refers to kbus.o(.data) for nChilds
+    main.o(i.main) refers to main.o(i.KBusCallBackFunc) for KBusCallBackFunc
+    main.o(i.main) refers to main.o(i.FPxCallBackFunc) for FPxCallBackFunc
     main.o(i.main) refers to globaldef.o(.data) for Uart1Baud
     main.o(i.main) refers to globaldef.o(.bss) for Uart2RecvBuf1
+    main.o(i.main) refers to main.o(.data) for .data
     main.o(i.main) refers to plcfunctions.o(.data) for nSizeProg1
-    main.o(i.main) refers to fp0.o(.data) for nOutputBytes
+    main.o(i.main) refers to fpx.o(.bss) for FPxStat
+    main.o(i.main) refers to kbus.o(.bss) for KBusMem
+    main.o(i.main) refers to kbus.o(.data) for nSlaveTick
     main.o(i.main) refers to globaldef.o(.data) for Uart1RecvBuf1DataLen
     main.o(i.main) refers to globaldef.o(.bss) for Uart1RecvBuf1
     main.o(i.main) refers to plcfunctions.o(.bss) for PLCMem
-    main.o(i.main) refers to memcpya.o(.text) for __aeabi_memcpy4
     main.o(i.main) refers to main.o(.constdata) for .constdata
+    fpx.o(i.FPxParsePkt) refers to functions.o(i.logData) for logData
+    fpx.o(i.FPxParsePkt) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    fpx.o(i.FPxParsePkt) refers to fpx.o(i.FPxCalBCC) for FPxCalBCC
+    fpx.o(i.FPxParsePkt) refers to fpx.o(i.FPxSendPkt) for FPxSendPkt
+    fpx.o(i.FPxParsePkt) refers to kmachine.o(.bss) for KMem
+    fpx.o(i.FPxParsePkt) refers to fpx.o(.bss) for .bss
+    fpx.o(i.FPxParsePkt) refers to functions.o(.data) for bSPI1Recving
+    fpx.o(i.FPxSendPkt) refers to memcpya.o(.text) for __aeabi_memcpy
+    fpx.o(i.FPxSendPkt) refers to functions.o(i.logData) for logData
+    fpx.o(i.FPxSendPkt) refers to kmachine.o(.bss) for KMem
+    fpx.o(i.FPxSendPkt) refers to functions.o(.data) for bSPI1Sending
+    fpx.o(i.FPxSendPkt) refers to functions.o(.bss) for SPI1SendBuf
+    fpx.o(i.FPxSetCallBackFunc) refers to fpx.o(.bss) for .bss
+    fpx.o(i.FPx_Init) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay
+    fpx.o(i.FPx_Init) refers to functions.o(i.GetuS) for GetuS
+    fpx.o(i.FPx_Init) refers to functions.o(.data) for bSPI1Sending
+    fpx.o(i.FPx_Init) refers to kbus.o(.data) for nChilds
+    fpx.o(i.FPx_Init) refers to fpx.o(.bss) for .bss
+    fpx.o(i.FPx_Proc) refers to fpx.o(i.LL_GPIO_IsInputPinSet) for LL_GPIO_IsInputPinSet
+    fpx.o(i.FPx_Proc) refers to functions.o(i.GetuS) for GetuS
+    fpx.o(i.FPx_Proc) refers to fpx.o(.bss) for .bss
+    fpx.o(i.FPx_Proc) refers to kmachine.o(.bss) for KMem
+    fpx.o(i.FPx_Proc) refers to functions.o(.data) for nSPI1RecvPos
+    fpx.o(i.FPx_SetIOCount) refers to fpx.o(.bss) for .bss
     system_stm32f0xx.o(i.SystemCoreClockUpdate) refers to uidiv.o(.text) for __aeabi_uidivmod
     system_stm32f0xx.o(i.SystemCoreClockUpdate) refers to system_stm32f0xx.o(.data) for .data
     system_stm32f0xx.o(i.SystemCoreClockUpdate) refers to system_stm32f0xx.o(.constdata) for .constdata
@@ -746,7 +762,7 @@
     stm32f0xx_hal_dma.o(i.HAL_DMA_PollForTransfer) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
     stm32f0xx_hal_dma.o(i.HAL_DMA_Start) refers to stm32f0xx_hal_dma.o(i.DMA_SetConfig) for DMA_SetConfig
     stm32f0xx_hal_dma.o(i.HAL_DMA_Start_IT) refers to stm32f0xx_hal_dma.o(i.DMA_SetConfig) for DMA_SetConfig
-    stm32f0xx_hal_dma.o(i.HAL_DMA_UnRegisterCallback) refers to kbus.o(i.__ARM_common_switch8) for __ARM_common_switch8
+    stm32f0xx_hal_dma.o(i.HAL_DMA_UnRegisterCallback) refers to modbusrtu.o(i.__ARM_common_switch8) for __ARM_common_switch8
     stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority) refers to stm32f0xx_hal_cortex.o(i.NVIC_SetPriority) for NVIC_SetPriority
     stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config) refers to stm32f0xx_hal_cortex.o(i.NVIC_SetPriority) for NVIC_SetPriority
     stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler) refers to main.o(i.HAL_SYSTICK_Callback) for HAL_SYSTICK_Callback
@@ -815,6 +831,7 @@
     stm32f0xx_ll_tim.o(i.LL_TIM_OC_Init) refers to stm32f0xx_ll_tim.o(i.OC1Config) for OC1Config
     stm32f0xx_ll_tim.o(i.LL_TIM_OC_Init) refers to stm32f0xx_ll_tim.o(i.OC2Config) for OC2Config
     stm32f0xx_ll_tim.o(i.LL_TIM_OC_Init) refers to stm32f0xx_ll_tim.o(i.OC3Config) for OC3Config
+    stm32f0xx_ll_flash.o(i.LL_FLASH_Program) refers to llushr.o(.text) for __aeabi_llsr
     entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry10a.o(.ARM.Collect$$$$0000000D) for __rt_final_cpp
     entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry11a.o(.ARM.Collect$$$$0000000F) for __rt_final_exit
     entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry7b.o(.ARM.Collect$$$$00000008) for _main_clock
@@ -1093,7 +1110,7 @@
     Removing startup_stm32f030x8.o(HEAP), (512 bytes).
     Removing debug.o(.rev16_text), (4 bytes).
     Removing debug.o(.revsh_text), (4 bytes).
-    Removing debug.o(i.ADCProcess), (164 bytes).
+    Removing debug.o(i.ADCProcess), (240 bytes).
     Removing debug.o(i.FormatHex), (56 bytes).
     Removing debug.o(i.PowerDownProcess), (48 bytes).
     Removing debug.o(i.PowerRecoverProcess), (16 bytes).
@@ -1122,7 +1139,9 @@
     Removing functions.o(i.ReadConfig_4), (12 bytes).
     Removing functions.o(i.ReadConfig_5), (12 bytes).
     Removing functions.o(i.ToggleErr2Led), (20 bytes).
+    Removing functions.o(i.ToggleErrLed), (20 bytes).
     Removing functions.o(i.ToggleOutStat), (20 bytes).
+    Removing functions.o(i.ToggleRunLed), (20 bytes).
     Removing functions.o(i.TriggerPendSV), (16 bytes).
     Removing functions.o(i.Uart2SetDE), (10 bytes).
     Removing functions.o(i.Uart2TriggerSendDMA), (48 bytes).
@@ -1142,9 +1161,12 @@
     Removing globaldef.o(.data), (4 bytes).
     Removing kbus.o(.rev16_text), (4 bytes).
     Removing kbus.o(.revsh_text), (4 bytes).
+    Removing kbus.o(i.KBusDataPoll), (4 bytes).
+    Removing kbus.o(i.KBusLoopProcess), (4 bytes).
     Removing kbus.o(i.KBusRepeaterFunc), (48 bytes).
+    Removing kbus.o(i.KBusStart), (4 bytes).
+    Removing kbus.o(i.KBusUpdateChildInfo), (52 bytes).
     Removing kbus.o(.bss), (64 bytes).
-    Removing kbus.o(.bss), (144 bytes).
     Removing kbus.o(.data), (1 bytes).
     Removing kbus.o(.data), (4 bytes).
     Removing kbus.o(.data), (4 bytes).
@@ -1192,21 +1214,15 @@
     Removing bsp.o(i.MX_SPI2_Init), (180 bytes).
     Removing stm32f0xx_it.o(.rev16_text), (4 bytes).
     Removing stm32f0xx_it.o(.revsh_text), (4 bytes).
-    Removing fp0.o(.rev16_text), (4 bytes).
-    Removing fp0.o(.revsh_text), (4 bytes).
-    Removing fp0.o(i.CheckFP0Pkg), (4 bytes).
-    Removing fp0.o(.bss), (32 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
-    Removing fp0.o(.data), (1 bytes).
     Removing main.o(.rev16_text), (4 bytes).
     Removing main.o(.revsh_text), (4 bytes).
     Removing main.o(i.HexToInt), (40 bytes).
     Removing main.o(.constdata), (34 bytes).
+    Removing fpx.o(.rev16_text), (4 bytes).
+    Removing fpx.o(.revsh_text), (4 bytes).
+    Removing fpx.o(i.FPxChecPkt), (4 bytes).
+    Removing fpx.o(.data), (1 bytes).
+    Removing fpx.o(.data), (1 bytes).
     Removing system_stm32f0xx.o(.rev16_text), (4 bytes).
     Removing system_stm32f0xx.o(.revsh_text), (4 bytes).
     Removing system_stm32f0xx.o(i.SystemCoreClockUpdate), (120 bytes).
@@ -1420,20 +1436,30 @@
     Removing stm32f0xx_hal_pwr_ex.o(.revsh_text), (4 bytes).
     Removing stm32f0xx_hal_flash.o(.rev16_text), (4 bytes).
     Removing stm32f0xx_hal_flash.o(.revsh_text), (4 bytes).
+    Removing stm32f0xx_hal_flash.o(i.FLASH_Program_HalfWord), (32 bytes).
+    Removing stm32f0xx_hal_flash.o(i.FLASH_SetErrorCode), (56 bytes).
+    Removing stm32f0xx_hal_flash.o(i.FLASH_WaitForLastOperation), (80 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_EndOfOperationCallback), (2 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_GetError), (12 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_IRQHandler), (268 bytes).
+    Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock), (20 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_OB_Launch), (32 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_OB_Lock), (20 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_OB_Unlock), (36 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_OperationErrorCallback), (2 bytes).
+    Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_Program), (124 bytes).
     Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_Program_IT), (96 bytes).
+    Removing stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock), (36 bytes).
+    Removing stm32f0xx_hal_flash.o(.bss), (32 bytes).
     Removing stm32f0xx_hal_flash_ex.o(.rev16_text), (4 bytes).
     Removing stm32f0xx_hal_flash_ex.o(.revsh_text), (4 bytes).
+    Removing stm32f0xx_hal_flash_ex.o(i.FLASH_MassErase), (36 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.FLASH_OB_DisableWRP), (108 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.FLASH_OB_EnableWRP), (108 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.FLASH_OB_GetRDP), (32 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.FLASH_OB_RDP_LevelConfig), (96 bytes).
+    Removing stm32f0xx_hal_flash_ex.o(i.FLASH_PageErase), (36 bytes).
+    Removing stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase), (160 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase_IT), (88 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_OBErase), (80 bytes).
     Removing stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_OBGetConfig), (36 bytes).
@@ -1441,10 +1467,12 @@
     Removing stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_OBProgram), (204 bytes).
     Removing stm32f0xx_ll_utils.o(.rev16_text), (4 bytes).
     Removing stm32f0xx_ll_utils.o(.revsh_text), (4 bytes).
+    Removing stm32f0xx_ll_utils.o(i.LL_Init1msTick), (32 bytes).
     Removing stm32f0xx_ll_utils.o(i.LL_PLL_ConfigSystemClock_HSE), (104 bytes).
     Removing stm32f0xx_ll_utils.o(i.LL_PLL_ConfigSystemClock_HSI), (84 bytes).
     Removing stm32f0xx_ll_utils.o(i.LL_RCC_PLL_ConfigDomain_SYS), (44 bytes).
     Removing stm32f0xx_ll_utils.o(i.LL_SetSystemCoreClock), (12 bytes).
+    Removing stm32f0xx_ll_utils.o(i.LL_mDelay), (32 bytes).
     Removing stm32f0xx_ll_utils.o(i.UTILS_EnablePLLAndSwitchSystem), (152 bytes).
     Removing stm32f0xx_ll_utils.o(i.UTILS_GetPLLOutputFrequency), (24 bytes).
     Removing stm32f0xx_ll_utils.o(i.UTILS_PLL_IsBusy), (20 bytes).
@@ -1469,6 +1497,8 @@
     Removing stm32f0xx_ll_tim.o(i.OC2Config), (144 bytes).
     Removing stm32f0xx_ll_tim.o(i.OC3Config), (152 bytes).
     Removing stm32f0xx_ll_tim.o(i.OC4Config), (116 bytes).
+    Removing stm32f0xx_ll_flash.o(.rev16_text), (4 bytes).
+    Removing stm32f0xx_ll_flash.o(.revsh_text), (4 bytes).
     Removing dadd.o(.text), (356 bytes).
     Removing dmul.o(.text), (208 bytes).
     Removing ddiv.o(.text), (240 bytes).
@@ -1478,7 +1508,7 @@
     Removing functions.o(i.GetTick), (12 bytes).
     Removing depilogue.o(i.__ARM_clz), (46 bytes).
 
-387 unused section(s) (total 22186 bytes) removed from the image.
+400 unused section(s) (total 22869 bytes) removed from the image.
 
 ==============================================================================
 
@@ -1510,37 +1540,37 @@
     ../../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_spi.c 0x00000000   Number         0  stm32f0xx_ll_spi.o ABSOLUTE
     ../../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_usart.c 0x00000000   Number         0  stm32f0xx_ll_usart.o ABSOLUTE
     ../../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_ll_utils.c 0x00000000   Number         0  stm32f0xx_ll_utils.o ABSOLUTE
-    ../clib/microlib/division.c              0x00000000   Number         0  idiv.o ABSOLUTE
-    ../clib/microlib/division.c              0x00000000   Number         0  ldiv.o ABSOLUTE
-    ../clib/microlib/division.c              0x00000000   Number         0  uidiv.o ABSOLUTE
     ../clib/microlib/division.c              0x00000000   Number         0  uldiv.o ABSOLUTE
-    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry9b.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/division.c              0x00000000   Number         0  idiv.o ABSOLUTE
+    ../clib/microlib/division.c              0x00000000   Number         0  uidiv.o ABSOLUTE
+    ../clib/microlib/division.c              0x00000000   Number         0  ldiv.o ABSOLUTE
+    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8b.o ABSOLUTE
+    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry9a.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/init/entry.s            0x00000000   Number         0  entry11b.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  entry7a.o ABSOLUTE
     ../clib/microlib/init/entry.s            0x00000000   Number         0  entry7b.o ABSOLUTE
+    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry.o ABSOLUTE
+    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry2.o ABSOLUTE
     ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8a.o ABSOLUTE
-    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry8b.o ABSOLUTE
-    ../clib/microlib/init/entry.s            0x00000000   Number         0  entry9a.o ABSOLUTE
     ../clib/microlib/longlong.c              0x00000000   Number         0  llushr.o ABSOLUTE
     ../clib/microlib/longlong.c              0x00000000   Number         0  llsshr.o ABSOLUTE
     ../clib/microlib/longlong.c              0x00000000   Number         0  llshl.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printfb.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf0.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf1.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf2.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf3.o ABSOLUTE
     ../clib/microlib/printf/printf.c         0x00000000   Number         0  printfa.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf7.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf8.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf6.o ABSOLUTE
     ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf5.o ABSOLUTE
     ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf4.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf0.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf3.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf2.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf1.o ABSOLUTE
-    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printfb.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf6.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf7.o ABSOLUTE
+    ../clib/microlib/printf/printf.c         0x00000000   Number         0  printf8.o ABSOLUTE
     ../clib/microlib/printf/stubs.s          0x00000000   Number         0  stubs.o ABSOLUTE
     ../clib/microlib/stdio/fputc.c           0x00000000   Number         0  fputc.o ABSOLUTE
     ../clib/microlib/stdio/semi.s            0x00000000   Number         0  semi.o ABSOLUTE
@@ -1548,8 +1578,8 @@
     ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpya.o ABSOLUTE
     ../clib/microlib/string/memcpy.c         0x00000000   Number         0  memcpyb.o ABSOLUTE
     ../clib/microlib/string/memset.c         0x00000000   Number         0  memseta.o ABSOLUTE
-    ../clib/microlib/stubs.s                 0x00000000   Number         0  iusesemip.o ABSOLUTE
     ../clib/microlib/stubs.s                 0x00000000   Number         0  iusefp.o ABSOLUTE
+    ../clib/microlib/stubs.s                 0x00000000   Number         0  iusesemip.o ABSOLUTE
     ../clib/microlib/unhosted.c              0x00000000   Number         0  uread4.o ABSOLUTE
     ../fplib/microlib/fpadd.c                0x00000000   Number         0  dadd.o ABSOLUTE
     ../fplib/microlib/fpdiv.c                0x00000000   Number         0  ddiv.o ABSOLUTE
@@ -1588,13 +1618,14 @@
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_adc.c 0x00000000   Number         0  stm32f0xx_ll_adc.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_dma.c 0x00000000   Number         0  stm32f0xx_ll_dma.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_exti.c 0x00000000   Number         0  stm32f0xx_ll_exti.o ABSOLUTE
+    ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_flash.c 0x00000000   Number         0  stm32f0xx_ll_flash.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_gpio.c 0x00000000   Number         0  stm32f0xx_ll_gpio.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_rcc.c 0x00000000   Number         0  stm32f0xx_ll_rcc.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_spi.c 0x00000000   Number         0  stm32f0xx_ll_spi.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_usart.c 0x00000000   Number         0  stm32f0xx_ll_usart.o ABSOLUTE
     ..\..\Drivers\STM32F0xx_HAL_Driver\Src\stm32f0xx_ll_utils.c 0x00000000   Number         0  stm32f0xx_ll_utils.o ABSOLUTE
     ..\Src\BoardType.c                       0x00000000   Number         0  boardtype.o ABSOLUTE
-    ..\Src\FP0.c                             0x00000000   Number         0  fp0.o ABSOLUTE
+    ..\Src\FPx.c                             0x00000000   Number         0  fpx.o ABSOLUTE
     ..\Src\main.c                            0x00000000   Number         0  main.o ABSOLUTE
     ..\\..\ComLib\\Src\\BSP.c                0x00000000   Number         0  bsp.o ABSOLUTE
     ..\\..\ComLib\\Src\\KBus.c               0x00000000   Number         0  kbus.o ABSOLUTE
@@ -1607,7 +1638,8 @@
     ..\\..\ComLib\\Src\\stm32f0xx_it.c       0x00000000   Number         0  stm32f0xx_it.o ABSOLUTE
     ..\\..\ComLib\\Src\\system_stm32f0xx.c   0x00000000   Number         0  system_stm32f0xx.o ABSOLUTE
     ..\\..\Drivers\\STM32F0xx_HAL_Driver\\Src\\stm32f0xx_ll_tim.c 0x00000000   Number         0  stm32f0xx_ll_tim.o ABSOLUTE
-    ..\\Src\\FP0.c                           0x00000000   Number         0  fp0.o ABSOLUTE
+    ..\\..\\Drivers\\STM32F0xx_HAL_Driver\\Src\\stm32f0xx_ll_flash.c 0x00000000   Number         0  stm32f0xx_ll_flash.o ABSOLUTE
+    ..\\Src\\FPx.c                           0x00000000   Number         0  fpx.o ABSOLUTE
     ..\\Src\\main.c                          0x00000000   Number         0  main.o ABSOLUTE
     cdrcmple.s                               0x00000000   Number         0  cdrcmple.o ABSOLUTE
     dc.s                                     0x00000000   Number         0  dc.o ABSOLUTE
@@ -1639,275 +1671,269 @@
     .text                                    0x0800128c   Section        0  llshl.o(.text)
     i.AddEventLog                            0x080012ac   Section        0  kmachine.o(i.AddEventLog)
     i.AddSpace                               0x08001338   Section        0  myqueue.o(i.AddSpace)
-    i.CalFP0BCC                              0x08001364   Section        0  fp0.o(i.CalFP0BCC)
-    i.CheckEventLog                          0x08001384   Section        0  kmachine.o(i.CheckEventLog)
-    i.ClearEventLog                          0x080013f0   Section        0  kmachine.o(i.ClearEventLog)
-    i.DMA1_Channel2_3_IRQHandler             0x08001414   Section        0  stm32f0xx_it.o(i.DMA1_Channel2_3_IRQHandler)
-    i.DMA1_Channel4_5_IRQHandler             0x080014b4   Section        0  stm32f0xx_it.o(i.DMA1_Channel4_5_IRQHandler)
-    i.DelData                                0x080014ec   Section        0  myqueue.o(i.DelData)
-    i.EraseAndWriteToFlashMem                0x08001518   Section        0  kmachine.o(i.EraseAndWriteToFlashMem)
-    i.EraseFlashMem                          0x0800155e   Section        0  kmachine.o(i.EraseFlashMem)
-    i.FLASH_MassErase                        0x08001580   Section        0  stm32f0xx_hal_flash_ex.o(i.FLASH_MassErase)
-    FLASH_MassErase                          0x08001581   Thumb Code    26  stm32f0xx_hal_flash_ex.o(i.FLASH_MassErase)
-    i.FLASH_PageErase                        0x080015a4   Section        0  stm32f0xx_hal_flash_ex.o(i.FLASH_PageErase)
-    i.FLASH_Program_HalfWord                 0x080015c8   Section        0  stm32f0xx_hal_flash.o(i.FLASH_Program_HalfWord)
-    FLASH_Program_HalfWord                   0x080015c9   Thumb Code    22  stm32f0xx_hal_flash.o(i.FLASH_Program_HalfWord)
-    i.FLASH_SetErrorCode                     0x080015e8   Section        0  stm32f0xx_hal_flash.o(i.FLASH_SetErrorCode)
-    FLASH_SetErrorCode                       0x080015e9   Thumb Code    46  stm32f0xx_hal_flash.o(i.FLASH_SetErrorCode)
-    i.FLASH_WaitForLastOperation             0x08001620   Section        0  stm32f0xx_hal_flash.o(i.FLASH_WaitForLastOperation)
-    i.FP0_Init                               0x08001670   Section        0  fp0.o(i.FP0_Init)
-    i.FP0_Proc                               0x080016c0   Section        0  fp0.o(i.FP0_Proc)
-    i.GetBitValue                            0x080017b8   Section        0  modbusrtu.o(i.GetBitValue)
-    GetBitValue                              0x080017b9   Thumb Code    20  modbusrtu.o(i.GetBitValue)
-    i.GetBitValue                            0x080017cc   Section        0  kmachine.o(i.GetBitValue)
-    GetBitValue                              0x080017cd   Thumb Code    20  kmachine.o(i.GetBitValue)
-    i.GetCoilValue                           0x080017e0   Section        0  kmachine.o(i.GetCoilValue)
-    i.GetContinueData                        0x08001880   Section        0  myqueue.o(i.GetContinueData)
-    i.GetContinueEmptyRoom                   0x080018a6   Section        0  myqueue.o(i.GetContinueEmptyRoom)
-    i.GetEventLogAddr                        0x080018cc   Section        0  kmachine.o(i.GetEventLogAddr)
-    i.GetVarData                             0x080018f0   Section        0  kmachine.o(i.GetVarData)
-    i.GetuS                                  0x080019c8   Section        0  functions.o(i.GetuS)
-    i.HAL_Delay                              0x080019f4   Section        0  stm32f0xx_hal.o(i.HAL_Delay)
-    i.HAL_FLASHEx_Erase                      0x08001a10   Section        0  stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase)
-    i.HAL_FLASH_Lock                         0x08001ab0   Section        0  stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock)
-    i.HAL_FLASH_Program                      0x08001ac4   Section        0  stm32f0xx_hal_flash.o(i.HAL_FLASH_Program)
-    i.HAL_FLASH_Unlock                       0x08001b40   Section        0  stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock)
-    i.HAL_GetTick                            0x08001b64   Section        0  stm32f0xx_hal.o(i.HAL_GetTick)
-    i.HAL_IncTick                            0x08001b70   Section        0  stm32f0xx_hal.o(i.HAL_IncTick)
-    i.HAL_Init                               0x08001b80   Section        0  stm32f0xx_hal.o(i.HAL_Init)
-    i.HAL_InitTick                           0x08001ba0   Section        0  stm32f0xx_hal.o(i.HAL_InitTick)
-    i.HAL_MspInit                            0x08001bc4   Section        0  stm32f0xx_hal_msp.o(i.HAL_MspInit)
-    i.HAL_NVIC_SetPriority                   0x08001c08   Section        0  stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
-    i.HAL_RCCEx_PeriphCLKConfig              0x08001c10   Section        0  stm32f0xx_hal_rcc_ex.o(i.HAL_RCCEx_PeriphCLKConfig)
-    i.HAL_RCC_ClockConfig                    0x08001cfc   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
-    i.HAL_RCC_GetHCLKFreq                    0x08001e28   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
-    i.HAL_RCC_GetSysClockFreq                0x08001e34   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
-    i.HAL_RCC_OscConfig                      0x08001eb4   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
-    i.HAL_SYSTICK_CLKSourceConfig            0x08002208   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
-    i.HAL_SYSTICK_Callback                   0x08002220   Section        0  main.o(i.HAL_SYSTICK_Callback)
-    i.HAL_SYSTICK_Config                     0x08002294   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
-    i.HAL_SYSTICK_IRQHandler                 0x080022c4   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
-    i.HardFault_Handler                      0x080022cc   Section        0  stm32f0xx_it.o(i.HardFault_Handler)
-    i.InitPLC                                0x080022d0   Section        0  plcfunctions.o(i.InitPLC)
-    i.InitTimer                              0x0800231c   Section        0  plcfunctions.o(i.InitTimer)
-    i.InitUartstat                           0x0800235c   Section        0  functions.o(i.InitUartstat)
-    i.InituS                                 0x0800237c   Section        0  functions.o(i.InituS)
-    i.KBusBCC                                0x080023d0   Section        0  kbus.o(i.KBusBCC)
-    i.KBusCheckPacket                        0x080023e8   Section        0  kbus.o(i.KBusCheckPacket)
-    i.KBusMakePacket                         0x080024ec   Section        0  kbus.o(i.KBusMakePacket)
-    i.KBusMasterFunc                         0x0800256c   Section        0  kbus.o(i.KBusMasterFunc)
-    i.KBusMasterParsePacket                  0x080026f4   Section        0  kbus.o(i.KBusMasterParsePacket)
-    i.KBusParsePacket                        0x0800283c   Section        0  kbus.o(i.KBusParsePacket)
-    i.KBusSlaveCheckPacket                   0x080028bc   Section        0  kbus.o(i.KBusSlaveCheckPacket)
-    i.KBusSlaveFunc                          0x0800294c   Section        0  kbus.o(i.KBusSlaveFunc)
-    i.KBusSlaveParsePacket                   0x080029ac   Section        0  kbus.o(i.KBusSlaveParsePacket)
-    i.KLBCC                                  0x08002b28   Section        0  klink.o(i.KLBCC)
-    i.KLCheckPacket                          0x08002b3e   Section        0  klink.o(i.KLCheckPacket)
-    i.KLMakeRplyPacket                       0x08002b70   Section        0  klink.o(i.KLMakeRplyPacket)
-    i.KLParsePacket                          0x08002bac   Section        0  klink.o(i.KLParsePacket)
-    i.KLParseReqPacket                       0x08002bfc   Section        0  klink.o(i.KLParseReqPacket)
-    i.KMachineInit                           0x080032cc   Section        0  kmachine.o(i.KMachineInit)
-    i.LL_AHB1_GRP1_EnableClock               0x0800333c   Section        0  bsp.o(i.LL_AHB1_GRP1_EnableClock)
-    LL_AHB1_GRP1_EnableClock                 0x0800333d   Thumb Code    18  bsp.o(i.LL_AHB1_GRP1_EnableClock)
-    i.LL_APB1_GRP1_EnableClock               0x08003354   Section        0  bsp.o(i.LL_APB1_GRP1_EnableClock)
-    LL_APB1_GRP1_EnableClock                 0x08003355   Thumb Code    18  bsp.o(i.LL_APB1_GRP1_EnableClock)
-    i.LL_APB1_GRP2_EnableClock               0x0800336c   Section        0  bsp.o(i.LL_APB1_GRP2_EnableClock)
-    LL_APB1_GRP2_EnableClock                 0x0800336d   Thumb Code    18  bsp.o(i.LL_APB1_GRP2_EnableClock)
-    i.LL_DMA_ConfigAddresses                 0x08003384   Section        0  functions.o(i.LL_DMA_ConfigAddresses)
-    LL_DMA_ConfigAddresses                   0x08003385   Thumb Code    38  functions.o(i.LL_DMA_ConfigAddresses)
-    i.LL_DMA_DisableChannel                  0x080033b0   Section        0  functions.o(i.LL_DMA_DisableChannel)
-    LL_DMA_DisableChannel                    0x080033b1   Thumb Code    18  functions.o(i.LL_DMA_DisableChannel)
-    i.LL_DMA_EnableChannel                   0x080033c8   Section        0  functions.o(i.LL_DMA_EnableChannel)
-    LL_DMA_EnableChannel                     0x080033c9   Thumb Code    18  functions.o(i.LL_DMA_EnableChannel)
-    i.LL_DMA_EnableIT_TC                     0x080033e0   Section        0  functions.o(i.LL_DMA_EnableIT_TC)
-    LL_DMA_EnableIT_TC                       0x080033e1   Thumb Code    18  functions.o(i.LL_DMA_EnableIT_TC)
-    i.LL_DMA_SetChannelPriorityLevel         0x080033f8   Section        0  bsp.o(i.LL_DMA_SetChannelPriorityLevel)
-    LL_DMA_SetChannelPriorityLevel           0x080033f9   Thumb Code    24  bsp.o(i.LL_DMA_SetChannelPriorityLevel)
-    i.LL_DMA_SetDataLength                   0x08003414   Section        0  functions.o(i.LL_DMA_SetDataLength)
-    LL_DMA_SetDataLength                     0x08003415   Thumb Code    22  functions.o(i.LL_DMA_SetDataLength)
-    i.LL_DMA_SetDataTransferDirection        0x08003430   Section        0  bsp.o(i.LL_DMA_SetDataTransferDirection)
-    LL_DMA_SetDataTransferDirection          0x08003431   Thumb Code    22  bsp.o(i.LL_DMA_SetDataTransferDirection)
-    i.LL_DMA_SetMemoryIncMode                0x08003450   Section        0  bsp.o(i.LL_DMA_SetMemoryIncMode)
-    LL_DMA_SetMemoryIncMode                  0x08003451   Thumb Code    22  bsp.o(i.LL_DMA_SetMemoryIncMode)
-    i.LL_DMA_SetMemorySize                   0x0800346c   Section        0  bsp.o(i.LL_DMA_SetMemorySize)
-    LL_DMA_SetMemorySize                     0x0800346d   Thumb Code    24  bsp.o(i.LL_DMA_SetMemorySize)
-    i.LL_DMA_SetMode                         0x08003488   Section        0  bsp.o(i.LL_DMA_SetMode)
-    LL_DMA_SetMode                           0x08003489   Thumb Code    22  bsp.o(i.LL_DMA_SetMode)
-    i.LL_DMA_SetPeriphIncMode                0x080034a4   Section        0  bsp.o(i.LL_DMA_SetPeriphIncMode)
-    LL_DMA_SetPeriphIncMode                  0x080034a5   Thumb Code    22  bsp.o(i.LL_DMA_SetPeriphIncMode)
-    i.LL_DMA_SetPeriphSize                   0x080034c0   Section        0  bsp.o(i.LL_DMA_SetPeriphSize)
-    LL_DMA_SetPeriphSize                     0x080034c1   Thumb Code    24  bsp.o(i.LL_DMA_SetPeriphSize)
-    i.LL_GPIO_Init                           0x080034dc   Section        0  stm32f0xx_ll_gpio.o(i.LL_GPIO_Init)
-    i.LL_GPIO_IsInputPinSet                  0x08003580   Section        0  fp0.o(i.LL_GPIO_IsInputPinSet)
-    LL_GPIO_IsInputPinSet                    0x08003581   Thumb Code    14  fp0.o(i.LL_GPIO_IsInputPinSet)
-    i.LL_Init1msTick                         0x08003590   Section        0  stm32f0xx_ll_utils.o(i.LL_Init1msTick)
-    i.LL_RCC_GetSystemClocksFreq             0x080035b0   Section        0  stm32f0xx_ll_rcc.o(i.LL_RCC_GetSystemClocksFreq)
-    i.LL_RCC_GetUSARTClockFreq               0x080035c8   Section        0  stm32f0xx_ll_rcc.o(i.LL_RCC_GetUSARTClockFreq)
-    i.LL_SPI_Init                            0x0800361c   Section        0  stm32f0xx_ll_spi.o(i.LL_SPI_Init)
-    i.LL_TIM_Init                            0x08003680   Section        0  stm32f0xx_ll_tim.o(i.LL_TIM_Init)
-    i.LL_USART_ConfigAsyncMode               0x08003704   Section        0  bsp.o(i.LL_USART_ConfigAsyncMode)
-    LL_USART_ConfigAsyncMode                 0x08003705   Thumb Code    20  bsp.o(i.LL_USART_ConfigAsyncMode)
-    i.LL_USART_Init                          0x08003718   Section        0  stm32f0xx_ll_usart.o(i.LL_USART_Init)
-    i.LL_mDelay                              0x080037c4   Section        0  stm32f0xx_ll_utils.o(i.LL_mDelay)
-    i.LoadDefaultSysCfg                      0x080037e4   Section        0  kmachine.o(i.LoadDefaultSysCfg)
-    i.LoadRunStat                            0x080037f8   Section        0  kmachine.o(i.LoadRunStat)
-    i.Locate                                 0x0800385c   Section        0  debug.o(i.Locate)
-    i.MX_DMA_Init                            0x08003880   Section        0  bsp.o(i.MX_DMA_Init)
-    i.MX_GPIO_Init                           0x080038a8   Section        0  bsp.o(i.MX_GPIO_Init)
-    i.MX_IWDG_Init                           0x080039dc   Section        0  bsp.o(i.MX_IWDG_Init)
-    i.MX_SPI1_Init                           0x08003a10   Section        0  bsp.o(i.MX_SPI1_Init)
-    i.MX_TIM6_Init                           0x08003adc   Section        0  bsp.o(i.MX_TIM6_Init)
-    i.MX_USART1_UART_Init                    0x08003b30   Section        0  bsp.o(i.MX_USART1_UART_Init)
-    i.MX_USART2_UART_Init                    0x08003c54   Section        0  bsp.o(i.MX_USART2_UART_Init)
-    i.ModBusSlaveCheckPkg                    0x08003dac   Section        0  modbusrtu.o(i.ModBusSlaveCheckPkg)
-    i.ModBusSlaveParsePkg                    0x08003de4   Section        0  modbusrtu.o(i.ModBusSlaveParsePkg)
-    i.NMI_Handler                            0x08004104   Section        0  stm32f0xx_it.o(i.NMI_Handler)
-    i.NVIC_EnableIRQ                         0x08004108   Section        0  bsp.o(i.NVIC_EnableIRQ)
-    NVIC_EnableIRQ                           0x08004109   Thumb Code    14  bsp.o(i.NVIC_EnableIRQ)
-    i.NVIC_SetPriority                       0x0800411c   Section        0  bsp.o(i.NVIC_SetPriority)
-    NVIC_SetPriority                         0x0800411d   Thumb Code    60  bsp.o(i.NVIC_SetPriority)
-    i.NVIC_SetPriority                       0x08004160   Section        0  stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
-    NVIC_SetPriority                         0x08004161   Thumb Code    60  stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
-    i.ParseFP0Pkg                            0x080041a4   Section        0  fp0.o(i.ParseFP0Pkg)
-    i.PendSV_Handler                         0x0800434c   Section        0  stm32f0xx_it.o(i.PendSV_Handler)
-    i.PendSvCallBack                         0x0800436c   Section        0  functions.o(i.PendSvCallBack)
-    i.PopOutVal                              0x080043c0   Section        0  plcfunctions.o(i.PopOutVal)
-    i.ProcessPLCBinProg                      0x080043e0   Section        0  plcfunctions.o(i.ProcessPLCBinProg)
-    i.ProcessTimer                           0x08004940   Section        0  plcfunctions.o(i.ProcessTimer)
-    i.PushIn                                 0x08004a0c   Section        0  myqueue.o(i.PushIn)
-    i.PushInVal                              0x08004a90   Section        0  plcfunctions.o(i.PushInVal)
-    i.PutStr                                 0x08004ab4   Section        0  functions.o(i.PutStr)
-    i.PutStr1                                0x08004ad0   Section        0  functions.o(i.PutStr1)
-    i.PutStr2                                0x08004aec   Section        0  functions.o(i.PutStr2)
-    i.RCC_GetHCLKClockFreq                   0x08004af8   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetHCLKClockFreq)
-    i.RCC_GetPCLK1ClockFreq                  0x08004b14   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetPCLK1ClockFreq)
-    i.RCC_GetSystemClockFreq                 0x08004b2c   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetSystemClockFreq)
-    i.RCC_PLL_GetFreqDomain_SYS              0x08004b58   Section        0  stm32f0xx_ll_rcc.o(i.RCC_PLL_GetFreqDomain_SYS)
-    i.ReadFlashMem                           0x08004b98   Section        0  kmachine.o(i.ReadFlashMem)
-    i.ReadJumperSW                           0x08004bcc   Section        0  functions.o(i.ReadJumperSW)
-    i.ReadSysCfgFromFlash                    0x08004bdc   Section        0  kmachine.o(i.ReadSysCfgFromFlash)
-    i.ResetBit                               0x08004c3c   Section        0  modbusrtu.o(i.ResetBit)
-    ResetBit                                 0x08004c3d   Thumb Code    16  modbusrtu.o(i.ResetBit)
-    i.RunTimer                               0x08004c4c   Section        0  plcfunctions.o(i.RunTimer)
-    i.SPI1_IRQHandler                        0x08004c98   Section        0  stm32f0xx_it.o(i.SPI1_IRQHandler)
-    i.SPI1_IRQ_CallBack                      0x08004ca0   Section        0  functions.o(i.SPI1_IRQ_CallBack)
-    i.SVC_Handler                            0x08004d94   Section        0  stm32f0xx_it.o(i.SVC_Handler)
-    i.SaveRunStat                            0x08004d98   Section        0  kmachine.o(i.SaveRunStat)
-    i.SendFP0Pkg                             0x08004e18   Section        0  fp0.o(i.SendFP0Pkg)
-    i.SendPacket                             0x08004e84   Section        0  functions.o(i.SendPacket)
-    i.SetAddrBit                             0x08004ebc   Section        0  modbusrtu.o(i.SetAddrBit)
-    SetAddrBit                               0x08004ebd   Thumb Code    16  modbusrtu.o(i.SetAddrBit)
-    i.SetBitValue                            0x08004ecc   Section        0  klink.o(i.SetBitValue)
-    SetBitValue                              0x08004ecd   Thumb Code    24  klink.o(i.SetBitValue)
-    i.SetBitValue                            0x08004ee4   Section        0  modbusrtu.o(i.SetBitValue)
-    SetBitValue                              0x08004ee5   Thumb Code    18  modbusrtu.o(i.SetBitValue)
-    i.SetBitValue                            0x08004ef6   Section        0  kmachine.o(i.SetBitValue)
-    SetBitValue                              0x08004ef7   Thumb Code    24  kmachine.o(i.SetBitValue)
-    i.SetCoilValue                           0x08004f10   Section        0  kmachine.o(i.SetCoilValue)
-    i.SetErr2Led                             0x08004fa0   Section        0  functions.o(i.SetErr2Led)
-    i.SetErrLed                              0x08004fb8   Section        0  functions.o(i.SetErrLed)
-    i.SetOutStat                             0x08004fd0   Section        0  functions.o(i.SetOutStat)
-    i.SetRunLed                              0x08004fe8   Section        0  functions.o(i.SetRunLed)
-    i.SetVarData                             0x08005000   Section        0  kmachine.o(i.SetVarData)
-    i.ShowInitInfo                           0x080050c8   Section        0  debug.o(i.ShowInitInfo)
-    i.StartPLC                               0x0800524c   Section        0  plcfunctions.o(i.StartPLC)
-    i.StopPLC                                0x080052bc   Section        0  plcfunctions.o(i.StopPLC)
-    i.StopTimer                              0x080052fc   Section        0  plcfunctions.o(i.StopTimer)
-    i.SysTick_Handler                        0x08005340   Section        0  stm32f0xx_it.o(i.SysTick_Handler)
-    i.SystemClock_Config                     0x0800534c   Section        0  bsp.o(i.SystemClock_Config)
-    i.SystemInit                             0x080053f4   Section        0  system_stm32f0xx.o(i.SystemInit)
-    i.TIM6_IRQHandler                        0x08005450   Section        0  stm32f0xx_it.o(i.TIM6_IRQHandler)
-    i.ToggleErrLed                           0x08005468   Section        0  functions.o(i.ToggleErrLed)
-    i.ToggleRunLed                           0x0800547c   Section        0  functions.o(i.ToggleRunLed)
-    i.USART1_IRQHandler                      0x08005490   Section        0  stm32f0xx_it.o(i.USART1_IRQHandler)
-    i.USART2_IRQHandler                      0x08005518   Section        0  stm32f0xx_it.o(i.USART2_IRQHandler)
-    i.Uart1RecvDone                          0x08005564   Section        0  functions.o(i.Uart1RecvDone)
-    i.Uart1SendDMA                           0x08005584   Section        0  functions.o(i.Uart1SendDMA)
-    i.Uart1SendDone                          0x080055e4   Section        0  functions.o(i.Uart1SendDone)
-    i.Uart1TriggerSendDMA                    0x080055f4   Section        0  functions.o(i.Uart1TriggerSendDMA)
-    i.Uart2RecvDMA                           0x08005624   Section        0  functions.o(i.Uart2RecvDMA)
-    i.Uart2RecvDone                          0x08005684   Section        0  functions.o(i.Uart2RecvDone)
-    i.Uart2SendDMA                           0x080056c4   Section        0  functions.o(i.Uart2SendDMA)
-    i.Uart2SendDone                          0x08005724   Section        0  functions.o(i.Uart2SendDone)
-    i.WriteFactoryData                       0x08005734   Section        0  kmachine.o(i.WriteFactoryData)
-    i.WriteProgram                           0x08005750   Section        0  kmachine.o(i.WriteProgram)
-    i.WriteSysCfgToFlash                     0x08005790   Section        0  kmachine.o(i.WriteSysCfgToFlash)
-    i.WriteToFlashMemNoErase                 0x080057fc   Section        0  kmachine.o(i.WriteToFlashMemNoErase)
-    i._Error_Handler                         0x08005844   Section        0  main.o(i._Error_Handler)
-    i.__0sprintf$8                           0x08005848   Section        0  printf8.o(i.__0sprintf$8)
-    i.__ARM_common_switch8                   0x08005870   Section        0  kbus.o(i.__ARM_common_switch8)
-    i.__scatterload_copy                     0x0800588a   Section       14  handlers.o(i.__scatterload_copy)
-    i.__scatterload_null                     0x08005898   Section        2  handlers.o(i.__scatterload_null)
-    i.__scatterload_zeroinit                 0x0800589a   Section       14  handlers.o(i.__scatterload_zeroinit)
-    i._printf_core                           0x080058a8   Section        0  printf8.o(i._printf_core)
-    _printf_core                             0x080058a9   Thumb Code  1020  printf8.o(i._printf_core)
-    i._printf_post_padding                   0x08005cd0   Section        0  printf8.o(i._printf_post_padding)
-    _printf_post_padding                     0x08005cd1   Thumb Code    32  printf8.o(i._printf_post_padding)
-    i._printf_pre_padding                    0x08005cf0   Section        0  printf8.o(i._printf_pre_padding)
-    _printf_pre_padding                      0x08005cf1   Thumb Code    44  printf8.o(i._printf_pre_padding)
-    i._sputc                                 0x08005d1c   Section        0  printf8.o(i._sputc)
-    _sputc                                   0x08005d1d   Thumb Code    10  printf8.o(i._sputc)
-    i.clearscreen                            0x08005d28   Section        0  debug.o(i.clearscreen)
-    i.crc16bitbybit                          0x08005d40   Section        0  functions.o(i.crc16bitbybit)
-    i.crc16table                             0x08005d7c   Section        0  functions.o(i.crc16table)
-    i.crc16tablefast                         0x08005dac   Section        0  modbusrtu.o(i.crc16tablefast)
-    i.crc_check                              0x08005dec   Section        0  functions.o(i.crc_check)
-    i.initQueue                              0x08005e18   Section        0  myqueue.o(i.initQueue)
-    i.logData                                0x08005e30   Section        0  functions.o(i.logData)
-    i.main                                   0x08005e54   Section        0  main.o(i.main)
-    .constdata                               0x08006390   Section       16  debug.o(.constdata)
-    .constdata                               0x080063a0   Section     1030  functions.o(.constdata)
-    CHANNEL_OFFSET_TAB                       0x080063a0   Data           5  functions.o(.constdata)
-    .constdata                               0x080067a6   Section       32  modbusrtu.o(.constdata)
-    .constdata                               0x080067c6   Section       24  kmachine.o(.constdata)
-    .constdata                               0x080067e0   Section      144  kmachine.o(.constdata)
-    .constdata                               0x08006870   Section        5  bsp.o(.constdata)
-    CHANNEL_OFFSET_TAB                       0x08006870   Data           5  bsp.o(.constdata)
-    .constdata                               0x08006875   Section        5  stm32f0xx_it.o(.constdata)
-    CHANNEL_OFFSET_TAB                       0x08006875   Data           5  stm32f0xx_it.o(.constdata)
-    .constdata                               0x0800687c   Section       24  main.o(.constdata)
-    .constdata                               0x08006894   Section       16  system_stm32f0xx.o(.constdata)
-    .constdata                               0x080068a4   Section        8  system_stm32f0xx.o(.constdata)
-    .data                                    0x200000c0   Section       20  debug.o(.data)
-    CurChannel                               0x200000d0   Data           4  debug.o(.data)
-    .data                                    0x200000d4   Section        4  functions.o(.data)
-    .data                                    0x200000d8   Section       24  functions.o(.data)
-    .data                                    0x200000f0   Section        4  globaldef.o(.data)
-    .data                                    0x200000f4   Section        4  globaldef.o(.data)
-    .data                                    0x200000f8   Section        4  globaldef.o(.data)
+    i.CheckEventLog                          0x08001364   Section        0  kmachine.o(i.CheckEventLog)
+    i.ClearEventLog                          0x080013d0   Section        0  kmachine.o(i.ClearEventLog)
+    i.DMA1_Channel2_3_IRQHandler             0x080013f4   Section        0  stm32f0xx_it.o(i.DMA1_Channel2_3_IRQHandler)
+    i.DMA1_Channel4_5_IRQHandler             0x08001494   Section        0  stm32f0xx_it.o(i.DMA1_Channel4_5_IRQHandler)
+    i.DelData                                0x080014cc   Section        0  myqueue.o(i.DelData)
+    i.EraseAndWriteToFlashMem                0x080014f8   Section        0  kmachine.o(i.EraseAndWriteToFlashMem)
+    i.EraseFlashMem                          0x08001558   Section        0  kmachine.o(i.EraseFlashMem)
+    i.FPxCalBCC                              0x0800157c   Section        0  fpx.o(i.FPxCalBCC)
+    i.FPxCallBackFunc                        0x0800159c   Section        0  main.o(i.FPxCallBackFunc)
+    i.FPxParsePkt                            0x080015e0   Section        0  fpx.o(i.FPxParsePkt)
+    i.FPxSendPkt                             0x080017a4   Section        0  fpx.o(i.FPxSendPkt)
+    i.FPxSetCallBackFunc                     0x0800181c   Section        0  fpx.o(i.FPxSetCallBackFunc)
+    i.FPx_Init                               0x0800182c   Section        0  fpx.o(i.FPx_Init)
+    i.FPx_Proc                               0x08001890   Section        0  fpx.o(i.FPx_Proc)
+    i.FPx_SetIOCount                         0x080019b8   Section        0  fpx.o(i.FPx_SetIOCount)
+    i.GetBitValue                            0x080019c8   Section        0  modbusrtu.o(i.GetBitValue)
+    GetBitValue                              0x080019c9   Thumb Code    20  modbusrtu.o(i.GetBitValue)
+    i.GetBitValue                            0x080019dc   Section        0  kmachine.o(i.GetBitValue)
+    GetBitValue                              0x080019dd   Thumb Code    20  kmachine.o(i.GetBitValue)
+    i.GetCoilValue                           0x080019f0   Section        0  kmachine.o(i.GetCoilValue)
+    i.GetContinueData                        0x08001a90   Section        0  myqueue.o(i.GetContinueData)
+    i.GetContinueEmptyRoom                   0x08001ab6   Section        0  myqueue.o(i.GetContinueEmptyRoom)
+    i.GetEventLogAddr                        0x08001adc   Section        0  kmachine.o(i.GetEventLogAddr)
+    i.GetVarData                             0x08001b00   Section        0  kmachine.o(i.GetVarData)
+    i.GetuS                                  0x08001bd8   Section        0  functions.o(i.GetuS)
+    i.HAL_Delay                              0x08001c04   Section        0  stm32f0xx_hal.o(i.HAL_Delay)
+    i.HAL_GetTick                            0x08001c20   Section        0  stm32f0xx_hal.o(i.HAL_GetTick)
+    i.HAL_IncTick                            0x08001c2c   Section        0  stm32f0xx_hal.o(i.HAL_IncTick)
+    i.HAL_Init                               0x08001c3c   Section        0  stm32f0xx_hal.o(i.HAL_Init)
+    i.HAL_InitTick                           0x08001c5c   Section        0  stm32f0xx_hal.o(i.HAL_InitTick)
+    i.HAL_MspInit                            0x08001c80   Section        0  stm32f0xx_hal_msp.o(i.HAL_MspInit)
+    i.HAL_NVIC_SetPriority                   0x08001cc4   Section        0  stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
+    i.HAL_RCCEx_PeriphCLKConfig              0x08001ccc   Section        0  stm32f0xx_hal_rcc_ex.o(i.HAL_RCCEx_PeriphCLKConfig)
+    i.HAL_RCC_ClockConfig                    0x08001db8   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
+    i.HAL_RCC_GetHCLKFreq                    0x08001ee4   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
+    i.HAL_RCC_GetSysClockFreq                0x08001ef0   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
+    i.HAL_RCC_OscConfig                      0x08001f70   Section        0  stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
+    i.HAL_SYSTICK_CLKSourceConfig            0x080022c4   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
+    i.HAL_SYSTICK_Callback                   0x080022dc   Section        0  main.o(i.HAL_SYSTICK_Callback)
+    i.HAL_SYSTICK_Config                     0x08002350   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
+    i.HAL_SYSTICK_IRQHandler                 0x08002380   Section        0  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
+    i.HardFault_Handler                      0x08002388   Section        0  stm32f0xx_it.o(i.HardFault_Handler)
+    i.InitPLC                                0x0800238c   Section        0  plcfunctions.o(i.InitPLC)
+    i.InitTimer                              0x080023d8   Section        0  plcfunctions.o(i.InitTimer)
+    i.InitUartstat                           0x08002418   Section        0  functions.o(i.InitUartstat)
+    i.InituS                                 0x08002438   Section        0  functions.o(i.InituS)
+    i.KBusAddChildAddrByInfo                 0x0800248c   Section        0  kbus.o(i.KBusAddChildAddrByInfo)
+    i.KBusBCC                                0x080024f8   Section        0  kbus.o(i.KBusBCC)
+    i.KBusCallBackFunc                       0x08002510   Section        0  main.o(i.KBusCallBackFunc)
+    i.KBusCheckPacket                        0x08002564   Section        0  kbus.o(i.KBusCheckPacket)
+    i.KBusInit                               0x08002668   Section        0  kbus.o(i.KBusInit)
+    i.KBusMakeDefaultClildInfo               0x080026c0   Section        0  kbus.o(i.KBusMakeDefaultClildInfo)
+    i.KBusMakePacket                         0x080026e8   Section        0  kbus.o(i.KBusMakePacket)
+    i.KBusMasterFunc                         0x08002774   Section        0  kbus.o(i.KBusMasterFunc)
+    i.KBusMasterParsePacket                  0x08002938   Section        0  kbus.o(i.KBusMasterParsePacket)
+    i.KBusParsePacket                        0x08002a4c   Section        0  kbus.o(i.KBusParsePacket)
+    i.KBusSearchChild                        0x08002acc   Section        0  kbus.o(i.KBusSearchChild)
+    i.KBusSetCallBackFunc                    0x08002b58   Section        0  kbus.o(i.KBusSetCallBackFunc)
+    i.KBusSlaveCheckPacket                   0x08002b68   Section        0  kbus.o(i.KBusSlaveCheckPacket)
+    i.KBusSlaveFunc                          0x08002bf8   Section        0  kbus.o(i.KBusSlaveFunc)
+    i.KBusSlaveParsePacket                   0x08002c58   Section        0  kbus.o(i.KBusSlaveParsePacket)
+    i.KLBCC                                  0x08002e38   Section        0  klink.o(i.KLBCC)
+    i.KLCheckPacket                          0x08002e4e   Section        0  klink.o(i.KLCheckPacket)
+    i.KLMakeRplyPacket                       0x08002e80   Section        0  klink.o(i.KLMakeRplyPacket)
+    i.KLParsePacket                          0x08002ecc   Section        0  klink.o(i.KLParsePacket)
+    i.KLParseReqPacket                       0x08002f1c   Section        0  klink.o(i.KLParseReqPacket)
+    i.KMachineInit                           0x0800367c   Section        0  kmachine.o(i.KMachineInit)
+    i.LL_AHB1_GRP1_EnableClock               0x080036ec   Section        0  bsp.o(i.LL_AHB1_GRP1_EnableClock)
+    LL_AHB1_GRP1_EnableClock                 0x080036ed   Thumb Code    18  bsp.o(i.LL_AHB1_GRP1_EnableClock)
+    i.LL_APB1_GRP1_EnableClock               0x08003704   Section        0  bsp.o(i.LL_APB1_GRP1_EnableClock)
+    LL_APB1_GRP1_EnableClock                 0x08003705   Thumb Code    18  bsp.o(i.LL_APB1_GRP1_EnableClock)
+    i.LL_APB1_GRP2_EnableClock               0x0800371c   Section        0  bsp.o(i.LL_APB1_GRP2_EnableClock)
+    LL_APB1_GRP2_EnableClock                 0x0800371d   Thumb Code    18  bsp.o(i.LL_APB1_GRP2_EnableClock)
+    i.LL_DMA_ConfigAddresses                 0x08003734   Section        0  functions.o(i.LL_DMA_ConfigAddresses)
+    LL_DMA_ConfigAddresses                   0x08003735   Thumb Code    38  functions.o(i.LL_DMA_ConfigAddresses)
+    i.LL_DMA_DisableChannel                  0x08003760   Section        0  functions.o(i.LL_DMA_DisableChannel)
+    LL_DMA_DisableChannel                    0x08003761   Thumb Code    18  functions.o(i.LL_DMA_DisableChannel)
+    i.LL_DMA_EnableChannel                   0x08003778   Section        0  functions.o(i.LL_DMA_EnableChannel)
+    LL_DMA_EnableChannel                     0x08003779   Thumb Code    18  functions.o(i.LL_DMA_EnableChannel)
+    i.LL_DMA_EnableIT_TC                     0x08003790   Section        0  functions.o(i.LL_DMA_EnableIT_TC)
+    LL_DMA_EnableIT_TC                       0x08003791   Thumb Code    18  functions.o(i.LL_DMA_EnableIT_TC)
+    i.LL_DMA_SetChannelPriorityLevel         0x080037a8   Section        0  bsp.o(i.LL_DMA_SetChannelPriorityLevel)
+    LL_DMA_SetChannelPriorityLevel           0x080037a9   Thumb Code    24  bsp.o(i.LL_DMA_SetChannelPriorityLevel)
+    i.LL_DMA_SetDataLength                   0x080037c4   Section        0  functions.o(i.LL_DMA_SetDataLength)
+    LL_DMA_SetDataLength                     0x080037c5   Thumb Code    22  functions.o(i.LL_DMA_SetDataLength)
+    i.LL_DMA_SetDataTransferDirection        0x080037e0   Section        0  bsp.o(i.LL_DMA_SetDataTransferDirection)
+    LL_DMA_SetDataTransferDirection          0x080037e1   Thumb Code    22  bsp.o(i.LL_DMA_SetDataTransferDirection)
+    i.LL_DMA_SetMemoryIncMode                0x08003800   Section        0  bsp.o(i.LL_DMA_SetMemoryIncMode)
+    LL_DMA_SetMemoryIncMode                  0x08003801   Thumb Code    22  bsp.o(i.LL_DMA_SetMemoryIncMode)
+    i.LL_DMA_SetMemorySize                   0x0800381c   Section        0  bsp.o(i.LL_DMA_SetMemorySize)
+    LL_DMA_SetMemorySize                     0x0800381d   Thumb Code    24  bsp.o(i.LL_DMA_SetMemorySize)
+    i.LL_DMA_SetMode                         0x08003838   Section        0  bsp.o(i.LL_DMA_SetMode)
+    LL_DMA_SetMode                           0x08003839   Thumb Code    22  bsp.o(i.LL_DMA_SetMode)
+    i.LL_DMA_SetPeriphIncMode                0x08003854   Section        0  bsp.o(i.LL_DMA_SetPeriphIncMode)
+    LL_DMA_SetPeriphIncMode                  0x08003855   Thumb Code    22  bsp.o(i.LL_DMA_SetPeriphIncMode)
+    i.LL_DMA_SetPeriphSize                   0x08003870   Section        0  bsp.o(i.LL_DMA_SetPeriphSize)
+    LL_DMA_SetPeriphSize                     0x08003871   Thumb Code    24  bsp.o(i.LL_DMA_SetPeriphSize)
+    i.LL_FLASH_Program                       0x0800388c   Section        0  stm32f0xx_ll_flash.o(i.LL_FLASH_Program)
+    i.LL_Flash_PageErase                     0x080038f4   Section        0  stm32f0xx_ll_flash.o(i.LL_Flash_PageErase)
+    i.LL_Flash_Unlock                        0x08003944   Section        0  stm32f0xx_ll_flash.o(i.LL_Flash_Unlock)
+    i.LL_GPIO_Init                           0x08003970   Section        0  stm32f0xx_ll_gpio.o(i.LL_GPIO_Init)
+    i.LL_GPIO_IsInputPinSet                  0x08003a14   Section        0  fpx.o(i.LL_GPIO_IsInputPinSet)
+    LL_GPIO_IsInputPinSet                    0x08003a15   Thumb Code    14  fpx.o(i.LL_GPIO_IsInputPinSet)
+    i.LL_RCC_GetSystemClocksFreq             0x08003a22   Section        0  stm32f0xx_ll_rcc.o(i.LL_RCC_GetSystemClocksFreq)
+    i.LL_RCC_GetUSARTClockFreq               0x08003a3c   Section        0  stm32f0xx_ll_rcc.o(i.LL_RCC_GetUSARTClockFreq)
+    i.LL_SPI_Init                            0x08003a90   Section        0  stm32f0xx_ll_spi.o(i.LL_SPI_Init)
+    i.LL_TIM_Init                            0x08003af4   Section        0  stm32f0xx_ll_tim.o(i.LL_TIM_Init)
+    i.LL_USART_ConfigAsyncMode               0x08003b78   Section        0  bsp.o(i.LL_USART_ConfigAsyncMode)
+    LL_USART_ConfigAsyncMode                 0x08003b79   Thumb Code    20  bsp.o(i.LL_USART_ConfigAsyncMode)
+    i.LL_USART_Init                          0x08003b8c   Section        0  stm32f0xx_ll_usart.o(i.LL_USART_Init)
+    i.LoadDefaultSysCfg                      0x08003c38   Section        0  kmachine.o(i.LoadDefaultSysCfg)
+    i.LoadRunStat                            0x08003c4c   Section        0  kmachine.o(i.LoadRunStat)
+    i.Locate                                 0x08003cb0   Section        0  debug.o(i.Locate)
+    i.MX_DMA_Init                            0x08003cd4   Section        0  bsp.o(i.MX_DMA_Init)
+    i.MX_GPIO_Init                           0x08003cfc   Section        0  bsp.o(i.MX_GPIO_Init)
+    i.MX_IWDG_Init                           0x08003e30   Section        0  bsp.o(i.MX_IWDG_Init)
+    i.MX_SPI1_Init                           0x08003e64   Section        0  bsp.o(i.MX_SPI1_Init)
+    i.MX_TIM6_Init                           0x08003f30   Section        0  bsp.o(i.MX_TIM6_Init)
+    i.MX_USART1_UART_Init                    0x08003f84   Section        0  bsp.o(i.MX_USART1_UART_Init)
+    i.MX_USART2_UART_Init                    0x080040a8   Section        0  bsp.o(i.MX_USART2_UART_Init)
+    i.ModBusSlaveCheckPkg                    0x08004200   Section        0  modbusrtu.o(i.ModBusSlaveCheckPkg)
+    i.ModBusSlaveParsePkg                    0x08004238   Section        0  modbusrtu.o(i.ModBusSlaveParsePkg)
+    i.NMI_Handler                            0x08004558   Section        0  stm32f0xx_it.o(i.NMI_Handler)
+    i.NVIC_EnableIRQ                         0x0800455c   Section        0  bsp.o(i.NVIC_EnableIRQ)
+    NVIC_EnableIRQ                           0x0800455d   Thumb Code    14  bsp.o(i.NVIC_EnableIRQ)
+    i.NVIC_SetPriority                       0x08004570   Section        0  bsp.o(i.NVIC_SetPriority)
+    NVIC_SetPriority                         0x08004571   Thumb Code    60  bsp.o(i.NVIC_SetPriority)
+    i.NVIC_SetPriority                       0x080045b4   Section        0  stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
+    NVIC_SetPriority                         0x080045b5   Thumb Code    60  stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
+    i.PendSV_Handler                         0x080045f8   Section        0  stm32f0xx_it.o(i.PendSV_Handler)
+    i.PendSvCallBack                         0x08004618   Section        0  functions.o(i.PendSvCallBack)
+    i.PopOutVal                              0x08004664   Section        0  plcfunctions.o(i.PopOutVal)
+    i.ProcessPLCBinProg                      0x08004684   Section        0  plcfunctions.o(i.ProcessPLCBinProg)
+    i.ProcessTimer                           0x08004be4   Section        0  plcfunctions.o(i.ProcessTimer)
+    i.PushIn                                 0x08004cb0   Section        0  myqueue.o(i.PushIn)
+    i.PushInVal                              0x08004d34   Section        0  plcfunctions.o(i.PushInVal)
+    i.PutStr                                 0x08004d58   Section        0  functions.o(i.PutStr)
+    i.PutStr1                                0x08004d74   Section        0  functions.o(i.PutStr1)
+    i.PutStr2                                0x08004d90   Section        0  functions.o(i.PutStr2)
+    i.RCC_GetHCLKClockFreq                   0x08004d9c   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetHCLKClockFreq)
+    i.RCC_GetPCLK1ClockFreq                  0x08004db8   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetPCLK1ClockFreq)
+    i.RCC_GetSystemClockFreq                 0x08004dd0   Section        0  stm32f0xx_ll_rcc.o(i.RCC_GetSystemClockFreq)
+    i.RCC_PLL_GetFreqDomain_SYS              0x08004dfc   Section        0  stm32f0xx_ll_rcc.o(i.RCC_PLL_GetFreqDomain_SYS)
+    i.ReadFlashMem                           0x08004e3c   Section        0  kmachine.o(i.ReadFlashMem)
+    i.ReadJumperSW                           0x08004e70   Section        0  functions.o(i.ReadJumperSW)
+    i.ReadSysCfgFromFlash                    0x08004e80   Section        0  kmachine.o(i.ReadSysCfgFromFlash)
+    i.ResetBit                               0x08004ee0   Section        0  modbusrtu.o(i.ResetBit)
+    ResetBit                                 0x08004ee1   Thumb Code    16  modbusrtu.o(i.ResetBit)
+    i.RunTimer                               0x08004ef0   Section        0  plcfunctions.o(i.RunTimer)
+    i.SPI1_IRQHandler                        0x08004f3c   Section        0  stm32f0xx_it.o(i.SPI1_IRQHandler)
+    i.SPI1_IRQ_CallBack                      0x08004f44   Section        0  functions.o(i.SPI1_IRQ_CallBack)
+    i.SVC_Handler                            0x08005004   Section        0  stm32f0xx_it.o(i.SVC_Handler)
+    i.SaveRunStat                            0x08005008   Section        0  kmachine.o(i.SaveRunStat)
+    i.SendPacket                             0x08005088   Section        0  functions.o(i.SendPacket)
+    i.SetAddrBit                             0x080050c0   Section        0  modbusrtu.o(i.SetAddrBit)
+    SetAddrBit                               0x080050c1   Thumb Code    16  modbusrtu.o(i.SetAddrBit)
+    i.SetBitValue                            0x080050d0   Section        0  klink.o(i.SetBitValue)
+    SetBitValue                              0x080050d1   Thumb Code    24  klink.o(i.SetBitValue)
+    i.SetBitValue                            0x080050e8   Section        0  modbusrtu.o(i.SetBitValue)
+    SetBitValue                              0x080050e9   Thumb Code    18  modbusrtu.o(i.SetBitValue)
+    i.SetBitValue                            0x080050fa   Section        0  kmachine.o(i.SetBitValue)
+    SetBitValue                              0x080050fb   Thumb Code    24  kmachine.o(i.SetBitValue)
+    i.SetCoilValue                           0x08005114   Section        0  kmachine.o(i.SetCoilValue)
+    i.SetErr2Led                             0x080051a4   Section        0  functions.o(i.SetErr2Led)
+    i.SetErrLed                              0x080051bc   Section        0  functions.o(i.SetErrLed)
+    i.SetOutStat                             0x080051d4   Section        0  functions.o(i.SetOutStat)
+    i.SetRunLed                              0x080051ec   Section        0  functions.o(i.SetRunLed)
+    i.SetVarData                             0x08005204   Section        0  kmachine.o(i.SetVarData)
+    i.ShowInitInfo                           0x080052cc   Section        0  debug.o(i.ShowInitInfo)
+    i.StartPLC                               0x08005450   Section        0  plcfunctions.o(i.StartPLC)
+    i.StopPLC                                0x080054c0   Section        0  plcfunctions.o(i.StopPLC)
+    i.StopTimer                              0x08005500   Section        0  plcfunctions.o(i.StopTimer)
+    i.SysTick_Handler                        0x08005544   Section        0  stm32f0xx_it.o(i.SysTick_Handler)
+    i.SystemClock_Config                     0x08005550   Section        0  bsp.o(i.SystemClock_Config)
+    i.SystemInit                             0x080055f8   Section        0  system_stm32f0xx.o(i.SystemInit)
+    i.TIM6_IRQHandler                        0x08005654   Section        0  stm32f0xx_it.o(i.TIM6_IRQHandler)
+    i.USART1_IRQHandler                      0x0800566c   Section        0  stm32f0xx_it.o(i.USART1_IRQHandler)
+    i.USART2_IRQHandler                      0x080056f4   Section        0  stm32f0xx_it.o(i.USART2_IRQHandler)
+    i.Uart1RecvDone                          0x08005740   Section        0  functions.o(i.Uart1RecvDone)
+    i.Uart1SendDMA                           0x08005760   Section        0  functions.o(i.Uart1SendDMA)
+    i.Uart1SendDone                          0x080057c0   Section        0  functions.o(i.Uart1SendDone)
+    i.Uart1TriggerSendDMA                    0x080057d0   Section        0  functions.o(i.Uart1TriggerSendDMA)
+    i.Uart2RecvDMA                           0x08005800   Section        0  functions.o(i.Uart2RecvDMA)
+    i.Uart2RecvDone                          0x08005860   Section        0  functions.o(i.Uart2RecvDone)
+    i.Uart2SendDMA                           0x080058a0   Section        0  functions.o(i.Uart2SendDMA)
+    i.Uart2SendDone                          0x08005900   Section        0  functions.o(i.Uart2SendDone)
+    i.WriteFactoryData                       0x08005910   Section        0  kmachine.o(i.WriteFactoryData)
+    i.WriteNewApp                            0x0800592c   Section        0  kmachine.o(i.WriteNewApp)
+    i.WriteNewAppInfo                        0x0800594c   Section        0  kmachine.o(i.WriteNewAppInfo)
+    i.WriteProgram                           0x08005960   Section        0  kmachine.o(i.WriteProgram)
+    i.WriteSysCfgToFlash                     0x080059a0   Section        0  kmachine.o(i.WriteSysCfgToFlash)
+    i.WriteToFlashMemNoErase                 0x08005a0c   Section        0  kmachine.o(i.WriteToFlashMemNoErase)
+    i._Error_Handler                         0x08005a5c   Section        0  main.o(i._Error_Handler)
+    i.__0sprintf$8                           0x08005a60   Section        0  printf8.o(i.__0sprintf$8)
+    i.__ARM_common_switch8                   0x08005a88   Section        0  modbusrtu.o(i.__ARM_common_switch8)
+    i.__scatterload_copy                     0x08005aa2   Section       14  handlers.o(i.__scatterload_copy)
+    i.__scatterload_null                     0x08005ab0   Section        2  handlers.o(i.__scatterload_null)
+    i.__scatterload_zeroinit                 0x08005ab2   Section       14  handlers.o(i.__scatterload_zeroinit)
+    i._printf_core                           0x08005ac0   Section        0  printf8.o(i._printf_core)
+    _printf_core                             0x08005ac1   Thumb Code  1020  printf8.o(i._printf_core)
+    i._printf_post_padding                   0x08005ee8   Section        0  printf8.o(i._printf_post_padding)
+    _printf_post_padding                     0x08005ee9   Thumb Code    32  printf8.o(i._printf_post_padding)
+    i._printf_pre_padding                    0x08005f08   Section        0  printf8.o(i._printf_pre_padding)
+    _printf_pre_padding                      0x08005f09   Thumb Code    44  printf8.o(i._printf_pre_padding)
+    i._sputc                                 0x08005f34   Section        0  printf8.o(i._sputc)
+    _sputc                                   0x08005f35   Thumb Code    10  printf8.o(i._sputc)
+    i.clearscreen                            0x08005f40   Section        0  debug.o(i.clearscreen)
+    i.crc16bitbybit                          0x08005f58   Section        0  functions.o(i.crc16bitbybit)
+    i.crc16table                             0x08005f94   Section        0  functions.o(i.crc16table)
+    i.crc16tablefast                         0x08005fc4   Section        0  modbusrtu.o(i.crc16tablefast)
+    i.crc_check                              0x08006004   Section        0  functions.o(i.crc_check)
+    i.initQueue                              0x08006030   Section        0  myqueue.o(i.initQueue)
+    i.logData                                0x08006048   Section        0  functions.o(i.logData)
+    i.main                                   0x0800606c   Section        0  main.o(i.main)
+    .constdata                               0x08006548   Section       16  debug.o(.constdata)
+    .constdata                               0x08006558   Section     1030  functions.o(.constdata)
+    CHANNEL_OFFSET_TAB                       0x08006558   Data           5  functions.o(.constdata)
+    .constdata                               0x0800695e   Section       32  modbusrtu.o(.constdata)
+    .constdata                               0x0800697e   Section       24  kmachine.o(.constdata)
+    .constdata                               0x08006998   Section      144  kmachine.o(.constdata)
+    .constdata                               0x08006a28   Section        5  bsp.o(.constdata)
+    CHANNEL_OFFSET_TAB                       0x08006a28   Data           5  bsp.o(.constdata)
+    .constdata                               0x08006a2d   Section        5  stm32f0xx_it.o(.constdata)
+    CHANNEL_OFFSET_TAB                       0x08006a2d   Data           5  stm32f0xx_it.o(.constdata)
+    .constdata                               0x08006a34   Section       24  main.o(.constdata)
+    .constdata                               0x08006a4c   Section       16  system_stm32f0xx.o(.constdata)
+    .constdata                               0x08006a5c   Section        8  system_stm32f0xx.o(.constdata)
+    .data                                    0x200000c0   Section       24  debug.o(.data)
+    CurChannel                               0x200000d4   Data           4  debug.o(.data)
+    .data                                    0x200000d8   Section        4  functions.o(.data)
+    .data                                    0x200000dc   Section       32  functions.o(.data)
     .data                                    0x200000fc   Section        4  globaldef.o(.data)
     .data                                    0x20000100   Section        4  globaldef.o(.data)
     .data                                    0x20000104   Section        4  globaldef.o(.data)
     .data                                    0x20000108   Section        4  globaldef.o(.data)
-    .data                                    0x2000010c   Section       56  kbus.o(.data)
-    .data                                    0x20000144   Section       12  klink.o(.data)
-    .data                                    0x20000150   Section        1  modbusrtu.o(.data)
-    .data                                    0x20000154   Section        4  plcfunctions.o(.data)
-    .data                                    0x20000158   Section       36  kmachine.o(.data)
-    .data                                    0x2000017c   Section       24  fp0.o(.data)
-    .data                                    0x20000194   Section        1  fp0.o(.data)
-    .data                                    0x20000195   Section        1  fp0.o(.data)
-    .data                                    0x20000196   Section        1  fp0.o(.data)
-    .data                                    0x20000198   Section       40  main.o(.data)
-    Count                                    0x200001a4   Data           4  main.o(.data)
-    .data                                    0x200001c0   Section        4  system_stm32f0xx.o(.data)
-    .data                                    0x200001c4   Section        4  stm32f0xx_hal.o(.data)
-    .bss                                     0x200001c8   Section      256  debug.o(.bss)
-    .bss                                     0x200002c8   Section      148  globaldef.o(.bss)
-    .bss                                     0x2000035c   Section      148  globaldef.o(.bss)
-    .bss                                     0x200003f0   Section      128  globaldef.o(.bss)
-    .bss                                     0x20000470   Section      128  globaldef.o(.bss)
-    .bss                                     0x200004f0   Section     1184  kbus.o(.bss)
-    .bss                                     0x20000990   Section      272  klink.o(.bss)
-    .bss                                     0x20000aa0   Section      128  modbusrtu.o(.bss)
-    .bss                                     0x20000b20   Section      520  plcfunctions.o(.bss)
-    .bss                                     0x20000d28   Section      128  kmachine.o(.bss)
-    .bss                                     0x20000da8   Section     2004  kmachine.o(.bss)
-    .bss                                     0x2000157c   Section       64  fp0.o(.bss)
-    .bss                                     0x200015bc   Section       32  fp0.o(.bss)
-    .bss                                     0x200015dc   Section      516  main.o(.bss)
-    .bss                                     0x200017e0   Section       32  stm32f0xx_hal_flash.o(.bss)
-    STACK                                    0x20001800   Section     1024  startup_stm32f030x8.o(STACK)
+    .data                                    0x2000010c   Section        4  globaldef.o(.data)
+    .data                                    0x20000110   Section        4  globaldef.o(.data)
+    .data                                    0x20000114   Section        4  globaldef.o(.data)
+    .data                                    0x20000118   Section       52  kbus.o(.data)
+    .data                                    0x2000014c   Section        4  kbus.o(.data)
+    .data                                    0x20000150   Section       12  klink.o(.data)
+    .data                                    0x2000015c   Section        1  modbusrtu.o(.data)
+    .data                                    0x20000160   Section        4  plcfunctions.o(.data)
+    .data                                    0x20000164   Section       36  kmachine.o(.data)
+    .data                                    0x20000188   Section       40  main.o(.data)
+    Count                                    0x20000194   Data           4  main.o(.data)
+    .data                                    0x200001b0   Section        4  system_stm32f0xx.o(.data)
+    .data                                    0x200001b4   Section        4  stm32f0xx_hal.o(.data)
+    .bss                                     0x200001b8   Section      288  debug.o(.bss)
+    .bss                                     0x200002d8   Section      128  functions.o(.bss)
+    .bss                                     0x20000358   Section      148  globaldef.o(.bss)
+    .bss                                     0x200003ec   Section      148  globaldef.o(.bss)
+    .bss                                     0x20000480   Section      128  globaldef.o(.bss)
+    .bss                                     0x20000500   Section      128  globaldef.o(.bss)
+    .bss                                     0x20000580   Section     1880  kbus.o(.bss)
+    .bss                                     0x20000cd8   Section      272  klink.o(.bss)
+    .bss                                     0x20000de8   Section      128  modbusrtu.o(.bss)
+    .bss                                     0x20000e68   Section      520  plcfunctions.o(.bss)
+    .bss                                     0x20001070   Section      128  kmachine.o(.bss)
+    .bss                                     0x200010f0   Section     2004  kmachine.o(.bss)
+    .bss                                     0x200018c4   Section      516  main.o(.bss)
+    .bss                                     0x20001ac8   Section      156  fpx.o(.bss)
+    STACK                                    0x20001b68   Section     1024  startup_stm32f030x8.o(STACK)
 
     Global Symbols
 
@@ -2021,277 +2047,277 @@
     _ll_shift_l                              0x0800128d   Thumb Code     0  llshl.o(.text)
     AddEventLog                              0x080012ad   Thumb Code   122  kmachine.o(i.AddEventLog)
     AddSpace                                 0x08001339   Thumb Code    44  myqueue.o(i.AddSpace)
-    CalFP0BCC                                0x08001365   Thumb Code    30  fp0.o(i.CalFP0BCC)
-    CheckEventLog                            0x08001385   Thumb Code    90  kmachine.o(i.CheckEventLog)
-    ClearEventLog                            0x080013f1   Thumb Code    28  kmachine.o(i.ClearEventLog)
-    DMA1_Channel2_3_IRQHandler               0x08001415   Thumb Code   144  stm32f0xx_it.o(i.DMA1_Channel2_3_IRQHandler)
-    DMA1_Channel4_5_IRQHandler               0x080014b5   Thumb Code    46  stm32f0xx_it.o(i.DMA1_Channel4_5_IRQHandler)
-    DelData                                  0x080014ed   Thumb Code    44  myqueue.o(i.DelData)
-    EraseAndWriteToFlashMem                  0x08001519   Thumb Code    70  kmachine.o(i.EraseAndWriteToFlashMem)
-    EraseFlashMem                            0x0800155f   Thumb Code    32  kmachine.o(i.EraseFlashMem)
-    FLASH_PageErase                          0x080015a5   Thumb Code    28  stm32f0xx_hal_flash_ex.o(i.FLASH_PageErase)
-    FLASH_WaitForLastOperation               0x08001621   Thumb Code    76  stm32f0xx_hal_flash.o(i.FLASH_WaitForLastOperation)
-    FP0_Init                                 0x08001671   Thumb Code    68  fp0.o(i.FP0_Init)
-    FP0_Proc                                 0x080016c1   Thumb Code   218  fp0.o(i.FP0_Proc)
-    GetCoilValue                             0x080017e1   Thumb Code   156  kmachine.o(i.GetCoilValue)
-    GetContinueData                          0x08001881   Thumb Code    38  myqueue.o(i.GetContinueData)
-    GetContinueEmptyRoom                     0x080018a7   Thumb Code    38  myqueue.o(i.GetContinueEmptyRoom)
-    GetEventLogAddr                          0x080018cd   Thumb Code    28  kmachine.o(i.GetEventLogAddr)
-    GetVarData                               0x080018f1   Thumb Code   208  kmachine.o(i.GetVarData)
-    GetuS                                    0x080019c9   Thumb Code    30  functions.o(i.GetuS)
-    HAL_Delay                                0x080019f5   Thumb Code    28  stm32f0xx_hal.o(i.HAL_Delay)
-    HAL_FLASHEx_Erase                        0x08001a11   Thumb Code   148  stm32f0xx_hal_flash_ex.o(i.HAL_FLASHEx_Erase)
-    HAL_FLASH_Lock                           0x08001ab1   Thumb Code    14  stm32f0xx_hal_flash.o(i.HAL_FLASH_Lock)
-    HAL_FLASH_Program                        0x08001ac5   Thumb Code   112  stm32f0xx_hal_flash.o(i.HAL_FLASH_Program)
-    HAL_FLASH_Unlock                         0x08001b41   Thumb Code    24  stm32f0xx_hal_flash.o(i.HAL_FLASH_Unlock)
-    HAL_GetTick                              0x08001b65   Thumb Code     6  stm32f0xx_hal.o(i.HAL_GetTick)
-    HAL_IncTick                              0x08001b71   Thumb Code    10  stm32f0xx_hal.o(i.HAL_IncTick)
-    HAL_Init                                 0x08001b81   Thumb Code    26  stm32f0xx_hal.o(i.HAL_Init)
-    HAL_InitTick                             0x08001ba1   Thumb Code    34  stm32f0xx_hal.o(i.HAL_InitTick)
-    HAL_MspInit                              0x08001bc5   Thumb Code    64  stm32f0xx_hal_msp.o(i.HAL_MspInit)
-    HAL_NVIC_SetPriority                     0x08001c09   Thumb Code     8  stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
-    HAL_RCCEx_PeriphCLKConfig                0x08001c11   Thumb Code   222  stm32f0xx_hal_rcc_ex.o(i.HAL_RCCEx_PeriphCLKConfig)
-    HAL_RCC_ClockConfig                      0x08001cfd   Thumb Code   280  stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
-    HAL_RCC_GetHCLKFreq                      0x08001e29   Thumb Code     6  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
-    HAL_RCC_GetSysClockFreq                  0x08001e35   Thumb Code    80  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
-    HAL_RCC_OscConfig                        0x08001eb5   Thumb Code   838  stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
-    HAL_SYSTICK_CLKSourceConfig              0x08002209   Thumb Code    20  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
-    HAL_SYSTICK_Callback                     0x08002221   Thumb Code    86  main.o(i.HAL_SYSTICK_Callback)
-    HAL_SYSTICK_Config                       0x08002295   Thumb Code    38  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
-    HAL_SYSTICK_IRQHandler                   0x080022c5   Thumb Code     8  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
-    HardFault_Handler                        0x080022cd   Thumb Code     2  stm32f0xx_it.o(i.HardFault_Handler)
-    InitPLC                                  0x080022d1   Thumb Code    68  plcfunctions.o(i.InitPLC)
-    InitTimer                                0x0800231d   Thumb Code    56  plcfunctions.o(i.InitTimer)
-    InitUartstat                             0x0800235d   Thumb Code    30  functions.o(i.InitUartstat)
-    InituS                                   0x0800237d   Thumb Code    68  functions.o(i.InituS)
-    KBusBCC                                  0x080023d1   Thumb Code    22  kbus.o(i.KBusBCC)
-    KBusCheckPacket                          0x080023e9   Thumb Code   234  kbus.o(i.KBusCheckPacket)
-    KBusMakePacket                           0x080024ed   Thumb Code   126  kbus.o(i.KBusMakePacket)
-    KBusMasterFunc                           0x0800256d   Thumb Code   358  kbus.o(i.KBusMasterFunc)
-    KBusMasterParsePacket                    0x080026f5   Thumb Code   306  kbus.o(i.KBusMasterParsePacket)
-    KBusParsePacket                          0x0800283d   Thumb Code   114  kbus.o(i.KBusParsePacket)
-    KBusSlaveCheckPacket                     0x080028bd   Thumb Code   134  kbus.o(i.KBusSlaveCheckPacket)
-    KBusSlaveFunc                            0x0800294d   Thumb Code    84  kbus.o(i.KBusSlaveFunc)
-    KBusSlaveParsePacket                     0x080029ad   Thumb Code   358  kbus.o(i.KBusSlaveParsePacket)
-    KLBCC                                    0x08002b29   Thumb Code    22  klink.o(i.KLBCC)
-    KLCheckPacket                            0x08002b3f   Thumb Code    50  klink.o(i.KLCheckPacket)
-    KLMakeRplyPacket                         0x08002b71   Thumb Code    60  klink.o(i.KLMakeRplyPacket)
-    KLParsePacket                            0x08002bad   Thumb Code    70  klink.o(i.KLParsePacket)
-    KLParseReqPacket                         0x08002bfd   Thumb Code  1704  klink.o(i.KLParseReqPacket)
-    KMachineInit                             0x080032cd   Thumb Code    94  kmachine.o(i.KMachineInit)
-    LL_GPIO_Init                             0x080034dd   Thumb Code   164  stm32f0xx_ll_gpio.o(i.LL_GPIO_Init)
-    LL_Init1msTick                           0x08003591   Thumb Code    26  stm32f0xx_ll_utils.o(i.LL_Init1msTick)
-    LL_RCC_GetSystemClocksFreq               0x080035b1   Thumb Code    24  stm32f0xx_ll_rcc.o(i.LL_RCC_GetSystemClocksFreq)
-    LL_RCC_GetUSARTClockFreq                 0x080035c9   Thumb Code    76  stm32f0xx_ll_rcc.o(i.LL_RCC_GetUSARTClockFreq)
-    LL_SPI_Init                              0x0800361d   Thumb Code    92  stm32f0xx_ll_spi.o(i.LL_SPI_Init)
-    LL_TIM_Init                              0x08003681   Thumb Code   108  stm32f0xx_ll_tim.o(i.LL_TIM_Init)
-    LL_USART_Init                            0x08003719   Thumb Code   156  stm32f0xx_ll_usart.o(i.LL_USART_Init)
-    LL_mDelay                                0x080037c5   Thumb Code    28  stm32f0xx_ll_utils.o(i.LL_mDelay)
-    LoadDefaultSysCfg                        0x080037e5   Thumb Code    14  kmachine.o(i.LoadDefaultSysCfg)
-    LoadRunStat                              0x080037f9   Thumb Code    86  kmachine.o(i.LoadRunStat)
-    Locate                                   0x0800385d   Thumb Code    24  debug.o(i.Locate)
-    MX_DMA_Init                              0x08003881   Thumb Code    38  bsp.o(i.MX_DMA_Init)
-    MX_GPIO_Init                             0x080038a9   Thumb Code   286  bsp.o(i.MX_GPIO_Init)
-    MX_IWDG_Init                             0x080039dd   Thumb Code    32  bsp.o(i.MX_IWDG_Init)
-    MX_SPI1_Init                             0x08003a11   Thumb Code   196  bsp.o(i.MX_SPI1_Init)
-    MX_TIM6_Init                             0x08003add   Thumb Code    74  bsp.o(i.MX_TIM6_Init)
-    MX_USART1_UART_Init                      0x08003b31   Thumb Code   278  bsp.o(i.MX_USART1_UART_Init)
-    MX_USART2_UART_Init                      0x08003c55   Thumb Code   332  bsp.o(i.MX_USART2_UART_Init)
-    ModBusSlaveCheckPkg                      0x08003dad   Thumb Code    56  modbusrtu.o(i.ModBusSlaveCheckPkg)
-    ModBusSlaveParsePkg                      0x08003de5   Thumb Code   786  modbusrtu.o(i.ModBusSlaveParsePkg)
-    NMI_Handler                              0x08004105   Thumb Code     2  stm32f0xx_it.o(i.NMI_Handler)
-    ParseFP0Pkg                              0x080041a5   Thumb Code   408  fp0.o(i.ParseFP0Pkg)
-    PendSV_Handler                           0x0800434d   Thumb Code    24  stm32f0xx_it.o(i.PendSV_Handler)
-    PendSvCallBack                           0x0800436d   Thumb Code    58  functions.o(i.PendSvCallBack)
-    PopOutVal                                0x080043c1   Thumb Code    28  plcfunctions.o(i.PopOutVal)
-    ProcessPLCBinProg                        0x080043e1   Thumb Code  1370  plcfunctions.o(i.ProcessPLCBinProg)
-    ProcessTimer                             0x08004941   Thumb Code   192  plcfunctions.o(i.ProcessTimer)
-    PushIn                                   0x08004a0d   Thumb Code   130  myqueue.o(i.PushIn)
-    PushInVal                                0x08004a91   Thumb Code    30  plcfunctions.o(i.PushInVal)
-    PutStr                                   0x08004ab5   Thumb Code    22  functions.o(i.PutStr)
-    PutStr1                                  0x08004ad1   Thumb Code    22  functions.o(i.PutStr1)
-    PutStr2                                  0x08004aed   Thumb Code    12  functions.o(i.PutStr2)
-    RCC_GetHCLKClockFreq                     0x08004af9   Thumb Code    18  stm32f0xx_ll_rcc.o(i.RCC_GetHCLKClockFreq)
-    RCC_GetPCLK1ClockFreq                    0x08004b15   Thumb Code    16  stm32f0xx_ll_rcc.o(i.RCC_GetPCLK1ClockFreq)
-    RCC_GetSystemClockFreq                   0x08004b2d   Thumb Code    32  stm32f0xx_ll_rcc.o(i.RCC_GetSystemClockFreq)
-    RCC_PLL_GetFreqDomain_SYS                0x08004b59   Thumb Code    50  stm32f0xx_ll_rcc.o(i.RCC_PLL_GetFreqDomain_SYS)
-    ReadFlashMem                             0x08004b99   Thumb Code    52  kmachine.o(i.ReadFlashMem)
-    ReadJumperSW                             0x08004bcd   Thumb Code    14  functions.o(i.ReadJumperSW)
-    ReadSysCfgFromFlash                      0x08004bdd   Thumb Code    84  kmachine.o(i.ReadSysCfgFromFlash)
-    RunTimer                                 0x08004c4d   Thumb Code    68  plcfunctions.o(i.RunTimer)
-    SPI1_IRQHandler                          0x08004c99   Thumb Code     8  stm32f0xx_it.o(i.SPI1_IRQHandler)
-    SPI1_IRQ_CallBack                        0x08004ca1   Thumb Code   184  functions.o(i.SPI1_IRQ_CallBack)
-    SVC_Handler                              0x08004d95   Thumb Code     2  stm32f0xx_it.o(i.SVC_Handler)
-    SaveRunStat                              0x08004d99   Thumb Code   108  kmachine.o(i.SaveRunStat)
-    SendFP0Pkg                               0x08004e19   Thumb Code    88  fp0.o(i.SendFP0Pkg)
-    SendPacket                               0x08004e85   Thumb Code    48  functions.o(i.SendPacket)
-    SetCoilValue                             0x08004f11   Thumb Code   134  kmachine.o(i.SetCoilValue)
-    SetErr2Led                               0x08004fa1   Thumb Code    18  functions.o(i.SetErr2Led)
-    SetErrLed                                0x08004fb9   Thumb Code    18  functions.o(i.SetErrLed)
-    SetOutStat                               0x08004fd1   Thumb Code    18  functions.o(i.SetOutStat)
-    SetRunLed                                0x08004fe9   Thumb Code    18  functions.o(i.SetRunLed)
-    SetVarData                               0x08005001   Thumb Code   196  kmachine.o(i.SetVarData)
-    ShowInitInfo                             0x080050c9   Thumb Code   250  debug.o(i.ShowInitInfo)
-    StartPLC                                 0x0800524d   Thumb Code    98  plcfunctions.o(i.StartPLC)
-    StopPLC                                  0x080052bd   Thumb Code    54  plcfunctions.o(i.StopPLC)
-    StopTimer                                0x080052fd   Thumb Code    60  plcfunctions.o(i.StopTimer)
-    SysTick_Handler                          0x08005341   Thumb Code    12  stm32f0xx_it.o(i.SysTick_Handler)
-    SystemClock_Config                       0x0800534d   Thumb Code   142  bsp.o(i.SystemClock_Config)
-    SystemInit                               0x080053f5   Thumb Code    78  system_stm32f0xx.o(i.SystemInit)
-    TIM6_IRQHandler                          0x08005451   Thumb Code    18  stm32f0xx_it.o(i.TIM6_IRQHandler)
-    ToggleErrLed                             0x08005469   Thumb Code    14  functions.o(i.ToggleErrLed)
-    ToggleRunLed                             0x0800547d   Thumb Code    14  functions.o(i.ToggleRunLed)
-    USART1_IRQHandler                        0x08005491   Thumb Code   110  stm32f0xx_it.o(i.USART1_IRQHandler)
-    USART2_IRQHandler                        0x08005519   Thumb Code    68  stm32f0xx_it.o(i.USART2_IRQHandler)
-    Uart1RecvDone                            0x08005565   Thumb Code    22  functions.o(i.Uart1RecvDone)
-    Uart1SendDMA                             0x08005585   Thumb Code    82  functions.o(i.Uart1SendDMA)
-    Uart1SendDone                            0x080055e5   Thumb Code    10  functions.o(i.Uart1SendDone)
-    Uart1TriggerSendDMA                      0x080055f5   Thumb Code    42  functions.o(i.Uart1TriggerSendDMA)
-    Uart2RecvDMA                             0x08005625   Thumb Code    82  functions.o(i.Uart2RecvDMA)
-    Uart2RecvDone                            0x08005685   Thumb Code    44  functions.o(i.Uart2RecvDone)
-    Uart2SendDMA                             0x080056c5   Thumb Code    82  functions.o(i.Uart2SendDMA)
-    Uart2SendDone                            0x08005725   Thumb Code    10  functions.o(i.Uart2SendDone)
-    WriteFactoryData                         0x08005735   Thumb Code    22  kmachine.o(i.WriteFactoryData)
-    WriteProgram                             0x08005751   Thumb Code    50  kmachine.o(i.WriteProgram)
-    WriteSysCfgToFlash                       0x08005791   Thumb Code    96  kmachine.o(i.WriteSysCfgToFlash)
-    WriteToFlashMemNoErase                   0x080057fd   Thumb Code    72  kmachine.o(i.WriteToFlashMemNoErase)
-    _Error_Handler                           0x08005845   Thumb Code     2  main.o(i._Error_Handler)
-    __0sprintf$8                             0x08005849   Thumb Code    36  printf8.o(i.__0sprintf$8)
-    __1sprintf$8                             0x08005849   Thumb Code     0  printf8.o(i.__0sprintf$8)
-    __2sprintf                               0x08005849   Thumb Code     0  printf8.o(i.__0sprintf$8)
-    __ARM_common_switch8                     0x08005871   Thumb Code    26  kbus.o(i.__ARM_common_switch8)
-    __scatterload_copy                       0x0800588b   Thumb Code    14  handlers.o(i.__scatterload_copy)
-    __scatterload_null                       0x08005899   Thumb Code     2  handlers.o(i.__scatterload_null)
-    __scatterload_zeroinit                   0x0800589b   Thumb Code    14  handlers.o(i.__scatterload_zeroinit)
-    clearscreen                              0x08005d29   Thumb Code    12  debug.o(i.clearscreen)
-    crc16bitbybit                            0x08005d41   Thumb Code    50  functions.o(i.crc16bitbybit)
-    crc16table                               0x08005d7d   Thumb Code    42  functions.o(i.crc16table)
-    crc16tablefast                           0x08005dad   Thumb Code    54  modbusrtu.o(i.crc16tablefast)
-    crc_check                                0x08005ded   Thumb Code    34  functions.o(i.crc_check)
-    initQueue                                0x08005e19   Thumb Code    22  myqueue.o(i.initQueue)
-    logData                                  0x08005e31   Thumb Code    30  functions.o(i.logData)
-    main                                     0x08005e55   Thumb Code  1310  main.o(i.main)
-    buf1                                     0x08006390   Data          16  debug.o(.constdata)
-    crc16_table                              0x080063a6   Data         512  functions.o(.constdata)
-    crctablehi                               0x080065a6   Data         256  functions.o(.constdata)
-    crctablelo                               0x080066a6   Data         256  functions.o(.constdata)
-    crctalbeabs                              0x080067a6   Data          32  modbusrtu.o(.constdata)
-    KMInfoBlock                              0x080067c6   Data          24  kmachine.o(.constdata)
-    KMDefaultSysCfg                          0x080067e0   Data         128  kmachine.o(.constdata)
-    AHBPrescTable                            0x08006894   Data          16  system_stm32f0xx.o(.constdata)
-    APBPrescTable                            0x080068a4   Data           8  system_stm32f0xx.o(.constdata)
-    Region$$Table$$Base                      0x080068ac   Number         0  anon$$obj.o(Region$$Table)
-    Region$$Table$$Limit                     0x080068cc   Number         0  anon$$obj.o(Region$$Table)
+    CheckEventLog                            0x08001365   Thumb Code    90  kmachine.o(i.CheckEventLog)
+    ClearEventLog                            0x080013d1   Thumb Code    28  kmachine.o(i.ClearEventLog)
+    DMA1_Channel2_3_IRQHandler               0x080013f5   Thumb Code   144  stm32f0xx_it.o(i.DMA1_Channel2_3_IRQHandler)
+    DMA1_Channel4_5_IRQHandler               0x08001495   Thumb Code    46  stm32f0xx_it.o(i.DMA1_Channel4_5_IRQHandler)
+    DelData                                  0x080014cd   Thumb Code    44  myqueue.o(i.DelData)
+    EraseAndWriteToFlashMem                  0x080014f9   Thumb Code    90  kmachine.o(i.EraseAndWriteToFlashMem)
+    EraseFlashMem                            0x08001559   Thumb Code    32  kmachine.o(i.EraseFlashMem)
+    FPxCalBCC                                0x0800157d   Thumb Code    30  fpx.o(i.FPxCalBCC)
+    FPxCallBackFunc                          0x0800159d   Thumb Code    58  main.o(i.FPxCallBackFunc)
+    FPxParsePkt                              0x080015e1   Thumb Code   434  fpx.o(i.FPxParsePkt)
+    FPxSendPkt                               0x080017a5   Thumb Code    92  fpx.o(i.FPxSendPkt)
+    FPxSetCallBackFunc                       0x0800181d   Thumb Code    12  fpx.o(i.FPxSetCallBackFunc)
+    FPx_Init                                 0x0800182d   Thumb Code    80  fpx.o(i.FPx_Init)
+    FPx_Proc                                 0x08001891   Thumb Code   258  fpx.o(i.FPx_Proc)
+    FPx_SetIOCount                           0x080019b9   Thumb Code    10  fpx.o(i.FPx_SetIOCount)
+    GetCoilValue                             0x080019f1   Thumb Code   156  kmachine.o(i.GetCoilValue)
+    GetContinueData                          0x08001a91   Thumb Code    38  myqueue.o(i.GetContinueData)
+    GetContinueEmptyRoom                     0x08001ab7   Thumb Code    38  myqueue.o(i.GetContinueEmptyRoom)
+    GetEventLogAddr                          0x08001add   Thumb Code    28  kmachine.o(i.GetEventLogAddr)
+    GetVarData                               0x08001b01   Thumb Code   208  kmachine.o(i.GetVarData)
+    GetuS                                    0x08001bd9   Thumb Code    30  functions.o(i.GetuS)
+    HAL_Delay                                0x08001c05   Thumb Code    28  stm32f0xx_hal.o(i.HAL_Delay)
+    HAL_GetTick                              0x08001c21   Thumb Code     6  stm32f0xx_hal.o(i.HAL_GetTick)
+    HAL_IncTick                              0x08001c2d   Thumb Code    10  stm32f0xx_hal.o(i.HAL_IncTick)
+    HAL_Init                                 0x08001c3d   Thumb Code    26  stm32f0xx_hal.o(i.HAL_Init)
+    HAL_InitTick                             0x08001c5d   Thumb Code    34  stm32f0xx_hal.o(i.HAL_InitTick)
+    HAL_MspInit                              0x08001c81   Thumb Code    64  stm32f0xx_hal_msp.o(i.HAL_MspInit)
+    HAL_NVIC_SetPriority                     0x08001cc5   Thumb Code     8  stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
+    HAL_RCCEx_PeriphCLKConfig                0x08001ccd   Thumb Code   222  stm32f0xx_hal_rcc_ex.o(i.HAL_RCCEx_PeriphCLKConfig)
+    HAL_RCC_ClockConfig                      0x08001db9   Thumb Code   280  stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
+    HAL_RCC_GetHCLKFreq                      0x08001ee5   Thumb Code     6  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
+    HAL_RCC_GetSysClockFreq                  0x08001ef1   Thumb Code    80  stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
+    HAL_RCC_OscConfig                        0x08001f71   Thumb Code   838  stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
+    HAL_SYSTICK_CLKSourceConfig              0x080022c5   Thumb Code    20  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
+    HAL_SYSTICK_Callback                     0x080022dd   Thumb Code    86  main.o(i.HAL_SYSTICK_Callback)
+    HAL_SYSTICK_Config                       0x08002351   Thumb Code    38  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
+    HAL_SYSTICK_IRQHandler                   0x08002381   Thumb Code     8  stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
+    HardFault_Handler                        0x08002389   Thumb Code     2  stm32f0xx_it.o(i.HardFault_Handler)
+    InitPLC                                  0x0800238d   Thumb Code    68  plcfunctions.o(i.InitPLC)
+    InitTimer                                0x080023d9   Thumb Code    56  plcfunctions.o(i.InitTimer)
+    InitUartstat                             0x08002419   Thumb Code    30  functions.o(i.InitUartstat)
+    InituS                                   0x08002439   Thumb Code    68  functions.o(i.InituS)
+    KBusAddChildAddrByInfo                   0x0800248d   Thumb Code   104  kbus.o(i.KBusAddChildAddrByInfo)
+    KBusBCC                                  0x080024f9   Thumb Code    22  kbus.o(i.KBusBCC)
+    KBusCallBackFunc                         0x08002511   Thumb Code    70  main.o(i.KBusCallBackFunc)
+    KBusCheckPacket                          0x08002565   Thumb Code   234  kbus.o(i.KBusCheckPacket)
+    KBusInit                                 0x08002669   Thumb Code    80  kbus.o(i.KBusInit)
+    KBusMakeDefaultClildInfo                 0x080026c1   Thumb Code    34  kbus.o(i.KBusMakeDefaultClildInfo)
+    KBusMakePacket                           0x080026e9   Thumb Code   138  kbus.o(i.KBusMakePacket)
+    KBusMasterFunc                           0x08002775   Thumb Code   424  kbus.o(i.KBusMasterFunc)
+    KBusMasterParsePacket                    0x08002939   Thumb Code   264  kbus.o(i.KBusMasterParsePacket)
+    KBusParsePacket                          0x08002a4d   Thumb Code   114  kbus.o(i.KBusParsePacket)
+    KBusSearchChild                          0x08002acd   Thumb Code   130  kbus.o(i.KBusSearchChild)
+    KBusSetCallBackFunc                      0x08002b59   Thumb Code    12  kbus.o(i.KBusSetCallBackFunc)
+    KBusSlaveCheckPacket                     0x08002b69   Thumb Code   134  kbus.o(i.KBusSlaveCheckPacket)
+    KBusSlaveFunc                            0x08002bf9   Thumb Code    84  kbus.o(i.KBusSlaveFunc)
+    KBusSlaveParsePacket                     0x08002c59   Thumb Code   454  kbus.o(i.KBusSlaveParsePacket)
+    KLBCC                                    0x08002e39   Thumb Code    22  klink.o(i.KLBCC)
+    KLCheckPacket                            0x08002e4f   Thumb Code    50  klink.o(i.KLCheckPacket)
+    KLMakeRplyPacket                         0x08002e81   Thumb Code    76  klink.o(i.KLMakeRplyPacket)
+    KLParsePacket                            0x08002ecd   Thumb Code    70  klink.o(i.KLParsePacket)
+    KLParseReqPacket                         0x08002f1d   Thumb Code  1844  klink.o(i.KLParseReqPacket)
+    KMachineInit                             0x0800367d   Thumb Code    94  kmachine.o(i.KMachineInit)
+    LL_FLASH_Program                         0x0800388d   Thumb Code   100  stm32f0xx_ll_flash.o(i.LL_FLASH_Program)
+    LL_Flash_PageErase                       0x080038f5   Thumb Code    76  stm32f0xx_ll_flash.o(i.LL_Flash_PageErase)
+    LL_Flash_Unlock                          0x08003945   Thumb Code    30  stm32f0xx_ll_flash.o(i.LL_Flash_Unlock)
+    LL_GPIO_Init                             0x08003971   Thumb Code   164  stm32f0xx_ll_gpio.o(i.LL_GPIO_Init)
+    LL_RCC_GetSystemClocksFreq               0x08003a23   Thumb Code    24  stm32f0xx_ll_rcc.o(i.LL_RCC_GetSystemClocksFreq)
+    LL_RCC_GetUSARTClockFreq                 0x08003a3d   Thumb Code    76  stm32f0xx_ll_rcc.o(i.LL_RCC_GetUSARTClockFreq)
+    LL_SPI_Init                              0x08003a91   Thumb Code    92  stm32f0xx_ll_spi.o(i.LL_SPI_Init)
+    LL_TIM_Init                              0x08003af5   Thumb Code   108  stm32f0xx_ll_tim.o(i.LL_TIM_Init)
+    LL_USART_Init                            0x08003b8d   Thumb Code   156  stm32f0xx_ll_usart.o(i.LL_USART_Init)
+    LoadDefaultSysCfg                        0x08003c39   Thumb Code    14  kmachine.o(i.LoadDefaultSysCfg)
+    LoadRunStat                              0x08003c4d   Thumb Code    86  kmachine.o(i.LoadRunStat)
+    Locate                                   0x08003cb1   Thumb Code    24  debug.o(i.Locate)
+    MX_DMA_Init                              0x08003cd5   Thumb Code    38  bsp.o(i.MX_DMA_Init)
+    MX_GPIO_Init                             0x08003cfd   Thumb Code   286  bsp.o(i.MX_GPIO_Init)
+    MX_IWDG_Init                             0x08003e31   Thumb Code    32  bsp.o(i.MX_IWDG_Init)
+    MX_SPI1_Init                             0x08003e65   Thumb Code   196  bsp.o(i.MX_SPI1_Init)
+    MX_TIM6_Init                             0x08003f31   Thumb Code    74  bsp.o(i.MX_TIM6_Init)
+    MX_USART1_UART_Init                      0x08003f85   Thumb Code   278  bsp.o(i.MX_USART1_UART_Init)
+    MX_USART2_UART_Init                      0x080040a9   Thumb Code   332  bsp.o(i.MX_USART2_UART_Init)
+    ModBusSlaveCheckPkg                      0x08004201   Thumb Code    56  modbusrtu.o(i.ModBusSlaveCheckPkg)
+    ModBusSlaveParsePkg                      0x08004239   Thumb Code   786  modbusrtu.o(i.ModBusSlaveParsePkg)
+    NMI_Handler                              0x08004559   Thumb Code     2  stm32f0xx_it.o(i.NMI_Handler)
+    PendSV_Handler                           0x080045f9   Thumb Code    24  stm32f0xx_it.o(i.PendSV_Handler)
+    PendSvCallBack                           0x08004619   Thumb Code    56  functions.o(i.PendSvCallBack)
+    PopOutVal                                0x08004665   Thumb Code    28  plcfunctions.o(i.PopOutVal)
+    ProcessPLCBinProg                        0x08004685   Thumb Code  1370  plcfunctions.o(i.ProcessPLCBinProg)
+    ProcessTimer                             0x08004be5   Thumb Code   192  plcfunctions.o(i.ProcessTimer)
+    PushIn                                   0x08004cb1   Thumb Code   130  myqueue.o(i.PushIn)
+    PushInVal                                0x08004d35   Thumb Code    30  plcfunctions.o(i.PushInVal)
+    PutStr                                   0x08004d59   Thumb Code    22  functions.o(i.PutStr)
+    PutStr1                                  0x08004d75   Thumb Code    22  functions.o(i.PutStr1)
+    PutStr2                                  0x08004d91   Thumb Code    12  functions.o(i.PutStr2)
+    RCC_GetHCLKClockFreq                     0x08004d9d   Thumb Code    18  stm32f0xx_ll_rcc.o(i.RCC_GetHCLKClockFreq)
+    RCC_GetPCLK1ClockFreq                    0x08004db9   Thumb Code    16  stm32f0xx_ll_rcc.o(i.RCC_GetPCLK1ClockFreq)
+    RCC_GetSystemClockFreq                   0x08004dd1   Thumb Code    32  stm32f0xx_ll_rcc.o(i.RCC_GetSystemClockFreq)
+    RCC_PLL_GetFreqDomain_SYS                0x08004dfd   Thumb Code    50  stm32f0xx_ll_rcc.o(i.RCC_PLL_GetFreqDomain_SYS)
+    ReadFlashMem                             0x08004e3d   Thumb Code    52  kmachine.o(i.ReadFlashMem)
+    ReadJumperSW                             0x08004e71   Thumb Code    14  functions.o(i.ReadJumperSW)
+    ReadSysCfgFromFlash                      0x08004e81   Thumb Code    84  kmachine.o(i.ReadSysCfgFromFlash)
+    RunTimer                                 0x08004ef1   Thumb Code    68  plcfunctions.o(i.RunTimer)
+    SPI1_IRQHandler                          0x08004f3d   Thumb Code     8  stm32f0xx_it.o(i.SPI1_IRQHandler)
+    SPI1_IRQ_CallBack                        0x08004f45   Thumb Code   164  functions.o(i.SPI1_IRQ_CallBack)
+    SVC_Handler                              0x08005005   Thumb Code     2  stm32f0xx_it.o(i.SVC_Handler)
+    SaveRunStat                              0x08005009   Thumb Code   108  kmachine.o(i.SaveRunStat)
+    SendPacket                               0x08005089   Thumb Code    48  functions.o(i.SendPacket)
+    SetCoilValue                             0x08005115   Thumb Code   134  kmachine.o(i.SetCoilValue)
+    SetErr2Led                               0x080051a5   Thumb Code    18  functions.o(i.SetErr2Led)
+    SetErrLed                                0x080051bd   Thumb Code    18  functions.o(i.SetErrLed)
+    SetOutStat                               0x080051d5   Thumb Code    18  functions.o(i.SetOutStat)
+    SetRunLed                                0x080051ed   Thumb Code    18  functions.o(i.SetRunLed)
+    SetVarData                               0x08005205   Thumb Code   196  kmachine.o(i.SetVarData)
+    ShowInitInfo                             0x080052cd   Thumb Code   250  debug.o(i.ShowInitInfo)
+    StartPLC                                 0x08005451   Thumb Code    98  plcfunctions.o(i.StartPLC)
+    StopPLC                                  0x080054c1   Thumb Code    54  plcfunctions.o(i.StopPLC)
+    StopTimer                                0x08005501   Thumb Code    60  plcfunctions.o(i.StopTimer)
+    SysTick_Handler                          0x08005545   Thumb Code    12  stm32f0xx_it.o(i.SysTick_Handler)
+    SystemClock_Config                       0x08005551   Thumb Code   142  bsp.o(i.SystemClock_Config)
+    SystemInit                               0x080055f9   Thumb Code    78  system_stm32f0xx.o(i.SystemInit)
+    TIM6_IRQHandler                          0x08005655   Thumb Code    18  stm32f0xx_it.o(i.TIM6_IRQHandler)
+    USART1_IRQHandler                        0x0800566d   Thumb Code   110  stm32f0xx_it.o(i.USART1_IRQHandler)
+    USART2_IRQHandler                        0x080056f5   Thumb Code    68  stm32f0xx_it.o(i.USART2_IRQHandler)
+    Uart1RecvDone                            0x08005741   Thumb Code    22  functions.o(i.Uart1RecvDone)
+    Uart1SendDMA                             0x08005761   Thumb Code    82  functions.o(i.Uart1SendDMA)
+    Uart1SendDone                            0x080057c1   Thumb Code    10  functions.o(i.Uart1SendDone)
+    Uart1TriggerSendDMA                      0x080057d1   Thumb Code    42  functions.o(i.Uart1TriggerSendDMA)
+    Uart2RecvDMA                             0x08005801   Thumb Code    82  functions.o(i.Uart2RecvDMA)
+    Uart2RecvDone                            0x08005861   Thumb Code    44  functions.o(i.Uart2RecvDone)
+    Uart2SendDMA                             0x080058a1   Thumb Code    82  functions.o(i.Uart2SendDMA)
+    Uart2SendDone                            0x08005901   Thumb Code    10  functions.o(i.Uart2SendDone)
+    WriteFactoryData                         0x08005911   Thumb Code    22  kmachine.o(i.WriteFactoryData)
+    WriteNewApp                              0x0800592d   Thumb Code    28  kmachine.o(i.WriteNewApp)
+    WriteNewAppInfo                          0x0800594d   Thumb Code    16  kmachine.o(i.WriteNewAppInfo)
+    WriteProgram                             0x08005961   Thumb Code    50  kmachine.o(i.WriteProgram)
+    WriteSysCfgToFlash                       0x080059a1   Thumb Code    96  kmachine.o(i.WriteSysCfgToFlash)
+    WriteToFlashMemNoErase                   0x08005a0d   Thumb Code    76  kmachine.o(i.WriteToFlashMemNoErase)
+    _Error_Handler                           0x08005a5d   Thumb Code     2  main.o(i._Error_Handler)
+    __0sprintf$8                             0x08005a61   Thumb Code    36  printf8.o(i.__0sprintf$8)
+    __1sprintf$8                             0x08005a61   Thumb Code     0  printf8.o(i.__0sprintf$8)
+    __2sprintf                               0x08005a61   Thumb Code     0  printf8.o(i.__0sprintf$8)
+    __ARM_common_switch8                     0x08005a89   Thumb Code    26  modbusrtu.o(i.__ARM_common_switch8)
+    __scatterload_copy                       0x08005aa3   Thumb Code    14  handlers.o(i.__scatterload_copy)
+    __scatterload_null                       0x08005ab1   Thumb Code     2  handlers.o(i.__scatterload_null)
+    __scatterload_zeroinit                   0x08005ab3   Thumb Code    14  handlers.o(i.__scatterload_zeroinit)
+    clearscreen                              0x08005f41   Thumb Code    12  debug.o(i.clearscreen)
+    crc16bitbybit                            0x08005f59   Thumb Code    50  functions.o(i.crc16bitbybit)
+    crc16table                               0x08005f95   Thumb Code    42  functions.o(i.crc16table)
+    crc16tablefast                           0x08005fc5   Thumb Code    54  modbusrtu.o(i.crc16tablefast)
+    crc_check                                0x08006005   Thumb Code    34  functions.o(i.crc_check)
+    initQueue                                0x08006031   Thumb Code    22  myqueue.o(i.initQueue)
+    logData                                  0x08006049   Thumb Code    30  functions.o(i.logData)
+    main                                     0x0800606d   Thumb Code  1232  main.o(i.main)
+    buf1                                     0x08006548   Data          16  debug.o(.constdata)
+    crc16_table                              0x0800655e   Data         512  functions.o(.constdata)
+    crctablehi                               0x0800675e   Data         256  functions.o(.constdata)
+    crctablelo                               0x0800685e   Data         256  functions.o(.constdata)
+    crctalbeabs                              0x0800695e   Data          32  modbusrtu.o(.constdata)
+    KMInfoBlock                              0x0800697e   Data          24  kmachine.o(.constdata)
+    KMDefaultSysCfg                          0x08006998   Data         128  kmachine.o(.constdata)
+    AHBPrescTable                            0x08006a4c   Data          16  system_stm32f0xx.o(.constdata)
+    APBPrescTable                            0x08006a5c   Data           8  system_stm32f0xx.o(.constdata)
+    Region$$Table$$Base                      0x08006a64   Number         0  anon$$obj.o(Region$$Table)
+    Region$$Table$$Limit                     0x08006a84   Number         0  anon$$obj.o(Region$$Table)
     sprintftime                              0x200000c0   Data           4  debug.o(.data)
     putstrtime                               0x200000c4   Data           4  debug.o(.data)
     LineCount                                0x200000c8   Data           4  debug.o(.data)
     Uart1baudval                             0x200000cc   Data           4  debug.o(.data)
-    TickFreq                                 0x200000d4   Data           4  functions.o(.data)
-    ClkuS                                    0x200000d8   Data           2  functions.o(.data)
-    nCurTick                                 0x200000dc   Data           4  functions.o(.data)
-    CurTickuS                                0x200000e0   Data           4  functions.o(.data)
-    CoreClkMHz                               0x200000e4   Data           4  functions.o(.data)
-    TickPriodClk                             0x200000e8   Data           4  functions.o(.data)
-    TickPrioduS                              0x200000ec   Data           4  functions.o(.data)
-    PendSvCount                              0x200000f0   Data           4  globaldef.o(.data)
-    Uart1Baud                                0x200000f4   Data           4  globaldef.o(.data)
-    Uart2Baud                                0x200000f8   Data           4  globaldef.o(.data)
-    Uart1RecvBuf1DataLen                     0x200000fc   Data           4  globaldef.o(.data)
-    Uart2RecvBuf1DataLen                     0x20000100   Data           4  globaldef.o(.data)
-    Uart1BaudGot                             0x20000104   Data           4  globaldef.o(.data)
-    Uart1BaudFirstGot                        0x20000108   Data           4  globaldef.o(.data)
-    bKBusMaster                              0x2000010c   Data           1  kbus.o(.data)
-    bKBusSlave                               0x2000010d   Data           1  kbus.o(.data)
-    KBusDiagnosis                            0x2000010e   Data           1  kbus.o(.data)
-    KBusSnapPos                              0x2000010f   Data           1  kbus.o(.data)
-    nStationID                               0x20000110   Data           1  kbus.o(.data)
-    nCurPollId                               0x20000111   Data           1  kbus.o(.data)
-    nSeq                                     0x20000112   Data           1  kbus.o(.data)
-    KBusMasterRecved                         0x20000113   Data           1  kbus.o(.data)
-    KBusMasterRecvOK                         0x20000114   Data           1  kbus.o(.data)
-    KBusSlaveRecved                          0x20000115   Data           1  kbus.o(.data)
-    nClientDataIndex                         0x20000116   Data           1  kbus.o(.data)
-    nChilds                                  0x20000117   Data           1  kbus.o(.data)
-    KBusSendTimeuS                           0x20000118   Data           4  kbus.o(.data)
-    KBusRecvTimeuS                           0x2000011c   Data           4  kbus.o(.data)
-    KBusDelayuS                              0x20000120   Data           4  kbus.o(.data)
-    KBusMaxDelayuS                           0x20000124   Data           4  kbus.o(.data)
-    nSlaveTick                               0x20000128   Data           4  kbus.o(.data)
-    nCount2                                  0x2000012c   Data           4  kbus.o(.data)
-    TimeOutCount                             0x20000130   Data           4  kbus.o(.data)
-    LastCircleStartTime                      0x20000134   Data           4  kbus.o(.data)
-    CircleTime                               0x20000138   Data           4  kbus.o(.data)
-    ThisuS                                   0x2000013c   Data           4  kbus.o(.data)
-    SendTime                                 0x20000140   Data           4  kbus.o(.data)
-    nKLStationId                             0x20000144   Data           1  klink.o(.data)
-    nKLStatus                                0x20000145   Data           1  klink.o(.data)
-    KLThisuS                                 0x20000148   Data           4  klink.o(.data)
-    KLRecvTimeuS                             0x2000014c   Data           4  klink.o(.data)
-    MyAddr                                   0x20000150   Data           1  modbusrtu.o(.data)
-    nSizeProg1                               0x20000154   Data           4  plcfunctions.o(.data)
-    nMaxRunStatIndex                         0x20000158   Data           4  kmachine.o(.data)
-    nMaxRunStatSeq                           0x2000015c   Data           4  kmachine.o(.data)
-    nNextRunStatSpace                        0x20000160   Data           4  kmachine.o(.data)
-    nEventCount                              0x20000164   Data           4  kmachine.o(.data)
-    nEventMaxSeq                             0x20000168   Data           4  kmachine.o(.data)
-    nMaxCurTime                              0x2000016c   Data           4  kmachine.o(.data)
-    nEventMinIndex                           0x20000170   Data           4  kmachine.o(.data)
-    nEventMaxIndex                           0x20000174   Data           4  kmachine.o(.data)
-    nEventNextSpace                          0x20000178   Data           4  kmachine.o(.data)
-    bConfiged                                0x2000017c   Data           1  fp0.o(.data)
-    nConfigStationId                         0x2000017d   Data           1  fp0.o(.data)
-    nInputBytes                              0x2000017e   Data           1  fp0.o(.data)
-    nOutputBytes                             0x2000017f   Data           1  fp0.o(.data)
-    bSPI1Recving                             0x20000180   Data           1  fp0.o(.data)
-    nSPI1RecvPos                             0x20000181   Data           1  fp0.o(.data)
-    nSPI1ToSendLen                           0x20000182   Data           1  fp0.o(.data)
-    nSPI1SentLen                             0x20000183   Data           1  fp0.o(.data)
-    bSPI1Sending                             0x20000184   Data           1  fp0.o(.data)
-    oldSYN                                   0x20000188   Data           4  fp0.o(.data)
-    bFirstReq                                0x2000018c   Data           4  fp0.o(.data)
-    RSTCount0                                0x20000190   Data           4  fp0.o(.data)
-    bSPI1RecvDone                            0x20000194   Data           1  fp0.o(.data)
-    nSPI1RecvLenInBuf                        0x20000195   Data           1  fp0.o(.data)
-    bSPI1SendDone                            0x20000196   Data           1  fp0.o(.data)
-    SlowFlicker                              0x20000198   Data           1  main.o(.data)
-    FastFlicker                              0x20000199   Data           1  main.o(.data)
-    Uart1IdelTimer                           0x2000019c   Data           4  main.o(.data)
-    pProgs                                   0x200001a0   Data           4  main.o(.data)
-    us1                                      0x200001a8   Data           4  main.o(.data)
-    us2                                      0x200001ac   Data           4  main.o(.data)
-    us3                                      0x200001b0   Data           4  main.o(.data)
-    us4                                      0x200001b4   Data           4  main.o(.data)
-    us5                                      0x200001b8   Data           4  main.o(.data)
-    us6                                      0x200001bc   Data           4  main.o(.data)
-    SystemCoreClock                          0x200001c0   Data           4  system_stm32f0xx.o(.data)
-    uwTick                                   0x200001c4   Data           4  stm32f0xx_hal.o(.data)
-    str1                                     0x200001c8   Data         256  debug.o(.bss)
-    Uart1Stat                                0x200002c8   Data         148  globaldef.o(.bss)
-    Uart2Stat                                0x2000035c   Data         148  globaldef.o(.bss)
-    Uart1RecvBuf1                            0x200003f0   Data         128  globaldef.o(.bss)
-    Uart2RecvBuf1                            0x20000470   Data         128  globaldef.o(.bss)
-    BufferIn                                 0x200004f0   Data          16  kbus.o(.bss)
-    BufferOut                                0x20000500   Data          16  kbus.o(.bss)
-    PacketBuf1                               0x20000510   Data         128  kbus.o(.bss)
-    PacketBuf2                               0x20000590   Data         128  kbus.o(.bss)
-    KBusChnStats                             0x20000610   Data         768  kbus.o(.bss)
-    Datas                                    0x20000910   Data         128  kbus.o(.bss)
-    KLBufferOut                              0x20000990   Data          16  klink.o(.bss)
-    KLPacketBuf2                             0x200009a0   Data         256  klink.o(.bss)
-    Pkgbuf                                   0x20000aa0   Data         128  modbusrtu.o(.bss)
-    PLCMem                                   0x20000b20   Data         520  plcfunctions.o(.bss)
-    storedKMSysCfg                           0x20000d28   Data         128  kmachine.o(.bss)
-    KMem                                     0x20000da8   Data        1972  kmachine.o(.bss)
-    KMRunStat                                0x2000155c   Data          32  kmachine.o(.bss)
-    PkgBuf2                                  0x2000157c   Data          32  fp0.o(.bss)
-    SPI1SendBuf                              0x2000159c   Data          32  fp0.o(.bss)
-    SPI1RecvBuf                              0x200015bc   Data          32  fp0.o(.bss)
-    Uart1RxBuf                               0x200015dc   Data         128  main.o(.bss)
-    Uart1TxBuf                               0x2000165c   Data         260  main.o(.bss)
-    Uart2RxBuf                               0x20001760   Data          64  main.o(.bss)
-    Uart2TxBuf                               0x200017a0   Data          64  main.o(.bss)
-    pFlash                                   0x200017e0   Data          32  stm32f0xx_hal_flash.o(.bss)
-    __initial_sp                             0x20001c00   Data           0  startup_stm32f030x8.o(STACK)
+    nCount5                                  0x200000d0   Data           4  debug.o(.data)
+    TickFreq                                 0x200000d8   Data           4  functions.o(.data)
+    bSPI1Recving                             0x200000dc   Data           1  functions.o(.data)
+    bSPI1RecvDone                            0x200000dd   Data           1  functions.o(.data)
+    nSPI1RecvPos                             0x200000de   Data           1  functions.o(.data)
+    nSPI1RecvLenInBuf                        0x200000df   Data           1  functions.o(.data)
+    nSPI1ToSendLen                           0x200000e0   Data           1  functions.o(.data)
+    nSPI1SentLen                             0x200000e1   Data           1  functions.o(.data)
+    bSPI1Sending                             0x200000e2   Data           1  functions.o(.data)
+    bSPI1SendDone                            0x200000e3   Data           1  functions.o(.data)
+    ClkuS                                    0x200000e4   Data           2  functions.o(.data)
+    nCurTick                                 0x200000e8   Data           4  functions.o(.data)
+    CurTickuS                                0x200000ec   Data           4  functions.o(.data)
+    CoreClkMHz                               0x200000f0   Data           4  functions.o(.data)
+    TickPriodClk                             0x200000f4   Data           4  functions.o(.data)
+    TickPrioduS                              0x200000f8   Data           4  functions.o(.data)
+    PendSvCount                              0x200000fc   Data           4  globaldef.o(.data)
+    Uart1Baud                                0x20000100   Data           4  globaldef.o(.data)
+    Uart2Baud                                0x20000104   Data           4  globaldef.o(.data)
+    Uart1RecvBuf1DataLen                     0x20000108   Data           4  globaldef.o(.data)
+    Uart2RecvBuf1DataLen                     0x2000010c   Data           4  globaldef.o(.data)
+    Uart1BaudGot                             0x20000110   Data           4  globaldef.o(.data)
+    Uart1BaudFirstGot                        0x20000114   Data           4  globaldef.o(.data)
+    bKBusMaster                              0x20000118   Data           1  kbus.o(.data)
+    bKBusSlave                               0x20000119   Data           1  kbus.o(.data)
+    KBusDiagnosis                            0x2000011a   Data           1  kbus.o(.data)
+    KBusSnapPos                              0x2000011b   Data           1  kbus.o(.data)
+    nStationID                               0x2000011c   Data           1  kbus.o(.data)
+    nCurPollId                               0x2000011d   Data           1  kbus.o(.data)
+    nSeq                                     0x2000011e   Data           1  kbus.o(.data)
+    KBusMasterRecved                         0x2000011f   Data           1  kbus.o(.data)
+    KBusMasterRecvOK                         0x20000120   Data           1  kbus.o(.data)
+    KBusSlaveRecved                          0x20000121   Data           1  kbus.o(.data)
+    nClientDataIndex                         0x20000122   Data           1  kbus.o(.data)
+    nChilds                                  0x20000123   Data           1  kbus.o(.data)
+    KBusSendTimeuS                           0x20000124   Data           4  kbus.o(.data)
+    KBusRecvTimeuS                           0x20000128   Data           4  kbus.o(.data)
+    KBusDelayuS                              0x2000012c   Data           4  kbus.o(.data)
+    KBusMaxDelayuS                           0x20000130   Data           4  kbus.o(.data)
+    nCount2                                  0x20000134   Data           4  kbus.o(.data)
+    TimeOutCount                             0x20000138   Data           4  kbus.o(.data)
+    LastCircleStartTime                      0x2000013c   Data           4  kbus.o(.data)
+    CircleTime                               0x20000140   Data           4  kbus.o(.data)
+    ThisuS                                   0x20000144   Data           4  kbus.o(.data)
+    SendTime                                 0x20000148   Data           4  kbus.o(.data)
+    nSlaveTick                               0x2000014c   Data           4  kbus.o(.data)
+    nKLStationId                             0x20000150   Data           1  klink.o(.data)
+    nKLStatus                                0x20000151   Data           1  klink.o(.data)
+    KLThisuS                                 0x20000154   Data           4  klink.o(.data)
+    KLRecvTimeuS                             0x20000158   Data           4  klink.o(.data)
+    MyAddr                                   0x2000015c   Data           1  modbusrtu.o(.data)
+    nSizeProg1                               0x20000160   Data           4  plcfunctions.o(.data)
+    nMaxRunStatIndex                         0x20000164   Data           4  kmachine.o(.data)
+    nMaxRunStatSeq                           0x20000168   Data           4  kmachine.o(.data)
+    nNextRunStatSpace                        0x2000016c   Data           4  kmachine.o(.data)
+    nEventCount                              0x20000170   Data           4  kmachine.o(.data)
+    nEventMaxSeq                             0x20000174   Data           4  kmachine.o(.data)
+    nMaxCurTime                              0x20000178   Data           4  kmachine.o(.data)
+    nEventMinIndex                           0x2000017c   Data           4  kmachine.o(.data)
+    nEventMaxIndex                           0x20000180   Data           4  kmachine.o(.data)
+    nEventNextSpace                          0x20000184   Data           4  kmachine.o(.data)
+    SlowFlicker                              0x20000188   Data           1  main.o(.data)
+    FastFlicker                              0x20000189   Data           1  main.o(.data)
+    Uart1IdelTimer                           0x2000018c   Data           4  main.o(.data)
+    pProgs                                   0x20000190   Data           4  main.o(.data)
+    us1                                      0x20000198   Data           4  main.o(.data)
+    us2                                      0x2000019c   Data           4  main.o(.data)
+    us3                                      0x200001a0   Data           4  main.o(.data)
+    us4                                      0x200001a4   Data           4  main.o(.data)
+    us5                                      0x200001a8   Data           4  main.o(.data)
+    us6                                      0x200001ac   Data           4  main.o(.data)
+    SystemCoreClock                          0x200001b0   Data           4  system_stm32f0xx.o(.data)
+    uwTick                                   0x200001b4   Data           4  stm32f0xx_hal.o(.data)
+    ADC_TEMP                                 0x200001b8   Data          32  debug.o(.bss)
+    str1                                     0x200001d8   Data         256  debug.o(.bss)
+    SPI1RecvBuf                              0x200002d8   Data          64  functions.o(.bss)
+    SPI1SendBuf                              0x20000318   Data          64  functions.o(.bss)
+    Uart1Stat                                0x20000358   Data         148  globaldef.o(.bss)
+    Uart2Stat                                0x200003ec   Data         148  globaldef.o(.bss)
+    Uart1RecvBuf1                            0x20000480   Data         128  globaldef.o(.bss)
+    Uart2RecvBuf1                            0x20000500   Data         128  globaldef.o(.bss)
+    PacketBuf1                               0x20000580   Data         128  kbus.o(.bss)
+    PacketBuf2                               0x20000600   Data         128  kbus.o(.bss)
+    KBusChnStats                             0x20000680   Data         768  kbus.o(.bss)
+    Datas                                    0x20000980   Data         128  kbus.o(.bss)
+    KBus1                                    0x20000a00   Data         536  kbus.o(.bss)
+    KBusMem                                  0x20000c18   Data         192  kbus.o(.bss)
+    KLBufferOut                              0x20000cd8   Data          16  klink.o(.bss)
+    KLPacketBuf2                             0x20000ce8   Data         256  klink.o(.bss)
+    Pkgbuf                                   0x20000de8   Data         128  modbusrtu.o(.bss)
+    PLCMem                                   0x20000e68   Data         520  plcfunctions.o(.bss)
+    storedKMSysCfg                           0x20001070   Data         128  kmachine.o(.bss)
+    KMem                                     0x200010f0   Data        1972  kmachine.o(.bss)
+    KMRunStat                                0x200018a4   Data          32  kmachine.o(.bss)
+    Uart1RxBuf                               0x200018c4   Data         128  main.o(.bss)
+    Uart1TxBuf                               0x20001944   Data         260  main.o(.bss)
+    Uart2RxBuf                               0x20001a48   Data          64  main.o(.bss)
+    Uart2TxBuf                               0x20001a88   Data          64  main.o(.bss)
+    PktBuf2                                  0x20001ac8   Data          64  fpx.o(.bss)
+    FPxStat                                  0x20001b08   Data          28  fpx.o(.bss)
+    FPxMem                                   0x20001b24   Data          64  fpx.o(.bss)
+    __initial_sp                             0x20001f68   Data           0  startup_stm32f030x8.o(STACK)
 
 
 
@@ -2301,295 +2327,291 @@
 
   Image Entry point : 0x080010b5
 
-  Load Region LR_IROM1 (Base: 0x08001000, Size: 0x000059d4, Max: 0x0000f000, ABSOLUTE)
+  Load Region LR_IROM1 (Base: 0x08001000, Size: 0x00005b7c, Max: 0x0000f000, ABSOLUTE)
 
-    Execution Region ER_IROM1 (Base: 0x08001000, Size: 0x000058cc, Max: 0x0000f000, ABSOLUTE)
+    Execution Region ER_IROM1 (Base: 0x08001000, Size: 0x00005a84, Max: 0x0000f000, ABSOLUTE)
 
     Base Addr    Size         Type   Attr      Idx    E Section Name        Object
 
     0x08001000   0x000000b4   Data   RO            3    RESET               startup_stm32f030x8.o
-    0x080010b4   0x00000000   Code   RO         3998  * .ARM.Collect$$$$00000000  mc_p.l(entry.o)
-    0x080010b4   0x00000004   Code   RO         4278    .ARM.Collect$$$$00000001  mc_p.l(entry2.o)
-    0x080010b8   0x00000004   Code   RO         4281    .ARM.Collect$$$$00000004  mc_p.l(entry5.o)
-    0x080010bc   0x00000000   Code   RO         4283    .ARM.Collect$$$$00000008  mc_p.l(entry7b.o)
-    0x080010bc   0x00000000   Code   RO         4285    .ARM.Collect$$$$0000000A  mc_p.l(entry8b.o)
-    0x080010bc   0x00000008   Code   RO         4286    .ARM.Collect$$$$0000000B  mc_p.l(entry9a.o)
-    0x080010c4   0x00000000   Code   RO         4288    .ARM.Collect$$$$0000000D  mc_p.l(entry10a.o)
-    0x080010c4   0x00000000   Code   RO         4290    .ARM.Collect$$$$0000000F  mc_p.l(entry11a.o)
-    0x080010c4   0x00000004   Code   RO         4279    .ARM.Collect$$$$00002712  mc_p.l(entry2.o)
+    0x080010b4   0x00000000   Code   RO         4162  * .ARM.Collect$$$$00000000  mc_p.l(entry.o)
+    0x080010b4   0x00000004   Code   RO         4442    .ARM.Collect$$$$00000001  mc_p.l(entry2.o)
+    0x080010b8   0x00000004   Code   RO         4445    .ARM.Collect$$$$00000004  mc_p.l(entry5.o)
+    0x080010bc   0x00000000   Code   RO         4447    .ARM.Collect$$$$00000008  mc_p.l(entry7b.o)
+    0x080010bc   0x00000000   Code   RO         4449    .ARM.Collect$$$$0000000A  mc_p.l(entry8b.o)
+    0x080010bc   0x00000008   Code   RO         4450    .ARM.Collect$$$$0000000B  mc_p.l(entry9a.o)
+    0x080010c4   0x00000000   Code   RO         4452    .ARM.Collect$$$$0000000D  mc_p.l(entry10a.o)
+    0x080010c4   0x00000000   Code   RO         4454    .ARM.Collect$$$$0000000F  mc_p.l(entry11a.o)
+    0x080010c4   0x00000004   Code   RO         4443    .ARM.Collect$$$$00002712  mc_p.l(entry2.o)
     0x080010c8   0x00000004   Code   RO           12    .emb_text           debug.o
     0x080010cc   0x0000001c   Code   RO            4    .text               startup_stm32f030x8.o
-    0x080010e8   0x0000002c   Code   RO         4001    .text               mc_p.l(uidiv.o)
-    0x08001114   0x00000028   Code   RO         4003    .text               mc_p.l(idiv.o)
-    0x0800113c   0x0000004c   Code   RO         4005    .text               mc_p.l(ldiv.o)
-    0x08001188   0x00000022   Code   RO         4007    .text               mc_p.l(llushr.o)
-    0x080011aa   0x00000024   Code   RO         4009    .text               mc_p.l(memcpya.o)
-    0x080011ce   0x00000024   Code   RO         4011    .text               mc_p.l(memseta.o)
-    0x080011f2   0x00000014   Code   RO         4276    .text               mc_p.l(uread4.o)
-    0x08001206   0x00000060   Code   RO         4295    .text               mc_p.l(uldiv.o)
+    0x080010e8   0x0000002c   Code   RO         4165    .text               mc_p.l(uidiv.o)
+    0x08001114   0x00000028   Code   RO         4167    .text               mc_p.l(idiv.o)
+    0x0800113c   0x0000004c   Code   RO         4169    .text               mc_p.l(ldiv.o)
+    0x08001188   0x00000022   Code   RO         4171    .text               mc_p.l(llushr.o)
+    0x080011aa   0x00000024   Code   RO         4173    .text               mc_p.l(memcpya.o)
+    0x080011ce   0x00000024   Code   RO         4175    .text               mc_p.l(memseta.o)
+    0x080011f2   0x00000014   Code   RO         4440    .text               mc_p.l(uread4.o)
+    0x08001206   0x00000060   Code   RO         4459    .text               mc_p.l(uldiv.o)
     0x08001266   0x00000002   PAD
-    0x08001268   0x00000024   Code   RO         4308    .text               mc_p.l(init.o)
-    0x0800128c   0x00000020   Code   RO         4311    .text               mc_p.l(llshl.o)
-    0x080012ac   0x0000008c   Code   RO         1428    i.AddEventLog       kmachine.o
-    0x08001338   0x0000002c   Code   RO         1130    i.AddSpace          myqueue.o
-    0x08001364   0x0000001e   Code   RO         1993    i.CalFP0BCC         fp0.o
-    0x08001382   0x00000002   PAD
-    0x08001384   0x0000006c   Code   RO         1429    i.CheckEventLog     kmachine.o
-    0x080013f0   0x00000024   Code   RO         1431    i.ClearEventLog     kmachine.o
-    0x08001414   0x000000a0   Code   RO         1899    i.DMA1_Channel2_3_IRQHandler  stm32f0xx_it.o
-    0x080014b4   0x00000038   Code   RO         1900    i.DMA1_Channel4_5_IRQHandler  stm32f0xx_it.o
-    0x080014ec   0x0000002c   Code   RO         1132    i.DelData           myqueue.o
-    0x08001518   0x00000046   Code   RO         1432    i.EraseAndWriteToFlashMem  kmachine.o
-    0x0800155e   0x00000020   Code   RO         1433    i.EraseFlashMem     kmachine.o
-    0x0800157e   0x00000002   PAD
-    0x08001580   0x00000024   Code   RO         3716    i.FLASH_MassErase   stm32f0xx_hal_flash_ex.o
-    0x080015a4   0x00000024   Code   RO         3721    i.FLASH_PageErase   stm32f0xx_hal_flash_ex.o
-    0x080015c8   0x00000020   Code   RO         3617    i.FLASH_Program_HalfWord  stm32f0xx_hal_flash.o
-    0x080015e8   0x00000038   Code   RO         3618    i.FLASH_SetErrorCode  stm32f0xx_hal_flash.o
-    0x08001620   0x00000050   Code   RO         3619    i.FLASH_WaitForLastOperation  stm32f0xx_hal_flash.o
-    0x08001670   0x00000050   Code   RO         1995    i.FP0_Init          fp0.o
-    0x080016c0   0x000000f8   Code   RO         1996    i.FP0_Proc          fp0.o
-    0x080017b8   0x00000014   Code   RO         1054    i.GetBitValue       modbusrtu.o
-    0x080017cc   0x00000014   Code   RO         1434    i.GetBitValue       kmachine.o
-    0x080017e0   0x000000a0   Code   RO         1435    i.GetCoilValue      kmachine.o
-    0x08001880   0x00000026   Code   RO         1134    i.GetContinueData   myqueue.o
-    0x080018a6   0x00000026   Code   RO         1135    i.GetContinueEmptyRoom  myqueue.o
-    0x080018cc   0x00000024   Code   RO         1436    i.GetEventLogAddr   kmachine.o
-    0x080018f0   0x000000d8   Code   RO         1437    i.GetVarData        kmachine.o
-    0x080019c8   0x0000002c   Code   RO          596    i.GetuS             functions.o
-    0x080019f4   0x0000001c   Code   RO         2671    i.HAL_Delay         stm32f0xx_hal.o
-    0x08001a10   0x000000a0   Code   RO         3722    i.HAL_FLASHEx_Erase  stm32f0xx_hal_flash_ex.o
-    0x08001ab0   0x00000014   Code   RO         3623    i.HAL_FLASH_Lock    stm32f0xx_hal_flash.o
-    0x08001ac4   0x0000007c   Code   RO         3628    i.HAL_FLASH_Program  stm32f0xx_hal_flash.o
-    0x08001b40   0x00000024   Code   RO         3630    i.HAL_FLASH_Unlock  stm32f0xx_hal_flash.o
-    0x08001b64   0x0000000c   Code   RO         2675    i.HAL_GetTick       stm32f0xx_hal.o
-    0x08001b70   0x00000010   Code   RO         2679    i.HAL_IncTick       stm32f0xx_hal.o
-    0x08001b80   0x00000020   Code   RO         2680    i.HAL_Init          stm32f0xx_hal.o
-    0x08001ba0   0x00000022   Code   RO         2681    i.HAL_InitTick      stm32f0xx_hal.o
-    0x08001bc2   0x00000002   PAD
-    0x08001bc4   0x00000044   Code   RO         1395    i.HAL_MspInit       stm32f0xx_hal_msp.o
-    0x08001c08   0x00000008   Code   RO         3429    i.HAL_NVIC_SetPriority  stm32f0xx_hal_cortex.o
-    0x08001c10   0x000000ec   Code   RO         2636    i.HAL_RCCEx_PeriphCLKConfig  stm32f0xx_hal_rcc_ex.o
-    0x08001cfc   0x0000012c   Code   RO         2543    i.HAL_RCC_ClockConfig  stm32f0xx_hal_rcc.o
-    0x08001e28   0x0000000c   Code   RO         2548    i.HAL_RCC_GetHCLKFreq  stm32f0xx_hal_rcc.o
-    0x08001e34   0x00000080   Code   RO         2551    i.HAL_RCC_GetSysClockFreq  stm32f0xx_hal_rcc.o
-    0x08001eb4   0x00000354   Code   RO         2554    i.HAL_RCC_OscConfig  stm32f0xx_hal_rcc.o
-    0x08002208   0x00000018   Code   RO         3431    i.HAL_SYSTICK_CLKSourceConfig  stm32f0xx_hal_cortex.o
-    0x08002220   0x00000074   Code   RO         2076    i.HAL_SYSTICK_Callback  main.o
-    0x08002294   0x00000030   Code   RO         3433    i.HAL_SYSTICK_Config  stm32f0xx_hal_cortex.o
-    0x080022c4   0x00000008   Code   RO         3434    i.HAL_SYSTICK_IRQHandler  stm32f0xx_hal_cortex.o
-    0x080022cc   0x00000002   Code   RO         1901    i.HardFault_Handler  stm32f0xx_it.o
-    0x080022ce   0x00000002   PAD
-    0x080022d0   0x0000004c   Code   RO         1209    i.InitPLC           plcfunctions.o
-    0x0800231c   0x00000040   Code   RO         1210    i.InitTimer         plcfunctions.o
-    0x0800235c   0x0000001e   Code   RO          245    i.InitUartstat      functions.o
-    0x0800237a   0x00000002   PAD
-    0x0800237c   0x00000054   Code   RO          246    i.InituS            functions.o
-    0x080023d0   0x00000016   Code   RO          745    i.KBusBCC           kbus.o
-    0x080023e6   0x00000002   PAD
-    0x080023e8   0x00000104   Code   RO          746    i.KBusCheckPacket   kbus.o
-    0x080024ec   0x0000007e   Code   RO          747    i.KBusMakePacket    kbus.o
-    0x0800256a   0x00000002   PAD
-    0x0800256c   0x00000188   Code   RO          748    i.KBusMasterFunc    kbus.o
-    0x080026f4   0x00000148   Code   RO          749    i.KBusMasterParsePacket  kbus.o
-    0x0800283c   0x00000080   Code   RO          750    i.KBusParsePacket   kbus.o
-    0x080028bc   0x00000090   Code   RO          752    i.KBusSlaveCheckPacket  kbus.o
-    0x0800294c   0x00000060   Code   RO          753    i.KBusSlaveFunc     kbus.o
-    0x080029ac   0x0000017c   Code   RO          754    i.KBusSlaveParsePacket  kbus.o
-    0x08002b28   0x00000016   Code   RO          896    i.KLBCC             klink.o
-    0x08002b3e   0x00000032   Code   RO          897    i.KLCheckPacket     klink.o
-    0x08002b70   0x0000003c   Code   RO          898    i.KLMakeRplyPacket  klink.o
-    0x08002bac   0x00000050   Code   RO          899    i.KLParsePacket     klink.o
-    0x08002bfc   0x000006d0   Code   RO          900    i.KLParseReqPacket  klink.o
-    0x080032cc   0x00000070   Code   RO         1438    i.KMachineInit      kmachine.o
-    0x0800333c   0x00000018   Code   RO         1714    i.LL_AHB1_GRP1_EnableClock  bsp.o
-    0x08003354   0x00000018   Code   RO         1715    i.LL_APB1_GRP1_EnableClock  bsp.o
-    0x0800336c   0x00000018   Code   RO         1716    i.LL_APB1_GRP2_EnableClock  bsp.o
-    0x08003384   0x0000002c   Code   RO          251    i.LL_DMA_ConfigAddresses  functions.o
-    0x080033b0   0x00000018   Code   RO          252    i.LL_DMA_DisableChannel  functions.o
-    0x080033c8   0x00000018   Code   RO          253    i.LL_DMA_EnableChannel  functions.o
-    0x080033e0   0x00000018   Code   RO          254    i.LL_DMA_EnableIT_TC  functions.o
-    0x080033f8   0x0000001c   Code   RO         1717    i.LL_DMA_SetChannelPriorityLevel  bsp.o
-    0x08003414   0x0000001c   Code   RO          255    i.LL_DMA_SetDataLength  functions.o
-    0x08003430   0x00000020   Code   RO         1718    i.LL_DMA_SetDataTransferDirection  bsp.o
-    0x08003450   0x0000001c   Code   RO         1719    i.LL_DMA_SetMemoryIncMode  bsp.o
-    0x0800346c   0x0000001c   Code   RO         1720    i.LL_DMA_SetMemorySize  bsp.o
-    0x08003488   0x0000001c   Code   RO         1721    i.LL_DMA_SetMode    bsp.o
-    0x080034a4   0x0000001c   Code   RO         1722    i.LL_DMA_SetPeriphIncMode  bsp.o
-    0x080034c0   0x0000001c   Code   RO         1723    i.LL_DMA_SetPeriphSize  bsp.o
-    0x080034dc   0x000000a4   Code   RO         2193    i.LL_GPIO_Init      stm32f0xx_ll_gpio.o
-    0x08003580   0x0000000e   Code   RO         1997    i.LL_GPIO_IsInputPinSet  fp0.o
-    0x0800358e   0x00000002   PAD
-    0x08003590   0x00000020   Code   RO         3797    i.LL_Init1msTick    stm32f0xx_ll_utils.o
-    0x080035b0   0x00000018   Code   RO         2481    i.LL_RCC_GetSystemClocksFreq  stm32f0xx_ll_rcc.o
-    0x080035c8   0x00000054   Code   RO         2482    i.LL_RCC_GetUSARTClockFreq  stm32f0xx_ll_rcc.o
-    0x0800361c   0x00000064   Code   RO         2367    i.LL_SPI_Init       stm32f0xx_ll_spi.o
-    0x08003680   0x00000084   Code   RO         3886    i.LL_TIM_Init       stm32f0xx_ll_tim.o
-    0x08003704   0x00000014   Code   RO         1724    i.LL_USART_ConfigAsyncMode  bsp.o
-    0x08003718   0x000000ac   Code   RO         2435    i.LL_USART_Init     stm32f0xx_ll_usart.o
-    0x080037c4   0x00000020   Code   RO         3802    i.LL_mDelay         stm32f0xx_ll_utils.o
-    0x080037e4   0x00000014   Code   RO         1440    i.LoadDefaultSysCfg  kmachine.o
-    0x080037f8   0x00000064   Code   RO         1442    i.LoadRunStat       kmachine.o
-    0x0800385c   0x00000024   Code   RO           15    i.Locate            debug.o
-    0x08003880   0x00000026   Code   RO         1726    i.MX_DMA_Init       bsp.o
-    0x080038a6   0x00000002   PAD
-    0x080038a8   0x00000134   Code   RO         1727    i.MX_GPIO_Init      bsp.o
-    0x080039dc   0x00000034   Code   RO         1728    i.MX_IWDG_Init      bsp.o
-    0x08003a10   0x000000cc   Code   RO         1729    i.MX_SPI1_Init      bsp.o
-    0x08003adc   0x00000054   Code   RO         1731    i.MX_TIM6_Init      bsp.o
-    0x08003b30   0x00000124   Code   RO         1732    i.MX_USART1_UART_Init  bsp.o
-    0x08003c54   0x00000158   Code   RO         1733    i.MX_USART2_UART_Init  bsp.o
-    0x08003dac   0x00000038   Code   RO         1056    i.ModBusSlaveCheckPkg  modbusrtu.o
-    0x08003de4   0x00000320   Code   RO         1057    i.ModBusSlaveParsePkg  modbusrtu.o
-    0x08004104   0x00000002   Code   RO         1902    i.NMI_Handler       stm32f0xx_it.o
-    0x08004106   0x00000002   PAD
-    0x08004108   0x00000014   Code   RO         1734    i.NVIC_EnableIRQ    bsp.o
-    0x0800411c   0x00000044   Code   RO         1735    i.NVIC_SetPriority  bsp.o
-    0x08004160   0x00000044   Code   RO         3435    i.NVIC_SetPriority  stm32f0xx_hal_cortex.o
-    0x080041a4   0x000001a8   Code   RO         1998    i.ParseFP0Pkg       fp0.o
-    0x0800434c   0x00000020   Code   RO         1903    i.PendSV_Handler    stm32f0xx_it.o
-    0x0800436c   0x00000054   Code   RO          258    i.PendSvCallBack    functions.o
-    0x080043c0   0x00000020   Code   RO         1212    i.PopOutVal         plcfunctions.o
-    0x080043e0   0x00000560   Code   RO         1213    i.ProcessPLCBinProg  plcfunctions.o
-    0x08004940   0x000000cc   Code   RO         1214    i.ProcessTimer      plcfunctions.o
-    0x08004a0c   0x00000082   Code   RO         1138    i.PushIn            myqueue.o
-    0x08004a8e   0x00000002   PAD
-    0x08004a90   0x00000024   Code   RO         1215    i.PushInVal         plcfunctions.o
-    0x08004ab4   0x0000001c   Code   RO          261    i.PutStr            functions.o
-    0x08004ad0   0x0000001c   Code   RO          262    i.PutStr1           functions.o
-    0x08004aec   0x0000000c   Code   RO          263    i.PutStr2           functions.o
-    0x08004af8   0x0000001c   Code   RO         2483    i.RCC_GetHCLKClockFreq  stm32f0xx_ll_rcc.o
-    0x08004b14   0x00000018   Code   RO         2484    i.RCC_GetPCLK1ClockFreq  stm32f0xx_ll_rcc.o
-    0x08004b2c   0x0000002c   Code   RO         2485    i.RCC_GetSystemClockFreq  stm32f0xx_ll_rcc.o
-    0x08004b58   0x00000040   Code   RO         2486    i.RCC_PLL_GetFreqDomain_SYS  stm32f0xx_ll_rcc.o
-    0x08004b98   0x00000034   Code   RO         1444    i.ReadFlashMem      kmachine.o
-    0x08004bcc   0x0000000e   Code   RO          271    i.ReadJumperSW      functions.o
-    0x08004bda   0x00000002   PAD
-    0x08004bdc   0x00000060   Code   RO         1446    i.ReadSysCfgFromFlash  kmachine.o
-    0x08004c3c   0x00000010   Code   RO         1058    i.ResetBit          modbusrtu.o
-    0x08004c4c   0x0000004c   Code   RO         1217    i.RunTimer          plcfunctions.o
-    0x08004c98   0x00000008   Code   RO         1904    i.SPI1_IRQHandler   stm32f0xx_it.o
-    0x08004ca0   0x000000f4   Code   RO          272    i.SPI1_IRQ_CallBack  functions.o
-    0x08004d94   0x00000002   Code   RO         1905    i.SVC_Handler       stm32f0xx_it.o
-    0x08004d96   0x00000002   PAD
-    0x08004d98   0x00000080   Code   RO         1447    i.SaveRunStat       kmachine.o
-    0x08004e18   0x0000006c   Code   RO         1999    i.SendFP0Pkg        fp0.o
-    0x08004e84   0x00000038   Code   RO          273    i.SendPacket        functions.o
-    0x08004ebc   0x00000010   Code   RO         1059    i.SetAddrBit        modbusrtu.o
-    0x08004ecc   0x00000018   Code   RO          901    i.SetBitValue       klink.o
-    0x08004ee4   0x00000012   Code   RO         1060    i.SetBitValue       modbusrtu.o
-    0x08004ef6   0x00000018   Code   RO         1448    i.SetBitValue       kmachine.o
-    0x08004f0e   0x00000002   PAD
-    0x08004f10   0x00000090   Code   RO         1449    i.SetCoilValue      kmachine.o
-    0x08004fa0   0x00000018   Code   RO          274    i.SetErr2Led        functions.o
-    0x08004fb8   0x00000018   Code   RO          275    i.SetErrLed         functions.o
-    0x08004fd0   0x00000018   Code   RO          276    i.SetOutStat        functions.o
-    0x08004fe8   0x00000018   Code   RO          277    i.SetRunLed         functions.o
-    0x08005000   0x000000c8   Code   RO         1450    i.SetVarData        kmachine.o
-    0x080050c8   0x00000184   Code   RO           18    i.ShowInitInfo      debug.o
-    0x0800524c   0x00000070   Code   RO         1219    i.StartPLC          plcfunctions.o
-    0x080052bc   0x00000040   Code   RO         1220    i.StopPLC           plcfunctions.o
-    0x080052fc   0x00000044   Code   RO         1221    i.StopTimer         plcfunctions.o
-    0x08005340   0x0000000c   Code   RO         1906    i.SysTick_Handler   stm32f0xx_it.o
-    0x0800534c   0x000000a8   Code   RO         1736    i.SystemClock_Config  bsp.o
-    0x080053f4   0x0000005c   Code   RO         2157    i.SystemInit        system_stm32f0xx.o
-    0x08005450   0x00000018   Code   RO         1907    i.TIM6_IRQHandler   stm32f0xx_it.o
-    0x08005468   0x00000014   Code   RO          279    i.ToggleErrLed      functions.o
-    0x0800547c   0x00000014   Code   RO          281    i.ToggleRunLed      functions.o
-    0x08005490   0x00000088   Code   RO         1908    i.USART1_IRQHandler  stm32f0xx_it.o
-    0x08005518   0x0000004c   Code   RO         1909    i.USART2_IRQHandler  stm32f0xx_it.o
-    0x08005564   0x00000020   Code   RO          283    i.Uart1RecvDone     functions.o
-    0x08005584   0x00000060   Code   RO          284    i.Uart1SendDMA      functions.o
-    0x080055e4   0x00000010   Code   RO          285    i.Uart1SendDone     functions.o
-    0x080055f4   0x00000030   Code   RO          286    i.Uart1TriggerSendDMA  functions.o
-    0x08005624   0x00000060   Code   RO          287    i.Uart2RecvDMA      functions.o
-    0x08005684   0x00000040   Code   RO          288    i.Uart2RecvDone     functions.o
-    0x080056c4   0x00000060   Code   RO          289    i.Uart2SendDMA      functions.o
-    0x08005724   0x00000010   Code   RO          290    i.Uart2SendDone     functions.o
-    0x08005734   0x0000001c   Code   RO         1451    i.WriteFactoryData  kmachine.o
-    0x08005750   0x00000040   Code   RO         1452    i.WriteProgram      kmachine.o
-    0x08005790   0x0000006c   Code   RO         1453    i.WriteSysCfgToFlash  kmachine.o
-    0x080057fc   0x00000048   Code   RO         1454    i.WriteToFlashMemNoErase  kmachine.o
-    0x08005844   0x00000002   Code   RO         2078    i._Error_Handler    main.o
-    0x08005846   0x00000002   PAD
-    0x08005848   0x00000028   Code   RO         4224    i.__0sprintf$8      mc_p.l(printf8.o)
-    0x08005870   0x0000001a   Code   RO          825    i.__ARM_common_switch8  kbus.o
-    0x0800588a   0x0000000e   Code   RO         4322    i.__scatterload_copy  mc_p.l(handlers.o)
-    0x08005898   0x00000002   Code   RO         4323    i.__scatterload_null  mc_p.l(handlers.o)
-    0x0800589a   0x0000000e   Code   RO         4324    i.__scatterload_zeroinit  mc_p.l(handlers.o)
-    0x080058a8   0x00000428   Code   RO         4229    i._printf_core      mc_p.l(printf8.o)
-    0x08005cd0   0x00000020   Code   RO         4230    i._printf_post_padding  mc_p.l(printf8.o)
-    0x08005cf0   0x0000002c   Code   RO         4231    i._printf_pre_padding  mc_p.l(printf8.o)
-    0x08005d1c   0x0000000a   Code   RO         4233    i._sputc            mc_p.l(printf8.o)
-    0x08005d26   0x00000002   PAD
-    0x08005d28   0x00000018   Code   RO           20    i.clearscreen       debug.o
-    0x08005d40   0x0000003c   Code   RO          294    i.crc16bitbybit     functions.o
-    0x08005d7c   0x00000030   Code   RO          295    i.crc16table        functions.o
-    0x08005dac   0x00000040   Code   RO         1061    i.crc16tablefast    modbusrtu.o
-    0x08005dec   0x0000002c   Code   RO          296    i.crc_check         functions.o
-    0x08005e18   0x00000016   Code   RO         1140    i.initQueue         myqueue.o
-    0x08005e2e   0x00000002   PAD
-    0x08005e30   0x00000024   Code   RO          298    i.logData           functions.o
-    0x08005e54   0x0000053c   Code   RO         2079    i.main              main.o
-    0x08006390   0x00000010   Data   RO           22    .constdata          debug.o
-    0x080063a0   0x00000406   Data   RO          300    .constdata          functions.o
-    0x080067a6   0x00000020   Data   RO         1064    .constdata          modbusrtu.o
-    0x080067c6   0x00000018   Data   RO         1459    .constdata          kmachine.o
-    0x080067de   0x00000002   PAD
-    0x080067e0   0x00000090   Data   RO         1460    .constdata          kmachine.o
-    0x08006870   0x00000005   Data   RO         1737    .constdata          bsp.o
-    0x08006875   0x00000005   Data   RO         1910    .constdata          stm32f0xx_it.o
-    0x0800687a   0x00000002   PAD
-    0x0800687c   0x00000018   Data   RO         2082    .constdata          main.o
-    0x08006894   0x00000010   Data   RO         2158    .constdata          system_stm32f0xx.o
-    0x080068a4   0x00000008   Data   RO         2159    .constdata          system_stm32f0xx.o
-    0x080068ac   0x00000020   Data   RO         4320    Region$$Table       anon$$obj.o
+    0x08001268   0x00000024   Code   RO         4472    .text               mc_p.l(init.o)
+    0x0800128c   0x00000020   Code   RO         4475    .text               mc_p.l(llshl.o)
+    0x080012ac   0x0000008c   Code   RO         1522    i.AddEventLog       kmachine.o
+    0x08001338   0x0000002c   Code   RO         1193    i.AddSpace          myqueue.o
+    0x08001364   0x0000006c   Code   RO         1523    i.CheckEventLog     kmachine.o
+    0x080013d0   0x00000024   Code   RO         1525    i.ClearEventLog     kmachine.o
+    0x080013f4   0x000000a0   Code   RO         2015    i.DMA1_Channel2_3_IRQHandler  stm32f0xx_it.o
+    0x08001494   0x00000038   Code   RO         2016    i.DMA1_Channel4_5_IRQHandler  stm32f0xx_it.o
+    0x080014cc   0x0000002c   Code   RO         1195    i.DelData           myqueue.o
+    0x080014f8   0x00000060   Code   RO         1526    i.EraseAndWriteToFlashMem  kmachine.o
+    0x08001558   0x00000024   Code   RO         1527    i.EraseFlashMem     kmachine.o
+    0x0800157c   0x0000001e   Code   RO         2204    i.FPxCalBCC         fpx.o
+    0x0800159a   0x00000002   PAD
+    0x0800159c   0x00000044   Code   RO         2109    i.FPxCallBackFunc   main.o
+    0x080015e0   0x000001c4   Code   RO         2206    i.FPxParsePkt       fpx.o
+    0x080017a4   0x00000078   Code   RO         2207    i.FPxSendPkt        fpx.o
+    0x0800181c   0x00000010   Code   RO         2208    i.FPxSetCallBackFunc  fpx.o
+    0x0800182c   0x00000064   Code   RO         2209    i.FPx_Init          fpx.o
+    0x08001890   0x00000128   Code   RO         2210    i.FPx_Proc          fpx.o
+    0x080019b8   0x00000010   Code   RO         2211    i.FPx_SetIOCount    fpx.o
+    0x080019c8   0x00000014   Code   RO         1112    i.GetBitValue       modbusrtu.o
+    0x080019dc   0x00000014   Code   RO         1528    i.GetBitValue       kmachine.o
+    0x080019f0   0x000000a0   Code   RO         1529    i.GetCoilValue      kmachine.o
+    0x08001a90   0x00000026   Code   RO         1197    i.GetContinueData   myqueue.o
+    0x08001ab6   0x00000026   Code   RO         1198    i.GetContinueEmptyRoom  myqueue.o
+    0x08001adc   0x00000024   Code   RO         1530    i.GetEventLogAddr   kmachine.o
+    0x08001b00   0x000000d8   Code   RO         1531    i.GetVarData        kmachine.o
+    0x08001bd8   0x0000002c   Code   RO          600    i.GetuS             functions.o
+    0x08001c04   0x0000001c   Code   RO         2800    i.HAL_Delay         stm32f0xx_hal.o
+    0x08001c20   0x0000000c   Code   RO         2804    i.HAL_GetTick       stm32f0xx_hal.o
+    0x08001c2c   0x00000010   Code   RO         2808    i.HAL_IncTick       stm32f0xx_hal.o
+    0x08001c3c   0x00000020   Code   RO         2809    i.HAL_Init          stm32f0xx_hal.o
+    0x08001c5c   0x00000022   Code   RO         2810    i.HAL_InitTick      stm32f0xx_hal.o
+    0x08001c7e   0x00000002   PAD
+    0x08001c80   0x00000044   Code   RO         1489    i.HAL_MspInit       stm32f0xx_hal_msp.o
+    0x08001cc4   0x00000008   Code   RO         3558    i.HAL_NVIC_SetPriority  stm32f0xx_hal_cortex.o
+    0x08001ccc   0x000000ec   Code   RO         2765    i.HAL_RCCEx_PeriphCLKConfig  stm32f0xx_hal_rcc_ex.o
+    0x08001db8   0x0000012c   Code   RO         2672    i.HAL_RCC_ClockConfig  stm32f0xx_hal_rcc.o
+    0x08001ee4   0x0000000c   Code   RO         2677    i.HAL_RCC_GetHCLKFreq  stm32f0xx_hal_rcc.o
+    0x08001ef0   0x00000080   Code   RO         2680    i.HAL_RCC_GetSysClockFreq  stm32f0xx_hal_rcc.o
+    0x08001f70   0x00000354   Code   RO         2683    i.HAL_RCC_OscConfig  stm32f0xx_hal_rcc.o
+    0x080022c4   0x00000018   Code   RO         3560    i.HAL_SYSTICK_CLKSourceConfig  stm32f0xx_hal_cortex.o
+    0x080022dc   0x00000074   Code   RO         2110    i.HAL_SYSTICK_Callback  main.o
+    0x08002350   0x00000030   Code   RO         3562    i.HAL_SYSTICK_Config  stm32f0xx_hal_cortex.o
+    0x08002380   0x00000008   Code   RO         3563    i.HAL_SYSTICK_IRQHandler  stm32f0xx_hal_cortex.o
+    0x08002388   0x00000002   Code   RO         2017    i.HardFault_Handler  stm32f0xx_it.o
+    0x0800238a   0x00000002   PAD
+    0x0800238c   0x0000004c   Code   RO         1272    i.InitPLC           plcfunctions.o
+    0x080023d8   0x00000040   Code   RO         1273    i.InitTimer         plcfunctions.o
+    0x08002418   0x0000001e   Code   RO          248    i.InitUartstat      functions.o
+    0x08002436   0x00000002   PAD
+    0x08002438   0x00000054   Code   RO          249    i.InituS            functions.o
+    0x0800248c   0x0000006c   Code   RO          749    i.KBusAddChildAddrByInfo  kbus.o
+    0x080024f8   0x00000016   Code   RO          750    i.KBusBCC           kbus.o
+    0x0800250e   0x00000002   PAD
+    0x08002510   0x00000054   Code   RO         2112    i.KBusCallBackFunc  main.o
+    0x08002564   0x00000104   Code   RO          751    i.KBusCheckPacket   kbus.o
+    0x08002668   0x00000058   Code   RO          753    i.KBusInit          kbus.o
+    0x080026c0   0x00000028   Code   RO          755    i.KBusMakeDefaultClildInfo  kbus.o
+    0x080026e8   0x0000008a   Code   RO          756    i.KBusMakePacket    kbus.o
+    0x08002772   0x00000002   PAD
+    0x08002774   0x000001c4   Code   RO          757    i.KBusMasterFunc    kbus.o
+    0x08002938   0x00000114   Code   RO          758    i.KBusMasterParsePacket  kbus.o
+    0x08002a4c   0x00000080   Code   RO          759    i.KBusParsePacket   kbus.o
+    0x08002acc   0x0000008c   Code   RO          761    i.KBusSearchChild   kbus.o
+    0x08002b58   0x00000010   Code   RO          762    i.KBusSetCallBackFunc  kbus.o
+    0x08002b68   0x00000090   Code   RO          763    i.KBusSlaveCheckPacket  kbus.o
+    0x08002bf8   0x00000060   Code   RO          764    i.KBusSlaveFunc     kbus.o
+    0x08002c58   0x000001e0   Code   RO          765    i.KBusSlaveParsePacket  kbus.o
+    0x08002e38   0x00000016   Code   RO          951    i.KLBCC             klink.o
+    0x08002e4e   0x00000032   Code   RO          952    i.KLCheckPacket     klink.o
+    0x08002e80   0x0000004c   Code   RO          953    i.KLMakeRplyPacket  klink.o
+    0x08002ecc   0x00000050   Code   RO          954    i.KLParsePacket     klink.o
+    0x08002f1c   0x00000760   Code   RO          955    i.KLParseReqPacket  klink.o
+    0x0800367c   0x00000070   Code   RO         1532    i.KMachineInit      kmachine.o
+    0x080036ec   0x00000018   Code   RO         1830    i.LL_AHB1_GRP1_EnableClock  bsp.o
+    0x08003704   0x00000018   Code   RO         1831    i.LL_APB1_GRP1_EnableClock  bsp.o
+    0x0800371c   0x00000018   Code   RO         1832    i.LL_APB1_GRP2_EnableClock  bsp.o
+    0x08003734   0x0000002c   Code   RO          254    i.LL_DMA_ConfigAddresses  functions.o
+    0x08003760   0x00000018   Code   RO          255    i.LL_DMA_DisableChannel  functions.o
+    0x08003778   0x00000018   Code   RO          256    i.LL_DMA_EnableChannel  functions.o
+    0x08003790   0x00000018   Code   RO          257    i.LL_DMA_EnableIT_TC  functions.o
+    0x080037a8   0x0000001c   Code   RO         1833    i.LL_DMA_SetChannelPriorityLevel  bsp.o
+    0x080037c4   0x0000001c   Code   RO          258    i.LL_DMA_SetDataLength  functions.o
+    0x080037e0   0x00000020   Code   RO         1834    i.LL_DMA_SetDataTransferDirection  bsp.o
+    0x08003800   0x0000001c   Code   RO         1835    i.LL_DMA_SetMemoryIncMode  bsp.o
+    0x0800381c   0x0000001c   Code   RO         1836    i.LL_DMA_SetMemorySize  bsp.o
+    0x08003838   0x0000001c   Code   RO         1837    i.LL_DMA_SetMode    bsp.o
+    0x08003854   0x0000001c   Code   RO         1838    i.LL_DMA_SetPeriphIncMode  bsp.o
+    0x08003870   0x0000001c   Code   RO         1839    i.LL_DMA_SetPeriphSize  bsp.o
+    0x0800388c   0x00000068   Code   RO         4129    i.LL_FLASH_Program  stm32f0xx_ll_flash.o
+    0x080038f4   0x00000050   Code   RO         4130    i.LL_Flash_PageErase  stm32f0xx_ll_flash.o
+    0x08003944   0x0000002c   Code   RO         4131    i.LL_Flash_Unlock   stm32f0xx_ll_flash.o
+    0x08003970   0x000000a4   Code   RO         2322    i.LL_GPIO_Init      stm32f0xx_ll_gpio.o
+    0x08003a14   0x0000000e   Code   RO         2212    i.LL_GPIO_IsInputPinSet  fpx.o
+    0x08003a22   0x00000018   Code   RO         2610    i.LL_RCC_GetSystemClocksFreq  stm32f0xx_ll_rcc.o
+    0x08003a3a   0x00000002   PAD
+    0x08003a3c   0x00000054   Code   RO         2611    i.LL_RCC_GetUSARTClockFreq  stm32f0xx_ll_rcc.o
+    0x08003a90   0x00000064   Code   RO         2496    i.LL_SPI_Init       stm32f0xx_ll_spi.o
+    0x08003af4   0x00000084   Code   RO         4015    i.LL_TIM_Init       stm32f0xx_ll_tim.o
+    0x08003b78   0x00000014   Code   RO         1840    i.LL_USART_ConfigAsyncMode  bsp.o
+    0x08003b8c   0x000000ac   Code   RO         2564    i.LL_USART_Init     stm32f0xx_ll_usart.o
+    0x08003c38   0x00000014   Code   RO         1534    i.LoadDefaultSysCfg  kmachine.o
+    0x08003c4c   0x00000064   Code   RO         1536    i.LoadRunStat       kmachine.o
+    0x08003cb0   0x00000024   Code   RO           15    i.Locate            debug.o
+    0x08003cd4   0x00000026   Code   RO         1842    i.MX_DMA_Init       bsp.o
+    0x08003cfa   0x00000002   PAD
+    0x08003cfc   0x00000134   Code   RO         1843    i.MX_GPIO_Init      bsp.o
+    0x08003e30   0x00000034   Code   RO         1844    i.MX_IWDG_Init      bsp.o
+    0x08003e64   0x000000cc   Code   RO         1845    i.MX_SPI1_Init      bsp.o
+    0x08003f30   0x00000054   Code   RO         1847    i.MX_TIM6_Init      bsp.o
+    0x08003f84   0x00000124   Code   RO         1848    i.MX_USART1_UART_Init  bsp.o
+    0x080040a8   0x00000158   Code   RO         1849    i.MX_USART2_UART_Init  bsp.o
+    0x08004200   0x00000038   Code   RO         1114    i.ModBusSlaveCheckPkg  modbusrtu.o
+    0x08004238   0x00000320   Code   RO         1115    i.ModBusSlaveParsePkg  modbusrtu.o
+    0x08004558   0x00000002   Code   RO         2018    i.NMI_Handler       stm32f0xx_it.o
+    0x0800455a   0x00000002   PAD
+    0x0800455c   0x00000014   Code   RO         1850    i.NVIC_EnableIRQ    bsp.o
+    0x08004570   0x00000044   Code   RO         1851    i.NVIC_SetPriority  bsp.o
+    0x080045b4   0x00000044   Code   RO         3564    i.NVIC_SetPriority  stm32f0xx_hal_cortex.o
+    0x080045f8   0x00000020   Code   RO         2019    i.PendSV_Handler    stm32f0xx_it.o
+    0x08004618   0x0000004c   Code   RO          261    i.PendSvCallBack    functions.o
+    0x08004664   0x00000020   Code   RO         1275    i.PopOutVal         plcfunctions.o
+    0x08004684   0x00000560   Code   RO         1276    i.ProcessPLCBinProg  plcfunctions.o
+    0x08004be4   0x000000cc   Code   RO         1277    i.ProcessTimer      plcfunctions.o
+    0x08004cb0   0x00000082   Code   RO         1201    i.PushIn            myqueue.o
+    0x08004d32   0x00000002   PAD
+    0x08004d34   0x00000024   Code   RO         1278    i.PushInVal         plcfunctions.o
+    0x08004d58   0x0000001c   Code   RO          264    i.PutStr            functions.o
+    0x08004d74   0x0000001c   Code   RO          265    i.PutStr1           functions.o
+    0x08004d90   0x0000000c   Code   RO          266    i.PutStr2           functions.o
+    0x08004d9c   0x0000001c   Code   RO         2612    i.RCC_GetHCLKClockFreq  stm32f0xx_ll_rcc.o
+    0x08004db8   0x00000018   Code   RO         2613    i.RCC_GetPCLK1ClockFreq  stm32f0xx_ll_rcc.o
+    0x08004dd0   0x0000002c   Code   RO         2614    i.RCC_GetSystemClockFreq  stm32f0xx_ll_rcc.o
+    0x08004dfc   0x00000040   Code   RO         2615    i.RCC_PLL_GetFreqDomain_SYS  stm32f0xx_ll_rcc.o
+    0x08004e3c   0x00000034   Code   RO         1538    i.ReadFlashMem      kmachine.o
+    0x08004e70   0x0000000e   Code   RO          274    i.ReadJumperSW      functions.o
+    0x08004e7e   0x00000002   PAD
+    0x08004e80   0x00000060   Code   RO         1540    i.ReadSysCfgFromFlash  kmachine.o
+    0x08004ee0   0x00000010   Code   RO         1116    i.ResetBit          modbusrtu.o
+    0x08004ef0   0x0000004c   Code   RO         1280    i.RunTimer          plcfunctions.o
+    0x08004f3c   0x00000008   Code   RO         2020    i.SPI1_IRQHandler   stm32f0xx_it.o
+    0x08004f44   0x000000c0   Code   RO          275    i.SPI1_IRQ_CallBack  functions.o
+    0x08005004   0x00000002   Code   RO         2021    i.SVC_Handler       stm32f0xx_it.o
+    0x08005006   0x00000002   PAD
+    0x08005008   0x00000080   Code   RO         1541    i.SaveRunStat       kmachine.o
+    0x08005088   0x00000038   Code   RO          276    i.SendPacket        functions.o
+    0x080050c0   0x00000010   Code   RO         1117    i.SetAddrBit        modbusrtu.o
+    0x080050d0   0x00000018   Code   RO          956    i.SetBitValue       klink.o
+    0x080050e8   0x00000012   Code   RO         1118    i.SetBitValue       modbusrtu.o
+    0x080050fa   0x00000018   Code   RO         1542    i.SetBitValue       kmachine.o
+    0x08005112   0x00000002   PAD
+    0x08005114   0x00000090   Code   RO         1543    i.SetCoilValue      kmachine.o
+    0x080051a4   0x00000018   Code   RO          277    i.SetErr2Led        functions.o
+    0x080051bc   0x00000018   Code   RO          278    i.SetErrLed         functions.o
+    0x080051d4   0x00000018   Code   RO          279    i.SetOutStat        functions.o
+    0x080051ec   0x00000018   Code   RO          280    i.SetRunLed         functions.o
+    0x08005204   0x000000c8   Code   RO         1544    i.SetVarData        kmachine.o
+    0x080052cc   0x00000184   Code   RO           18    i.ShowInitInfo      debug.o
+    0x08005450   0x00000070   Code   RO         1282    i.StartPLC          plcfunctions.o
+    0x080054c0   0x00000040   Code   RO         1283    i.StopPLC           plcfunctions.o
+    0x08005500   0x00000044   Code   RO         1284    i.StopTimer         plcfunctions.o
+    0x08005544   0x0000000c   Code   RO         2022    i.SysTick_Handler   stm32f0xx_it.o
+    0x08005550   0x000000a8   Code   RO         1852    i.SystemClock_Config  bsp.o
+    0x080055f8   0x0000005c   Code   RO         2286    i.SystemInit        system_stm32f0xx.o
+    0x08005654   0x00000018   Code   RO         2023    i.TIM6_IRQHandler   stm32f0xx_it.o
+    0x0800566c   0x00000088   Code   RO         2024    i.USART1_IRQHandler  stm32f0xx_it.o
+    0x080056f4   0x0000004c   Code   RO         2025    i.USART2_IRQHandler  stm32f0xx_it.o
+    0x08005740   0x00000020   Code   RO          286    i.Uart1RecvDone     functions.o
+    0x08005760   0x00000060   Code   RO          287    i.Uart1SendDMA      functions.o
+    0x080057c0   0x00000010   Code   RO          288    i.Uart1SendDone     functions.o
+    0x080057d0   0x00000030   Code   RO          289    i.Uart1TriggerSendDMA  functions.o
+    0x08005800   0x00000060   Code   RO          290    i.Uart2RecvDMA      functions.o
+    0x08005860   0x00000040   Code   RO          291    i.Uart2RecvDone     functions.o
+    0x080058a0   0x00000060   Code   RO          292    i.Uart2SendDMA      functions.o
+    0x08005900   0x00000010   Code   RO          293    i.Uart2SendDone     functions.o
+    0x08005910   0x0000001c   Code   RO         1545    i.WriteFactoryData  kmachine.o
+    0x0800592c   0x00000020   Code   RO         1546    i.WriteNewApp       kmachine.o
+    0x0800594c   0x00000014   Code   RO         1547    i.WriteNewAppInfo   kmachine.o
+    0x08005960   0x00000040   Code   RO         1548    i.WriteProgram      kmachine.o
+    0x080059a0   0x0000006c   Code   RO         1549    i.WriteSysCfgToFlash  kmachine.o
+    0x08005a0c   0x00000050   Code   RO         1550    i.WriteToFlashMemNoErase  kmachine.o
+    0x08005a5c   0x00000002   Code   RO         2113    i._Error_Handler    main.o
+    0x08005a5e   0x00000002   PAD
+    0x08005a60   0x00000028   Code   RO         4388    i.__0sprintf$8      mc_p.l(printf8.o)
+    0x08005a88   0x0000001a   Code   RO         1170    i.__ARM_common_switch8  modbusrtu.o
+    0x08005aa2   0x0000000e   Code   RO         4486    i.__scatterload_copy  mc_p.l(handlers.o)
+    0x08005ab0   0x00000002   Code   RO         4487    i.__scatterload_null  mc_p.l(handlers.o)
+    0x08005ab2   0x0000000e   Code   RO         4488    i.__scatterload_zeroinit  mc_p.l(handlers.o)
+    0x08005ac0   0x00000428   Code   RO         4393    i._printf_core      mc_p.l(printf8.o)
+    0x08005ee8   0x00000020   Code   RO         4394    i._printf_post_padding  mc_p.l(printf8.o)
+    0x08005f08   0x0000002c   Code   RO         4395    i._printf_pre_padding  mc_p.l(printf8.o)
+    0x08005f34   0x0000000a   Code   RO         4397    i._sputc            mc_p.l(printf8.o)
+    0x08005f3e   0x00000002   PAD
+    0x08005f40   0x00000018   Code   RO           20    i.clearscreen       debug.o
+    0x08005f58   0x0000003c   Code   RO          297    i.crc16bitbybit     functions.o
+    0x08005f94   0x00000030   Code   RO          298    i.crc16table        functions.o
+    0x08005fc4   0x00000040   Code   RO         1119    i.crc16tablefast    modbusrtu.o
+    0x08006004   0x0000002c   Code   RO          299    i.crc_check         functions.o
+    0x08006030   0x00000016   Code   RO         1203    i.initQueue         myqueue.o
+    0x08006046   0x00000002   PAD
+    0x08006048   0x00000024   Code   RO          301    i.logData           functions.o
+    0x0800606c   0x000004dc   Code   RO         2114    i.main              main.o
+    0x08006548   0x00000010   Data   RO           22    .constdata          debug.o
+    0x08006558   0x00000406   Data   RO          304    .constdata          functions.o
+    0x0800695e   0x00000020   Data   RO         1122    .constdata          modbusrtu.o
+    0x0800697e   0x00000018   Data   RO         1555    .constdata          kmachine.o
+    0x08006996   0x00000002   PAD
+    0x08006998   0x00000090   Data   RO         1556    .constdata          kmachine.o
+    0x08006a28   0x00000005   Data   RO         1853    .constdata          bsp.o
+    0x08006a2d   0x00000005   Data   RO         2026    .constdata          stm32f0xx_it.o
+    0x08006a32   0x00000002   PAD
+    0x08006a34   0x00000018   Data   RO         2117    .constdata          main.o
+    0x08006a4c   0x00000010   Data   RO         2287    .constdata          system_stm32f0xx.o
+    0x08006a5c   0x00000008   Data   RO         2288    .constdata          system_stm32f0xx.o
+    0x08006a64   0x00000020   Data   RO         4484    Region$$Table       anon$$obj.o
 
 
-    Execution Region RW_IRAM1 (Base: 0x200000c0, Size: 0x00001b40, Max: 0x00001f40, ABSOLUTE)
+    Execution Region RW_IRAM1 (Base: 0x200000c0, Size: 0x00001ea8, Max: 0x00001f40, ABSOLUTE)
 
     Base Addr    Size         Type   Attr      Idx    E Section Name        Object
 
-    0x200000c0   0x00000014   Data   RW           24    .data               debug.o
-    0x200000d4   0x00000004   Data   RW          303    .data               functions.o
-    0x200000d8   0x00000018   Data   RW          304    .data               functions.o
-    0x200000f0   0x00000004   Data   RW          718    .data               globaldef.o
-    0x200000f4   0x00000004   Data   RW          719    .data               globaldef.o
-    0x200000f8   0x00000004   Data   RW          720    .data               globaldef.o
-    0x200000fc   0x00000004   Data   RW          721    .data               globaldef.o
+    0x200000c0   0x00000018   Data   RW           24    .data               debug.o
+    0x200000d8   0x00000004   Data   RW          307    .data               functions.o
+    0x200000dc   0x00000020   Data   RW          308    .data               functions.o
+    0x200000fc   0x00000004   Data   RW          722    .data               globaldef.o
     0x20000100   0x00000004   Data   RW          723    .data               globaldef.o
-    0x20000104   0x00000004   Data   RW          725    .data               globaldef.o
-    0x20000108   0x00000004   Data   RW          726    .data               globaldef.o
-    0x2000010c   0x00000038   Data   RW          758    .data               kbus.o
-    0x20000144   0x0000000c   Data   RW          905    .data               klink.o
-    0x20000150   0x00000001   Data   RW         1065    .data               modbusrtu.o
-    0x20000151   0x00000003   PAD
-    0x20000154   0x00000004   Data   RW         1224    .data               plcfunctions.o
-    0x20000158   0x00000024   Data   RW         1461    .data               kmachine.o
-    0x2000017c   0x00000018   Data   RW         2005    .data               fp0.o
-    0x20000194   0x00000001   Data   RW         2007    .data               fp0.o
-    0x20000195   0x00000001   Data   RW         2008    .data               fp0.o
-    0x20000196   0x00000001   Data   RW         2009    .data               fp0.o
-    0x20000197   0x00000001   PAD
-    0x20000198   0x00000028   Data   RW         2083    .data               main.o
-    0x200001c0   0x00000004   Data   RW         2160    .data               system_stm32f0xx.o
-    0x200001c4   0x00000004   Data   RW         2686    .data               stm32f0xx_hal.o
-    0x200001c8   0x00000100   Zero   RW           21    .bss                debug.o
-    0x200002c8   0x00000094   Zero   RW          712    .bss                globaldef.o
-    0x2000035c   0x00000094   Zero   RW          713    .bss                globaldef.o
-    0x200003f0   0x00000080   Zero   RW          714    .bss                globaldef.o
-    0x20000470   0x00000080   Zero   RW          716    .bss                globaldef.o
-    0x200004f0   0x000004a0   Zero   RW          755    .bss                kbus.o
-    0x20000990   0x00000110   Zero   RW          903    .bss                klink.o
-    0x20000aa0   0x00000080   Zero   RW         1063    .bss                modbusrtu.o
-    0x20000b20   0x00000208   Zero   RW         1222    .bss                plcfunctions.o
-    0x20000d28   0x00000080   Zero   RW         1457    .bss                kmachine.o
-    0x20000da8   0x000007d4   Zero   RW         1458    .bss                kmachine.o
-    0x2000157c   0x00000040   Zero   RW         2001    .bss                fp0.o
-    0x200015bc   0x00000020   Zero   RW         2002    .bss                fp0.o
-    0x200015dc   0x00000204   Zero   RW         2080    .bss                main.o
-    0x200017e0   0x00000020   Zero   RW         3631    .bss                stm32f0xx_hal_flash.o
-    0x20001800   0x00000400   Zero   RW            1    STACK               startup_stm32f030x8.o
+    0x20000104   0x00000004   Data   RW          724    .data               globaldef.o
+    0x20000108   0x00000004   Data   RW          725    .data               globaldef.o
+    0x2000010c   0x00000004   Data   RW          727    .data               globaldef.o
+    0x20000110   0x00000004   Data   RW          729    .data               globaldef.o
+    0x20000114   0x00000004   Data   RW          730    .data               globaldef.o
+    0x20000118   0x00000034   Data   RW          770    .data               kbus.o
+    0x2000014c   0x00000004   Data   RW          772    .data               kbus.o
+    0x20000150   0x0000000c   Data   RW          960    .data               klink.o
+    0x2000015c   0x00000001   Data   RW         1123    .data               modbusrtu.o
+    0x2000015d   0x00000003   PAD
+    0x20000160   0x00000004   Data   RW         1287    .data               plcfunctions.o
+    0x20000164   0x00000024   Data   RW         1557    .data               kmachine.o
+    0x20000188   0x00000028   Data   RW         2118    .data               main.o
+    0x200001b0   0x00000004   Data   RW         2289    .data               system_stm32f0xx.o
+    0x200001b4   0x00000004   Data   RW         2815    .data               stm32f0xx_hal.o
+    0x200001b8   0x00000120   Zero   RW           21    .bss                debug.o
+    0x200002d8   0x00000080   Zero   RW          303    .bss                functions.o
+    0x20000358   0x00000094   Zero   RW          716    .bss                globaldef.o
+    0x200003ec   0x00000094   Zero   RW          717    .bss                globaldef.o
+    0x20000480   0x00000080   Zero   RW          718    .bss                globaldef.o
+    0x20000500   0x00000080   Zero   RW          720    .bss                globaldef.o
+    0x20000580   0x00000758   Zero   RW          768    .bss                kbus.o
+    0x20000cd8   0x00000110   Zero   RW          958    .bss                klink.o
+    0x20000de8   0x00000080   Zero   RW         1121    .bss                modbusrtu.o
+    0x20000e68   0x00000208   Zero   RW         1285    .bss                plcfunctions.o
+    0x20001070   0x00000080   Zero   RW         1553    .bss                kmachine.o
+    0x200010f0   0x000007d4   Zero   RW         1554    .bss                kmachine.o
+    0x200018c4   0x00000204   Zero   RW         2115    .bss                main.o
+    0x20001ac8   0x0000009c   Zero   RW         2213    .bss                fpx.o
+    0x20001b64   0x00000004   PAD
+    0x20001b68   0x00000400   Zero   RW            1    STACK               startup_stm32f030x8.o
 
 
 ==============================================================================
@@ -2600,38 +2622,36 @@
       Code (inc. data)   RO Data    RW Data    ZI Data      Debug   Object Name
 
       1870        184          5          0          0      82975   bsp.o
-       452        162         16         20        256     267019   debug.o
-       904         88          0         27         96      20068   fp0.o
-      1556        324       1030         28          0     240243   functions.o
+       452        162         16         24        288     266384   debug.o
+      1044        124          0          0        156      20932   fpx.o
+      1456        274       1030         36        128     240218   functions.o
          0          0          0         28        552       2525   globaldef.o
-      1902        180          0         56       1184      13887   kbus.o
-      1980        112          0         12        272      11173   klink.o
-      1966        226        168         36       2132      28954   kmachine.o
-      1458        232         24         40        516      60567   main.o
-       990         44         32          1        128       9041   modbusrtu.o
+      2388        160          0         56       1880      16047   kbus.o
+      2140        106          0         12        272     201231   klink.o
+      2056        248        168         36       2132     202670   kmachine.o
+      1514        254         24         40        516      61836   main.o
+      1016         44         32          1        128       9113   modbusrtu.o
        316          0          0          0          0       5527   myqueue.o
-      2108        204          0          4        520      16362   plcfunctions.o
+      2108        204          0          4        520      24057   plcfunctions.o
         28          8        180          0       1024        628   startup_stm32f030x8.o
        122         18          0          4          0       3635   stm32f0xx_hal.o
        156         22          0          0          0       9451   stm32f0xx_hal_cortex.o
-       348         54          0          0         32       4754   stm32f0xx_hal_flash.o
-       232         30          0          0          0       3081   stm32f0xx_hal_flash_ex.o
         68          4          0          0          0      12850   stm32f0xx_hal_msp.o
       1292         88          0          0          0       4486   stm32f0xx_hal_rcc.o
        236         14          0          0          0       1420   stm32f0xx_hal_rcc_ex.o
        510         74          5          0          0      55105   stm32f0xx_it.o
+       228         22          0          0          0       5154   stm32f0xx_ll_flash.o
        164          0          0          0          0       6711   stm32f0xx_ll_gpio.o
        268         52          0          0          0      16728   stm32f0xx_ll_rcc.o
        100          8          0          0          0      11270   stm32f0xx_ll_spi.o
        132         24          0          0          0      30594   stm32f0xx_ll_tim.o
        172         16          0          0          0      16964   stm32f0xx_ll_usart.o
-        64         10          0          0          0       5485   stm32f0xx_ll_utils.o
         92         14         24          4          0       1179   system_stm32f0xx.o
 
     ----------------------------------------------------------------------
-     19518       2192       1520        264       6712     942682   Object Totals
+     19958       2124       1520        248       7600    1309690   Object Totals
          0          0         32          0          0          0   (incl. Generated)
-        32          0          4          4          0          0   (incl. Padding)
+        30          0          4          3          4          0   (incl. Padding)
 
     ----------------------------------------------------------------------
 
@@ -2678,15 +2698,15 @@
 
       Code (inc. data)   RO Data    RW Data    ZI Data      Debug   
 
-     21212       2256       1520        264       6712     935798   Grand Totals
-     21212       2256       1520        264       6712     935798   ELF Image Totals
-     21212       2256       1520        264          0          0   ROM Totals
+     21652       2188       1520        248       7600    1302762   Grand Totals
+     21652       2188       1520        248       7600    1302762   ELF Image Totals
+     21652       2188       1520        248          0          0   ROM Totals
 
 ==============================================================================
 
-    Total RO  Size (Code + RO Data)                22732 (  22.20kB)
-    Total RW  Size (RW Data + ZI Data)              6976 (   6.81kB)
-    Total ROM Size (Code + RO Data + RW Data)      22996 (  22.46kB)
+    Total RO  Size (Code + RO Data)                23172 (  22.63kB)
+    Total RW  Size (RW Data + ZI Data)              7848 (   7.66kB)
+    Total ROM Size (Code + RO Data + RW Data)      23420 (  22.87kB)
 
 ==============================================================================
 

--
Gitblit v1.9.1