Static Call Graph for image .\Objects\Project.axf



#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Mon Jul 15 21:19:42 2024

Maximum Stack Usage = 168 bytes + Unknown(Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

main ⇒ ms_task ⇒ menu_1 ⇒ show_temp ⇒ LCD_ShowString ⇒ LCD_ShowChar16 ⇒ LCD_Address_Set ⇒ SPI_HW_Send

Mutually Recursive functions

  • EXTI0_IRQHandler   ⇒   EXTI0_IRQHandler
  • HardFault_Handler   ⇒   HardFault_Handler

    Function Pointers

    Global Symbols

    __main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
    [Address Reference Count : 1]

    _main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

    _main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Calls]

    __main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

    [Called By]

    _main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))

    _main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))

    _main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))

    __rt_lib_shutdown_fini (Thumb, 0 bytes, Stack size unknown bytes, entry12b.o(.ARM.Collect$$$$0000000E))

    [Calls]

    __rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000F))

    __rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$00000011))

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

    EXTI0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, keil_startup_hk32f030m.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)

    __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text))

    [Stack]


    [Called By]

    __aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

    [Called By]

    __aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

    __aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

    __aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

    [Calls]

    __aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))

    [Called By]

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

    _memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)

    [Calls]

    __aeabi_uldivmod (Thumb, 96 bytes, Stack size 48 bytes, uldiv.o(.text), UNUSED)

    [Calls]


    [Called By]

    __scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))

    [Calls]


    [Called By]

    __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

    __aeabi_llsl (Thumb, 32 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)

    [Called By]

    _ll_shift_l (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)

    __aeabi_llsr (Thumb, 34 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)

    [Called By]

    _ll_ushift_r (Thumb, 0 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)

    __decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

    __decompress1 (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

    ADC1_IRQHandler (Thumb, 36 bytes, Stack size 8 bytes, hk32f030m_it.o(i.ADC1_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    ADC_ChannelConfig (Thumb, 6 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_ChannelConfig))

    [Called By]

    ADC_ClearITPendingBit (Thumb, 4 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_ClearITPendingBit))

    [Called By]

    ADC_Cmd (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_Cmd))

    [Called By]

    ADC_DeInit (Thumb, 28 bytes, Stack size 8 bytes, hk32f030m_adc.o(i.ADC_DeInit))

    [Stack]


    [Calls]
    [Called By]

    ADC_GetCalibrationFactor (Thumb, 46 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_GetCalibrationFactor))

    [Called By]

    ADC_GetConversionValue (Thumb, 6 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_GetConversionValue))

    [Called By]

    ADC_GetFlagStatus (Thumb, 28 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_GetFlagStatus))

    [Called By]

    ADC_GetITStatus (Thumb, 22 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_GetITStatus))

    [Called By]

    ADC_ITConfig (Thumb, 16 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_ITConfig))

    [Called By]

    ADC_Init (Thumb, 34 bytes, Stack size 12 bytes, hk32f030m_adc.o(i.ADC_Init))

    [Stack]


    [Called By]

    ADC_StartOfConversion (Thumb, 10 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_StartOfConversion))

    [Called By]

    ADC_StructInit (Thumb, 14 bytes, Stack size 0 bytes, hk32f030m_adc.o(i.ADC_StructInit))

    [Called By]

    ADCx_Init (Thumb, 52 bytes, Stack size 24 bytes, bsp_adc.o(i.ADCx_Init))

    [Stack]


    [Calls]
    [Called By]

    BASIC_TIM_Init (Thumb, 74 bytes, Stack size 24 bytes, bsp_timbase.o(i.BASIC_TIM_Init))

    [Stack]


    [Calls]
    [Called By]

    EEPROM_EraseByte (Thumb, 56 bytes, Stack size 20 bytes, hk32f030m_flash.o(i.EEPROM_EraseByte))

    [Stack]


    [Calls]
    [Called By]

    EEPROM_ProgramByte (Thumb, 46 bytes, Stack size 20 bytes, hk32f030m_flash.o(i.EEPROM_ProgramByte))

    [Stack]


    [Calls]
    [Called By]

    EEPROM_WriteByte (Thumb, 36 bytes, Stack size 16 bytes, eeprom.o(i.EEPROM_WriteByte))

    [Stack]


    [Calls]
    [Called By]

    EERPOM_ReadByte (Thumb, 12 bytes, Stack size 0 bytes, eeprom.o(i.EERPOM_ReadByte))

    [Called By]

    FLASH_GetStatus (Thumb, 24 bytes, Stack size 0 bytes, hk32f030m_flash.o(i.FLASH_GetStatus))

    [Called By]

    FLASH_Lock (Thumb, 12 bytes, Stack size 0 bytes, hk32f030m_flash.o(i.FLASH_Lock))

    [Called By]

    FLASH_Unlock (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_flash.o(i.FLASH_Unlock))

    [Called By]

    FLASH_WaitForLastOperation (Thumb, 34 bytes, Stack size 4 bytes, hk32f030m_flash.o(i.FLASH_WaitForLastOperation))

    [Stack]


    [Calls]
    [Called By]

    GPIO_Init (Thumb, 132 bytes, Stack size 20 bytes, hk32f030m_gpio.o(i.GPIO_Init))

    [Stack]


    [Called By]

    GPIO_PinAFConfig (Thumb, 32 bytes, Stack size 8 bytes, hk32f030m_gpio.o(i.GPIO_PinAFConfig))

    [Stack]


    [Called By]

    HAL_GPIO_Init (Thumb, 50 bytes, Stack size 48 bytes, gpio.o(i.HAL_GPIO_Init))

    [Stack]


    [Calls]
    [Called By]

    HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, hk32f030m_it.o(i.HardFault_Handler))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    LCD_Address_Set (Thumb, 162 bytes, Stack size 40 bytes, st7735s.o(i.LCD_Address_Set))

    [Stack]


    [Calls]
    [Called By]

    LCD_Fill (Thumb, 82 bytes, Stack size 40 bytes, st7735s.o(i.LCD_Fill))

    [Stack]


    [Calls]
    [Called By]

    LCD_Init (Thumb, 1032 bytes, Stack size 24 bytes, st7735s.o(i.LCD_Init))

    [Stack]


    [Calls]
    [Called By]

    LCD_SetCharPos (Thumb, 24 bytes, Stack size 0 bytes, st7735s.o(i.LCD_SetCharPos))

    [Called By]

    LCD_ShowChar16 (Thumb, 110 bytes, Stack size 24 bytes, st7735s.o(i.LCD_ShowChar16))

    [Stack]


    [Calls]
    [Called By]

    LCD_ShowPic (Thumb, 112 bytes, Stack size 32 bytes, st7735s.o(i.LCD_ShowPic))

    [Stack]


    [Calls]
    [Called By]

    LCD_ShowString (Thumb, 56 bytes, Stack size 24 bytes, st7735s.o(i.LCD_ShowString))

    [Stack]


    [Calls]
    [Called By]

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

    NVIC_Init (Thumb, 70 bytes, Stack size 12 bytes, hk32f030m_misc.o(i.NVIC_Init))

    [Stack]


    [Called By]

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

    RCC_AHBPeriphClockCmd (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_rcc.o(i.RCC_AHBPeriphClockCmd))

    [Called By]

    RCC_APB1PeriphClockCmd (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_rcc.o(i.RCC_APB1PeriphClockCmd))

    [Called By]

    RCC_APB2PeriphClockCmd (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_rcc.o(i.RCC_APB2PeriphClockCmd))

    [Called By]

    RCC_APB2PeriphResetCmd (Thumb, 18 bytes, Stack size 0 bytes, hk32f030m_rcc.o(i.RCC_APB2PeriphResetCmd))

    [Called By]

    RCC_GetClocksFreq (Thumb, 178 bytes, Stack size 24 bytes, hk32f030m_rcc.o(i.RCC_GetClocksFreq))

    [Stack]


    [Calls]
    [Called By]

    SPI_Cmd (Thumb, 20 bytes, Stack size 0 bytes, hk32f030m_spi.o(i.SPI_Cmd))

    [Called By]

    SPI_HW_Init (Thumb, 156 bytes, Stack size 48 bytes, spi.o(i.SPI_HW_Init))

    [Stack]


    [Calls]
    [Called By]

    SPI_HW_Send (Thumb, 22 bytes, Stack size 8 bytes, spi.o(i.SPI_HW_Send))

    [Stack]


    [Calls]
    [Called By]

    SPI_Init (Thumb, 80 bytes, Stack size 12 bytes, hk32f030m_spi.o(i.SPI_Init))

    [Stack]


    [Called By]

    SPI_RxFIFOThresholdConfig (Thumb, 16 bytes, Stack size 0 bytes, hk32f030m_spi.o(i.SPI_RxFIFOThresholdConfig))

    [Called By]

    SPI_SendData8 (Thumb, 4 bytes, Stack size 0 bytes, hk32f030m_spi.o(i.SPI_SendData8))

    [Called By]

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

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

    SystemInit (Thumb, 74 bytes, Stack size 8 bytes, system_hk32f030m.o(i.SystemInit))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    TIM2_IRQHandler (Thumb, 36 bytes, Stack size 8 bytes, usb.o(i.TIM2_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    TIM6_IRQHandler (Thumb, 34 bytes, Stack size 8 bytes, hk32f030m_it.o(i.TIM6_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    TIM_ClearFlag (Thumb, 8 bytes, Stack size 0 bytes, hk32f030m_tim.o(i.TIM_ClearFlag))

    [Called By]

    TIM_ClearITPendingBit (Thumb, 8 bytes, Stack size 0 bytes, hk32f030m_tim.o(i.TIM_ClearITPendingBit))

    [Called By]

    TIM_Cmd (Thumb, 20 bytes, Stack size 0 bytes, hk32f030m_tim.o(i.TIM_Cmd))

    [Called By]

    TIM_GetITStatus (Thumb, 24 bytes, Stack size 0 bytes, hk32f030m_tim.o(i.TIM_GetITStatus))

    [Called By]

    TIM_ITConfig (Thumb, 20 bytes, Stack size 0 bytes, hk32f030m_tim.o(i.TIM_ITConfig))

    [Called By]

    TIM_TimeBaseInit (Thumb, 66 bytes, Stack size 8 bytes, hk32f030m_tim.o(i.TIM_TimeBaseInit))

    [Stack]


    [Called By]

    USART_Cmd (Thumb, 20 bytes, Stack size 0 bytes, hk32f030m_usart.o(i.USART_Cmd))

    [Called By]

    USART_Config (Thumb, 152 bytes, Stack size 64 bytes, usart_printf.o(i.USART_Config))

    [Stack]


    [Calls]
    [Called By]

    USART_ITConfig (Thumb, 42 bytes, Stack size 8 bytes, hk32f030m_usart.o(i.USART_ITConfig))

    [Stack]


    [Called By]

    USART_Init (Thumb, 130 bytes, Stack size 40 bytes, hk32f030m_usart.o(i.USART_Init))

    [Stack]


    [Calls]
    [Called By]

    __0sprintf$8 (Thumb, 36 bytes, Stack size 24 bytes, printf8.o(i.__0sprintf$8), UNUSED)

    [Calls]

    __1sprintf$8 (Thumb, 0 bytes, Stack size 24 bytes, printf8.o(i.__0sprintf$8), UNUSED)

    __2sprintf (Thumb, 0 bytes, Stack size 24 bytes, printf8.o(i.__0sprintf$8))

    [Stack]


    [Called By]

    __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)

    __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)

    __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)

    deal_core (Thumb, 100 bytes, Stack size 16 bytes, main.o(i.deal_core))

    [Stack]


    [Calls]
    [Called By]

    key_det (Thumb, 52 bytes, Stack size 8 bytes, main.o(i.key_det))

    [Stack]


    [Called By]

    key_det_core (Thumb, 34 bytes, Stack size 8 bytes, main.o(i.key_det_core))

    [Stack]


    [Calls]
    [Called By]

    key_value (Thumb, 50 bytes, Stack size 0 bytes, main.o(i.key_value))
    [Address Reference Count : 1]

    main (Thumb, 156 bytes, Stack size 8 bytes, main.o(i.main))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    menu_1 (Thumb, 34 bytes, Stack size 8 bytes, main.o(i.menu_1))

    [Stack]


    [Calls]
    [Called By]

    menu_2 (Thumb, 202 bytes, Stack size 32 bytes, main.o(i.menu_2))

    [Stack]


    [Calls]
    [Called By]

    ms_task (Thumb, 60 bytes, Stack size 8 bytes, main.o(i.ms_task))

    [Stack]


    [Calls]
    [Called By]

    show_temp (Thumb, 198 bytes, Stack size 48 bytes, main.o(i.show_temp))

    [Stack]


    [Calls]
    [Called By]

    show_temp_ctl (Thumb, 90 bytes, Stack size 32 bytes, main.o(i.show_temp_ctl))

    [Stack]


    [Calls]
    [Called By]

    show_time (Thumb, 50 bytes, Stack size 32 bytes, main.o(i.show_time))

    [Stack]


    [Calls]
    [Called By]

    sw_ctrl (Thumb, 94 bytes, Stack size 20 bytes, main.o(i.sw_ctrl))

    [Stack]


    [Called By]

    time_put_tick (Thumb, 42 bytes, Stack size 0 bytes, main.o(i.time_put_tick))

    [Called By]

    Local Symbols

    SetSysClockToHSI_32M (Thumb, 150 bytes, Stack size 32 bytes, system_hk32f030m.o(i.SetSysClockToHSI_32M))

    [Stack]


    [Called By]

    ADCx_Mode_Config (Thumb, 104 bytes, Stack size 32 bytes, bsp_adc.o(i.ADCx_Mode_Config))

    [Stack]


    [Calls]
    [Called By]

    _printf_core (Thumb, 1020 bytes, Stack size 104 bytes, printf8.o(i._printf_core), UNUSED)

    [Calls]


    [Called By]

    _printf_post_padding (Thumb, 32 bytes, Stack size 24 bytes, printf8.o(i._printf_post_padding), UNUSED)

    [Called By]

    _printf_pre_padding (Thumb, 44 bytes, Stack size 40 bytes, printf8.o(i._printf_pre_padding), UNUSED)

    [Called By]

    _sputc (Thumb, 10 bytes, Stack size 0 bytes, printf8.o(i._sputc))

    [Called By]


    [Address Reference Count : 1]

    Undefined Global Symbols

    __arm_fini_ (Unknown, 0 bytes, Stack size 0 bytes, UNDEFINED)

    [Called By]