# Static Call Graph for image john103C8T6\john103C8T6.axf

#<CALLGRAPH># ARM Linker, 6220000: Last Updated: Fri May 29 10:28:10 2026

### Maximum Stack Usage = 384 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

### Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority

### Functions with no stack information

- __user_initial_stackheap

### Mutually Recursive functions

- ADC1_2_IRQHandler ⇒ ADC1_2_IRQHandler

  ### Function Pointers

  - ADC1_2_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - BusFault_Handler from stm32f1xx_it.o(.text.BusFault_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - CAN1_RX1_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - CAN1_SCE_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel1_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel2_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel3_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel4_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel5_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel6_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - DMA1_Channel7_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - Dallas_SensorInitByInd from dallas_tools.o(.text.Dallas_SensorInitByInd) referenced 2 times from main.o(.text.reinit_t_sens)
  - DebugMon_Handler from stm32f1xx_it.o(.text.DebugMon_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI0_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI15_10_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI1_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI2_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI3_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI4_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - EXTI9_5_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - FLASH_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - HardFault_Handler from stm32f1xx_it.o(.text.HardFault_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - I2C1_ER_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - I2C1_EV_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - I2C2_ER_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - I2C2_EV_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - MemManage_Handler from stm32f1xx_it.o(.text.MemManage_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - NMI_Handler from stm32f1xx_it.o(.text.NMI_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - PVD_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - PendSV_Handler from stm32f1xx_it.o(.text.PendSV_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - RCC_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - RTCAlarm_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - RTC_IRQHandler from stm32f1xx_it.o(.text.RTC_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - Reset_Handler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - SPI1_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - SPI2_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - SVC_Handler from stm32f1xx_it.o(.text.SVC_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - SysTick_Handler from stm32f1xx_it.o(.text.SysTick_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - SystemInit from system_stm32f1xx.o(.text.SystemInit) referenced from startup_stm32f10x_md.o(.text)
  - TAMPER_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - TIM1_BRK_IRQHandler from stm32f1xx_it.o(.text.TIM1_BRK_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM1_CC_IRQHandler from stm32f1xx_it.o(.text.TIM1_CC_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM1_TRG_COM_IRQHandler from stm32f1xx_it.o(.text.TIM1_TRG_COM_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM1_UP_IRQHandler from stm32f1xx_it.o(.text.TIM1_UP_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM2_IRQHandler from stm32f1xx_it.o(.text.TIM2_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM3_IRQHandler from stm32f1xx_it.o(.text.TIM3_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - TIM4_IRQHandler from stm32f1xx_it.o(.text.TIM4_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - UART_DMAAbortOnError from stm32f1xx_hal_uart.o(.text.UART_DMAAbortOnError) referenced 2 times from stm32f1xx_hal_uart.o(.text.HAL_UART_IRQHandler)
  - USART1_IRQHandler from stm32f1xx_it.o(.text.USART1_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - USART2_IRQHandler from stm32f1xx_it.o(.text.USART2_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  - USART3_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - USBWakeUp_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - USB_HP_CAN1_TX_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - USB_LP_CAN1_RX0_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - UsageFault_Handler from stm32f1xx_it.o(.text.UsageFault_Handler) referenced from startup_stm32f10x_md.o(RESET)
  - WWDG_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  - __main from __main.o(!!!main) referenced from startup_stm32f10x_md.o(.text)

  ### Global Symbols

  __main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
  [Calls]

  - >> __scatterload
  - >> __rt_entry
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(.text)

  __scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
  [Called By]

  - >> __main

  __scatterload_rt2 (Thumb, 84 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
  [Calls]

  - >> __rt_entry

  __scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_loop (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __decompress (Thumb, 100 bytes, Stack size unknown bytes, __dclz77c.o(!!dclz77c), UNUSED)

  __decompress2 (Thumb, 0 bytes, Stack size unknown bytes, __dclz77c.o(!!dclz77c), UNUSED)

  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, __scatter.o(!!handler_null), UNUSED)

  __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

  __rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
  [Called By]

  - >> __rt_entry_li

  __rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))

  __rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))

  __rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))

  __rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))

  __rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034))

  __rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))

  __rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002))

  __rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))

  __rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))

  __rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))

  __rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))

  __rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))

  __rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))

  __rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))

  __rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))

  __rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))

  __rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010))

  __rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))

  __rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035))

  __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))

  __rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027))

  __rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))

  __rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
  [Called By]

  - >> __rt_exit_ls

  __rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))

  __rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007))

  __rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))

  __rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010))

  __rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A))

  __rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004))

  __rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))

  __rt_entry (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
  [Called By]

  - >> __scatterload_rt2
  - >> __main

  __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))

  __rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
  [Calls]
  - >> __user_setup_stackheap

  __rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
  [Calls]

  - >> __rt_lib_init

  __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))

  __rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
  [Stack]

  - Max Depth = 384 + Unknown Stack Size
  - Call Chain = __rt_entry_main ⇒ main ⇒ SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> main
  - >> exit

  __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))

  __rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
  [Called By]

  - >> exit

  __rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
  [Calls]

  - >> __rt_lib_shutdown

  __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))

  __rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
  [Calls]

  - >> _sys_exit

  Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  ADC1_2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Calls]

  - >> ADC1_2_IRQHandler
  [Called By]
  - >> ADC1_2_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  CAN1_RX1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  CAN1_SCE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel6_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  DMA1_Channel7_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI15_10_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  EXTI9_5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  FLASH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  I2C1_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  I2C1_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  I2C2_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  I2C2_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  PVD_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  RCC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  RTCAlarm_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  SPI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  TAMPER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  USART3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  USBWakeUp_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  USB_HP_CAN1_TX_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  USB_LP_CAN1_RX0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  WWDG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  __user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, startup_stm32f10x_md.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __aeabi_memcpy (Thumb, 0 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text))
  [Called By]

  - >> Field_modbus

  __rt_memcpy (Thumb, 138 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memcpy4

  _memcpy_lastbytes (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_v6.o(.text), UNUSED)

  __aeabi_memclr4 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text))
  [Called By]

  - >> SystemClock_Config

  __aeabi_memclr8 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  __rt_memclr_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  _memset_w (Thumb, 74 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)

  __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
  [Called By]

  - >> __rt_memcpy

  __aeabi_memcpy8 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

  __rt_memcpy_w (Thumb, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

  _memcpy_lastbytes_aligned (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)

  __user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __user_setup_stackheap
  [Calls]
  - >> __user_initial_stackheap
  - >> __user_perproc_libspace
  [Called By]
  - >> __rt_entry_sh

  exit (Thumb, 18 bytes, Stack size 8 bytes, exit.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = exit
  [Calls]
  - >> __rt_exit
  [Called By]
  - >> __rt_entry_main

  __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  __user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  _sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
  [Called By]

  - >> __rt_exit_exit

  __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)

  ADC_ConversionStop_Disable (Thumb, 130 bytes, Stack size 24 bytes, stm32f1xx_hal_adc.o(.text.ADC_ConversionStop_Disable))
  [Stack]

  - Max Depth = 24
  - Call Chain = ADC_ConversionStop_Disable
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_ADC_Init

  BusFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.BusFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  Check_Tconnect (Thumb, 158 bytes, Stack size 32 bytes, main.o(.text.Check_Tconnect))
  [Stack]

  - Max Depth = 168
  - Call Chain = Check_Tconnect ⇒ DS18B20_Search ⇒ OneWire_Search ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> reinit_t_sens
  - >> DS18B20_Search
  [Called By]
  - >> main

  DS18B20_CalcTemperature (Thumb, 402 bytes, Stack size 48 bytes, ds18b20_driver.o(.text.DS18B20_CalcTemperature))
  [Stack]

  - Max Depth = 96
  - Call Chain = DS18B20_CalcTemperature ⇒ OneWire_Reset ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_Reset
  - >> DS18B20_IsValid
  - >> __aeabi_fmul
  - >> __aeabi_i2f
  - >> __aeabi_fsub
  - >> __aeabi_fadd
  [Called By]
  - >> Dallas_ReadTemperature

  DS18B20_IsValid (Thumb, 52 bytes, Stack size 8 bytes, ds18b20_driver.o(.text.DS18B20_IsValid))
  [Stack]

  - Max Depth = 8
  - Call Chain = DS18B20_IsValid
  [Called By]
  - >> DS18B20_SetResolution
  - >> DS18B20_CalcTemperature

  DS18B20_ReadScratchpad (Thumb, 160 bytes, Stack size 32 bytes, ds18b20_driver.o(.text.DS18B20_ReadScratchpad))
  [Stack]

  - Max Depth = 128
  - Call Chain = DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_ReadByte
  - >> OneWire_WriteByte
  - >> OneWire_MatchROM
  - >> OneWire_Reset
  - >> OneWire_CRC8
  [Called By]
  - >> Dallas_ReadScratchpad

  DS18B20_Search (Thumb, 168 bytes, Stack size 32 bytes, ds18b20_driver.o(.text.DS18B20_Search))
  [Stack]

  - Max Depth = 136
  - Call Chain = DS18B20_Search ⇒ OneWire_Search ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_GetDevRom
  - >> OneWire_Search
  [Called By]
  - >> Check_Tconnect
  - >> Dallas_BusFirstInit

  DS18B20_SetResolution (Thumb, 220 bytes, Stack size 24 bytes, ds18b20_driver.o(.text.DS18B20_SetResolution))
  [Stack]

  - Max Depth = 120
  - Call Chain = DS18B20_SetResolution ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_ReadByte
  - >> OneWire_WriteByte
  - >> OneWire_MatchROM
  - >> OneWire_Reset
  - >> DS18B20_IsValid
  [Called By]
  - >> Dallas_SensorInit

  DS18B20_StartConvTAll (Thumb, 58 bytes, Stack size 16 bytes, ds18b20_driver.o(.text.DS18B20_StartConvTAll))
  [Stack]

  - Max Depth = 88
  - Call Chain = DS18B20_StartConvTAll ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_WriteByte
  - >> OneWire_Reset
  [Called By]
  - >> Dallas_StartConvertTAll

  DS18B20_WaitForEndConvertion (Thumb, 82 bytes, Stack size 24 bytes, ds18b20_driver.o(.text.DS18B20_WaitForEndConvertion))
  [Stack]

  - Max Depth = 80
  - Call Chain = DS18B20_WaitForEndConvertion ⇒ OneWire_ReadBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_ReadBit
  - >> HAL_GetTick
  [Called By]
  - >> Dallas_StartConvertTAll

  Dallas_AddNewSensors (Thumb, 74 bytes, Stack size 24 bytes, dallas_tools.o(.text.Dallas_AddNewSensors))
  [Stack]

  - Max Depth = 24
  - Call Chain = Dallas_AddNewSensors
  [Called By]
  - >> reinit_t_sens

  Dallas_BusFirstInit (Thumb, 106 bytes, Stack size 32 bytes, dallas_tools.o(.text.Dallas_BusFirstInit))
  [Stack]

  - Max Depth = 168
  - Call Chain = Dallas_BusFirstInit ⇒ DS18B20_Search ⇒ OneWire_Search ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> DS18B20_Search
  - >> OneWire_Init
  - >> HAL_TIM_Base_Start
  [Called By]
  - >> main

  Dallas_IsConnected (Thumb, 128 bytes, Stack size 24 bytes, dallas_tools.o(.text.Dallas_IsConnected))
  [Stack]

  - Max Depth = 168
  - Call Chain = Dallas_IsConnected ⇒ Dallas_ReadScratchpad ⇒ DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> Dallas_ReadScratchpad
  [Called By]
  - >> Dallas_ReadTemperature

  Dallas_ReadScratchpad (Thumb, 48 bytes, Stack size 16 bytes, dallas_tools.o(.text.Dallas_ReadScratchpad))
  [Stack]

  - Max Depth = 144
  - Call Chain = Dallas_ReadScratchpad ⇒ DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> DS18B20_ReadScratchpad
  [Called By]
  - >> Dallas_SensorInit
  - >> Dallas_IsConnected

  Dallas_ReadTemperature (Thumb, 132 bytes, Stack size 24 bytes, dallas_tools.o(.text.Dallas_ReadTemperature))
  [Stack]

  - Max Depth = 192
  - Call Chain = Dallas_ReadTemperature ⇒ Dallas_IsConnected ⇒ Dallas_ReadScratchpad ⇒ DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> DS18B20_CalcTemperature
  - >> Dallas_IsConnected
  [Called By]
  - >> main

  Dallas_SensorInit (Thumb, 176 bytes, Stack size 32 bytes, dallas_tools.o(.text.Dallas_SensorInit))
  [Stack]

  - Max Depth = 176
  - Call Chain = Dallas_SensorInit ⇒ Dallas_ReadScratchpad ⇒ DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> DS18B20_SetResolution
  - >> Dallas_ReadScratchpad
  [Called By]
  - >> Dallas_SensorInitByInd

  Dallas_SensorInitByInd (Thumb, 74 bytes, Stack size 24 bytes, dallas_tools.o(.text.Dallas_SensorInitByInd))
  [Stack]

  - Max Depth = 200
  - Call Chain = Dallas_SensorInitByInd ⇒ Dallas_SensorInit ⇒ Dallas_ReadScratchpad ⇒ DS18B20_ReadScratchpad ⇒ OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> Dallas_SensorInit
  [Address Reference Count : 1]
  - main.o(.text.reinit_t_sens)

  Dallas_StartConvertTAll (Thumb, 198 bytes, Stack size 32 bytes, dallas_tools.o(.text.Dallas_StartConvertTAll))
  [Stack]

  - Max Depth = 120
  - Call Chain = Dallas_StartConvertTAll ⇒ DS18B20_StartConvTAll ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> HAL_Delay
  - >> DS18B20_WaitForEndConvertion
  - >> DS18B20_StartConvTAll
  [Called By]
  - >> main

  DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.DebugMon_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  Error_Handler (Thumb, 14 bytes, Stack size 4 bytes, main.o(.text.Error_Handler))
  [Stack]

  - Max Depth = 4
  - Call Chain = Error_Handler
  [Called By]
  - >> MX_SPI1_Init
  - >> MX_RTC_Init
  - >> MX_I2C1_Init
  - >> MX_CAN_Init
  - >> MX_ADC1_Init
  - >> MX_TIM4_Init
  - >> MX_TIM2_Init
  - >> MX_USART2_UART_Init
  - >> MX_USART1_UART_Init
  - >> MX_TIM1_Init
  - >> SystemClock_Config
  - >> main

  Field_modbus (Thumb, 222 bytes, Stack size 24 bytes, main.o(.text.Field_modbus))
  [Stack]

  - Max Depth = 208
  - Call Chain = Field_modbus ⇒ RTC_ModbusService ⇒ RTC_CalendarGet ⇒ HAL_RTC_GetDate ⇒ HAL_RTC_GetTime ⇒ RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> packStruct
  - >> RTC_ModbusService
  - >> __aeabi_ui2f
  - >> __aeabi_memcpy
  [Called By]
  - >> main

  HAL_ADC_ConfigChannel (Thumb, 436 bytes, Stack size 20 bytes, stm32f1xx_hal_adc.o(.text.HAL_ADC_ConfigChannel))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_ADC_ConfigChannel
  [Called By]
  - >> MX_ADC1_Init

  HAL_ADC_Init (Thumb, 530 bytes, Stack size 40 bytes, stm32f1xx_hal_adc.o(.text.HAL_ADC_Init))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_ADC_Init ⇒ ADC_ConversionStop_Disable
  [Calls]
  - >> ADC_ConversionStop_Disable
  - >> HAL_ADC_MspInit
  [Called By]
  - >> MX_ADC1_Init

  HAL_ADC_MspInit (Thumb, 58 bytes, Stack size 8 bytes, adc.o(.text.HAL_ADC_MspInit))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_ADC_MspInit
  [Called By]
  - >> HAL_ADC_Init

  HAL_CAN_Init (Thumb, 478 bytes, Stack size 24 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_Init))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_CAN_MspInit
  - >> HAL_GetTick
  [Called By]
  - >> MX_CAN_Init

  HAL_CAN_MspInit (Thumb, 152 bytes, Stack size 48 bytes, can.o(.text.HAL_CAN_MspInit))
  [Stack]

  - Max Depth = 112
  - Call Chain = HAL_CAN_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_CAN_Init

  HAL_DMA_Abort (Thumb, 124 bytes, Stack size 12 bytes, stm32f1xx_hal_dma.o(.text.HAL_DMA_Abort))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_DMA_Abort
  [Called By]
  - >> HAL_UART_IRQHandler
  - >> HAL_UART_AbortReceive
  - >> HAL_UART_AbortTransmit
  - >> HAL_UART_Abort

  HAL_DMA_Abort_IT (Thumb, 284 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text.HAL_DMA_Abort_IT))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_DMA_Abort_IT
  [Called By]
  - >> HAL_UART_IRQHandler

  HAL_DMA_GetError (Thumb, 12 bytes, Stack size 4 bytes, stm32f1xx_hal_dma.o(.text.HAL_DMA_GetError))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_DMA_GetError
  [Called By]
  - >> HAL_UART_AbortReceive
  - >> HAL_UART_AbortTransmit
  - >> HAL_UART_Abort

  HAL_Delay (Thumb, 66 bytes, Stack size 24 bytes, stm32f1xx_hal.o(.text.HAL_Delay))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_Delay
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> led_blink
  - >> Dallas_StartConvertTAll

  HAL_GPIO_Init (Thumb, 798 bytes, Stack size 64 bytes, stm32f1xx_hal_gpio.o(.text.HAL_GPIO_Init))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_GPIO_Init
  [Called By]
  - >> HAL_UART_MspInit
  - >> HAL_SPI_MspInit
  - >> HAL_I2C_MspInit
  - >> HAL_CAN_MspInit
  - >> MX_GPIO_Init

  HAL_GPIO_WritePin (Thumb, 46 bytes, Stack size 8 bytes, stm32f1xx_hal_gpio.o(.text.HAL_GPIO_WritePin))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_GPIO_WritePin
  [Called By]
  - >> MX_GPIO_Init

  HAL_GetTick (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text.HAL_GetTick))
  [Called By]

  - >> ADC_ConversionStop_Disable
  - >> HAL_CAN_Init
  - >> HAL_RCCEx_PeriphCLKConfig
  - >> HAL_RCC_ClockConfig
  - >> HAL_RCC_OscConfig
  - >> HAL_Delay
  - >> DS18B20_WaitForEndConvertion
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_ExitInitMode
  - >> RTC_EnterInitMode

  HAL_I2C_Init (Thumb, 676 bytes, Stack size 64 bytes, stm32f1xx_hal_i2c.o(.text.HAL_I2C_Init))
  [Stack]

  - Max Depth = 168
  - Call Chain = HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_I2C_MspInit
  [Called By]
  - >> MX_I2C1_Init

  HAL_I2C_MspInit (Thumb, 166 bytes, Stack size 40 bytes, i2c.o(.text.HAL_I2C_MspInit))
  [Stack]

  - Max Depth = 104
  - Call Chain = HAL_I2C_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_I2C_Init

  HAL_IncTick (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text.HAL_IncTick))
  [Called By]

  - >> HAL_TIM_PeriodElapsedCallback

  HAL_Init (Thumb, 38 bytes, Stack size 8 bytes, stm32f1xx_hal.o(.text.HAL_Init))
  [Stack]

  - Max Depth = 200
  - Call Chain = HAL_Init ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_SetPriorityGrouping
  - >> HAL_InitTick
  - >> HAL_MspInit
  [Called By]
  - >> main

  HAL_InitTick (Thumb, 240 bytes, Stack size 56 bytes, stm32f1xx_hal_timebase_tim.o(.text.HAL_InitTick))
  [Stack]

  - Max Depth = 192
  - Call Chain = HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_TIM_Base_Start_IT
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_RCC_GetClockConfig
  - >> HAL_TIM_Base_Init
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> HAL_RCC_ClockConfig
  - >> HAL_Init

  HAL_MspInit (Thumb, 100 bytes, Stack size 12 bytes, stm32f1xx_hal_msp.o(.text.HAL_MspInit))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_MspInit
  [Called By]
  - >> HAL_Init

  HAL_NVIC_EnableIRQ (Thumb, 20 bytes, Stack size 16 bytes, stm32f1xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_NVIC_EnableIRQ ⇒ __NVIC_EnableIRQ
  [Calls]
  - >> __NVIC_EnableIRQ
  [Called By]
  - >> HAL_InitTick
  - >> HAL_UART_MspInit
  - >> HAL_TIM_Base_MspInit
  - >> HAL_RTC_MspInit

  HAL_NVIC_SetPriority (Thumb, 50 bytes, Stack size 32 bytes, stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriority))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> __NVIC_SetPriority
  - >> NVIC_EncodePriority
  - >> __NVIC_GetPriorityGrouping
  [Called By]
  - >> HAL_InitTick
  - >> HAL_UART_MspInit
  - >> HAL_TIM_Base_MspInit
  - >> HAL_RTC_MspInit

  HAL_NVIC_SetPriorityGrouping (Thumb, 16 bytes, Stack size 16 bytes, stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping))
  [Stack]

  - Max Depth = 28
  - Call Chain = HAL_NVIC_SetPriorityGrouping ⇒ __NVIC_SetPriorityGrouping
  [Calls]
  - >> __NVIC_SetPriorityGrouping
  [Called By]
  - >> HAL_Init

  HAL_PWR_EnableBkUpAccess (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal_pwr.o(.text.HAL_PWR_EnableBkUpAccess))
  [Called By]

  - >> HAL_RTC_MspInit

  HAL_RCCEx_GetPeriphCLKFreq (Thumb, 406 bytes, Stack size 40 bytes, stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_GetPeriphCLKFreq))
  [Stack]

  - Max Depth = 48
  - Call Chain = HAL_RCCEx_GetPeriphCLKFreq ⇒ HAL_RCC_GetPCLK2Freq
  [Calls]
  - >> HAL_RCC_GetPCLK2Freq
  [Called By]
  - >> HAL_RTC_Init

  HAL_RCCEx_PeriphCLKConfig (Thumb, 456 bytes, Stack size 32 bytes, stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_RCCEx_PeriphCLKConfig
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> SystemClock_Config

  HAL_RCC_ClockConfig (Thumb, 598 bytes, Stack size 24 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig))
  [Stack]

  - Max Depth = 216
  - Call Chain = HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_InitTick
  - >> HAL_GetTick
  - >> HAL_RCC_GetSysClockFreq
  [Called By]
  - >> SystemClock_Config

  HAL_RCC_GetClockConfig (Thumb, 84 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetClockConfig))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetClockConfig
  [Called By]
  - >> HAL_InitTick

  HAL_RCC_GetHCLKFreq (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq))
  [Called By]

  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_RCC_GetPCLK2Freq

  HAL_RCC_GetPCLK1Freq (Thumb, 34 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetPCLK1Freq
  [Calls]
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> HAL_InitTick
  - >> HAL_I2C_Init
  - >> UART_SetConfig

  HAL_RCC_GetPCLK2Freq (Thumb, 34 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetPCLK2Freq
  [Calls]
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> HAL_RCCEx_GetPeriphCLKFreq
  - >> UART_SetConfig

  HAL_RCC_GetSysClockFreq (Thumb, 188 bytes, Stack size 24 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_RCC_GetSysClockFreq
  [Called By]
  - >> HAL_RCC_ClockConfig

  HAL_RCC_OscConfig (Thumb, 1658 bytes, Stack size 32 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_RCC_OscConfig ⇒ RCC_Delay
  [Calls]
  - >> HAL_GetTick
  - >> RCC_Delay
  [Called By]
  - >> SystemClock_Config

  HAL_RTCEx_BKUPRead (Thumb, 46 bytes, Stack size 16 bytes, stm32f1xx_hal_rtc_ex.o(.text.HAL_RTCEx_BKUPRead))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_RTCEx_BKUPRead
  [Called By]
  - >> RTC_SaveDateToBackup
  - >> RTC_RestoreDateFromBackup

  HAL_RTCEx_BKUPWrite (Thumb, 44 bytes, Stack size 16 bytes, stm32f1xx_hal_rtc_ex.o(.text.HAL_RTCEx_BKUPWrite))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_RTCEx_BKUPWrite
  [Called By]
  - >> RTC_SaveDateToBackup

  HAL_RTCEx_RTCEventCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_rtc_ex.o(.text.HAL_RTCEx_RTCEventCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_RTCEx_RTCEventCallback
  [Called By]
  - >> HAL_RTCEx_RTCIRQHandler

  HAL_RTCEx_RTCEventErrorCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_rtc_ex.o(.text.HAL_RTCEx_RTCEventErrorCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_RTCEx_RTCEventErrorCallback
  [Called By]
  - >> HAL_RTCEx_RTCIRQHandler

  HAL_RTCEx_RTCIRQHandler (Thumb, 138 bytes, Stack size 16 bytes, stm32f1xx_hal_rtc_ex.o(.text.HAL_RTCEx_RTCIRQHandler))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_RTCEx_RTCIRQHandler ⇒ HAL_RTCEx_RTCEventCallback
  [Calls]
  - >> HAL_RTCEx_RTCEventCallback
  - >> HAL_RTCEx_RTCEventErrorCallback
  [Called By]
  - >> RTC_IRQHandler

  HAL_RTC_GetDate (Thumb, 154 bytes, Stack size 32 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate))
  [Stack]

  - Max Depth = 120
  - Call Chain = HAL_RTC_GetDate ⇒ HAL_RTC_GetTime ⇒ RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> HAL_RTC_GetTime
  - >> RTC_ByteToBcd2
  [Called By]
  - >> RTC_CalendarGet

  HAL_RTC_GetTime (Thumb, 428 bytes, Stack size 40 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_RTC_GetTime ⇒ RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> RTC_ByteToBcd2
  - >> RTC_DateUpdate
  - >> RTC_ReadTimeCounter
  - >> RTC_WriteAlarmCounter
  - >> RTC_ReadAlarmCounter
  - >> RTC_WriteTimeCounter
  [Called By]
  - >> HAL_RTC_GetDate
  - >> RTC_CalendarGet

  HAL_RTC_Init (Thumb, 298 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_Init))
  [Stack]

  - Max Depth = 112
  - Call Chain = HAL_RTC_Init ⇒ HAL_RTC_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_RCCEx_GetPeriphCLKFreq
  - >> HAL_RTC_MspInit
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_ExitInitMode
  - >> RTC_EnterInitMode
  [Called By]
  - >> MX_RTC_Init

  HAL_RTC_MspInit (Thumb, 94 bytes, Stack size 24 bytes, rtc.o(.text.HAL_RTC_MspInit))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_RTC_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_PWR_EnableBkUpAccess
  [Called By]
  - >> HAL_RTC_Init

  HAL_RTC_SetDate (Thumb, 382 bytes, Stack size 40 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetDate))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
  [Calls]
  - >> RTC_WeekDayNum
  - >> RTC_ReadTimeCounter
  - >> RTC_WriteAlarmCounter
  - >> RTC_ReadAlarmCounter
  - >> RTC_WriteTimeCounter
  - >> RTC_Bcd2ToByte
  [Called By]
  - >> RTC_CalendarSet
  - >> MX_RTC_Init

  HAL_RTC_SetTime (Thumb, 322 bytes, Stack size 40 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_RTC_SetTime ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
  [Calls]
  - >> RTC_WriteAlarmCounter
  - >> RTC_ReadAlarmCounter
  - >> RTC_WriteTimeCounter
  - >> RTC_Bcd2ToByte
  [Called By]
  - >> RTC_CalendarSet
  - >> MX_RTC_Init

  HAL_RTC_WaitForSynchro (Thumb, 100 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_RTC_WaitForSynchro
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTC_Init

  HAL_SPI_Init (Thumb, 250 bytes, Stack size 24 bytes, stm32f1xx_hal_spi.o(.text.HAL_SPI_Init))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_SPI_MspInit
  [Called By]
  - >> MX_SPI1_Init

  HAL_SPI_MspInit (Thumb, 182 bytes, Stack size 48 bytes, spi.o(.text.HAL_SPI_MspInit))
  [Stack]

  - Max Depth = 112
  - Call Chain = HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_SPI_Init

  HAL_TIMEx_BreakCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIMEx_BreakCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIMEx_CommutCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIMEx_CommutCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIMEx_MasterConfigSynchronization (Thumb, 220 bytes, Stack size 20 bytes, stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_TIMEx_MasterConfigSynchronization
  [Called By]
  - >> MX_TIM4_Init
  - >> MX_TIM2_Init
  - >> MX_TIM1_Init

  HAL_TIM_Base_Init (Thumb, 156 bytes, Stack size 16 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Init))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> TIM_Base_SetConfig
  - >> HAL_TIM_Base_MspInit
  [Called By]
  - >> HAL_InitTick
  - >> MX_TIM4_Init
  - >> MX_TIM2_Init
  - >> MX_TIM1_Init

  HAL_TIM_Base_MspInit (Thumb, 268 bytes, Stack size 56 bytes, tim.o(.text.HAL_TIM_Base_MspInit))
  [Stack]

  - Max Depth = 120
  - Call Chain = HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> HAL_TIM_Base_Init

  HAL_TIM_Base_Start (Thumb, 164 bytes, Stack size 12 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Start))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_TIM_Base_Start
  [Called By]
  - >> Dallas_BusFirstInit

  HAL_TIM_Base_Start_IT (Thumb, 176 bytes, Stack size 12 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Start_IT))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_TIM_Base_Start_IT
  [Called By]
  - >> HAL_InitTick
  - >> RS_Timeout_Start

  HAL_TIM_Base_Stop_IT (Thumb, 82 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Stop_IT))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_Base_Stop_IT
  [Called By]
  - >> RS_Timeout_Stop

  HAL_TIM_ConfigClockSource (Thumb, 388 bytes, Stack size 32 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource))
  [Stack]

  - Max Depth = 52
  - Call Chain = HAL_TIM_ConfigClockSource ⇒ TIM_ETR_SetConfig
  [Calls]
  - >> TIM_ETR_SetConfig
  - >> TIM_TI2_ConfigInputStage
  - >> TIM_ITRx_SetConfig
  - >> TIM_TI1_ConfigInputStage
  [Called By]
  - >> MX_TIM4_Init
  - >> MX_TIM2_Init
  - >> MX_TIM1_Init

  HAL_TIM_IC_CaptureCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_IC_CaptureCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_IRQHandler (Thumb, 538 bytes, Stack size 24 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIMEx_CommutCallback
  - >> HAL_TIM_TriggerCallback
  - >> HAL_TIMEx_BreakCallback
  - >> HAL_TIM_OC_DelayElapsedCallback
  - >> HAL_TIM_IC_CaptureCallback
  - >> HAL_TIM_PWM_PulseFinishedCallback
  - >> HAL_TIM_PeriodElapsedCallback
  [Called By]
  - >> TIM3_IRQHandler
  - >> RS_TIM_Handler
  - >> TIM1_CC_IRQHandler
  - >> TIM1_TRG_COM_IRQHandler
  - >> TIM1_UP_IRQHandler
  - >> TIM1_BRK_IRQHandler

  HAL_TIM_OC_DelayElapsedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_OC_DelayElapsedCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_PWM_PulseFinishedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_PWM_PulseFinishedCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_PeriodElapsedCallback (Thumb, 34 bytes, Stack size 16 bytes, main.o(.text.HAL_TIM_PeriodElapsedCallback))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_IncTick
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_TriggerCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_TriggerCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_UARTEx_RxEventCallback (Thumb, 12 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_UARTEx_RxEventCallback
  [Called By]
  - >> HAL_UART_IRQHandler
  - >> UART_Receive_IT

  HAL_UART_Abort (Thumb, 406 bytes, Stack size 40 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_Abort))
  [Stack]

  - Max Depth = 52
  - Call Chain = HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_DMA_Abort
  - >> HAL_DMA_GetError
  [Called By]
  - >> RS_Abort

  HAL_UART_AbortReceive (Thumb, 278 bytes, Stack size 32 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_AbortReceive))
  [Stack]

  - Max Depth = 44
  - Call Chain = HAL_UART_AbortReceive ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_DMA_Abort
  - >> HAL_DMA_GetError
  [Called By]
  - >> RS_UART_Handler
  - >> RS_Abort

  HAL_UART_AbortTransmit (Thumb, 186 bytes, Stack size 24 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_AbortTransmit))
  [Stack]

  - Max Depth = 36
  - Call Chain = HAL_UART_AbortTransmit ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_DMA_Abort
  - >> HAL_DMA_GetError
  [Called By]
  - >> RS_Abort

  HAL_UART_ErrorCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_ErrorCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_ErrorCallback
  [Called By]
  - >> HAL_UART_IRQHandler
  - >> UART_DMAAbortOnError

  HAL_UART_IRQHandler (Thumb, 1066 bytes, Stack size 80 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_IRQHandler))
  [Stack]

  - Max Depth = 120
  - Call Chain = HAL_UART_IRQHandler ⇒ HAL_DMA_Abort_IT
  [Calls]
  - >> HAL_DMA_Abort
  - >> HAL_DMA_Abort_IT
  - >> HAL_UARTEx_RxEventCallback
  - >> HAL_UART_ErrorCallback
  - >> UART_EndTransmit_IT
  - >> UART_Transmit_IT
  - >> UART_Receive_IT
  - >> UART_EndRxTransfer
  [Called By]
  - >> RS_UART_Handler

  HAL_UART_Init (Thumb, 158 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_Init))
  [Stack]

  - Max Depth = 160
  - Call Chain = HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_MspInit
  - >> UART_SetConfig
  [Called By]
  - >> MX_USART2_UART_Init
  - >> MX_USART1_UART_Init

  HAL_UART_MspInit (Thumb, 350 bytes, Stack size 80 bytes, usart.o(.text.HAL_UART_MspInit))
  [Stack]

  - Max Depth = 144
  - Call Chain = HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_UART_Init

  HAL_UART_Receive_IT (Thumb, 86 bytes, Stack size 24 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_Receive_IT))
  [Stack]

  - Max Depth = 36
  - Call Chain = HAL_UART_Receive_IT ⇒ UART_Start_Receive_IT
  [Calls]
  - >> UART_Start_Receive_IT
  [Called By]
  - >> RS_Receive_IT

  HAL_UART_RxCpltCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_RxCpltCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_RxCpltCallback
  [Called By]
  - >> UART_Receive_IT

  HAL_UART_Transmit_IT (Thumb, 114 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_Transmit_IT))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_UART_Transmit_IT
  [Called By]
  - >> RS_Transmit_IT

  HAL_UART_TxCpltCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_uart.o(.text.HAL_UART_TxCpltCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_TxCpltCallback
  [Called By]
  - >> UART_EndTransmit_IT

  HardFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.HardFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  MB_Check_Address_For_Arr (Thumb, 90 bytes, Stack size 12 bytes, modbus_data.o(.text.MB_Check_Address_For_Arr))
  [Stack]

  - Max Depth = 12
  - Call Chain = MB_Check_Address_For_Arr
  [Called By]
  - >> MB_DefineCoilsAddress
  - >> MB_DefineRegistersAddress

  MB_DefineCoilsAddress (Thumb, 134 bytes, Stack size 32 bytes, modbus_data.o(.text.MB_DefineCoilsAddress))
  [Stack]

  - Max Depth = 44
  - Call Chain = MB_DefineCoilsAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_Check_Address_For_Arr
  [Called By]
  - >> MB_Process_Write_Miltuple_Coils
  - >> MB_Process_Write_Single_Coil
  - >> MB_Process_Read_Coils

  MB_DefineRegistersAddress (Thumb, 192 bytes, Stack size 24 bytes, modbus_data.o(.text.MB_DefineRegistersAddress))
  [Stack]

  - Max Depth = 36
  - Call Chain = MB_DefineRegistersAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_Check_Address_For_Arr
  [Called By]
  - >> MB_Process_Read_Input_Regs
  - >> MB_Process_Write_Miltuple_Regs
  - >> MB_Process_Write_Single_Reg
  - >> MB_Process_Read_Hold_Regs

  MB_DeviceInentificationInit (Thumb, 54 bytes, Stack size 0 bytes, modbus_devid.o(.text.MB_DeviceInentificationInit))
  [Called By]

  - >> MODBUS_FirstInit

  MB_DiagnosticsInit (Thumb, 32 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_DiagnosticsInit))
  [Called By]

  - >> MODBUS_SlaveStart
  - >> MB_Process_Diagnostics

  MB_Diagnostics_BusMessageCnt (Thumb, 16 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_BusMessageCnt))
  [Called By]

  - >> MB_Slave_Response

  MB_Diagnostics_CharacterOverrunCnt (Thumb, 46 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_CharacterOverrunCnt))
  [Called By]

  - >> RS_UART_Handler

  MB_Diagnostics_CommunicationErrorCnt (Thumb, 38 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_CommunicationErrorCnt))
  [Called By]

  - >> MB_Slave_Parse_Message

  MB_Diagnostics_ExceptionErrorCnt (Thumb, 38 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_ExceptionErrorCnt))
  [Called By]

  - >> MB_Slave_Response

  MB_Diagnostics_SlaveMessageCnt (Thumb, 38 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_SlaveMessageCnt))
  [Called By]

  - >> MB_Slave_Response

  MB_Diagnostics_SlaveNAKCnt (Thumb, 38 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_SlaveNAKCnt))
  [Called By]

  - >> MB_Slave_Parse_Message

  MB_Diagnostics_SlaveNoResponseCnt (Thumb, 38 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_Diagnostics_SlaveNoResponseCnt))
  [Called By]

  - >> MB_Slave_Response

  MB_GetDeviceMode (Thumb, 12 bytes, Stack size 0 bytes, modbus_diag.o(.text.MB_GetDeviceMode))
  [Called By]

  - >> MB_Slave_Response

  MB_Master_Collect_Message (Thumb, 416 bytes, Stack size 40 bytes, modbus_master.o(.text.MB_Master_Collect_Message))
  [Stack]

  - Max Depth = 56
  - Call Chain = MB_Master_Collect_Message ⇒ crc16
  [Calls]
  - >> crc16
  [Called By]
  - >> RS_Collect_Message

  MB_Master_Parse_Message (Thumb, 798 bytes, Stack size 64 bytes, modbus_master.o(.text.MB_Master_Parse_Message))
  [Stack]

  - Max Depth = 80
  - Call Chain = MB_Master_Parse_Message ⇒ crc16
  [Calls]
  - >> crc16
  [Called By]
  - >> RS_Parse_Message

  MB_Process_Diagnostics (Thumb, 652 bytes, Stack size 32 bytes, modbus_diag.o(.text.MB_Process_Diagnostics))
  [Stack]

  - Max Depth = 32
  - Call Chain = MB_Process_Diagnostics
  [Calls]
  - >> MB_DiagnosticsInit
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Read_Coils (Thumb, 342 bytes, Stack size 48 bytes, modbus_coils.o(.text.MB_Process_Read_Coils))
  [Stack]

  - Max Depth = 92
  - Call Chain = MB_Process_Read_Coils ⇒ MB_DefineCoilsAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineCoilsAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Read_Device_Identifications (Thumb, 168 bytes, Stack size 24 bytes, modbus_devid.o(.text.MB_Process_Read_Device_Identifications))
  [Stack]

  - Max Depth = 88
  - Call Chain = MB_Process_Read_Device_Identifications ⇒ MB_WriteObjectsToMessage ⇒ MB_WriteSingleObjectToMessage
  [Calls]
  - >> MB_WriteObjectsToMessage
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Read_Hold_Regs (Thumb, 114 bytes, Stack size 24 bytes, modbus_holdregs.o(.text.MB_Process_Read_Hold_Regs))
  [Stack]

  - Max Depth = 60
  - Call Chain = MB_Process_Read_Hold_Regs ⇒ MB_DefineRegistersAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineRegistersAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Read_Input_Regs (Thumb, 148 bytes, Stack size 24 bytes, modbus_inputregs.o(.text.MB_Process_Read_Input_Regs))
  [Stack]

  - Max Depth = 60
  - Call Chain = MB_Process_Read_Input_Regs ⇒ MB_DefineRegistersAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineRegistersAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Write_Miltuple_Coils (Thumb, 380 bytes, Stack size 48 bytes, modbus_coils.o(.text.MB_Process_Write_Miltuple_Coils))
  [Stack]

  - Max Depth = 92
  - Call Chain = MB_Process_Write_Miltuple_Coils ⇒ MB_DefineCoilsAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineCoilsAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Write_Miltuple_Regs (Thumb, 136 bytes, Stack size 24 bytes, modbus_holdregs.o(.text.MB_Process_Write_Miltuple_Regs))
  [Stack]

  - Max Depth = 60
  - Call Chain = MB_Process_Write_Miltuple_Regs ⇒ MB_DefineRegistersAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineRegistersAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Write_Single_Coil (Thumb, 160 bytes, Stack size 32 bytes, modbus_coils.o(.text.MB_Process_Write_Single_Coil))
  [Stack]

  - Max Depth = 76
  - Call Chain = MB_Process_Write_Single_Coil ⇒ MB_DefineCoilsAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineCoilsAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Process_Write_Single_Reg (Thumb, 68 bytes, Stack size 24 bytes, modbus_holdregs.o(.text.MB_Process_Write_Single_Reg))
  [Stack]

  - Max Depth = 60
  - Call Chain = MB_Process_Write_Single_Reg ⇒ MB_DefineRegistersAddress ⇒ MB_Check_Address_For_Arr
  [Calls]
  - >> MB_DefineRegistersAddress
  [Called By]
  - >> MB_Slave_Response

  MB_Slave_Collect_Message (Thumb, 566 bytes, Stack size 48 bytes, modbus_slave.o(.text.MB_Slave_Collect_Message))
  [Stack]

  - Max Depth = 64
  - Call Chain = MB_Slave_Collect_Message ⇒ crc16
  [Calls]
  - >> crc16
  [Called By]
  - >> RS_Collect_Message

  MB_Slave_Parse_Message (Thumb, 702 bytes, Stack size 48 bytes, modbus_slave.o(.text.MB_Slave_Parse_Message))
  [Stack]

  - Max Depth = 64
  - Call Chain = MB_Slave_Parse_Message ⇒ crc16
  [Calls]
  - >> crc16
  - >> MB_Define_Size_of_Function
  - >> MB_Diagnostics_SlaveNAKCnt
  - >> MB_Diagnostics_CommunicationErrorCnt
  [Called By]
  - >> RS_Parse_Message

  MB_Slave_Response (Thumb, 910 bytes, Stack size 32 bytes, modbus_slave.o(.text.MB_Slave_Response))
  [Stack]

  - Max Depth = 204
  - Call Chain = MB_Slave_Response ⇒ RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> MB_Process_Read_Device_Identifications
  - >> MB_Process_Write_Miltuple_Coils
  - >> MB_Process_Write_Single_Coil
  - >> MB_Process_Read_Coils
  - >> RS_Handle_Transmit_Start
  - >> RS_Abort
  - >> RS_Handle_Receive_Start
  - >> MB_Process_Read_Input_Regs
  - >> MB_Process_Write_Miltuple_Regs
  - >> MB_Process_Write_Single_Reg
  - >> MB_Process_Read_Hold_Regs
  - >> MB_GetDeviceMode
  - >> MB_Diagnostics_SlaveNoResponseCnt
  - >> MB_Diagnostics_SlaveMessageCnt
  - >> MB_Diagnostics_ExceptionErrorCnt
  - >> MB_Diagnostics_BusMessageCnt
  - >> MB_Process_Diagnostics
  [Called By]
  - >> RS_Response

  MB_WriteObjectsToMessage (Thumb, 248 bytes, Stack size 48 bytes, modbus_devid.o(.text.MB_WriteObjectsToMessage))
  [Stack]

  - Max Depth = 64
  - Call Chain = MB_WriteObjectsToMessage ⇒ MB_WriteSingleObjectToMessage
  [Calls]
  - >> MB_WriteSingleObjectToMessage
  [Called By]
  - >> MB_Process_Read_Device_Identifications

  MB_WriteSingleObjectToMessage (Thumb, 88 bytes, Stack size 16 bytes, modbus_devid.o(.text.MB_WriteSingleObjectToMessage))
  [Stack]

  - Max Depth = 16
  - Call Chain = MB_WriteSingleObjectToMessage
  [Called By]
  - >> MB_WriteObjectsToMessage

  MODBUS_Config (Thumb, 132 bytes, Stack size 16 bytes, modbus.o(.text.MODBUS_Config))
  [Stack]

  - Max Depth = 16
  - Call Chain = MODBUS_Config
  [Called By]
  - >> main

  MODBUS_FirstInit (Thumb, 108 bytes, Stack size 24 bytes, modbus.o(.text.MODBUS_FirstInit))
  [Stack]

  - Max Depth = 44
  - Call Chain = MODBUS_FirstInit ⇒ RS_Init
  [Calls]
  - >> RS_Init
  - >> MB_DeviceInentificationInit
  [Called By]
  - >> main

  MODBUS_SlaveStart (Thumb, 124 bytes, Stack size 24 bytes, modbus.o(.text.MODBUS_SlaveStart))
  [Stack]

  - Max Depth = 124
  - Call Chain = MODBUS_SlaveStart ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Receive_IT
  - >> MB_DiagnosticsInit
  [Called By]
  - >> main

  MX_ADC1_Init (Thumb, 104 bytes, Stack size 24 bytes, adc.o(.text.MX_ADC1_Init))
  [Stack]

  - Max Depth = 88
  - Call Chain = MX_ADC1_Init ⇒ HAL_ADC_Init ⇒ ADC_ConversionStop_Disable
  [Calls]
  - >> HAL_ADC_ConfigChannel
  - >> HAL_ADC_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_CAN_Init (Thumb, 70 bytes, Stack size 16 bytes, can.o(.text.MX_CAN_Init))
  [Stack]

  - Max Depth = 152
  - Call Chain = MX_CAN_Init ⇒ HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_CAN_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_GPIO_Init (Thumb, 318 bytes, Stack size 80 bytes, gpio.o(.text.MX_GPIO_Init))
  [Stack]

  - Max Depth = 144
  - Call Chain = MX_GPIO_Init ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  - >> HAL_GPIO_WritePin
  [Called By]
  - >> main

  MX_I2C1_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C1_Init))
  [Stack]

  - Max Depth = 184
  - Call Chain = MX_I2C1_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_I2C_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_RTC_Init (Thumb, 174 bytes, Stack size 24 bytes, rtc.o(.text.MX_RTC_Init))
  [Stack]

  - Max Depth = 136
  - Call Chain = MX_RTC_Init ⇒ HAL_RTC_Init ⇒ HAL_RTC_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime
  - >> HAL_RTC_Init
  - >> RTC_SaveDateToBackup
  - >> RTC_RestoreDateFromBackup
  - >> Error_Handler
  [Called By]
  - >> main

  MX_SPI1_Init (Thumb, 78 bytes, Stack size 16 bytes, spi.o(.text.MX_SPI1_Init))
  [Stack]

  - Max Depth = 152
  - Call Chain = MX_SPI1_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_SPI_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM1_Init (Thumb, 134 bytes, Stack size 40 bytes, tim.o(.text.MX_TIM1_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_TIM1_Init ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM2_Init (Thumb, 130 bytes, Stack size 40 bytes, tim.o(.text.MX_TIM2_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_TIM2_Init ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM4_Init (Thumb, 134 bytes, Stack size 40 bytes, tim.o(.text.MX_TIM4_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_TIM4_Init ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USART1_UART_Init (Thumb, 68 bytes, Stack size 16 bytes, usart.o(.text.MX_USART1_UART_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_USART1_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USART2_UART_Init (Thumb, 68 bytes, Stack size 16 bytes, usart.o(.text.MX_USART2_UART_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_USART2_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MemManage_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.MemManage_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  NMI_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.NMI_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  OneWire_CRC8 (Thumb, 142 bytes, Stack size 12 bytes, onewire.o(.text.OneWire_CRC8))
  [Stack]

  - Max Depth = 12
  - Call Chain = OneWire_CRC8
  [Called By]
  - >> DS18B20_ReadScratchpad

  OneWire_Delay_us (Thumb, 110 bytes, Stack size 24 bytes, ow_port.o(.text.OneWire_Delay_us))
  [Stack]

  - Max Depth = 24
  - Call Chain = OneWire_Delay_us
  [Called By]
  - >> OneWire_WriteBit
  - >> OneWire_ReadBit
  - >> OneWire_Reset
  - >> OneWire_Init

  OneWire_GetDevRom (Thumb, 56 bytes, Stack size 12 bytes, onewire.o(.text.OneWire_GetDevRom))
  [Stack]

  - Max Depth = 12
  - Call Chain = OneWire_GetDevRom
  [Called By]
  - >> DS18B20_Search

  OneWire_Init (Thumb, 88 bytes, Stack size 24 bytes, onewire.o(.text.OneWire_Init))
  [Stack]

  - Max Depth = 48
  - Call Chain = OneWire_Init ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_Delay_us
  - >> OneWire_Pin_Mode
  - >> OneWire_Pin_Level
  [Called By]
  - >> Dallas_BusFirstInit

  OneWire_MatchROM (Thumb, 66 bytes, Stack size 24 bytes, onewire.o(.text.OneWire_MatchROM))
  [Stack]

  - Max Depth = 96
  - Call Chain = OneWire_MatchROM ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_WriteByte
  [Called By]
  - >> DS18B20_SetResolution
  - >> DS18B20_ReadScratchpad

  OneWire_Pin_Level (Thumb, 42 bytes, Stack size 8 bytes, ow_port.o(.text.OneWire_Pin_Level))
  [Stack]

  - Max Depth = 8
  - Call Chain = OneWire_Pin_Level
  [Called By]
  - >> OneWire_WriteBit
  - >> OneWire_ReadBit
  - >> OneWire_Reset
  - >> OneWire_Init

  OneWire_Pin_Mode (Thumb, 116 bytes, Stack size 12 bytes, ow_port.o(.text.OneWire_Pin_Mode))
  [Stack]

  - Max Depth = 12
  - Call Chain = OneWire_Pin_Mode
  [Called By]
  - >> OneWire_WriteBit
  - >> OneWire_ReadBit
  - >> OneWire_Reset
  - >> OneWire_Init

  OneWire_Pin_Read (Thumb, 26 bytes, Stack size 4 bytes, ow_port.o(.text.OneWire_Pin_Read))
  [Stack]

  - Max Depth = 4
  - Call Chain = OneWire_Pin_Read
  [Called By]
  - >> OneWire_ReadBit
  - >> OneWire_Reset

  OneWire_ReadBit (Thumb, 106 bytes, Stack size 32 bytes, onewire.o(.text.OneWire_ReadBit))
  [Stack]

  - Max Depth = 56
  - Call Chain = OneWire_ReadBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_Pin_Read
  - >> OneWire_Delay_us
  - >> OneWire_Pin_Mode
  - >> OneWire_Pin_Level
  [Called By]
  - >> OneWire_Search
  - >> OneWire_ReadByte
  - >> DS18B20_WaitForEndConvertion

  OneWire_ReadByte (Thumb, 98 bytes, Stack size 24 bytes, onewire.o(.text.OneWire_ReadByte))
  [Stack]

  - Max Depth = 80
  - Call Chain = OneWire_ReadByte ⇒ OneWire_ReadBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_ReadBit
  [Called By]
  - >> DS18B20_SetResolution
  - >> DS18B20_ReadScratchpad

  OneWire_Reset (Thumb, 96 bytes, Stack size 24 bytes, onewire.o(.text.OneWire_Reset))
  [Stack]

  - Max Depth = 48
  - Call Chain = OneWire_Reset ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_Pin_Read
  - >> OneWire_Delay_us
  - >> OneWire_Pin_Mode
  - >> OneWire_Pin_Level
  [Called By]
  - >> OneWire_Search
  - >> DS18B20_SetResolution
  - >> DS18B20_ReadScratchpad
  - >> DS18B20_CalcTemperature
  - >> DS18B20_StartConvTAll

  OneWire_Search (Thumb, 494 bytes, Stack size 32 bytes, onewire.o(.text.OneWire_Search))
  [Stack]

  - Max Depth = 104
  - Call Chain = OneWire_Search ⇒ OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_WriteBit
  - >> OneWire_ReadBit
  - >> OneWire_WriteByte
  - >> OneWire_Reset
  [Called By]
  - >> DS18B20_Search

  OneWire_WriteBit (Thumb, 140 bytes, Stack size 32 bytes, onewire.o(.text.OneWire_WriteBit))
  [Stack]

  - Max Depth = 56
  - Call Chain = OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_Delay_us
  - >> OneWire_Pin_Mode
  - >> OneWire_Pin_Level
  [Called By]
  - >> OneWire_Search
  - >> OneWire_WriteByte

  OneWire_WriteByte (Thumb, 70 bytes, Stack size 16 bytes, onewire.o(.text.OneWire_WriteByte))
  [Stack]

  - Max Depth = 72
  - Call Chain = OneWire_WriteByte ⇒ OneWire_WriteBit ⇒ OneWire_Delay_us
  [Calls]
  - >> OneWire_WriteBit
  [Called By]
  - >> OneWire_Search
  - >> OneWire_MatchROM
  - >> DS18B20_SetResolution
  - >> DS18B20_ReadScratchpad
  - >> DS18B20_StartConvTAll

  PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.PendSV_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  RS_Abort (Thumb, 316 bytes, Stack size 24 bytes, rs_message.o(.text.RS_Abort))
  [Stack]

  - Max Depth = 76
  - Call Chain = RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_UART_AbortReceive
  - >> HAL_UART_AbortTransmit
  - >> HAL_UART_Abort
  - >> RS_Timeout_Stop
  [Called By]
  - >> RS_UART_Handler
  - >> RS_TIM_Handler
  - >> MB_Slave_Response
  - >> RS_Transmit_IT
  - >> RS_Receive_IT

  RS_Collect_Message (Thumb, 60 bytes, Stack size 24 bytes, modbus.o(.text.RS_Collect_Message))
  [Stack]

  - Max Depth = 88
  - Call Chain = RS_Collect_Message ⇒ MB_Slave_Collect_Message ⇒ crc16
  [Calls]
  - >> MB_Master_Collect_Message
  - >> MB_Slave_Collect_Message
  [Called By]
  - >> RS_Transmit_IT

  RS_Handle_Receive_Start (Thumb, 108 bytes, Stack size 24 bytes, rs_message.o(.text.RS_Handle_Receive_Start))
  [Stack]

  - Max Depth = 124
  - Call Chain = RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Receive_IT
  - >> RS_Timeout_Start
  [Called By]
  - >> RS_UART_Handler
  - >> RS_TIM_Handler
  - >> MB_Slave_Response
  - >> RS_Transmit_IT
  - >> RS_UART_TxCpltCallback
  - >> RS_Handle_Transmit_Start

  RS_Handle_Transmit_Start (Thumb, 80 bytes, Stack size 24 bytes, rs_message.o(.text.RS_Handle_Transmit_Start))
  [Stack]

  - Max Depth = 172
  - Call Chain = RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Transmit_IT
  - >> RS_Handle_Receive_Start
  [Called By]
  - >> MB_Slave_Response

  RS_Init (Thumb, 96 bytes, Stack size 20 bytes, rs_message.o(.text.RS_Init))
  [Stack]

  - Max Depth = 20
  - Call Chain = RS_Init
  [Called By]
  - >> MODBUS_FirstInit

  RS_Parse_Message (Thumb, 60 bytes, Stack size 24 bytes, modbus.o(.text.RS_Parse_Message))
  [Stack]

  - Max Depth = 104
  - Call Chain = RS_Parse_Message ⇒ MB_Master_Parse_Message ⇒ crc16
  [Calls]
  - >> MB_Master_Parse_Message
  - >> MB_Slave_Parse_Message
  [Called By]
  - >> RS_UART_Handler

  RS_Receive_IT (Thumb, 204 bytes, Stack size 24 bytes, rs_message.o(.text.RS_Receive_IT))
  [Stack]

  - Max Depth = 100
  - Call Chain = RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_UART_Receive_IT
  - >> RS_Abort
  [Called By]
  - >> MODBUS_SlaveStart
  - >> RS_Handle_Receive_Start

  RS_Response (Thumb, 48 bytes, Stack size 24 bytes, modbus.o(.text.RS_Response))
  [Stack]

  - Max Depth = 228
  - Call Chain = RS_Response ⇒ MB_Slave_Response ⇒ RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> MB_Slave_Response
  [Called By]
  - >> RS_UART_Handler

  RS_TIM_Handler (Thumb, 126 bytes, Stack size 16 bytes, rs_message.o(.text.RS_TIM_Handler))
  [Stack]

  - Max Depth = 140
  - Call Chain = RS_TIM_Handler ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_TIM_IRQHandler
  - >> RS_Abort
  - >> RS_Handle_Receive_Start
  [Called By]
  - >> TIM4_IRQHandler
  - >> TIM2_IRQHandler

  RS_Timeout_Start (Thumb, 74 bytes, Stack size 16 bytes, rs_message.o(.text.RS_Timeout_Start))
  [Stack]

  - Max Depth = 28
  - Call Chain = RS_Timeout_Start ⇒ HAL_TIM_Base_Start_IT
  [Calls]
  - >> HAL_TIM_Base_Start_IT
  [Called By]
  - >> RS_UART_Handler
  - >> RS_Handle_Receive_Start

  RS_Timeout_Stop (Thumb, 62 bytes, Stack size 16 bytes, rs_message.o(.text.RS_Timeout_Stop))
  [Stack]

  - Max Depth = 20
  - Call Chain = RS_Timeout_Stop ⇒ HAL_TIM_Base_Stop_IT
  [Calls]
  - >> HAL_TIM_Base_Stop_IT
  [Called By]
  - >> RS_UART_Handler
  - >> RS_Abort

  RS_Timeout_Update (Thumb, 30 bytes, Stack size 4 bytes, rs_message.o(.text.RS_Timeout_Update))
  [Stack]

  - Max Depth = 4
  - Call Chain = RS_Timeout_Update
  [Called By]
  - >> RS_UART_Handler

  RS_Transmit_IT (Thumb, 236 bytes, Stack size 24 bytes, rs_message.o(.text.RS_Transmit_IT))
  [Stack]

  - Max Depth = 148
  - Call Chain = RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Collect_Message
  - >> HAL_UART_Transmit_IT
  - >> RS_Abort
  - >> RS_Handle_Receive_Start
  [Called By]
  - >> RS_Handle_Transmit_Start

  RS_UART_Handler (Thumb, 534 bytes, Stack size 16 bytes, rs_message.o(.text.RS_UART_Handler))
  [Stack]

  - Max Depth = 244
  - Call Chain = RS_UART_Handler ⇒ RS_Response ⇒ MB_Slave_Response ⇒ RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Parse_Message
  - >> RS_Response
  - >> HAL_UART_IRQHandler
  - >> HAL_UART_AbortReceive
  - >> RS_Timeout_Update
  - >> RS_UART_TxCpltCallback
  - >> RS_Timeout_Start
  - >> RS_Timeout_Stop
  - >> RS_Abort
  - >> RS_Handle_Receive_Start
  - >> MB_Diagnostics_CharacterOverrunCnt
  [Called By]
  - >> USART2_IRQHandler
  - >> USART1_IRQHandler

  RS_UART_TxCpltCallback (Thumb, 80 bytes, Stack size 16 bytes, rs_message.o(.text.RS_UART_TxCpltCallback))
  [Stack]

  - Max Depth = 140
  - Call Chain = RS_UART_TxCpltCallback ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_Handle_Receive_Start
  [Called By]
  - >> RS_UART_Handler

  RTC_CalendarGet (Thumb, 170 bytes, Stack size 24 bytes, rtc.o(.text.RTC_CalendarGet))
  [Stack]

  - Max Depth = 144
  - Call Chain = RTC_CalendarGet ⇒ HAL_RTC_GetDate ⇒ HAL_RTC_GetTime ⇒ RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_GetDate
  - >> RTC_SaveDateToBackup
  [Called By]
  - >> RTC_ModbusService

  RTC_CalendarIsValid (Thumb, 104 bytes, Stack size 24 bytes, rtc.o(.text.RTC_CalendarIsValid))
  [Stack]

  - Max Depth = 76
  - Call Chain = RTC_CalendarIsValid ⇒ RTC_IsDateValid ⇒ RTC_DaysInMonth ⇒ RTC_IsLeapYearFull
  [Calls]
  - >> RTC_IsDateValid
  [Called By]
  - >> RTC_CalendarSet
  - >> RTC_ModbusService

  RTC_CalendarSet (Thumb, 202 bytes, Stack size 32 bytes, rtc.o(.text.RTC_CalendarSet))
  [Stack]

  - Max Depth = 120
  - Call Chain = RTC_CalendarSet ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
  [Calls]
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime
  - >> RTC_NormalizeYear
  - >> RTC_SaveDateToBackup
  - >> RTC_CalendarIsValid
  [Called By]
  - >> RTC_ModbusService

  RTC_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.RTC_IRQHandler))
  [Stack]

  - Max Depth = 28
  - Call Chain = RTC_IRQHandler ⇒ HAL_RTCEx_RTCIRQHandler ⇒ HAL_RTCEx_RTCEventCallback
  [Calls]
  - >> HAL_RTCEx_RTCIRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.SVC_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.SysTick_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  SystemClock_Config (Thumb, 154 bytes, Stack size 96 bytes, main.o(.text.SystemClock_Config))
  [Stack]

  - Max Depth = 312 + Unknown Stack Size
  - Call Chain = SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_RCCEx_PeriphCLKConfig
  - >> HAL_RCC_ClockConfig
  - >> HAL_RCC_OscConfig
  - >> Error_Handler
  - >> __aeabi_memclr4
  [Called By]
  - >> main

  SystemInit (Thumb, 2 bytes, Stack size 0 bytes, system_stm32f1xx.o(.text.SystemInit))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(.text)

  TIM1_BRK_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM1_BRK_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM1_BRK_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM1_CC_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM1_CC_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM1_CC_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM1_TRG_COM_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM1_TRG_COM_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM1_TRG_COM_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM1_UP_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM1_UP_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM1_UP_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM2_IRQHandler))
  [Stack]

  - Max Depth = 148
  - Call Chain = TIM2_IRQHandler ⇒ RS_TIM_Handler ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_TIM_Handler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM3_IRQHandler (Thumb, 44 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM3_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM3_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM4_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM4_IRQHandler))
  [Stack]

  - Max Depth = 148
  - Call Chain = TIM4_IRQHandler ⇒ RS_TIM_Handler ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_TIM_Handler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  TIM_Base_SetConfig (Thumb, 262 bytes, Stack size 12 bytes, stm32f1xx_hal_tim.o(.text.TIM_Base_SetConfig))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_Base_SetConfig
  [Called By]
  - >> HAL_TIM_Base_Init

  TIM_ETR_SetConfig (Thumb, 52 bytes, Stack size 20 bytes, stm32f1xx_hal_tim.o(.text.TIM_ETR_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_ETR_SetConfig
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  UART_Start_Receive_IT (Thumb, 98 bytes, Stack size 12 bytes, stm32f1xx_hal_uart.o(.text.UART_Start_Receive_IT))
  [Stack]

  - Max Depth = 12
  - Call Chain = UART_Start_Receive_IT
  [Called By]
  - >> HAL_UART_Receive_IT

  USART1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.USART1_IRQHandler))
  [Stack]

  - Max Depth = 252
  - Call Chain = USART1_IRQHandler ⇒ RS_UART_Handler ⇒ RS_Response ⇒ MB_Slave_Response ⇒ RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_UART_Handler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  USART2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.USART2_IRQHandler))
  [Stack]

  - Max Depth = 252
  - Call Chain = USART2_IRQHandler ⇒ RS_UART_Handler ⇒ RS_Response ⇒ MB_Slave_Response ⇒ RS_Handle_Transmit_Start ⇒ RS_Transmit_IT ⇒ RS_Handle_Receive_Start ⇒ RS_Receive_IT ⇒ RS_Abort ⇒ HAL_UART_Abort ⇒ HAL_DMA_Abort
  [Calls]
  - >> RS_UART_Handler
  [Address Reference Count : 1]
  - startup_stm32f10x_md.o(RESET)

  UsageFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.UsageFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_md.o(RESET)

  crc16 (Thumb, 148 bytes, Stack size 16 bytes, __crc_algs.o(.text.crc16))
  [Stack]

  - Max Depth = 16
  - Call Chain = crc16
  [Called By]
  - >> MB_Master_Parse_Message
  - >> MB_Slave_Parse_Message
  - >> MB_Master_Collect_Message
  - >> MB_Slave_Collect_Message

  init_setpoint_all_T_sense (Thumb, 164 bytes, Stack size 12 bytes, main.o(.text.init_setpoint_all_T_sense))
  [Stack]

  - Max Depth = 12
  - Call Chain = init_setpoint_all_T_sense
  [Called By]
  - >> main

  led_blink (Thumb, 76 bytes, Stack size 24 bytes, main.o(.text.led_blink))
  [Stack]

  - Max Depth = 48
  - Call Chain = led_blink ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> main

  main (Thumb, 628 bytes, Stack size 72 bytes, main.o(.text.main))
  [Stack]

  - Max Depth = 384 + Unknown Stack Size
  - Call Chain = main ⇒ SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> value_control
  - >> Check_Tconnect
  - >> Field_modbus
  - >> init_setpoint_all_T_sense
  - >> reinit_t_sens
  - >> Error_Handler
  - >> MODBUS_SlaveStart
  - >> MODBUS_Config
  - >> MODBUS_FirstInit
  - >> led_blink
  - >> MX_SPI1_Init
  - >> MX_RTC_Init
  - >> MX_I2C1_Init
  - >> MX_CAN_Init
  - >> MX_ADC1_Init
  - >> MX_TIM4_Init
  - >> MX_TIM2_Init
  - >> MX_USART2_UART_Init
  - >> MX_USART1_UART_Init
  - >> MX_TIM1_Init
  - >> MX_GPIO_Init
  - >> SystemClock_Config
  - >> HAL_Init
  - >> RTC_ModbusService
  - >> Dallas_ReadTemperature
  - >> Dallas_StartConvertTAll
  - >> Dallas_BusFirstInit
  - >> __aeabi_fmul
  - >> __aeabi_f2iz
  [Called By]
  - >> __rt_entry_main

  packStruct (Thumb, 946 bytes, Stack size 20 bytes, main.o(.text.packStruct))
  [Stack]

  - Max Depth = 20
  - Call Chain = packStruct
  [Called By]
  - >> Field_modbus

  reinit_t_sens (Thumb, 190 bytes, Stack size 16 bytes, main.o(.text.reinit_t_sens))
  [Stack]

  - Max Depth = 40
  - Call Chain = reinit_t_sens ⇒ Dallas_AddNewSensors
  [Calls]
  - >> Dallas_AddNewSensors
  [Called By]
  - >> Check_Tconnect
  - >> main

  value_control (Thumb, 318 bytes, Stack size 32 bytes, main.o(.text.value_control))
  [Stack]

  - Max Depth = 48
  - Call Chain = value_control ⇒ __aeabi_fsub
  [Calls]
  - >> __aeabi_i2f
  - >> __aeabi_fcmple
  - >> __aeabi_fcmpge
  - >> __aeabi_fcmpeq
  - >> __aeabi_fsub
  - >> __aeabi_fadd
  [Called By]
  - >> main

  __aeabi_fadd (Thumb, 0 bytes, Stack size 16 bytes, faddsub_clz.o(x$fpl$fadd))
  [Stack]

  - Max Depth = 16
  - Call Chain = __aeabi_fadd
  [Called By]
  - >> value_control
  - >> DS18B20_CalcTemperature

  _fadd (Thumb, 196 bytes, Stack size 16 bytes, faddsub_clz.o(x$fpl$fadd), UNUSED)
  [Calls]

  - >> __fpl_fretinf
  - >> __fpl_fnaninf
  - >> _fsub1

  __aeabi_fcmpeq (Thumb, 0 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_fcmpeq
  [Called By]
  - >> value_control

  _feq (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmpeq

  _fneq (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmpeq

  __aeabi_fcmpgt (Thumb, 0 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)

  _fgr (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmpge

  __aeabi_fcmpge (Thumb, 0 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_fcmpge
  [Called By]
  - >> value_control

  _fgeq (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmpge

  __aeabi_fcmple (Thumb, 0 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_fcmple
  [Called By]
  - >> value_control

  _fleq (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmple

  __aeabi_fcmplt (Thumb, 0 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)

  _fls (Thumb, 14 bytes, Stack size 8 bytes, fcmp.o(x$fpl$fcmp), UNUSED)
  [Calls]

  - >> _fcmple

  __fpl_fcmp_Inf (Thumb, 24 bytes, Stack size 0 bytes, fcmpi.o(x$fpl$fcmpinf), UNUSED)
  [Called By]

  - >> _fcmple
  - >> _fcmpge
  - >> _fcmpeq

  __aeabi_cfcmpeq (Thumb, 0 bytes, Stack size 16 bytes, feqf.o(x$fpl$feqf), UNUSED)

  _fcmpeq (Thumb, 104 bytes, Stack size 16 bytes, feqf.o(x$fpl$feqf), UNUSED)
  [Calls]

  - >> __fpl_fcmp_Inf
  - >> __fpl_fnaninf
  [Called By]
  - >> _fneq
  - >> _feq

  __aeabi_f2iz (Thumb, 0 bytes, Stack size 16 bytes, ffix.o(x$fpl$ffix))
  [Stack]

  - Max Depth = 16
  - Call Chain = __aeabi_f2iz
  [Called By]
  - >> main

  _ffix (Thumb, 54 bytes, Stack size 16 bytes, ffix.o(x$fpl$ffix), UNUSED)
  [Calls]

  - >> __fpl_fnaninf

  __aeabi_i2f (Thumb, 0 bytes, Stack size 0 bytes, fflt_clz.o(x$fpl$fflt))
  [Called By]

  - >> value_control
  - >> DS18B20_CalcTemperature

  _fflt (Thumb, 48 bytes, Stack size 0 bytes, fflt_clz.o(x$fpl$fflt), UNUSED)

  __aeabi_ui2f (Thumb, 0 bytes, Stack size 0 bytes, fflt_clz.o(x$fpl$ffltu))
  [Called By]

  - >> Field_modbus

  _ffltu (Thumb, 38 bytes, Stack size 0 bytes, fflt_clz.o(x$fpl$ffltu), UNUSED)

  _fcmpge (Thumb, 104 bytes, Stack size 16 bytes, fgeqf.o(x$fpl$fgeqf), UNUSED)
  [Calls]

  - >> __fpl_fcmp_Inf
  - >> __fpl_fnaninf
  [Called By]
  - >> _fgeq
  - >> _fgr

  __aeabi_cfcmple (Thumb, 0 bytes, Stack size 16 bytes, fleqf.o(x$fpl$fleqf), UNUSED)

  _fcmple (Thumb, 104 bytes, Stack size 16 bytes, fleqf.o(x$fpl$fleqf), UNUSED)
  [Calls]

  - >> __fpl_fcmp_Inf
  - >> __fpl_fnaninf
  [Called By]
  - >> _fls
  - >> _fleq

  __fpl_fcmple_InfNaN (Thumb, 0 bytes, Stack size unknown bytes, fleqf.o(x$fpl$fleqf), UNUSED)

  __aeabi_fmul (Thumb, 0 bytes, Stack size 16 bytes, fmul.o(x$fpl$fmul))
  [Stack]

  - Max Depth = 16
  - Call Chain = __aeabi_fmul
  [Called By]
  - >> main
  - >> DS18B20_CalcTemperature

  _fmul (Thumb, 258 bytes, Stack size 16 bytes, fmul.o(x$fpl$fmul), UNUSED)
  [Calls]

  - >> __fpl_fretinf
  - >> __fpl_fnaninf

  __fpl_fnaninf (Thumb, 140 bytes, Stack size 8 bytes, fnaninf.o(x$fpl$fnaninf), UNUSED)
  [Called By]

  - >> _fcmple
  - >> _fcmpge
  - >> _fcmpeq
  - >> _fmul
  - >> _ffix
  - >> _fsub
  - >> _fadd

  __fpl_fretinf (Thumb, 10 bytes, Stack size 0 bytes, fretinf.o(x$fpl$fretinf), UNUSED)
  [Called By]

  - >> _fmul
  - >> _fadd

  __aeabi_fsub (Thumb, 0 bytes, Stack size 16 bytes, faddsub_clz.o(x$fpl$fsub))
  [Stack]

  - Max Depth = 16
  - Call Chain = __aeabi_fsub
  [Called By]
  - >> value_control
  - >> DS18B20_CalcTemperature

  _fsub (Thumb, 234 bytes, Stack size 16 bytes, faddsub_clz.o(x$fpl$fsub), UNUSED)
  [Calls]

  - >> __fpl_fnaninf
  - >> _fadd1

  ### Local Symbols

  RTC_ModbusService (Thumb, 238 bytes, Stack size 40 bytes, main.o(.text.RTC_ModbusService))
  [Stack]

  - Max Depth = 184
  - Call Chain = RTC_ModbusService ⇒ RTC_CalendarGet ⇒ HAL_RTC_GetDate ⇒ HAL_RTC_GetTime ⇒ RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> RTC_CalendarGet
  - >> RTC_CalendarSet
  - >> RTC_CalendarIsValid
  - >> RTC_WriteCalendarToRegs
  - >> RTC_ReadCalendarFromRegs
  [Called By]
  - >> Field_modbus
  - >> main

  RTC_ReadCalendarFromRegs (Thumb, 82 bytes, Stack size 8 bytes, main.o(.text.RTC_ReadCalendarFromRegs))
  [Stack]

  - Max Depth = 8
  - Call Chain = RTC_ReadCalendarFromRegs
  [Called By]
  - >> RTC_ModbusService

  RTC_WriteCalendarToRegs (Thumb, 100 bytes, Stack size 12 bytes, main.o(.text.RTC_WriteCalendarToRegs))
  [Stack]

  - Max Depth = 12
  - Call Chain = RTC_WriteCalendarToRegs
  [Called By]
  - >> RTC_ModbusService

  RTC_RestoreDateFromBackup (Thumb, 176 bytes, Stack size 32 bytes, rtc.o(.text.RTC_RestoreDateFromBackup))
  [Stack]

  - Max Depth = 84
  - Call Chain = RTC_RestoreDateFromBackup ⇒ RTC_IsDateValid ⇒ RTC_DaysInMonth ⇒ RTC_IsLeapYearFull
  [Calls]
  - >> HAL_RTCEx_BKUPRead
  - >> RTC_IsDateValid
  [Called By]
  - >> MX_RTC_Init

  RTC_SaveDateToBackup (Thumb, 152 bytes, Stack size 24 bytes, rtc.o(.text.RTC_SaveDateToBackup))
  [Stack]

  - Max Depth = 40
  - Call Chain = RTC_SaveDateToBackup ⇒ HAL_RTCEx_BKUPWrite
  [Calls]
  - >> HAL_RTCEx_BKUPWrite
  - >> HAL_RTCEx_BKUPRead
  [Called By]
  - >> RTC_CalendarGet
  - >> RTC_CalendarSet
  - >> MX_RTC_Init

  RTC_IsDateValid (Thumb, 150 bytes, Stack size 24 bytes, rtc.o(.text.RTC_IsDateValid))
  [Stack]

  - Max Depth = 52
  - Call Chain = RTC_IsDateValid ⇒ RTC_DaysInMonth ⇒ RTC_IsLeapYearFull
  [Calls]
  - >> RTC_DaysInMonth
  - >> RTC_NormalizeYear
  [Called By]
  - >> RTC_RestoreDateFromBackup
  - >> RTC_CalendarIsValid

  RTC_NormalizeYear (Thumb, 96 bytes, Stack size 8 bytes, rtc.o(.text.RTC_NormalizeYear))
  [Stack]

  - Max Depth = 8
  - Call Chain = RTC_NormalizeYear
  [Called By]
  - >> RTC_IsDateValid
  - >> RTC_CalendarSet

  RTC_DaysInMonth (Thumb, 100 bytes, Stack size 16 bytes, rtc.o(.text.RTC_DaysInMonth))
  [Stack]

  - Max Depth = 28
  - Call Chain = RTC_DaysInMonth ⇒ RTC_IsLeapYearFull
  [Calls]
  - >> RTC_IsLeapYearFull
  [Called By]
  - >> RTC_IsDateValid

  RTC_IsLeapYearFull (Thumb, 110 bytes, Stack size 12 bytes, rtc.o(.text.RTC_IsLeapYearFull))
  [Stack]

  - Max Depth = 12
  - Call Chain = RTC_IsLeapYearFull
  [Called By]
  - >> RTC_DaysInMonth

  TIM_TI1_ConfigInputStage (Thumb, 80 bytes, Stack size 20 bytes, stm32f1xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_TI1_ConfigInputStage
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  TIM_ITRx_SetConfig (Thumb, 42 bytes, Stack size 12 bytes, stm32f1xx_hal_tim.o(.text.TIM_ITRx_SetConfig))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_ITRx_SetConfig
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  TIM_TI2_ConfigInputStage (Thumb, 82 bytes, Stack size 20 bytes, stm32f1xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_TI2_ConfigInputStage
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  RCC_Delay (Thumb, 58 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text.RCC_Delay))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_Delay
  [Called By]
  - >> HAL_RCC_OscConfig

  __NVIC_SetPriorityGrouping (Thumb, 60 bytes, Stack size 12 bytes, stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping))
  [Stack]

  - Max Depth = 12
  - Call Chain = __NVIC_SetPriorityGrouping
  [Called By]
  - >> HAL_NVIC_SetPriorityGrouping

  __NVIC_GetPriorityGrouping (Thumb, 16 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping))
  [Called By]

  - >> HAL_NVIC_SetPriority

  NVIC_EncodePriority (Thumb, 108 bytes, Stack size 32 bytes, stm32f1xx_hal_cortex.o(.text.NVIC_EncodePriority))
  [Stack]

  - Max Depth = 32
  - Call Chain = NVIC_EncodePriority
  [Called By]
  - >> HAL_NVIC_SetPriority

  __NVIC_SetPriority (Thumb, 66 bytes, Stack size 8 bytes, stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriority))
  [Stack]

  - Max Depth = 8
  - Call Chain = __NVIC_SetPriority
  [Called By]
  - >> HAL_NVIC_SetPriority

  __NVIC_EnableIRQ (Thumb, 48 bytes, Stack size 4 bytes, stm32f1xx_hal_cortex.o(.text.__NVIC_EnableIRQ))
  [Stack]

  - Max Depth = 4
  - Call Chain = __NVIC_EnableIRQ
  [Called By]
  - >> HAL_NVIC_EnableIRQ

  RTC_EnterInitMode (Thumb, 86 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.RTC_EnterInitMode))
  [Stack]

  - Max Depth = 24
  - Call Chain = RTC_EnterInitMode
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTC_Init
  - >> RTC_WriteAlarmCounter
  - >> RTC_WriteTimeCounter

  RTC_ExitInitMode (Thumb, 86 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.RTC_ExitInitMode))
  [Stack]

  - Max Depth = 24
  - Call Chain = RTC_ExitInitMode
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTC_Init
  - >> RTC_WriteAlarmCounter
  - >> RTC_WriteTimeCounter

  RTC_Bcd2ToByte (Thumb, 42 bytes, Stack size 8 bytes, stm32f1xx_hal_rtc.o(.text.RTC_Bcd2ToByte))
  [Stack]

  - Max Depth = 8
  - Call Chain = RTC_Bcd2ToByte
  [Called By]
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime

  RTC_WriteTimeCounter (Thumb, 80 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.RTC_WriteTimeCounter))
  [Stack]

  - Max Depth = 48
  - Call Chain = RTC_WriteTimeCounter ⇒ RTC_ExitInitMode
  [Calls]
  - >> RTC_ExitInitMode
  - >> RTC_EnterInitMode
  [Called By]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime

  RTC_ReadAlarmCounter (Thumb, 50 bytes, Stack size 8 bytes, stm32f1xx_hal_rtc.o(.text.RTC_ReadAlarmCounter))
  [Stack]

  - Max Depth = 8
  - Call Chain = RTC_ReadAlarmCounter
  [Called By]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime

  RTC_WriteAlarmCounter (Thumb, 80 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.RTC_WriteAlarmCounter))
  [Stack]

  - Max Depth = 48
  - Call Chain = RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
  [Calls]
  - >> RTC_ExitInitMode
  - >> RTC_EnterInitMode
  [Called By]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime

  RTC_ReadTimeCounter (Thumb, 106 bytes, Stack size 16 bytes, stm32f1xx_hal_rtc.o(.text.RTC_ReadTimeCounter))
  [Stack]

  - Max Depth = 16
  - Call Chain = RTC_ReadTimeCounter
  [Called By]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_SetDate

  RTC_DateUpdate (Thumb, 370 bytes, Stack size 32 bytes, stm32f1xx_hal_rtc.o(.text.RTC_DateUpdate))
  [Stack]

  - Max Depth = 48
  - Call Chain = RTC_DateUpdate ⇒ RTC_WeekDayNum
  [Calls]
  - >> RTC_WeekDayNum
  - >> RTC_IsLeapYear
  [Called By]
  - >> HAL_RTC_GetTime

  RTC_ByteToBcd2 (Thumb, 58 bytes, Stack size 8 bytes, stm32f1xx_hal_rtc.o(.text.RTC_ByteToBcd2))
  [Stack]

  - Max Depth = 8
  - Call Chain = RTC_ByteToBcd2
  [Called By]
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_GetDate

  RTC_IsLeapYear (Thumb, 120 bytes, Stack size 4 bytes, stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear))
  [Stack]

  - Max Depth = 4
  - Call Chain = RTC_IsLeapYear
  [Called By]
  - >> RTC_DateUpdate

  RTC_WeekDayNum (Thumb, 222 bytes, Stack size 16 bytes, stm32f1xx_hal_rtc.o(.text.RTC_WeekDayNum))
  [Stack]

  - Max Depth = 16
  - Call Chain = RTC_WeekDayNum
  [Called By]
  - >> HAL_RTC_SetDate
  - >> RTC_DateUpdate

  UART_SetConfig (Thumb, 186 bytes, Stack size 24 bytes, stm32f1xx_hal_uart.o(.text.UART_SetConfig))
  [Stack]

  - Max Depth = 32
  - Call Chain = UART_SetConfig ⇒ HAL_RCC_GetPCLK1Freq
  [Calls]
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_RCC_GetPCLK2Freq
  [Called By]
  - >> HAL_UART_Init

  UART_EndRxTransfer (Thumb, 148 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text.UART_EndRxTransfer))
  [Stack]

  - Max Depth = 16
  - Call Chain = UART_EndRxTransfer
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_Receive_IT (Thumb, 362 bytes, Stack size 32 bytes, stm32f1xx_hal_uart.o(.text.UART_Receive_IT))
  [Stack]

  - Max Depth = 40
  - Call Chain = UART_Receive_IT ⇒ HAL_UARTEx_RxEventCallback
  [Calls]
  - >> HAL_UART_RxCpltCallback
  - >> HAL_UARTEx_RxEventCallback
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_DMAAbortOnError (Thumb, 32 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text.UART_DMAAbortOnError))
  [Stack]

  - Max Depth = 20
  - Call Chain = UART_DMAAbortOnError ⇒ HAL_UART_ErrorCallback
  [Calls]
  - >> HAL_UART_ErrorCallback
  [Address Reference Count : 1]
  - stm32f1xx_hal_uart.o(.text.HAL_UART_IRQHandler)

  UART_Transmit_IT (Thumb, 148 bytes, Stack size 12 bytes, stm32f1xx_hal_uart.o(.text.UART_Transmit_IT))
  [Stack]

  - Max Depth = 12
  - Call Chain = UART_Transmit_IT
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_EndTransmit_IT (Thumb, 38 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text.UART_EndTransmit_IT))
  [Stack]

  - Max Depth = 20
  - Call Chain = UART_EndTransmit_IT ⇒ HAL_UART_TxCpltCallback
  [Calls]
  - >> HAL_UART_TxCpltCallback
  [Called By]
  - >> HAL_UART_IRQHandler

  MB_Define_Size_of_Function (Thumb, 92 bytes, Stack size 16 bytes, modbus_slave.o(.text.MB_Define_Size_of_Function))
  [Stack]

  - Max Depth = 16
  - Call Chain = MB_Define_Size_of_Function
  [Called By]
  - >> MB_Slave_Parse_Message

  _fadd1 (Thumb, 0 bytes, Stack size unknown bytes, faddsub_clz.o(x$fpl$fadd), UNUSED)
  [Called By]

  - >> _fsub

  _fsub1 (Thumb, 0 bytes, Stack size unknown bytes, faddsub_clz.o(x$fpl$fsub), UNUSED)
  [Called By]

  - >> _fadd

  ### Undefined Global Symbols