# Static Call Graph for image ..\OBJ\LED.axf

#<CALLGRAPH># ARM Linker, 5050106: Last Updated: Sat Jan 21 22:58:29 2017

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

### Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ LCD_Init ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest

### Functions with no stack information

- __user_initial_stackheap
- CPU_IntDis
- CPU_IntEn
- CPU_SR_Save
- CPU_SR_Restore
- CPU_WaitForInt
- CPU_WaitForExcept
- CPU_CntLeadZeros
- CPU_CntTrailZeros
- CPU_RevBits
- OSStartHighRdy
- PendSV_Handler

### Mutually Recursive functions

- ADC1_2_IRQHandler ⇒ ADC1_2_IRQHandler

  ### Function Pointers

  - ADC1_2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - ADC3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - BusFault_Handler from stm32f10x_it.o(i.BusFault_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - CAN1_RX1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - CAN1_SCE_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DHT11_Exist_task from main.o(i.DHT11_Exist_task) referenced from main.o(i.start_task)
  - DHT11_Measure_task from main.o(i.DHT11_Measure_task) referenced from main.o(i.start_task)
  - DMA1_Channel1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel6_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel7_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel4_5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DebugMon_Handler from stm32f10x_it.o(i.DebugMon_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI0_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI15_10_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI2_IRQHandler from exti.o(i.EXTI2_IRQHandler) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI9_5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - FLASH_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - FSMC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - HardFault_Handler from stm32f10x_it.o(i.HardFault_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C1_ER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C1_EV_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C2_ER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C2_EV_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - MemManage_Handler from stm32f10x_it.o(i.MemManage_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - NMI_Handler from stm32f10x_it.o(i.NMI_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - OSTaskSwHook from os_cpu_c.o(i.OSTaskSwHook) referenced from os_cpu_a.o(CODE)
  - OS_IdleTask from os_core.o(i.OS_IdleTask) referenced from os_core.o(i.OS_IdleTaskInit)
  - OS_IntQTask from os_int.o(i.OS_IntQTask) referenced from os_int.o(i.OS_IntQTaskInit)
  - OS_StatTask from os_stat.o(i.OS_StatTask) referenced from os_stat.o(i.OS_StatTaskInit)
  - OS_TaskReturn from os_task.o(i.OS_TaskReturn) referenced from os_cpu_c.o(i.OSTaskStkInit)
  - OS_TickTask from os_tick.o(i.OS_TickTask) referenced from os_tick.o(i.OS_TickTaskInit)
  - OS_TmrTask from os_tmr.o(i.OS_TmrTask) referenced from os_tmr.o(i.OS_TmrInit)
  - PVD_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - PendSV_Handler from os_cpu_a.o(CODE) referenced from startup_stm32f10x_hd.o(RESET)
  - RCC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - RTCAlarm_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - RTC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - Reset_Handler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SDIO_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SVC_Handler from stm32f10x_it.o(i.SVC_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - SysTick_Handler from delay.o(i.SysTick_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - SystemInit from system_stm32f10x.o(i.SystemInit) referenced from startup_stm32f10x_hd.o(.text)
  - TAMPER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_BRK_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_CC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_TRG_COM_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_UP_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM6_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM7_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_BRK_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_CC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_TRG_COM_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_UP_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UART4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UART5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USART1_IRQHandler from usart.o(i.USART1_IRQHandler) referenced from startup_stm32f10x_hd.o(RESET)
  - USART2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USART3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USBWakeUp_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USB_HP_CAN1_TX_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USB_LP_CAN1_RX0_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UsageFault_Handler from stm32f10x_it.o(i.UsageFault_Handler) referenced from startup_stm32f10x_hd.o(RESET)
  - WWDG_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - __main from __main.o(!!!main) referenced from startup_stm32f10x_hd.o(.text)
  - _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text)
  - fputc from usart.o(i.fputc) referenced from _printf_char_file.o(.text)
  - led1_task from main.o(i.led1_task) referenced from main.o(i.start_task)
  - start_task from main.o(i.start_task) referenced from main.o(i.main)

  ### Global Symbols

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

  - >> __rt_entry
  - >> __scatterload

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

  - >> __main

  __scatterload_rt2 (Thumb, 44 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_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __decompress (Thumb, 90 bytes, Stack size unknown bytes, __dczerorl2.o(!!dczerorl2), UNUSED)

  __decompress1 (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(!!dczerorl2), 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$$0000002E))

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

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

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

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

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

  __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$$0000001F))

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  - >> __rt_exit_ls

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

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

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

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

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

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

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

  - >> __main
  - >> __scatterload_rt2

  __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 = 264 + Unknown Stack Size
  - Call Chain = __rt_entry_main ⇒ main ⇒ LCD_Init ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [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_hd.o(.text))

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

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

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - >> __user_setup_stackheap

  CPU_IntDis (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

  CPU_IntEn (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

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

  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSSchedLock
  - >> OSIntExit
  - >> OS_Sched0
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> CPU_NameClr
  - >> CPU_IntDisMeasMaxGet
  - >> CPU_IntDisMeasMaxCurReset
  - >> CPU_IntDisMeasMaxCurGet
  - >> CPU_IntDisMeasInit
  - >> OSTaskStkChk
  - >> OS_StatTask
  - >> OSStatReset
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_IntQTask
  - >> OS_IntQPost
  - >> OS_FlagPost
  - >> OS_SchedRoundRobin
  - >> OS_IdleTask
  - >> OSSched
  - >> OS_TickListUpdate

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

  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSSchedLock
  - >> OSIntExit
  - >> OS_Sched0
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> CPU_NameClr
  - >> CPU_IntDisMeasMaxGet
  - >> CPU_IntDisMeasMaxCurReset
  - >> CPU_IntDisMeasMaxCurGet
  - >> CPU_IntDisMeasInit
  - >> OSTaskStkChk
  - >> OS_StatTask
  - >> OSStatReset
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_IntQTask
  - >> OS_IntQPost
  - >> OS_FlagPost
  - >> OS_SchedRoundRobin
  - >> OS_IdleTask
  - >> OSSched
  - >> OS_TickListUpdate

  CPU_WaitForInt (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

  CPU_WaitForExcept (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

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

  - >> OS_PrioGetHighest

  CPU_CntTrailZeros (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

  CPU_RevBits (Thumb, 0 bytes, Stack size unknown bytes, cpu_a.o(.text), UNUSED)

  __use_no_semihosting (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi_2.o(.text), UNUSED)

  __2printf (Thumb, 20 bytes, Stack size 24 bytes, noretval__2printf.o(.text))
  [Stack]

  - Max Depth = 128
  - Call Chain = __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> _printf_char_file
  [Called By]
  - >> start_task
  - >> DHT11_Measure_task
  - >> DHT11_Exist_task

  __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)

  __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)

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

  - Max Depth = 104
  - Call Chain = _printf_char_file ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> ferror
  - >> _printf_char_common
  [Called By]
  - >> __2printf

  _printf_char_common (Thumb, 32 bytes, Stack size 64 bytes, _printf_char_common.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = _printf_char_common ⇒ __printf
  [Calls]
  - >> __printf
  [Called By]
  - >> _printf_char_file

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

  - >> _printf_char_file

  __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

  __printf (Thumb, 40 bytes, Stack size 24 bytes, __printf_nopercent.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = __printf
  [Called By]
  - >> _printf_char_common

  exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
  [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)

  OSStartHighRdy (Thumb, 0 bytes, Stack size unknown bytes, os_cpu_a.o(CODE))
  [Called By]

  - >> OSStart

  PendSV_Handler (Thumb, 0 bytes, Stack size unknown bytes, os_cpu_a.o(CODE))
  [Address Reference Count : 1]

  - startup_stm32f10x_hd.o(RESET)

  BSP_CPU_ClkFreq (Thumb, 16 bytes, Stack size 24 bytes, bsp.o(i.BSP_CPU_ClkFreq))
  [Stack]

  - Max Depth = 36
  - Call Chain = BSP_CPU_ClkFreq ⇒ RCC_GetClocksFreq
  [Calls]
  - >> RCC_GetClocksFreq
  [Called By]
  - >> CPU_TS_TmrInit

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

  - startup_stm32f10x_hd.o(RESET)

  CPU_Init (Thumb, 16 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_Init))
  [Stack]

  - Max Depth = 60 + Unknown Stack Size
  - Call Chain = CPU_Init ⇒ CPU_TS_Init ⇒ CPU_TS_TmrInit ⇒ BSP_CPU_ClkFreq ⇒ RCC_GetClocksFreq
  [Calls]
  - >> CPU_TS_Init
  - >> CPU_NameInit
  - >> CPU_IntDisMeasInit
  [Called By]
  - >> start_task

  CPU_IntDisMeasMaxCurGet (Thumb, 40 bytes, Stack size 16 bytes, cpu_core.o(i.CPU_IntDisMeasMaxCurGet))
  [Stack]

  - Max Depth = 16 + Unknown Stack Size
  - Call Chain = CPU_IntDisMeasMaxCurGet
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasMaxCalc
  [Called By]
  - >> CPU_IntDisMeasMaxCurReset

  CPU_IntDisMeasMaxCurReset (Thumb, 40 bytes, Stack size 16 bytes, cpu_core.o(i.CPU_IntDisMeasMaxCurReset))
  [Stack]

  - Max Depth = 32 + Unknown Stack Size
  - Call Chain = CPU_IntDisMeasMaxCurReset ⇒ CPU_IntDisMeasMaxCurGet
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasMaxCurGet
  [Called By]
  - >> OSTaskSwHook

  CPU_IntDisMeasMaxGet (Thumb, 40 bytes, Stack size 16 bytes, cpu_core.o(i.CPU_IntDisMeasMaxGet))
  [Stack]

  - Max Depth = 16 + Unknown Stack Size
  - Call Chain = CPU_IntDisMeasMaxGet
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasMaxCalc
  [Called By]
  - >> OS_StatTask

  CPU_IntDisMeasStart (Thumb, 38 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_IntDisMeasStart))
  [Stack]

  - Max Depth = 8
  - Call Chain = CPU_IntDisMeasStart
  [Calls]
  - >> CPU_TS_TmrRd
  [Called By]
  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSSchedLock
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> CPU_NameClr
  - >> CPU_IntDisMeasInit
  - >> OSTaskStkChk
  - >> OS_StatTask
  - >> OSStatReset
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_IntQTask
  - >> OS_IntQPost
  - >> OS_FlagPost
  - >> OS_SchedRoundRobin
  - >> OS_IdleTask
  - >> OS_TickListUpdate

  CPU_IntDisMeasStop (Thumb, 62 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_IntDisMeasStop))
  [Stack]

  - Max Depth = 8
  - Call Chain = CPU_IntDisMeasStop
  [Calls]
  - >> CPU_TS_TmrRd
  [Called By]
  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSSchedLock
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> CPU_NameClr
  - >> CPU_IntDisMeasInit
  - >> OSTaskStkChk
  - >> OS_StatTask
  - >> OSStatReset
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_IntQTask
  - >> OS_IntQPost
  - >> OS_FlagPost
  - >> OS_SchedRoundRobin
  - >> OS_IdleTask
  - >> OS_TickListUpdate

  CPU_NameClr (Thumb, 50 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_NameClr))
  [Stack]

  - Max Depth = 44 + Unknown Stack Size
  - Call Chain = CPU_NameClr ⇒ Mem_Clr ⇒ Mem_Set
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> Mem_Clr
  [Called By]
  - >> CPU_NameInit

  CPU_TS_TmrFreqSet (Thumb, 6 bytes, Stack size 0 bytes, cpu_core.o(i.CPU_TS_TmrFreqSet))
  [Called By]

  - >> CPU_TS_TmrInit

  CPU_TS_TmrInit (Thumb, 44 bytes, Stack size 8 bytes, bsp.o(i.CPU_TS_TmrInit))
  [Stack]

  - Max Depth = 44
  - Call Chain = CPU_TS_TmrInit ⇒ BSP_CPU_ClkFreq ⇒ RCC_GetClocksFreq
  [Calls]
  - >> CPU_TS_TmrFreqSet
  - >> BSP_CPU_ClkFreq
  [Called By]
  - >> CPU_TS_Init

  CPU_TS_TmrRd (Thumb, 6 bytes, Stack size 0 bytes, bsp.o(i.CPU_TS_TmrRd))
  [Called By]

  - >> OSTimeTick
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OSTaskSemPost
  - >> OSTaskSemPend
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_StatTask
  - >> OSStatReset
  - >> OS_IntQTask
  - >> OS_IntQRePost
  - >> OSTaskSwHook
  - >> OS_TmrTask
  - >> OS_TickListUpdate
  - >> OS_TaskInitTCB

  DHT11_Check (Thumb, 92 bytes, Stack size 8 bytes, dht11.o(i.DHT11_Check))
  [Stack]

  - Max Depth = 88 + Unknown Stack Size
  - Call Chain = DHT11_Check ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_us
  [Called By]
  - >> DHT11_Read_Data
  - >> DHT11_Exist_task

  DHT11_Exist_task (Thumb, 68 bytes, Stack size 16 bytes, main.o(i.DHT11_Exist_task))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = DHT11_Exist_task ⇒ OSTaskSemPost ⇒ OS_TaskSemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPost
  - >> DHT11_Rst
  - >> DHT11_Check
  - >> __2printf
  [Address Reference Count : 1]
  - main.o(i.start_task)

  DHT11_Init (Thumb, 50 bytes, Stack size 8 bytes, dht11.o(i.DHT11_Init))
  [Stack]

  - Max Depth = 32
  - Call Chain = DHT11_Init ⇒ GPIO_Init
  [Calls]
  - >> RCC_APB2PeriphClockCmd
  - >> GPIO_SetBits
  - >> GPIO_Init
  [Called By]
  - >> main

  DHT11_Measure_task (Thumb, 100 bytes, Stack size 24 bytes, main.o(i.DHT11_Measure_task))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = DHT11_Measure_task ⇒ DHT11_Read_Data ⇒ DHT11_Read_Byte ⇒ DHT11_Read_Bit ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> LCD_ShowNum
  - >> DHT11_Read_Data
  - >> __2printf
  [Address Reference Count : 1]
  - main.o(i.start_task)

  DHT11_Read_Bit (Thumb, 70 bytes, Stack size 8 bytes, dht11.o(i.DHT11_Read_Bit))
  [Stack]

  - Max Depth = 88 + Unknown Stack Size
  - Call Chain = DHT11_Read_Bit ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_us
  [Called By]
  - >> DHT11_Read_Byte

  DHT11_Read_Byte (Thumb, 30 bytes, Stack size 16 bytes, dht11.o(i.DHT11_Read_Byte))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = DHT11_Read_Byte ⇒ DHT11_Read_Bit ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> DHT11_Read_Bit
  [Called By]
  - >> DHT11_Read_Data

  DHT11_Read_Data (Thumb, 88 bytes, Stack size 24 bytes, dht11.o(i.DHT11_Read_Data))
  [Stack]

  - Max Depth = 128 + Unknown Stack Size
  - Call Chain = DHT11_Read_Data ⇒ DHT11_Read_Byte ⇒ DHT11_Read_Bit ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> DHT11_Read_Byte
  - >> DHT11_Rst
  - >> DHT11_Check
  [Called By]
  - >> DHT11_Measure_task

  DHT11_Rst (Thumb, 52 bytes, Stack size 8 bytes, dht11.o(i.DHT11_Rst))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = DHT11_Rst ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_us
  - >> delay_ms
  [Called By]
  - >> DHT11_Read_Data
  - >> DHT11_Exist_task

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

  - startup_stm32f10x_hd.o(RESET)

  EXTI2_IRQHandler (Thumb, 26 bytes, Stack size 8 bytes, exti.o(i.EXTI2_IRQHandler))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = EXTI2_IRQHandler ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_ms
  - >> OSIntExit
  - >> OSIntEnter
  - >> GPIO_ReadInputDataBit
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  FSMC_NORSRAMCmd (Thumb, 46 bytes, Stack size 0 bytes, stm32f10x_fsmc.o(i.FSMC_NORSRAMCmd))
  [Called By]

  - >> LCD_Init

  FSMC_NORSRAMInit (Thumb, 230 bytes, Stack size 0 bytes, stm32f10x_fsmc.o(i.FSMC_NORSRAMInit))
  [Called By]

  - >> LCD_Init

  GPIO_Init (Thumb, 278 bytes, Stack size 24 bytes, stm32f10x_gpio.o(i.GPIO_Init))
  [Stack]

  - Max Depth = 24
  - Call Chain = GPIO_Init
  [Called By]
  - >> uart_init
  - >> LED_Init
  - >> LCD_Init
  - >> DHT11_Init

  GPIO_ReadInputDataBit (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_gpio.o(i.GPIO_ReadInputDataBit))
  [Called By]

  - >> EXTI2_IRQHandler

  GPIO_SetBits (Thumb, 4 bytes, Stack size 0 bytes, stm32f10x_gpio.o(i.GPIO_SetBits))
  [Called By]

  - >> LED_Init
  - >> DHT11_Init

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

  - startup_stm32f10x_hd.o(RESET)

  LCD_Clear (Thumb, 100 bytes, Stack size 16 bytes, lcd.o(i.LCD_Clear))
  [Stack]

  - Max Depth = 24
  - Call Chain = LCD_Clear ⇒ LCD_SetCursor
  [Calls]
  - >> LCD_WriteRAM_Prepare
  - >> LCD_SetCursor
  [Called By]
  - >> LCD_Init

  LCD_Display_Dir (Thumb, 444 bytes, Stack size 8 bytes, lcd.o(i.LCD_Display_Dir))
  [Stack]

  - Max Depth = 24
  - Call Chain = LCD_Display_Dir ⇒ LCD_Scan_Dir
  [Calls]
  - >> LCD_Scan_Dir
  [Called By]
  - >> LCD_Init

  LCD_Fast_DrawPoint (Thumb, 370 bytes, Stack size 12 bytes, lcd.o(i.LCD_Fast_DrawPoint))
  [Stack]

  - Max Depth = 12
  - Call Chain = LCD_Fast_DrawPoint
  [Calls]
  - >> LCD_WriteReg
  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  [Called By]
  - >> LCD_ShowChar

  LCD_Init (Thumb, 14162 bytes, Stack size 128 bytes, lcd.o(i.LCD_Init))
  [Stack]

  - Max Depth = 224 + Unknown Stack Size
  - Call Chain = LCD_Init ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_us
  - >> RCC_AHBPeriphClockCmd
  - >> FSMC_NORSRAMInit
  - >> FSMC_NORSRAMCmd
  - >> LCD_WriteReg
  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  - >> LCD_SSD_BackLightSet
  - >> LCD_ReadReg
  - >> LCD_RD_DATA
  - >> LCD_Display_Dir
  - >> LCD_Clear
  - >> delay_ms
  - >> RCC_APB2PeriphClockCmd
  - >> GPIO_Init
  [Called By]
  - >> main

  LCD_Pow (Thumb, 22 bytes, Stack size 8 bytes, lcd.o(i.LCD_Pow))
  [Stack]

  - Max Depth = 8
  - Call Chain = LCD_Pow
  [Called By]
  - >> LCD_ShowNum

  LCD_RD_DATA (Thumb, 14 bytes, Stack size 8 bytes, lcd.o(i.LCD_RD_DATA))
  [Stack]

  - Max Depth = 8
  - Call Chain = LCD_RD_DATA
  [Called By]
  - >> LCD_ReadReg
  - >> LCD_Init

  LCD_ReadReg (Thumb, 22 bytes, Stack size 8 bytes, lcd.o(i.LCD_ReadReg))
  [Stack]

  - Max Depth = 88 + Unknown Stack Size
  - Call Chain = LCD_ReadReg ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_us
  - >> LCD_WR_REG
  - >> LCD_RD_DATA
  [Called By]
  - >> LCD_Init

  LCD_SSD_BackLightSet (Thumb, 80 bytes, Stack size 32 bytes, lcd.o(i.LCD_SSD_BackLightSet))
  [Stack]

  - Max Depth = 64
  - Call Chain = LCD_SSD_BackLightSet ⇒ __aeabi_dmul
  [Calls]
  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  - >> __aeabi_dmul
  - >> __aeabi_ui2d
  - >> __aeabi_d2uiz
  [Called By]
  - >> LCD_Init

  LCD_Scan_Dir (Thumb, 744 bytes, Stack size 16 bytes, lcd.o(i.LCD_Scan_Dir))
  [Stack]

  - Max Depth = 16
  - Call Chain = LCD_Scan_Dir
  [Calls]
  - >> LCD_WriteReg
  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  [Called By]
  - >> LCD_Display_Dir

  LCD_SetCursor (Thumb, 418 bytes, Stack size 8 bytes, lcd.o(i.LCD_SetCursor))
  [Stack]

  - Max Depth = 8
  - Call Chain = LCD_SetCursor
  [Calls]
  - >> LCD_WriteReg
  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  [Called By]
  - >> LCD_Clear

  LCD_ShowChar (Thumb, 272 bytes, Stack size 40 bytes, lcd.o(i.LCD_ShowChar))
  [Stack]

  - Max Depth = 52
  - Call Chain = LCD_ShowChar ⇒ LCD_Fast_DrawPoint
  [Calls]
  - >> LCD_Fast_DrawPoint
  [Called By]
  - >> LCD_ShowNum

  LCD_ShowNum (Thumb, 148 bytes, Stack size 56 bytes, lcd.o(i.LCD_ShowNum))
  [Stack]

  - Max Depth = 108
  - Call Chain = LCD_ShowNum ⇒ LCD_ShowChar ⇒ LCD_Fast_DrawPoint
  [Calls]
  - >> LCD_ShowChar
  - >> LCD_Pow
  [Called By]
  - >> DHT11_Measure_task

  LCD_WR_DATA (Thumb, 6 bytes, Stack size 0 bytes, lcd.o(i.LCD_WR_DATA))
  [Called By]

  - >> LCD_SetCursor
  - >> LCD_Scan_Dir
  - >> LCD_SSD_BackLightSet
  - >> LCD_Fast_DrawPoint
  - >> LCD_Init

  LCD_WR_REG (Thumb, 6 bytes, Stack size 0 bytes, lcd.o(i.LCD_WR_REG))
  [Called By]

  - >> LCD_SetCursor
  - >> LCD_Scan_Dir
  - >> LCD_SSD_BackLightSet
  - >> LCD_ReadReg
  - >> LCD_Fast_DrawPoint
  - >> LCD_Init

  LCD_WriteRAM_Prepare (Thumb, 10 bytes, Stack size 0 bytes, lcd.o(i.LCD_WriteRAM_Prepare))
  [Called By]

  - >> LCD_Clear

  LCD_WriteReg (Thumb, 10 bytes, Stack size 0 bytes, lcd.o(i.LCD_WriteReg))
  [Called By]

  - >> LCD_SetCursor
  - >> LCD_Scan_Dir
  - >> LCD_Fast_DrawPoint
  - >> LCD_Init

  LED_Init (Thumb, 68 bytes, Stack size 8 bytes, led.o(i.LED_Init))
  [Stack]

  - Max Depth = 32
  - Call Chain = LED_Init ⇒ GPIO_Init
  [Calls]
  - >> RCC_APB2PeriphClockCmd
  - >> GPIO_SetBits
  - >> GPIO_Init
  [Called By]
  - >> main

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

  - startup_stm32f10x_hd.o(RESET)

  Mem_Clr (Thumb, 18 bytes, Stack size 12 bytes, lib_mem.o(i.Mem_Clr))
  [Stack]

  - Max Depth = 36
  - Call Chain = Mem_Clr ⇒ Mem_Set
  [Calls]
  - >> Mem_Set
  [Called By]
  - >> CPU_NameClr

  Mem_Set (Thumb, 98 bytes, Stack size 24 bytes, lib_mem.o(i.Mem_Set))
  [Stack]

  - Max Depth = 24
  - Call Chain = Mem_Set
  [Called By]
  - >> Mem_Clr

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f10x_it.o(i.NMI_Handler))
  [Address Reference Count : 1]

  - startup_stm32f10x_hd.o(RESET)

  NVIC_Init (Thumb, 100 bytes, Stack size 16 bytes, misc.o(i.NVIC_Init))
  [Stack]

  - Max Depth = 16
  - Call Chain = NVIC_Init
  [Called By]
  - >> uart_init

  NVIC_PriorityGroupConfig (Thumb, 10 bytes, Stack size 0 bytes, misc.o(i.NVIC_PriorityGroupConfig))
  [Called By]

  - >> main

  OSCfg_Init (Thumb, 2 bytes, Stack size 0 bytes, os_cfg_app.o(i.OSCfg_Init))
  [Called By]

  - >> OSInit

  OSIdleTaskHook (Thumb, 16 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSIdleTaskHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSIdleTaskHook
  [Called By]
  - >> OS_IdleTask

  OSInit (Thumb, 300 bytes, Stack size 16 bytes, os_core.o(i.OSInit))
  [Stack]

  - Max Depth = 176 + Unknown Stack Size
  - Call Chain = OSInit ⇒ OS_TmrInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSCfg_Init
  - >> OS_TmrInit
  - >> OS_TickTaskInit
  - >> OS_TaskInit
  - >> OS_StatTaskInit
  - >> OS_SemInit
  - >> OS_QInit
  - >> OS_PrioInit
  - >> OS_MutexInit
  - >> OS_MsgPoolInit
  - >> OS_MemInit
  - >> OS_IntQTaskInit
  - >> OS_FlagInit
  - >> OS_Dbg_Init
  - >> OSInitHook
  - >> OS_RdyListInit
  - >> OS_IdleTaskInit
  [Called By]
  - >> main

  OSInitHook (Thumb, 42 bytes, Stack size 0 bytes, os_cpu_c.o(i.OSInitHook))
  [Called By]

  - >> OSInit

  OSIntEnter (Thumb, 34 bytes, Stack size 0 bytes, os_core.o(i.OSIntEnter))
  [Called By]

  - >> SysTick_Handler
  - >> EXTI2_IRQHandler
  - >> USART1_IRQHandler

  OSIntExit (Thumb, 192 bytes, Stack size 8 bytes, os_core.o(i.OSIntExit))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = OSIntExit ⇒ OS_PrioGetHighest
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> OS_PrioGetHighest
  [Called By]
  - >> SysTick_Handler
  - >> EXTI2_IRQHandler
  - >> USART1_IRQHandler

  OSSched (Thumb, 134 bytes, Stack size 8 bytes, os_core.o(i.OSSched))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> OS_PrioGetHighest
  [Called By]
  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_IntQTask
  - >> OS_FlagPost

  OSSchedLock (Thumb, 112 bytes, Stack size 16 bytes, os_core.o(i.OSSchedLock))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = OSSchedLock ⇒ OS_SchedLockTimeMeasStart
  [Calls]
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  [Called By]
  - >> delay_osschedlock
  - >> OS_TmrTask

  OSSchedUnlock (Thumb, 148 bytes, Stack size 16 bytes, os_core.o(i.OSSchedUnlock))
  [Stack]

  - Max Depth = 40 + Unknown Stack Size
  - Call Chain = OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OSSched
  [Called By]
  - >> delay_osschedunlock
  - >> OS_TmrTask

  OSStart (Thumb, 78 bytes, Stack size 8 bytes, os_core.o(i.OSStart))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = OSStart ⇒ OS_PrioGetHighest
  [Calls]
  - >> OS_PrioGetHighest
  - >> OSStartHighRdy
  [Called By]
  - >> main

  OSStatReset (Thumb, 316 bytes, Stack size 24 bytes, os_stat.o(i.OSStatReset))
  [Stack]

  - Max Depth = 32 + Unknown Stack Size
  - Call Chain = OSStatReset ⇒ CPU_IntDisMeasStop
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_TS_TmrRd
  - >> OS_TickListResetPeak
  - >> OS_TmrResetPeak
  [Called By]
  - >> OS_StatTask

  OSStatTaskHook (Thumb, 16 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSStatTaskHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSStatTaskHook
  [Called By]
  - >> OS_StatTask

  OSTaskCreate (Thumb, 624 bytes, Stack size 80 bytes, os_task.o(i.OSTaskCreate))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_MsgQInit
  - >> OS_PrioInsert
  - >> OS_RdyListInsertTail
  - >> OSSched
  - >> OSTaskStkInit
  - >> OSTaskCreateHook
  - >> OS_TaskInitTCB
  - >> OS_TaskDbgListAdd
  [Called By]
  - >> start_task
  - >> main
  - >> OS_TmrInit
  - >> OS_TickTaskInit
  - >> OS_StatTaskInit
  - >> OS_IntQTaskInit
  - >> OS_IdleTaskInit

  OSTaskCreateHook (Thumb, 20 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSTaskCreateHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSTaskCreateHook
  [Called By]
  - >> OSTaskCreate

  OSTaskDel (Thumb, 490 bytes, Stack size 16 bytes, os_task.o(i.OSTaskDel))
  [Stack]

  - Max Depth = 52 + Unknown Stack Size
  - Call Chain = OSTaskDel ⇒ OS_RdyListRemove ⇒ OS_PrioRemove
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_MsgQFreeAll
  - >> OS_TickListRemove
  - >> OS_RdyListRemove
  - >> OS_PendListRemove
  - >> OSSched
  - >> OSTaskDelHook
  - >> OS_TaskInitTCB
  - >> OS_TaskDbgListRemove
  [Called By]
  - >> start_task
  - >> OS_TaskReturn

  OSTaskDelHook (Thumb, 20 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSTaskDelHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSTaskDelHook
  [Called By]
  - >> OSTaskDel

  OSTaskReturnHook (Thumb, 20 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSTaskReturnHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSTaskReturnHook
  [Called By]
  - >> OS_TaskReturn

  OSTaskSemPend (Thumb, 578 bytes, Stack size 32 bytes, os_task.o(i.OSTaskSemPend))
  [Stack]

  - Max Depth = 108 + Unknown Stack Size
  - Call Chain = OSTaskSemPend ⇒ OS_Pend ⇒ OS_TaskBlock ⇒ OS_TickListInsert
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_TS_TmrRd
  - >> OS_Pend
  - >> OSSched
  [Called By]
  - >> DHT11_Measure_task
  - >> OS_TmrTask
  - >> OS_TickTask

  OSTaskSemPost (Thumb, 98 bytes, Stack size 40 bytes, os_task.o(i.OSTaskSemPost))
  [Stack]

  - Max Depth = 136 + Unknown Stack Size
  - Call Chain = OSTaskSemPost ⇒ OS_TaskSemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> CPU_TS_TmrRd
  - >> OS_TaskSemPost
  - >> OS_IntQPost
  [Called By]
  - >> DHT11_Exist_task
  - >> USART1_IRQHandler

  OSTaskStkChk (Thumb, 220 bytes, Stack size 32 bytes, os_task.o(i.OSTaskStkChk))
  [Stack]

  - Max Depth = 40 + Unknown Stack Size
  - Call Chain = OSTaskStkChk ⇒ CPU_IntDisMeasStop
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  [Called By]
  - >> OS_StatTask

  OSTaskStkInit (Thumb, 188 bytes, Stack size 20 bytes, os_cpu_c.o(i.OSTaskStkInit))
  [Stack]

  - Max Depth = 20
  - Call Chain = OSTaskStkInit
  [Called By]
  - >> OSTaskCreate

  OSTaskSwHook (Thumb, 146 bytes, Stack size 16 bytes, os_cpu_c.o(i.OSTaskSwHook))
  [Stack]

  - Max Depth = 48 + Unknown Stack Size
  - Call Chain = OSTaskSwHook ⇒ CPU_IntDisMeasMaxCurReset ⇒ CPU_IntDisMeasMaxCurGet
  [Calls]
  - >> CPU_IntDisMeasMaxCurReset
  - >> CPU_TS_TmrRd
  [Address Reference Count : 1]
  - os_cpu_a.o(CODE)

  OSTimeDly (Thumb, 322 bytes, Stack size 24 bytes, os_time.o(i.OSTimeDly))
  [Stack]

  - Max Depth = 60 + Unknown Stack Size
  - Call Chain = OSTimeDly ⇒ OS_TickListInsert
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_TickListInsert
  - >> OS_RdyListRemove
  - >> OSSched
  [Called By]
  - >> delay_ostimedly
  - >> OS_StatTask

  OSTimeDlyHMSM (Thumb, 538 bytes, Stack size 56 bytes, os_time.o(i.OSTimeDlyHMSM))
  [Stack]

  - Max Depth = 92 + Unknown Stack Size
  - Call Chain = OSTimeDlyHMSM ⇒ OS_TickListInsert
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_TickListInsert
  - >> OS_RdyListRemove
  - >> OSSched
  [Called By]
  - >> led1_task
  - >> DHT11_Measure_task
  - >> DHT11_Exist_task

  OSTimeTick (Thumb, 54 bytes, Stack size 32 bytes, os_time.o(i.OSTimeTick))
  [Stack]

  - Max Depth = 84 + Unknown Stack Size
  - Call Chain = OSTimeTick ⇒ OS_IntQPost ⇒ OS_PrioInsert
  [Calls]
  - >> CPU_TS_TmrRd
  - >> OS_IntQPost
  - >> OSTimeTickHook
  [Called By]
  - >> SysTick_Handler

  OSTimeTickHook (Thumb, 16 bytes, Stack size 8 bytes, os_cpu_c.o(i.OSTimeTickHook))
  [Stack]

  - Max Depth = 8
  - Call Chain = OSTimeTickHook
  [Called By]
  - >> OSTimeTick

  OS_Dbg_Init (Thumb, 150 bytes, Stack size 0 bytes, os_dbg.o(i.OS_Dbg_Init))
  [Called By]

  - >> OSInit

  OS_FlagInit (Thumb, 14 bytes, Stack size 0 bytes, os_flag.o(i.OS_FlagInit))
  [Called By]

  - >> OSInit

  OS_FlagPost (Thumb, 626 bytes, Stack size 56 bytes, os_flag.o(i.OS_FlagPost))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = OS_FlagPost ⇒ OS_FlagTaskRdy ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_FlagTaskRdy
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_FlagTaskRdy (Thumb, 86 bytes, Stack size 16 bytes, os_flag.o(i.OS_FlagTaskRdy))
  [Stack]

  - Max Depth = 48
  - Call Chain = OS_FlagTaskRdy ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_TaskRdy
  - >> OS_PendListRemove
  [Called By]
  - >> OS_FlagPost

  OS_IdleTask (Thumb, 68 bytes, Stack size 0 bytes, os_core.o(i.OS_IdleTask))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = OS_IdleTask ⇒ CPU_IntDisMeasStop
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OSIdleTaskHook
  [Address Reference Count : 1]
  - os_core.o(i.OS_IdleTaskInit)

  OS_IdleTaskInit (Thumb, 66 bytes, Stack size 48 bytes, os_core.o(i.OS_IdleTaskInit))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = OS_IdleTaskInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTaskCreate
  [Called By]
  - >> OSInit

  OS_IntQPost (Thumb, 224 bytes, Stack size 40 bytes, os_int.o(i.OS_IntQPost))
  [Stack]

  - Max Depth = 52 + Unknown Stack Size
  - Call Chain = OS_IntQPost ⇒ OS_PrioInsert
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_PrioInsert
  [Called By]
  - >> OSTimeTick
  - >> OSTaskSemPost

  OS_IntQRePost (Thumb, 360 bytes, Stack size 24 bytes, os_int.o(i.OS_IntQRePost))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = OS_IntQRePost ⇒ OS_SemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> CPU_TS_TmrRd
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_FlagPost
  - >> OS_SchedRoundRobin
  [Called By]
  - >> OS_IntQTask

  OS_IntQTask (Thumb, 182 bytes, Stack size 0 bytes, os_int.o(i.OS_IntQTask))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = OS_IntQTask ⇒ OS_IntQRePost ⇒ OS_SemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_TS_TmrRd
  - >> OS_IntQRePost
  - >> OS_PrioRemove
  - >> OSSched
  [Address Reference Count : 1]
  - os_int.o(i.OS_IntQTaskInit)

  OS_IntQTaskInit (Thumb, 206 bytes, Stack size 56 bytes, os_int.o(i.OS_IntQTaskInit))
  [Stack]

  - Max Depth = 160 + Unknown Stack Size
  - Call Chain = OS_IntQTaskInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTaskCreate
  [Called By]
  - >> OSInit

  OS_MemInit (Thumb, 14 bytes, Stack size 0 bytes, os_mem.o(i.OS_MemInit))
  [Called By]

  - >> OSInit

  OS_MsgPoolInit (Thumb, 110 bytes, Stack size 16 bytes, os_msg.o(i.OS_MsgPoolInit))
  [Stack]

  - Max Depth = 16
  - Call Chain = OS_MsgPoolInit
  [Called By]
  - >> OSInit

  OS_MsgQFreeAll (Thumb, 62 bytes, Stack size 8 bytes, os_msg.o(i.OS_MsgQFreeAll))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_MsgQFreeAll
  [Called By]
  - >> OSTaskDel

  OS_MsgQInit (Thumb, 14 bytes, Stack size 0 bytes, os_msg.o(i.OS_MsgQInit))
  [Called By]

  - >> OSTaskCreate
  - >> OS_TaskInitTCB

  OS_MsgQPut (Thumb, 254 bytes, Stack size 24 bytes, os_msg.o(i.OS_MsgQPut))
  [Stack]

  - Max Depth = 24
  - Call Chain = OS_MsgQPut
  [Called By]
  - >> OS_TaskQPost
  - >> OS_QPost

  OS_MutexInit (Thumb, 14 bytes, Stack size 0 bytes, os_mutex.o(i.OS_MutexInit))
  [Called By]

  - >> OSInit

  OS_Pend (Thumb, 98 bytes, Stack size 24 bytes, os_core.o(i.OS_Pend))
  [Stack]

  - Max Depth = 76
  - Call Chain = OS_Pend ⇒ OS_TaskBlock ⇒ OS_TickListInsert
  [Calls]
  - >> OS_TaskBlock
  - >> OS_PendListInsertPrio
  - >> OS_PendDbgNameAdd
  - >> OS_PendDataInit
  [Called By]
  - >> OSTaskSemPend

  OS_PendDataInit (Thumb, 38 bytes, Stack size 8 bytes, os_core.o(i.OS_PendDataInit))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_PendDataInit
  [Called By]
  - >> OS_Pend

  OS_PendDbgNameAdd (Thumb, 66 bytes, Stack size 12 bytes, os_core.o(i.OS_PendDbgNameAdd))
  [Stack]

  - Max Depth = 12
  - Call Chain = OS_PendDbgNameAdd
  [Called By]
  - >> OS_Pend

  OS_PendDbgNameRemove (Thumb, 30 bytes, Stack size 12 bytes, os_core.o(i.OS_PendDbgNameRemove))
  [Stack]

  - Max Depth = 12
  - Call Chain = OS_PendDbgNameRemove
  [Called By]
  - >> OS_Post

  OS_PendListInsertPrio (Thumb, 102 bytes, Stack size 20 bytes, os_core.o(i.OS_PendListInsertPrio))
  [Stack]

  - Max Depth = 20
  - Call Chain = OS_PendListInsertPrio
  [Called By]
  - >> OS_Pend

  OS_PendListRemove (Thumb, 48 bytes, Stack size 24 bytes, os_core.o(i.OS_PendListRemove))
  [Stack]

  - Max Depth = 32
  - Call Chain = OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_PendListRemove1
  [Called By]
  - >> OSTaskDel
  - >> OS_FlagTaskRdy
  - >> OS_Post
  - >> OS_TickListUpdate

  OS_PendListRemove1 (Thumb, 66 bytes, Stack size 8 bytes, os_core.o(i.OS_PendListRemove1))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_PendListRemove1
  [Called By]
  - >> OS_PendListRemove

  OS_Post (Thumb, 192 bytes, Stack size 32 bytes, os_core.o(i.OS_Post))
  [Stack]

  - Max Depth = 64
  - Call Chain = OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_TickListRemove
  - >> OS_TaskRdy
  - >> OS_Post1
  - >> OS_PendListRemove
  - >> OS_PendDbgNameRemove
  [Called By]
  - >> OS_TaskSemPost
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost

  OS_Post1 (Thumb, 42 bytes, Stack size 20 bytes, os_core.o(i.OS_Post1))
  [Stack]

  - Max Depth = 20
  - Call Chain = OS_Post1
  [Called By]
  - >> OS_Post

  OS_PrioGetHighest (Thumb, 36 bytes, Stack size 16 bytes, os_prio.o(i.OS_PrioGetHighest))
  [Stack]

  - Max Depth = 16 + Unknown Stack Size
  - Call Chain = OS_PrioGetHighest
  [Calls]
  - >> CPU_CntLeadZeros
  [Called By]
  - >> OSIntExit
  - >> OSStart
  - >> OSSched

  OS_PrioInit (Thumb, 20 bytes, Stack size 0 bytes, os_prio.o(i.OS_PrioInit))
  [Called By]

  - >> OSInit

  OS_PrioInsert (Thumb, 32 bytes, Stack size 12 bytes, os_prio.o(i.OS_PrioInsert))
  [Stack]

  - Max Depth = 12
  - Call Chain = OS_PrioInsert
  [Called By]
  - >> OSTaskCreate
  - >> OS_IntQPost
  - >> OS_RdyListInsert

  OS_PrioRemove (Thumb, 32 bytes, Stack size 12 bytes, os_prio.o(i.OS_PrioRemove))
  [Stack]

  - Max Depth = 12
  - Call Chain = OS_PrioRemove
  [Called By]
  - >> OS_IntQTask
  - >> OS_RdyListRemove

  OS_QInit (Thumb, 14 bytes, Stack size 0 bytes, os_q.o(i.OS_QInit))
  [Called By]

  - >> OSInit

  OS_QPost (Thumb, 382 bytes, Stack size 56 bytes, os_q.o(i.OS_QPost))
  [Stack]

  - Max Depth = 120 + Unknown Stack Size
  - Call Chain = OS_QPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_MsgQPut
  - >> OS_Post
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_RdyListInit (Thumb, 32 bytes, Stack size 0 bytes, os_core.o(i.OS_RdyListInit))
  [Called By]

  - >> OSInit

  OS_RdyListInsert (Thumb, 40 bytes, Stack size 8 bytes, os_core.o(i.OS_RdyListInsert))
  [Stack]

  - Max Depth = 20
  - Call Chain = OS_RdyListInsert ⇒ OS_PrioInsert
  [Calls]
  - >> OS_PrioInsert
  - >> OS_RdyListInsertTail
  - >> OS_RdyListInsertHead
  [Called By]
  - >> OS_TaskRdy

  OS_RdyListInsertHead (Thumb, 58 bytes, Stack size 8 bytes, os_core.o(i.OS_RdyListInsertHead))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_RdyListInsertHead
  [Called By]
  - >> OS_RdyListInsert

  OS_RdyListInsertTail (Thumb, 56 bytes, Stack size 8 bytes, os_core.o(i.OS_RdyListInsertTail))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_RdyListInsertTail
  [Called By]
  - >> OSTaskCreate
  - >> OS_RdyListInsert

  OS_RdyListMoveHeadToTail (Thumb, 68 bytes, Stack size 8 bytes, os_core.o(i.OS_RdyListMoveHeadToTail))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_RdyListMoveHeadToTail
  [Called By]
  - >> OS_SchedRoundRobin

  OS_RdyListRemove (Thumb, 86 bytes, Stack size 24 bytes, os_core.o(i.OS_RdyListRemove))
  [Stack]

  - Max Depth = 36
  - Call Chain = OS_RdyListRemove ⇒ OS_PrioRemove
  [Calls]
  - >> OS_PrioRemove
  [Called By]
  - >> OSTimeDly
  - >> OSTimeDlyHMSM
  - >> OSTaskDel
  - >> OS_TaskSuspend
  - >> OS_TaskBlock

  OS_Sched0 (Thumb, 72 bytes, Stack size 8 bytes, os_core.o(i.OS_Sched0))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = OS_Sched0
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  [Called By]
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> OS_StatTask
  - >> OS_TaskSemPost
  - >> OS_TaskQPost
  - >> OS_QPost
  - >> OS_FlagPost
  - >> OS_TickListUpdate

  OS_SchedLockTimeMeasStart (Thumb, 20 bytes, Stack size 8 bytes, os_core.o(i.OS_SchedLockTimeMeasStart))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_SchedLockTimeMeasStart
  [Calls]
  - >> CPU_TS_TmrRd
  [Called By]
  - >> OSTimeDly
  - >> OSSchedLock
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> OS_StatTask
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_FlagPost
  - >> OS_TickListUpdate

  OS_SchedLockTimeMeasStop (Thumb, 44 bytes, Stack size 8 bytes, os_core.o(i.OS_SchedLockTimeMeasStop))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_SchedLockTimeMeasStop
  [Calls]
  - >> CPU_TS_TmrRd
  [Called By]
  - >> OSTimeDly
  - >> OSSchedUnlock
  - >> OSTimeDlyHMSM
  - >> OSTaskSemPend
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> start_task
  - >> main
  - >> OS_StatTask
  - >> OS_TaskSuspend
  - >> OS_TaskSemPost
  - >> OS_TaskResume
  - >> OS_TaskQPost
  - >> OS_SemPost
  - >> OS_QPost
  - >> OS_FlagPost
  - >> OS_TickListUpdate

  OS_SchedRoundRobin (Thumb, 218 bytes, Stack size 16 bytes, os_core.o(i.OS_SchedRoundRobin))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = OS_SchedRoundRobin ⇒ CPU_IntDisMeasStop
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_RdyListMoveHeadToTail
  [Called By]
  - >> OS_IntQRePost

  OS_SemInit (Thumb, 14 bytes, Stack size 0 bytes, os_sem.o(i.OS_SemInit))
  [Called By]

  - >> OSInit

  OS_SemPost (Thumb, 404 bytes, Stack size 56 bytes, os_sem.o(i.OS_SemPost))
  [Stack]

  - Max Depth = 120 + Unknown Stack Size
  - Call Chain = OS_SemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_Post
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_StatTask (Thumb, 878 bytes, Stack size 24 bytes, os_stat.o(i.OS_StatTask))
  [Stack]

  - Max Depth = 84 + Unknown Stack Size
  - Call Chain = OS_StatTask ⇒ OSTimeDly ⇒ OS_TickListInsert
  [Calls]
  - >> OSTimeDly
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_IntDisMeasMaxGet
  - >> CPU_TS_TmrRd
  - >> OSTaskStkChk
  - >> OSStatTaskHook
  - >> OSStatReset
  [Address Reference Count : 1]
  - os_stat.o(i.OS_StatTaskInit)

  OS_StatTaskInit (Thumb, 136 bytes, Stack size 48 bytes, os_stat.o(i.OS_StatTaskInit))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = OS_StatTaskInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTaskCreate
  [Called By]
  - >> OSInit

  OS_TaskBlock (Thumb, 56 bytes, Stack size 16 bytes, os_core.o(i.OS_TaskBlock))
  [Stack]

  - Max Depth = 52
  - Call Chain = OS_TaskBlock ⇒ OS_TickListInsert
  [Calls]
  - >> OS_TickListInsert
  - >> OS_RdyListRemove
  [Called By]
  - >> OS_Pend

  OS_TaskDbgListAdd (Thumb, 42 bytes, Stack size 0 bytes, os_task.o(i.OS_TaskDbgListAdd))
  [Called By]

  - >> OSTaskCreate

  OS_TaskDbgListRemove (Thumb, 64 bytes, Stack size 0 bytes, os_task.o(i.OS_TaskDbgListRemove))
  [Called By]

  - >> OSTaskDel

  OS_TaskInit (Thumb, 18 bytes, Stack size 0 bytes, os_task.o(i.OS_TaskInit))
  [Called By]

  - >> OSInit

  OS_TaskInitTCB (Thumb, 194 bytes, Stack size 16 bytes, os_task.o(i.OS_TaskInitTCB))
  [Stack]

  - Max Depth = 16
  - Call Chain = OS_TaskInitTCB
  [Calls]
  - >> CPU_TS_TmrRd
  - >> OS_MsgQInit
  [Called By]
  - >> OSTaskDel
  - >> OSTaskCreate

  OS_TaskQPost (Thumb, 606 bytes, Stack size 40 bytes, os_task.o(i.OS_TaskQPost))
  [Stack]

  - Max Depth = 104 + Unknown Stack Size
  - Call Chain = OS_TaskQPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_MsgQPut
  - >> OS_Post
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_TaskRdy (Thumb, 28 bytes, Stack size 8 bytes, os_core.o(i.OS_TaskRdy))
  [Stack]

  - Max Depth = 28
  - Call Chain = OS_TaskRdy ⇒ OS_RdyListInsert ⇒ OS_PrioInsert
  [Calls]
  - >> OS_TickListRemove
  - >> OS_RdyListInsert
  [Called By]
  - >> OS_TaskResume
  - >> OS_FlagTaskRdy
  - >> OS_Post
  - >> OS_TickListUpdate

  OS_TaskResume (Thumb, 374 bytes, Stack size 16 bytes, os_task.o(i.OS_TaskResume))
  [Stack]

  - Max Depth = 44 + Unknown Stack Size
  - Call Chain = OS_TaskResume ⇒ OS_TaskRdy ⇒ OS_RdyListInsert ⇒ OS_PrioInsert
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_TaskRdy
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_TaskReturn (Thumb, 20 bytes, Stack size 8 bytes, os_task.o(i.OS_TaskReturn))
  [Stack]

  - Max Depth = 60 + Unknown Stack Size
  - Call Chain = OS_TaskReturn ⇒ OSTaskDel ⇒ OS_RdyListRemove ⇒ OS_PrioRemove
  [Calls]
  - >> OSTaskDel
  - >> OSTaskReturnHook
  [Address Reference Count : 1]
  - os_cpu_c.o(i.OSTaskStkInit)

  OS_TaskSemPost (Thumb, 1438 bytes, Stack size 32 bytes, os_task.o(i.OS_TaskSemPost))
  [Stack]

  - Max Depth = 96 + Unknown Stack Size
  - Call Chain = OS_TaskSemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_Post
  - >> OSSched
  [Called By]
  - >> OSTaskSemPost
  - >> OS_IntQRePost

  OS_TaskSuspend (Thumb, 392 bytes, Stack size 16 bytes, os_task.o(i.OS_TaskSuspend))
  [Stack]

  - Max Depth = 52 + Unknown Stack Size
  - Call Chain = OS_TaskSuspend ⇒ OS_RdyListRemove ⇒ OS_PrioRemove
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> OS_RdyListRemove
  - >> OSSched
  [Called By]
  - >> OS_IntQRePost

  OS_TickListInit (Thumb, 32 bytes, Stack size 0 bytes, os_tick.o(i.OS_TickListInit))
  [Called By]

  - >> OS_TickTaskInit

  OS_TickListInsert (Thumb, 430 bytes, Stack size 36 bytes, os_tick.o(i.OS_TickListInsert))
  [Stack]

  - Max Depth = 36
  - Call Chain = OS_TickListInsert
  [Called By]
  - >> OSTimeDly
  - >> OSTimeDlyHMSM
  - >> OS_TaskBlock

  OS_TickListRemove (Thumb, 56 bytes, Stack size 8 bytes, os_tick.o(i.OS_TickListRemove))
  [Stack]

  - Max Depth = 8
  - Call Chain = OS_TickListRemove
  [Called By]
  - >> OSTaskDel
  - >> OS_TaskRdy
  - >> OS_Post
  - >> OS_TickListUpdate

  OS_TickListResetPeak (Thumb, 28 bytes, Stack size 0 bytes, os_tick.o(i.OS_TickListResetPeak))
  [Called By]

  - >> OSStatReset

  OS_TickListUpdate (Thumb, 520 bytes, Stack size 40 bytes, os_tick.o(i.OS_TickListUpdate))
  [Stack]

  - Max Depth = 72 + Unknown Stack Size
  - Call Chain = OS_TickListUpdate ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_TS_TmrRd
  - >> OS_TickListRemove
  - >> OS_TaskRdy
  - >> OS_PendListRemove
  [Called By]
  - >> OS_TickTask

  OS_TickTask (Thumb, 38 bytes, Stack size 16 bytes, os_tick.o(i.OS_TickTask))
  [Stack]

  - Max Depth = 124 + Unknown Stack Size
  - Call Chain = OS_TickTask ⇒ OSTaskSemPend ⇒ OS_Pend ⇒ OS_TaskBlock ⇒ OS_TickListInsert
  [Calls]
  - >> OSTaskSemPend
  - >> OS_TickListUpdate
  [Address Reference Count : 1]
  - os_tick.o(i.OS_TickTaskInit)

  OS_TickTaskInit (Thumb, 128 bytes, Stack size 48 bytes, os_tick.o(i.OS_TickTaskInit))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = OS_TickTaskInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTaskCreate
  - >> OS_TickListInit
  [Called By]
  - >> OSInit

  OS_TmrInit (Thumb, 206 bytes, Stack size 56 bytes, os_tmr.o(i.OS_TmrInit))
  [Stack]

  - Max Depth = 160 + Unknown Stack Size
  - Call Chain = OS_TmrInit ⇒ OSTaskCreate ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSTaskCreate
  [Called By]
  - >> OSInit

  OS_TmrLink (Thumb, 196 bytes, Stack size 20 bytes, os_tmr.o(i.OS_TmrLink))
  [Stack]

  - Max Depth = 20
  - Call Chain = OS_TmrLink
  [Called By]
  - >> OS_TmrTask

  OS_TmrResetPeak (Thumb, 28 bytes, Stack size 0 bytes, os_tmr.o(i.OS_TmrResetPeak))
  [Called By]

  - >> OSStatReset

  OS_TmrTask (Thumb, 176 bytes, Stack size 16 bytes, os_tmr.o(i.OS_TmrTask))
  [Stack]

  - Max Depth = 124 + Unknown Stack Size
  - Call Chain = OS_TmrTask ⇒ OSTaskSemPend ⇒ OS_Pend ⇒ OS_TaskBlock ⇒ OS_TickListInsert
  [Calls]
  - >> OSSchedUnlock
  - >> OSSchedLock
  - >> OSTaskSemPend
  - >> CPU_TS_TmrRd
  - >> OS_TmrUnlink
  - >> OS_TmrLink
  [Address Reference Count : 1]
  - os_tmr.o(i.OS_TmrInit)

  OS_TmrUnlink (Thumb, 72 bytes, Stack size 20 bytes, os_tmr.o(i.OS_TmrUnlink))
  [Stack]

  - Max Depth = 20
  - Call Chain = OS_TmrUnlink
  [Called By]
  - >> OS_TmrTask

  RCC_AHBPeriphClockCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(i.RCC_AHBPeriphClockCmd))
  [Called By]

  - >> LCD_Init

  RCC_APB2PeriphClockCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd))
  [Called By]

  - >> uart_init
  - >> LED_Init
  - >> LCD_Init
  - >> DHT11_Init

  RCC_GetClocksFreq (Thumb, 192 bytes, Stack size 12 bytes, stm32f10x_rcc.o(i.RCC_GetClocksFreq))
  [Stack]

  - Max Depth = 12
  - Call Chain = RCC_GetClocksFreq
  [Called By]
  - >> USART_Init
  - >> BSP_CPU_ClkFreq

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

  - startup_stm32f10x_hd.o(RESET)

  SysTick_CLKSourceConfig (Thumb, 40 bytes, Stack size 0 bytes, misc.o(i.SysTick_CLKSourceConfig))
  [Called By]

  - >> delay_init

  SysTick_Handler (Thumb, 24 bytes, Stack size 8 bytes, delay.o(i.SysTick_Handler))
  [Stack]

  - Max Depth = 92 + Unknown Stack Size
  - Call Chain = SysTick_Handler ⇒ OSTimeTick ⇒ OS_IntQPost ⇒ OS_PrioInsert
  [Calls]
  - >> OSTimeTick
  - >> OSIntExit
  - >> OSIntEnter
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  SystemInit (Thumb, 78 bytes, Stack size 8 bytes, system_stm32f10x.o(i.SystemInit))
  [Stack]

  - Max Depth = 28
  - Call Chain = SystemInit ⇒ SetSysClock ⇒ SetSysClockTo72
  [Calls]
  - >> SetSysClock
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(.text)

  USART1_IRQHandler (Thumb, 142 bytes, Stack size 16 bytes, usart.o(i.USART1_IRQHandler))
  [Stack]

  - Max Depth = 152 + Unknown Stack Size
  - Call Chain = USART1_IRQHandler ⇒ OSTaskSemPost ⇒ OS_TaskSemPost ⇒ OS_Post ⇒ OS_PendListRemove ⇒ OS_PendListRemove1
  [Calls]
  - >> OSIntExit
  - >> OSIntEnter
  - >> OSTaskSemPost
  - >> USART_ReceiveData
  - >> USART_GetITStatus
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  USART_Cmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(i.USART_Cmd))
  [Called By]

  - >> uart_init

  USART_GetITStatus (Thumb, 84 bytes, Stack size 16 bytes, stm32f10x_usart.o(i.USART_GetITStatus))
  [Stack]

  - Max Depth = 16
  - Call Chain = USART_GetITStatus
  [Called By]
  - >> USART1_IRQHandler

  USART_ITConfig (Thumb, 74 bytes, Stack size 20 bytes, stm32f10x_usart.o(i.USART_ITConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = USART_ITConfig
  [Called By]
  - >> uart_init

  USART_Init (Thumb, 210 bytes, Stack size 56 bytes, stm32f10x_usart.o(i.USART_Init))
  [Stack]

  - Max Depth = 68
  - Call Chain = USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> RCC_GetClocksFreq
  [Called By]
  - >> uart_init

  USART_ReceiveData (Thumb, 10 bytes, Stack size 0 bytes, stm32f10x_usart.o(i.USART_ReceiveData))
  [Called By]

  - >> USART1_IRQHandler

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

  - startup_stm32f10x_hd.o(RESET)

  _sys_exit (Thumb, 6 bytes, Stack size 0 bytes, usart.o(i._sys_exit))
  [Called By]

  - >> __rt_exit_exit

  delay_init (Thumb, 92 bytes, Stack size 8 bytes, delay.o(i.delay_init))
  [Stack]

  - Max Depth = 8
  - Call Chain = delay_init
  [Calls]
  - >> SysTick_CLKSourceConfig
  [Called By]
  - >> main

  delay_ms (Thumb, 66 bytes, Stack size 16 bytes, delay.o(i.delay_ms))
  [Stack]

  - Max Depth = 96 + Unknown Stack Size
  - Call Chain = delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_ostimedly
  - >> delay_us
  [Called By]
  - >> EXTI2_IRQHandler
  - >> LCD_Init
  - >> DHT11_Rst

  delay_osschedlock (Thumb, 10 bytes, Stack size 8 bytes, delay.o(i.delay_osschedlock))
  [Stack]

  - Max Depth = 32 + Unknown Stack Size
  - Call Chain = delay_osschedlock ⇒ OSSchedLock ⇒ OS_SchedLockTimeMeasStart
  [Calls]
  - >> OSSchedLock
  [Called By]
  - >> delay_us

  delay_osschedunlock (Thumb, 10 bytes, Stack size 8 bytes, delay.o(i.delay_osschedunlock))
  [Stack]

  - Max Depth = 48 + Unknown Stack Size
  - Call Chain = delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> OSSchedUnlock
  [Called By]
  - >> delay_us

  delay_ostimedly (Thumb, 16 bytes, Stack size 16 bytes, delay.o(i.delay_ostimedly))
  [Stack]

  - Max Depth = 76 + Unknown Stack Size
  - Call Chain = delay_ostimedly ⇒ OSTimeDly ⇒ OS_TickListInsert
  [Calls]
  - >> OSTimeDly
  [Called By]
  - >> delay_ms

  delay_us (Thumb, 86 bytes, Stack size 32 bytes, delay.o(i.delay_us))
  [Stack]

  - Max Depth = 80 + Unknown Stack Size
  - Call Chain = delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> delay_osschedunlock
  - >> delay_osschedlock
  [Called By]
  - >> DHT11_Read_Bit
  - >> LCD_ReadReg
  - >> delay_ms
  - >> LCD_Init
  - >> DHT11_Rst
  - >> DHT11_Check

  fputc (Thumb, 24 bytes, Stack size 0 bytes, usart.o(i.fputc))
  [Address Reference Count : 1]

  - _printf_char_file.o(.text)

  led1_task (Thumb, 66 bytes, Stack size 16 bytes, main.o(i.led1_task))
  [Stack]

  - Max Depth = 108 + Unknown Stack Size
  - Call Chain = led1_task ⇒ OSTimeDlyHMSM ⇒ OS_TickListInsert
  [Calls]
  - >> OSTimeDlyHMSM
  [Address Reference Count : 1]
  - main.o(i.start_task)

  main (Thumb, 272 bytes, Stack size 40 bytes, main.o(i.main))
  [Stack]

  - Max Depth = 264 + Unknown Stack Size
  - Call Chain = main ⇒ LCD_Init ⇒ delay_ms ⇒ delay_us ⇒ delay_osschedunlock ⇒ OSSchedUnlock ⇒ OSSched ⇒ OS_PrioGetHighest
  [Calls]
  - >> uart_init
  - >> delay_init
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> OSTaskCreate
  - >> OSStart
  - >> OSInit
  - >> NVIC_PriorityGroupConfig
  - >> LED_Init
  - >> LCD_Init
  - >> DHT11_Init
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  [Called By]
  - >> __rt_entry_main

  start_task (Thumb, 360 bytes, Stack size 56 bytes, main.o(i.start_task))
  [Stack]

  - Max Depth = 184 + Unknown Stack Size
  - Call Chain = start_task ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
  [Calls]
  - >> OS_SchedLockTimeMeasStop
  - >> OS_SchedLockTimeMeasStart
  - >> OS_Sched0
  - >> OSTaskDel
  - >> OSTaskCreate
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  - >> CPU_Init
  - >> __2printf
  [Address Reference Count : 1]
  - main.o(i.main)

  uart_init (Thumb, 152 bytes, Stack size 32 bytes, usart.o(i.uart_init))
  [Stack]

  - Max Depth = 100
  - Call Chain = uart_init ⇒ USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> NVIC_Init
  - >> RCC_APB2PeriphClockCmd
  - >> GPIO_Init
  - >> USART_Init
  - >> USART_ITConfig
  - >> USART_Cmd
  [Called By]
  - >> main

  __aeabi_d2uiz (Thumb, 0 bytes, Stack size 32 bytes, dfixu.o(x$fpl$dfixu))
  [Stack]

  - Max Depth = 32
  - Call Chain = __aeabi_d2uiz
  [Called By]
  - >> LCD_SSD_BackLightSet

  _dfixu (Thumb, 90 bytes, Stack size 32 bytes, dfixu.o(x$fpl$dfixu), UNUSED)
  [Calls]

  - >> __fpl_dnaninf

  __aeabi_ui2d (Thumb, 0 bytes, Stack size 0 bytes, dflt_clz.o(x$fpl$dfltu))
  [Called By]

  - >> LCD_SSD_BackLightSet

  _dfltu (Thumb, 38 bytes, Stack size 0 bytes, dflt_clz.o(x$fpl$dfltu), UNUSED)

  __aeabi_dmul (Thumb, 0 bytes, Stack size 32 bytes, dmul.o(x$fpl$dmul))
  [Stack]

  - Max Depth = 32
  - Call Chain = __aeabi_dmul
  [Called By]
  - >> LCD_SSD_BackLightSet

  _dmul (Thumb, 332 bytes, Stack size 32 bytes, dmul.o(x$fpl$dmul), UNUSED)
  [Calls]

  - >> __fpl_dretinf
  - >> __fpl_dnaninf

  __fpl_dnaninf (Thumb, 156 bytes, Stack size 16 bytes, dnaninf.o(x$fpl$dnaninf), UNUSED)
  [Called By]

  - >> _dmul
  - >> _dfixu

  __fpl_dretinf (Thumb, 12 bytes, Stack size 0 bytes, dretinf.o(x$fpl$dretinf), UNUSED)
  [Called By]

  - >> _dmul

  ### Local Symbols

  SetSysClock (Thumb, 8 bytes, Stack size 8 bytes, system_stm32f10x.o(i.SetSysClock))
  [Stack]

  - Max Depth = 20
  - Call Chain = SetSysClock ⇒ SetSysClockTo72
  [Calls]
  - >> SetSysClockTo72
  [Called By]
  - >> SystemInit

  SetSysClockTo72 (Thumb, 214 bytes, Stack size 12 bytes, system_stm32f10x.o(i.SetSysClockTo72))
  [Stack]

  - Max Depth = 12
  - Call Chain = SetSysClockTo72
  [Called By]
  - >> SetSysClock

  CPU_IntDisMeasInit (Thumb, 104 bytes, Stack size 16 bytes, cpu_core.o(i.CPU_IntDisMeasInit))
  [Stack]

  - Max Depth = 24 + Unknown Stack Size
  - Call Chain = CPU_IntDisMeasInit ⇒ CPU_IntDisMeasStop
  [Calls]
  - >> CPU_SR_Save
  - >> CPU_SR_Restore
  - >> CPU_IntDisMeasStop
  - >> CPU_IntDisMeasStart
  [Called By]
  - >> CPU_Init

  CPU_IntDisMeasMaxCalc (Thumb, 24 bytes, Stack size 0 bytes, cpu_core.o(i.CPU_IntDisMeasMaxCalc))
  [Called By]

  - >> CPU_IntDisMeasMaxGet
  - >> CPU_IntDisMeasMaxCurGet

  CPU_NameInit (Thumb, 8 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_NameInit))
  [Stack]

  - Max Depth = 52 + Unknown Stack Size
  - Call Chain = CPU_NameInit ⇒ CPU_NameClr ⇒ Mem_Clr ⇒ Mem_Set
  [Calls]
  - >> CPU_NameClr
  [Called By]
  - >> CPU_Init

  CPU_TS_Init (Thumb, 14 bytes, Stack size 8 bytes, cpu_core.o(i.CPU_TS_Init))
  [Stack]

  - Max Depth = 52
  - Call Chain = CPU_TS_Init ⇒ CPU_TS_TmrInit ⇒ BSP_CPU_ClkFreq ⇒ RCC_GetClocksFreq
  [Calls]
  - >> CPU_TS_TmrInit
  [Called By]
  - >> CPU_Init

  _printf_input_char (Thumb, 10 bytes, Stack size 0 bytes, _printf_char_common.o(.text))
  [Address Reference Count : 1]

  - _printf_char_common.o(.text)

  ### Undefined Global Symbols