Static Call Graph for image .\output\obj\..\project.axf



#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Thu Jul 25 19:12:21 2024

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

Call chain for Maximum Stack Depth:

process_packet ⇒ commands_process_packet ⇒ terminal_process_string ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real

Mutually Recursive functions

  • CAN1_RX0_IRQHandler   ⇒   CAN1_RX0_IRQHandler
  • BusFault_Handler   ⇒   BusFault_Handler
  • HardFault_Handler   ⇒   HardFault_Handler
  • MemManage_Handler   ⇒   MemManage_Handler
  • _Error_Handler   ⇒   _Error_Handler
  • UsageFault_Handler   ⇒   UsageFault_Handler
  • packet_timer_thread   ⇒   packet_timer_thread

    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_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))

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

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

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

    SVC_Handler (Thumb, 28 bytes, Stack size 0 bytes, port.o(.emb_text))
    [Address Reference Count : 1]

    __asm___6_port_c_39a90d8d__prvStartFirstTask (Thumb, 28 bytes, Stack size 0 bytes, port.o(.emb_text))

    [Called By]

    __asm___6_port_c_39a90d8d__prvEnableVFP (Thumb, 16 bytes, Stack size 0 bytes, port.o(.emb_text))

    [Called By]

    PendSV_Handler (Thumb, 88 bytes, Stack size 0 bytes, port.o(.emb_text))

    [Calls]


    [Address Reference Count : 1]

    vPortGetIPSR (Thumb, 6 bytes, Stack size 0 bytes, port.o(.emb_text))

    [Called By]

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

    CAN1_RX0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f4xx.o(.text))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    __aeabi_uldivmod (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))

    [Called By]

    __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)

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

    strcmp (Thumb, 28 bytes, Stack size 8 bytes, strcmp.o(.text))

    [Stack]


    [Called By]

    strtok (Thumb, 62 bytes, Stack size 16 bytes, strtok.o(.text))

    [Stack]


    [Called By]

    __0sscanf (Thumb, 48 bytes, Stack size 72 bytes, __0sscanf.o(.text))

    [Stack]


    [Calls]
    [Called By]

    _scanf_int (Thumb, 332 bytes, Stack size 56 bytes, _scanf_int.o(.text))

    [Stack]


    [Calls]
    [Called By]

    _scanf_string (Thumb, 224 bytes, Stack size 56 bytes, _scanf_str.o(.text))

    [Stack]


    [Called By]

    _scanf_real (Thumb, 0 bytes, Stack size 104 bytes, scanf_fp.o(.text))

    [Stack]


    [Called By]

    _scanf_really_real (Thumb, 556 bytes, Stack size 104 bytes, scanf_fp.o(.text), UNUSED)

    [Calls]

    __aeabi_f2d (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))

    [Called By]

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

    [Called By]

    __aeabi_llsl (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)

    [Called By]

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

    __aeabi_llsr (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)

    [Called By]

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

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

    [Called By]

    __vfscanf_char (Thumb, 20 bytes, Stack size 0 bytes, scanf_char.o(.text))

    [Stack]


    [Calls]
    [Called By]

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

    _sbackspace (Thumb, 34 bytes, Stack size 0 bytes, _sgetc.o(.text))
    [Address Reference Count : 1]

    __I$use$fp (Thumb, 0 bytes, Stack size 48 bytes, iusefp.o(.text), UNUSED)

    __aeabi_dadd (Thumb, 322 bytes, Stack size 48 bytes, dadd.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_dsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text), UNUSED)

    [Calls]

    __aeabi_drsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text), UNUSED)

    [Calls]

    __aeabi_dmul (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_ddiv (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_ul2d (Thumb, 24 bytes, Stack size 16 bytes, dfltul.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_d2ulz (Thumb, 48 bytes, Stack size 0 bytes, dfixul.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_cdrcmple (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text), UNUSED)

    [Called By]

    __aeabi_d2f (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text), UNUSED)

    [Calls]


    [Called By]

    __aeabi_lasr (Thumb, 36 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)

    [Called By]

    _ll_sshift_r (Thumb, 0 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)

    isspace (Thumb, 10 bytes, Stack size 0 bytes, isspace_c.o(.text))

    [Calls]


    [Address Reference Count : 1]

    __vfscanf (Thumb, 808 bytes, Stack size 88 bytes, _scanf.o(.text))

    [Stack]


    [Calls]
    [Called By]

    _float_round (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text), UNUSED)

    [Called By]

    _float_epilogue (Thumb, 92 bytes, Stack size 4 bytes, fepilogue.o(.text), UNUSED)

    _double_round (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text), UNUSED)

    [Called By]

    _double_epilogue (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text), UNUSED)

    [Calls]


    [Called By]

    __ctype_lookup (Thumb, 34 bytes, Stack size 0 bytes, ctype_c.o(.text))

    [Called By]

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

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

    ADC_IRQHandler (Thumb, 30 bytes, Stack size 8 bytes, stm32f4xx_it.o(i.ADC_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    ADC_IRQ_Dispatch (Thumb, 84 bytes, Stack size 16 bytes, stm32f4xx_it.o(i.ADC_IRQ_Dispatch))

    [Stack]


    [Called By]

    BusFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.BusFault_Handler))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    CDC_Transmit_FS (Thumb, 60 bytes, Stack size 8 bytes, usbd_cdc_if.o(i.CDC_Transmit_FS))

    [Stack]


    [Calls]
    [Called By]

    DMA1_Stream2_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.DMA1_Stream2_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    DMA1_Stream4_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.DMA1_Stream4_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    DRV8301_enable (Thumb, 44 bytes, Stack size 8 bytes, drv8301.o(i.DRV8301_enable))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_getFaultType (Thumb, 48 bytes, Stack size 16 bytes, drv8301.o(i.DRV8301_getFaultType))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_readData (Thumb, 194 bytes, Stack size 16 bytes, drv8301.o(i.DRV8301_readData))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_readSpi (Thumb, 144 bytes, Stack size 32 bytes, drv8301.o(i.DRV8301_readSpi))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_setup (Thumb, 120 bytes, Stack size 16 bytes, low_level.o(i.DRV8301_setup))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_setupSpi (Thumb, 194 bytes, Stack size 16 bytes, drv8301.o(i.DRV8301_setupSpi))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_writeData (Thumb, 80 bytes, Stack size 16 bytes, drv8301.o(i.DRV8301_writeData))

    [Stack]


    [Calls]
    [Called By]

    DRV8301_writeSpi (Thumb, 72 bytes, Stack size 24 bytes, drv8301.o(i.DRV8301_writeSpi))

    [Stack]


    [Calls]
    [Called By]

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

    EXTI0_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.EXTI0_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    EXTI2_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.EXTI2_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    EXTI4_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.EXTI4_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    FOC_current (Thumb, 424 bytes, Stack size 48 bytes, low_level.o(i.FOC_current))

    [Stack]


    [Calls]
    [Called By]

    HAL_ADCEx_InjectedConfigChannel (Thumb, 470 bytes, Stack size 8 bytes, stm32f4xx_hal_adc_ex.o(i.HAL_ADCEx_InjectedConfigChannel))

    [Stack]


    [Called By]

    HAL_ADCEx_InjectedGetValue (Thumb, 64 bytes, Stack size 4 bytes, stm32f4xx_hal_adc_ex.o(i.HAL_ADCEx_InjectedGetValue))

    [Stack]


    [Called By]

    HAL_ADC_ConfigChannel (Thumb, 340 bytes, Stack size 12 bytes, stm32f4xx_hal_adc.o(i.HAL_ADC_ConfigChannel))

    [Stack]


    [Called By]

    HAL_ADC_GetValue (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(i.HAL_ADC_GetValue))

    [Called By]

    HAL_ADC_Init (Thumb, 366 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(i.HAL_ADC_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_ADC_MspInit (Thumb, 226 bytes, Stack size 48 bytes, adc.o(i.HAL_ADC_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_CAN_Init (Thumb, 340 bytes, Stack size 24 bytes, stm32f4xx_hal_can.o(i.HAL_CAN_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_CAN_MspInit (Thumb, 72 bytes, Stack size 32 bytes, can.o(i.HAL_CAN_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_DMA_Abort (Thumb, 154 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(i.HAL_DMA_Abort))

    [Stack]


    [Calls]
    [Called By]

    HAL_DMA_Abort_IT (Thumb, 32 bytes, Stack size 0 bytes, stm32f4xx_hal_dma.o(i.HAL_DMA_Abort_IT))

    [Called By]

    HAL_DMA_IRQHandler (Thumb, 464 bytes, Stack size 32 bytes, stm32f4xx_hal_dma.o(i.HAL_DMA_IRQHandler))

    [Stack]


    [Called By]

    HAL_DMA_Init (Thumb, 322 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(i.HAL_DMA_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_DMA_Start_IT (Thumb, 166 bytes, Stack size 12 bytes, stm32f4xx_hal_dma.o(i.HAL_DMA_Start_IT))

    [Stack]


    [Called By]

    HAL_Delay (Thumb, 30 bytes, Stack size 16 bytes, stm32f4xx_hal.o(i.HAL_Delay))

    [Stack]


    [Calls]
    [Called By]

    HAL_GPIO_EXTI_Callback (Thumb, 36 bytes, Stack size 0 bytes, gpio.o(i.HAL_GPIO_EXTI_Callback))

    [Stack]


    [Calls]
    [Called By]

    HAL_GPIO_EXTI_IRQHandler (Thumb, 20 bytes, Stack size 8 bytes, stm32f4xx_hal_gpio.o(i.HAL_GPIO_EXTI_IRQHandler))

    [Stack]


    [Calls]
    [Called By]

    HAL_GPIO_Init (Thumb, 530 bytes, Stack size 40 bytes, stm32f4xx_hal_gpio.o(i.HAL_GPIO_Init))

    [Stack]


    [Called By]

    HAL_GPIO_ReadPin (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(i.HAL_GPIO_ReadPin))

    [Called By]

    HAL_GPIO_WritePin (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(i.HAL_GPIO_WritePin))

    [Called By]

    HAL_GetTick (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal.o(i.HAL_GetTick))

    [Called By]

    HAL_IncTick (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal.o(i.HAL_IncTick))

    [Called By]

    HAL_Init (Thumb, 48 bytes, Stack size 8 bytes, stm32f4xx_hal.o(i.HAL_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_InitTick (Thumb, 100 bytes, Stack size 40 bytes, stm32f4xx_hal_timebase_tim.o(i.HAL_InitTick))

    [Stack]


    [Calls]
    [Called By]

    HAL_MspInit (Thumb, 88 bytes, Stack size 8 bytes, stm32f4xx_hal_msp.o(i.HAL_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_NVIC_DisableIRQ (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(i.HAL_NVIC_DisableIRQ))

    [Called By]

    HAL_NVIC_EnableIRQ (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(i.HAL_NVIC_EnableIRQ))

    [Called By]

    HAL_NVIC_SetPriority (Thumb, 96 bytes, Stack size 4 bytes, stm32f4xx_hal_cortex.o(i.HAL_NVIC_SetPriority))

    [Stack]


    [Called By]

    HAL_NVIC_SetPriorityGrouping (Thumb, 30 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(i.HAL_NVIC_SetPriorityGrouping))

    [Called By]

    HAL_PCDEx_SetRxFiFo (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_pcd_ex.o(i.HAL_PCDEx_SetRxFiFo))

    [Called By]

    HAL_PCDEx_SetTxFiFo (Thumb, 78 bytes, Stack size 12 bytes, stm32f4xx_hal_pcd_ex.o(i.HAL_PCDEx_SetTxFiFo))

    [Stack]


    [Called By]

    HAL_PCD_ConnectCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_ConnectCallback))

    [Calls]


    [Called By]

    HAL_PCD_DataInStageCallback (Thumb, 18 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_DataInStageCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_DataOutStageCallback (Thumb, 20 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_DataOutStageCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_DisconnectCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_DisconnectCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_Close (Thumb, 68 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_Close))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_ClrStall (Thumb, 78 bytes, Stack size 16 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_ClrStall))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_GetRxCount (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_GetRxCount))

    [Called By]

    HAL_PCD_EP_Open (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_Open))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_Receive (Thumb, 74 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_Receive))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_SetStall (Thumb, 94 bytes, Stack size 16 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_SetStall))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_EP_Transmit (Thumb, 66 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_EP_Transmit))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_IRQHandler (Thumb, 1446 bytes, Stack size 48 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_IRQHandler))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_ISOINIncompleteCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_ISOINIncompleteCallback))

    [Calls]


    [Called By]

    HAL_PCD_ISOOUTIncompleteCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_ISOOUTIncompleteCallback))

    [Calls]


    [Called By]

    HAL_PCD_Init (Thumb, 214 bytes, Stack size 64 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_MspInit (Thumb, 94 bytes, Stack size 32 bytes, usbd_conf.o(i.HAL_PCD_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_ResetCallback (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(i.HAL_PCD_ResetCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_ResumeCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_ResumeCallback))

    [Calls]


    [Called By]

    HAL_PCD_SOFCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_SOFCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_SetAddress (Thumb, 36 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_SetAddress))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_SetupStageCallback (Thumb, 14 bytes, Stack size 0 bytes, usbd_conf.o(i.HAL_PCD_SetupStageCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_Start (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(i.HAL_PCD_Start))

    [Stack]


    [Calls]
    [Called By]

    HAL_PCD_SuspendCallback (Thumb, 46 bytes, Stack size 8 bytes, usbd_conf.o(i.HAL_PCD_SuspendCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_RCC_ClockConfig (Thumb, 430 bytes, Stack size 40 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_ClockConfig))

    [Stack]


    [Calls]
    [Called By]

    HAL_RCC_GetClockConfig (Thumb, 54 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_GetClockConfig))

    [Called By]

    HAL_RCC_GetHCLKFreq (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq))

    [Called By]

    HAL_RCC_GetPCLK1Freq (Thumb, 34 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq))

    [Called By]

    HAL_RCC_GetPCLK2Freq (Thumb, 34 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_GetPCLK2Freq))

    [Called By]

    HAL_RCC_GetSysClockFreq (Thumb, 128 bytes, Stack size 4 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq))

    [Stack]


    [Called By]

    HAL_RCC_OscConfig (Thumb, 944 bytes, Stack size 40 bytes, stm32f4xx_hal_rcc.o(i.HAL_RCC_OscConfig))

    [Stack]


    [Calls]
    [Called By]

    HAL_SPI_Init (Thumb, 120 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(i.HAL_SPI_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_SPI_MspInit (Thumb, 72 bytes, Stack size 32 bytes, spi.o(i.HAL_SPI_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_SPI_Transmit (Thumb, 394 bytes, Stack size 40 bytes, stm32f4xx_hal_spi.o(i.HAL_SPI_Transmit))

    [Stack]


    [Calls]
    [Called By]

    HAL_SPI_TransmitReceive (Thumb, 492 bytes, Stack size 40 bytes, stm32f4xx_hal_spi.o(i.HAL_SPI_TransmitReceive))

    [Stack]


    [Calls]
    [Called By]

    HAL_SYSTICK_CLKSourceConfig (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig))

    [Called By]

    HAL_SYSTICK_Config (Thumb, 38 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(i.HAL_SYSTICK_Config))

    [Called By]

    HAL_TIMEx_BreakCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(i.HAL_TIMEx_BreakCallback))

    [Called By]

    HAL_TIMEx_CommutationCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(i.HAL_TIMEx_CommutationCallback))

    [Called By]

    HAL_TIMEx_ConfigBreakDeadTime (Thumb, 102 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(i.HAL_TIMEx_ConfigBreakDeadTime))

    [Called By]

    HAL_TIMEx_MasterConfigSynchronization (Thumb, 90 bytes, Stack size 4 bytes, stm32f4xx_hal_tim_ex.o(i.HAL_TIMEx_MasterConfigSynchronization))

    [Stack]


    [Called By]

    HAL_TIMEx_PWMN_Start (Thumb, 36 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(i.HAL_TIMEx_PWMN_Start))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_Base_Init (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_Base_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_Base_MspInit (Thumb, 40 bytes, Stack size 4 bytes, tim.o(i.HAL_TIM_Base_MspInit))

    [Stack]


    [Called By]

    HAL_TIM_Base_Start_IT (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_Base_Start_IT))

    [Called By]

    HAL_TIM_ConfigClockSource (Thumb, 430 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_ConfigClockSource))

    [Stack]


    [Called By]

    HAL_TIM_Encoder_Init (Thumb, 164 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_Encoder_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_Encoder_MspInit (Thumb, 116 bytes, Stack size 32 bytes, tim.o(i.HAL_TIM_Encoder_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_Encoder_Start (Thumb, 58 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_Encoder_Start))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_IC_CaptureCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_IC_CaptureCallback))

    [Called By]

    HAL_TIM_IRQHandler (Thumb, 364 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_IRQHandler))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_MspPostInit (Thumb, 198 bytes, Stack size 48 bytes, tim.o(i.HAL_TIM_MspPostInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_OC_ConfigChannel (Thumb, 240 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_OC_ConfigChannel))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_OC_DelayElapsedCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_OC_DelayElapsedCallback))

    [Called By]

    HAL_TIM_OC_Init (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_OC_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_OC_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_OC_MspInit))

    [Called By]

    HAL_TIM_PWM_ConfigChannel (Thumb, 366 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_PWM_ConfigChannel))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_PWM_Init (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_PWM_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_PWM_MspInit (Thumb, 80 bytes, Stack size 8 bytes, tim.o(i.HAL_TIM_PWM_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_PWM_PulseFinishedCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_PWM_PulseFinishedCallback))

    [Called By]

    HAL_TIM_PWM_Start (Thumb, 56 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_PWM_Start))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_PWM_Start_IT (Thumb, 108 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_PWM_Start_IT))

    [Stack]


    [Calls]
    [Called By]

    HAL_TIM_PeriodElapsedCallback (Thumb, 18 bytes, Stack size 0 bytes, main.o(i.HAL_TIM_PeriodElapsedCallback))

    [Calls]


    [Called By]

    HAL_TIM_TriggerCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.HAL_TIM_TriggerCallback))

    [Called By]

    HAL_UART_AbortReceive (Thumb, 68 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_AbortReceive))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_ErrorCallback))

    [Called By]

    HAL_UART_IRQHandler (Thumb, 402 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_IRQHandler))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_Init (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_Init))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_MspInit (Thumb, 216 bytes, Stack size 56 bytes, usart.o(i.HAL_UART_MspInit))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_Receive_DMA (Thumb, 132 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_Receive_DMA))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_RxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_RxCpltCallback))

    [Called By]

    HAL_UART_RxHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_RxHalfCpltCallback))

    [Called By]

    HAL_UART_Transmit_DMA (Thumb, 118 bytes, Stack size 24 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_Transmit_DMA))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_TxCpltCallback (Thumb, 8 bytes, Stack size 0 bytes, syscalls.o(i.HAL_UART_TxCpltCallback))

    [Stack]


    [Calls]
    [Called By]

    HAL_UART_TxHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_uart.o(i.HAL_UART_TxHalfCpltCallback))

    [Called By]

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

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    MX_ADC1_Init (Thumb, 132 bytes, Stack size 80 bytes, adc.o(i.MX_ADC1_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_ADC2_Init (Thumb, 138 bytes, Stack size 72 bytes, adc.o(i.MX_ADC2_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_ADC3_Init (Thumb, 138 bytes, Stack size 72 bytes, adc.o(i.MX_ADC3_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_CAN1_Init (Thumb, 56 bytes, Stack size 8 bytes, can.o(i.MX_CAN1_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_DMA_Init (Thumb, 56 bytes, Stack size 8 bytes, dma.o(i.MX_DMA_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_FREERTOS_Init (Thumb, 94 bytes, Stack size 48 bytes, freertos.o(i.MX_FREERTOS_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_GPIO_Init (Thumb, 262 bytes, Stack size 48 bytes, gpio.o(i.MX_GPIO_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_SPI3_Init (Thumb, 70 bytes, Stack size 8 bytes, spi.o(i.MX_SPI3_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_TIM1_Init (Thumb, 274 bytes, Stack size 88 bytes, tim.o(i.MX_TIM1_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_TIM2_Init (Thumb, 134 bytes, Stack size 48 bytes, tim.o(i.MX_TIM2_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_TIM3_Init (Thumb, 98 bytes, Stack size 56 bytes, tim.o(i.MX_TIM3_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_TIM4_Init (Thumb, 102 bytes, Stack size 56 bytes, tim.o(i.MX_TIM4_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_TIM8_Init (Thumb, 208 bytes, Stack size 72 bytes, tim.o(i.MX_TIM8_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_UART4_Init (Thumb, 52 bytes, Stack size 8 bytes, usart.o(i.MX_UART4_Init))

    [Stack]


    [Calls]
    [Called By]

    MX_USB_DEVICE_Init (Thumb, 38 bytes, Stack size 8 bytes, usb_device.o(i.MX_USB_DEVICE_Init))

    [Stack]


    [Calls]
    [Called By]

    MemManage_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.MemManage_Handler))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

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

    OC4_PWM_Override (Thumb, 36 bytes, Stack size 32 bytes, tim.o(i.OC4_PWM_Override))

    [Stack]


    [Calls]
    [Called By]

    OTG_FS_IRQHandler (Thumb, 20 bytes, Stack size 8 bytes, stm32f4xx_it.o(i.OTG_FS_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    SVM (Thumb, 460 bytes, Stack size 0 bytes, utils.o(i.SVM))

    [Called By]

    SetGPIO12toUART (Thumb, 62 bytes, Stack size 40 bytes, gpio.o(i.SetGPIO12toUART))

    [Stack]


    [Calls]
    [Called By]

    SetupENCIndexGPIO (Thumb, 78 bytes, Stack size 32 bytes, gpio.o(i.SetupENCIndexGPIO))

    [Stack]


    [Calls]
    [Called By]

    StartDefaultTask (Thumb, 144 bytes, Stack size 112 bytes, freertos.o(i.StartDefaultTask))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    SysTick_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.SysTick_Handler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    SystemClock_Config (Thumb, 150 bytes, Stack size 88 bytes, main.o(i.SystemClock_Config))

    [Stack]


    [Calls]
    [Called By]

    SystemInit (Thumb, 64 bytes, Stack size 0 bytes, system_stm32f4xx.o(i.SystemInit))
    [Address Reference Count : 1]

    TIM8_TRG_COM_TIM14_IRQHandler (Thumb, 18 bytes, Stack size 8 bytes, stm32f4xx_it.o(i.TIM8_TRG_COM_TIM14_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    TIM_Base_SetConfig (Thumb, 180 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(i.TIM_Base_SetConfig))

    [Stack]


    [Called By]

    TIM_CCxChannelCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(i.TIM_CCxChannelCmd))

    [Called By]

    TIM_OC2_SetConfig (Thumb, 104 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(i.TIM_OC2_SetConfig))

    [Stack]


    [Called By]

    UART4_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.UART4_IRQHandler))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_CDC_GetDeviceQualifierDescriptor (Thumb, 8 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_GetDeviceQualifierDescriptor))
    [Address Reference Count : 1]

    USBD_CDC_ReceivePacket (Thumb, 48 bytes, Stack size 8 bytes, usbd_cdc.o(i.USBD_CDC_ReceivePacket))

    [Stack]


    [Calls]
    [Called By]

    USBD_CDC_RegisterInterface (Thumb, 16 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_RegisterInterface))

    [Called By]

    USBD_CDC_SetRxBuffer (Thumb, 12 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_SetRxBuffer))

    [Called By]

    USBD_CDC_SetTxBuffer (Thumb, 16 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_SetTxBuffer))

    [Called By]

    USBD_CDC_TransmitPacket (Thumb, 52 bytes, Stack size 8 bytes, usbd_cdc.o(i.USBD_CDC_TransmitPacket))

    [Stack]


    [Calls]
    [Called By]

    USBD_ClrClassConfig (Thumb, 14 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_ClrClassConfig))

    [Stack]


    [Called By]

    USBD_CtlContinueRx (Thumb, 16 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlContinueRx))

    [Stack]


    [Calls]
    [Called By]

    USBD_CtlContinueSendData (Thumb, 16 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlContinueSendData))

    [Stack]


    [Calls]
    [Called By]

    USBD_CtlPrepareRx (Thumb, 30 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlPrepareRx))

    [Stack]


    [Calls]
    [Called By]

    USBD_CtlReceiveStatus (Thumb, 22 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlReceiveStatus))

    [Stack]


    [Calls]
    [Called By]

    USBD_CtlSendData (Thumb, 26 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlSendData))

    [Stack]


    [Calls]
    [Called By]

    USBD_CtlSendStatus (Thumb, 22 bytes, Stack size 8 bytes, usbd_ioreq.o(i.USBD_CtlSendStatus))

    [Stack]


    [Calls]
    [Called By]

    USBD_FS_ConfigStrDescriptor (Thumb, 16 bytes, Stack size 8 bytes, usbd_desc.o(i.USBD_FS_ConfigStrDescriptor))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_FS_DeviceDescriptor (Thumb, 8 bytes, Stack size 0 bytes, usbd_desc.o(i.USBD_FS_DeviceDescriptor))
    [Address Reference Count : 1]

    USBD_FS_InterfaceStrDescriptor (Thumb, 16 bytes, Stack size 8 bytes, usbd_desc.o(i.USBD_FS_InterfaceStrDescriptor))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_FS_LangIDStrDescriptor (Thumb, 8 bytes, Stack size 0 bytes, usbd_desc.o(i.USBD_FS_LangIDStrDescriptor))
    [Address Reference Count : 1]

    USBD_FS_ManufacturerStrDescriptor (Thumb, 16 bytes, Stack size 8 bytes, usbd_desc.o(i.USBD_FS_ManufacturerStrDescriptor))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_FS_ProductStrDescriptor (Thumb, 16 bytes, Stack size 8 bytes, usbd_desc.o(i.USBD_FS_ProductStrDescriptor))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_FS_SerialStrDescriptor (Thumb, 16 bytes, Stack size 8 bytes, usbd_desc.o(i.USBD_FS_SerialStrDescriptor))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_GetString (Thumb, 100 bytes, Stack size 8 bytes, usbd_ctlreq.o(i.USBD_GetString))

    [Stack]


    [Called By]

    USBD_Init (Thumb, 48 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_Init))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_ClearStallEP (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_ClearStallEP))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_CloseEP (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_CloseEP))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_DataInStage (Thumb, 176 bytes, Stack size 16 bytes, usbd_core.o(i.USBD_LL_DataInStage))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_DataOutStage (Thumb, 106 bytes, Stack size 16 bytes, usbd_core.o(i.USBD_LL_DataOutStage))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_DevConnected (Thumb, 4 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_DevConnected))

    [Called By]

    USBD_LL_DevDisconnected (Thumb, 22 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_LL_DevDisconnected))

    [Stack]


    [Called By]

    USBD_LL_GetRxDataSize (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(i.USBD_LL_GetRxDataSize))

    [Calls]


    [Called By]

    USBD_LL_Init (Thumb, 100 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_Init))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_IsStallEP (Thumb, 32 bytes, Stack size 0 bytes, usbd_conf.o(i.USBD_LL_IsStallEP))

    [Called By]

    USBD_LL_IsoINIncomplete (Thumb, 4 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_IsoINIncomplete))

    [Called By]

    USBD_LL_IsoOUTIncomplete (Thumb, 4 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_IsoOUTIncomplete))

    [Called By]

    USBD_LL_OpenEP (Thumb, 38 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_OpenEP))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_PrepareReceive (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_PrepareReceive))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_Reset (Thumb, 62 bytes, Stack size 16 bytes, usbd_core.o(i.USBD_LL_Reset))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_Resume (Thumb, 12 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_Resume))

    [Called By]

    USBD_LL_SOF (Thumb, 26 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_LL_SOF))

    [Stack]


    [Called By]

    USBD_LL_SetSpeed (Thumb, 6 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_SetSpeed))

    [Called By]

    USBD_LL_SetUSBAddress (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_SetUSBAddress))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_SetupStage (Thumb, 94 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_LL_SetupStage))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_StallEP (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_StallEP))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_Start (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_Start))

    [Stack]


    [Calls]
    [Called By]

    USBD_LL_Suspend (Thumb, 18 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_LL_Suspend))

    [Called By]

    USBD_LL_Transmit (Thumb, 32 bytes, Stack size 8 bytes, usbd_conf.o(i.USBD_LL_Transmit))

    [Stack]


    [Calls]
    [Called By]

    USBD_ParseSetupRequest (Thumb, 40 bytes, Stack size 0 bytes, usbd_ctlreq.o(i.USBD_ParseSetupRequest))

    [Called By]

    USBD_RegisterClass (Thumb, 16 bytes, Stack size 0 bytes, usbd_core.o(i.USBD_RegisterClass))

    [Called By]

    USBD_SetClassConfig (Thumb, 24 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_SetClassConfig))

    [Stack]


    [Called By]

    USBD_Start (Thumb, 10 bytes, Stack size 8 bytes, usbd_core.o(i.USBD_Start))

    [Stack]


    [Calls]
    [Called By]

    USBD_StdDevReq (Thumb, 652 bytes, Stack size 24 bytes, usbd_ctlreq.o(i.USBD_StdDevReq))

    [Stack]


    [Calls]
    [Called By]

    USBD_StdEPReq (Thumb, 266 bytes, Stack size 16 bytes, usbd_ctlreq.o(i.USBD_StdEPReq))

    [Stack]


    [Calls]
    [Called By]

    USBD_StdItfReq (Thumb, 64 bytes, Stack size 16 bytes, usbd_ctlreq.o(i.USBD_StdItfReq))

    [Stack]


    [Calls]
    [Called By]

    USB_ActivateEndpoint (Thumb, 140 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ActivateEndpoint))

    [Called By]

    USB_ActivateSetup (Thumb, 52 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ActivateSetup))

    [Called By]

    USB_CoreInit (Thumb, 206 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_CoreInit))

    [Called By]

    USB_DeactivateEndpoint (Thumb, 200 bytes, Stack size 20 bytes, stm32f4xx_ll_usb.o(i.USB_DeactivateEndpoint))

    [Stack]


    [Calls]
    [Called By]

    USB_DevConnect (Thumb, 24 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(i.USB_DevConnect))

    [Stack]


    [Calls]
    [Called By]

    USB_DevDisconnect (Thumb, 24 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(i.USB_DevDisconnect))

    [Stack]


    [Calls]
    [Called By]

    USB_DevInit (Thumb, 330 bytes, Stack size 28 bytes, stm32f4xx_ll_usb.o(i.USB_DevInit))

    [Stack]


    [Calls]
    [Called By]

    USB_DisableGlobalInt (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_DisableGlobalInt))

    [Called By]

    USB_EP0StartXfer (Thumb, 338 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(i.USB_EP0StartXfer))

    [Stack]


    [Called By]

    USB_EP0_OutStart (Thumb, 62 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_EP0_OutStart))

    [Called By]

    USB_EPClearStall (Thumb, 102 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_EPClearStall))

    [Called By]

    USB_EPSetStall (Thumb, 100 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_EPSetStall))

    [Called By]

    USB_EPStartXfer (Thumb, 606 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(i.USB_EPStartXfer))

    [Stack]


    [Called By]

    USB_EnableGlobalInt (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_EnableGlobalInt))

    [Called By]

    USB_FlushTxFifo (Thumb, 34 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_FlushTxFifo))

    [Called By]

    USB_GetDevSpeed (Thumb, 58 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_GetDevSpeed))

    [Called By]

    USB_GetMode (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_GetMode))

    [Called By]

    USB_ReadDevAllInEpInterrupt (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadDevAllInEpInterrupt))

    [Called By]

    USB_ReadDevAllOutEpInterrupt (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadDevAllOutEpInterrupt))

    [Called By]

    USB_ReadDevInEPInterrupt (Thumb, 30 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadDevInEPInterrupt))

    [Called By]

    USB_ReadDevOutEPInterrupt (Thumb, 16 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadDevOutEPInterrupt))

    [Called By]

    USB_ReadInterrupts (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadInterrupts))

    [Called By]

    USB_ReadPacket (Thumb, 34 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_ReadPacket))

    [Called By]

    USB_SetCurrentMode (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(i.USB_SetCurrentMode))

    [Stack]


    [Calls]
    [Called By]

    USB_SetDevAddress (Thumb, 34 bytes, Stack size 0 bytes, stm32f4xx_ll_usb.o(i.USB_SetDevAddress))

    [Called By]

    USB_WritePacket (Thumb, 46 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(i.USB_WritePacket))

    [Stack]


    [Called By]

    UsageFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.UsageFault_Handler))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    _Error_Handler (Thumb, 2 bytes, Stack size 0 bytes, main.o(i._Error_Handler))

    [Calls]


    [Called By]

    __0vsnprintf (Thumb, 40 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)

    [Calls]

    __1vsnprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)

    __2vsnprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)

    __c89vsnprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)

    vsnprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf))

    [Stack]


    [Called By]

    __ARM_common_memcpy4_5 (Thumb, 10 bytes, Stack size 0 bytes, commands_pro.o(i.__ARM_common_memcpy4_5))

    [Called By]

    __hardfp_floorf (Thumb, 98 bytes, Stack size 0 bytes, floorf.o(i.__hardfp_floorf))

    [Called By]

    _is_digit (Thumb, 14 bytes, Stack size 0 bytes, scanf_fp.o(i._is_digit), UNUSED)

    [Called By]

    arm_cos_f32 (Thumb, 108 bytes, Stack size 0 bytes, arm_cos_f32.o(i.arm_cos_f32))

    [Called By]

    arm_sin_f32 (Thumb, 104 bytes, Stack size 0 bytes, arm_sin_f32.o(i.arm_sin_f32))

    [Called By]

    buffer_append_float16 (Thumb, 44 bytes, Stack size 4 bytes, buffer.o(i.buffer_append_float16))

    [Stack]


    [Called By]

    buffer_append_float32 (Thumb, 72 bytes, Stack size 4 bytes, buffer.o(i.buffer_append_float32))

    [Stack]


    [Called By]

    buffer_append_int32 (Thumb, 60 bytes, Stack size 4 bytes, buffer.o(i.buffer_append_int32))

    [Stack]


    [Called By]

    buffer_get_int32 (Thumb, 24 bytes, Stack size 0 bytes, buffer.o(i.buffer_get_int32))

    [Called By]

    calib_enc_offset (Thumb, 582 bytes, Stack size 72 bytes, low_level.o(i.calib_enc_offset))

    [Stack]


    [Calls]
    [Called By]

    check_timing (Thumb, 42 bytes, Stack size 0 bytes, low_level.o(i.check_timing))

    [Called By]

    cmd_parse_thread (Thumb, 238 bytes, Stack size 0 bytes, commands.o(i.cmd_parse_thread))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    cmd_printf (Thumb, 54 bytes, Stack size 24 bytes, commands.o(i.cmd_printf))

    [Stack]


    [Calls]
    [Called By]

    commands_printf (Thumb, 60 bytes, Stack size 24 bytes, commands_pro.o(i.commands_printf))

    [Stack]


    [Calls]
    [Called By]

    commands_process_packet (Thumb, 1372 bytes, Stack size 32 bytes, commands_pro.o(i.commands_process_packet))

    [Stack]


    [Calls]
    [Called By]

    commands_process_string (Thumb, 1522 bytes, Stack size 320 bytes, commands.o(i.commands_process_string))

    [Stack]


    [Calls]
    [Called By]

    commands_send_packet (Thumb, 12 bytes, Stack size 0 bytes, commands_pro.o(i.commands_send_packet))

    [Called By]

    commands_set_send_func (Thumb, 6 bytes, Stack size 0 bytes, commands_pro.o(i.commands_set_send_func))

    [Called By]

    commands_write (Thumb, 98 bytes, Stack size 16 bytes, commands.o(i.commands_write))

    [Stack]


    [Calls]
    [Called By]

    control_motor_loop (Thumb, 742 bytes, Stack size 64 bytes, low_level.o(i.control_motor_loop))

    [Stack]


    [Calls]
    [Called By]

    crc16 (Thumb, 48 bytes, Stack size 4 bytes, crc.o(i.crc16))

    [Stack]


    [Called By]

    do_checks (Thumb, 82 bytes, Stack size 8 bytes, low_level.o(i.do_checks))

    [Stack]


    [Calls]
    [Called By]

    enc_index_cb (Thumb, 80 bytes, Stack size 0 bytes, low_level.o(i.enc_index_cb))

    [Calls]


    [Called By]

    fast_atan2 (Thumb, 132 bytes, Stack size 0 bytes, utils.o(i.fast_atan2))

    [Called By]

    free (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free))

    [Stack]


    [Called By]

    global_fault (Thumb, 74 bytes, Stack size 0 bytes, low_level.o(i.global_fault))

    [Calls]


    [Called By]

    init_communication (Thumb, 20 bytes, Stack size 8 bytes, commands.o(i.init_communication))

    [Stack]


    [Calls]
    [Called By]

    init_motor_control (Thumb, 70 bytes, Stack size 8 bytes, low_level.o(i.init_motor_control))

    [Stack]


    [Calls]
    [Called By]

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

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    malloc (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc))

    [Stack]


    [Called By]

    measure_phase_inductance (Thumb, 322 bytes, Stack size 88 bytes, low_level.o(i.measure_phase_inductance))

    [Stack]


    [Calls]
    [Called By]

    measure_phase_resistance (Thumb, 298 bytes, Stack size 72 bytes, low_level.o(i.measure_phase_resistance))

    [Stack]


    [Calls]
    [Called By]

    mod (Thumb, 16 bytes, Stack size 0 bytes, utils.o(i.mod))

    [Called By]

    motor_calibration (Thumb, 254 bytes, Stack size 16 bytes, low_level.o(i.motor_calibration))

    [Stack]


    [Calls]
    [Called By]

    motor_thread (Thumb, 232 bytes, Stack size 16 bytes, low_level.o(i.motor_thread))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    osDelay (Thumb, 16 bytes, Stack size 8 bytes, cmsis_os.o(i.osDelay))

    [Stack]


    [Calls]
    [Called By]

    osKernelStart (Thumb, 10 bytes, Stack size 8 bytes, cmsis_os.o(i.osKernelStart))

    [Stack]


    [Calls]
    [Called By]

    osSemaphoreCreate (Thumb, 38 bytes, Stack size 8 bytes, cmsis_os.o(i.osSemaphoreCreate))

    [Stack]


    [Calls]
    [Called By]

    osSemaphoreRelease (Thumb, 76 bytes, Stack size 16 bytes, cmsis_os.o(i.osSemaphoreRelease))

    [Stack]


    [Calls]
    [Called By]

    osSemaphoreWait (Thumb, 96 bytes, Stack size 8 bytes, cmsis_os.o(i.osSemaphoreWait))

    [Stack]


    [Calls]
    [Called By]

    osSignalSet (Thumb, 82 bytes, Stack size 16 bytes, cmsis_os.o(i.osSignalSet))

    [Stack]


    [Calls]
    [Called By]

    osSignalWait (Thumb, 100 bytes, Stack size 32 bytes, cmsis_os.o(i.osSignalWait))

    [Stack]


    [Calls]
    [Called By]

    osSystickHandler (Thumb, 20 bytes, Stack size 8 bytes, cmsis_os.o(i.osSystickHandler))

    [Stack]


    [Calls]
    [Called By]

    osThreadCreate (Thumb, 46 bytes, Stack size 16 bytes, cmsis_os.o(i.osThreadCreate))

    [Stack]


    [Calls]
    [Called By]

    osThreadGetId (Thumb, 4 bytes, Stack size 0 bytes, cmsis_os.o(i.osThreadGetId))

    [Calls]


    [Called By]

    packet_init (Thumb, 16 bytes, Stack size 0 bytes, packet.o(i.packet_init))

    [Called By]

    packet_process_byte (Thumb, 202 bytes, Stack size 16 bytes, packet.o(i.packet_process_byte))

    [Stack]


    [Calls]
    [Called By]

    packet_send_packet (Thumb, 136 bytes, Stack size 24 bytes, packet.o(i.packet_send_packet))

    [Stack]


    [Calls]
    [Called By]

    packet_timer_thread (Thumb, 12 bytes, Stack size 0 bytes, commands.o(i.packet_timer_thread))

    [Stack]


    [Calls]
    [Called By]
    [Address Reference Count : 1]

    packet_timerfunc (Thumb, 48 bytes, Stack size 0 bytes, packet.o(i.packet_timerfunc))

    [Called By]

    print_monitoring (Thumb, 154 bytes, Stack size 32 bytes, commands.o(i.print_monitoring))

    [Stack]


    [Calls]
    [Called By]

    pvPortMalloc (Thumb, 286 bytes, Stack size 24 bytes, heap_4.o(i.pvPortMalloc))

    [Stack]


    [Calls]
    [Called By]

    pvTaskIncrementMutexHeldCount (Thumb, 18 bytes, Stack size 0 bytes, tasks.o(i.pvTaskIncrementMutexHeldCount))

    [Called By]

    pwm_trig_adc_cb (Thumb, 380 bytes, Stack size 24 bytes, low_level.o(i.pwm_trig_adc_cb))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    pxPortInitialiseStack (Thumb, 38 bytes, Stack size 0 bytes, port.o(i.pxPortInitialiseStack))

    [Called By]

    queue_modulation_timings (Thumb, 84 bytes, Stack size 24 bytes, low_level.o(i.queue_modulation_timings))

    [Stack]


    [Calls]
    [Called By]

    queue_voltage_timings (Thumb, 34 bytes, Stack size 0 bytes, low_level.o(i.queue_voltage_timings))

    [Stack]


    [Calls]
    [Called By]

    scan_for_enc_idx (Thumb, 212 bytes, Stack size 64 bytes, low_level.o(i.scan_for_enc_idx))

    [Stack]


    [Calls]
    [Called By]

    set_brake_current (Thumb, 108 bytes, Stack size 0 bytes, low_level.o(i.set_brake_current))

    [Called By]

    set_cmd_buffer (Thumb, 8 bytes, Stack size 0 bytes, commands.o(i.set_cmd_buffer))

    [Called By]

    set_current_setpoint (Thumb, 46 bytes, Stack size 8 bytes, low_level.o(i.set_current_setpoint))

    [Stack]


    [Calls]
    [Called By]

    set_pos_setpoint (Thumb, 98 bytes, Stack size 8 bytes, low_level.o(i.set_pos_setpoint))

    [Stack]


    [Calls]
    [Called By]

    set_vel_setpoint (Thumb, 72 bytes, Stack size 8 bytes, low_level.o(i.set_vel_setpoint))

    [Stack]


    [Calls]
    [Called By]

    spin_up_sensorless (Thumb, 258 bytes, Stack size 56 bytes, low_level.o(i.spin_up_sensorless))

    [Stack]


    [Calls]
    [Called By]

    start_adc_pwm (Thumb, 198 bytes, Stack size 16 bytes, low_level.o(i.start_adc_pwm))

    [Stack]


    [Calls]
    [Called By]

    start_pwm (Thumb, 86 bytes, Stack size 8 bytes, low_level.o(i.start_pwm))

    [Stack]


    [Calls]
    [Called By]

    step_cb (Thumb, 116 bytes, Stack size 8 bytes, low_level.o(i.step_cb))

    [Stack]


    [Calls]
    [Called By]

    sync_timers (Thumb, 340 bytes, Stack size 24 bytes, low_level.o(i.sync_timers))

    [Stack]


    [Called By]

    terminal_process_string (Thumb, 5550 bytes, Stack size 344 bytes, terminal.o(i.terminal_process_string))

    [Stack]


    [Calls]
    [Called By]

    update_rotor (Thumb, 586 bytes, Stack size 48 bytes, low_level.o(i.update_rotor))

    [Stack]


    [Calls]
    [Called By]

    usb_update_thread (Thumb, 30 bytes, Stack size 0 bytes, commands.o(i.usb_update_thread))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    uxListRemove (Thumb, 36 bytes, Stack size 0 bytes, list.o(i.uxListRemove))

    [Called By]

    vListInitialise (Thumb, 22 bytes, Stack size 0 bytes, list.o(i.vListInitialise))

    [Called By]

    vListInitialiseItem (Thumb, 6 bytes, Stack size 0 bytes, list.o(i.vListInitialiseItem))

    [Called By]

    vListInsert (Thumb, 54 bytes, Stack size 4 bytes, list.o(i.vListInsert))

    [Stack]


    [Called By]

    vListInsertEnd (Thumb, 24 bytes, Stack size 0 bytes, list.o(i.vListInsertEnd))

    [Called By]

    vPortEnterCritical (Thumb, 56 bytes, Stack size 0 bytes, port.o(i.vPortEnterCritical))

    [Called By]

    vPortExitCritical (Thumb, 38 bytes, Stack size 0 bytes, port.o(i.vPortExitCritical))

    [Called By]

    vPortFree (Thumb, 90 bytes, Stack size 16 bytes, heap_4.o(i.vPortFree))

    [Stack]


    [Calls]
    [Called By]

    vPortValidateInterruptPriority (Thumb, 74 bytes, Stack size 8 bytes, port.o(i.vPortValidateInterruptPriority))

    [Stack]


    [Calls]
    [Called By]

    vTaskDelay (Thumb, 66 bytes, Stack size 8 bytes, tasks.o(i.vTaskDelay))

    [Stack]


    [Calls]
    [Called By]

    vTaskDelete (Thumb, 194 bytes, Stack size 16 bytes, tasks.o(i.vTaskDelete))

    [Stack]


    [Calls]
    [Called By]

    vTaskMissedYield (Thumb, 8 bytes, Stack size 0 bytes, tasks.o(i.vTaskMissedYield))

    [Called By]

    vTaskPlaceOnEventList (Thumb, 46 bytes, Stack size 8 bytes, tasks.o(i.vTaskPlaceOnEventList))

    [Stack]


    [Calls]
    [Called By]

    vTaskPriorityInherit (Thumb, 132 bytes, Stack size 16 bytes, tasks.o(i.vTaskPriorityInherit))

    [Stack]


    [Calls]
    [Called By]

    vTaskSetTimeOutState (Thumb, 30 bytes, Stack size 0 bytes, tasks.o(i.vTaskSetTimeOutState))

    [Called By]

    vTaskStartScheduler (Thumb, 92 bytes, Stack size 16 bytes, tasks.o(i.vTaskStartScheduler))

    [Stack]


    [Calls]
    [Called By]

    vTaskSuspendAll (Thumb, 10 bytes, Stack size 0 bytes, tasks.o(i.vTaskSuspendAll))

    [Called By]

    vTaskSwitchContext (Thumb, 84 bytes, Stack size 0 bytes, tasks.o(i.vTaskSwitchContext))

    [Called By]

    vbus_sense_adc_cb (Thumb, 32 bytes, Stack size 8 bytes, low_level.o(i.vbus_sense_adc_cb))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    wrap_pm_pi (Thumb, 52 bytes, Stack size 0 bytes, utils.o(i.wrap_pm_pi))

    [Called By]

    xPortStartScheduler (Thumb, 236 bytes, Stack size 16 bytes, port.o(i.xPortStartScheduler))

    [Stack]


    [Calls]
    [Called By]

    xPortSysTickHandler (Thumb, 38 bytes, Stack size 8 bytes, port.o(i.xPortSysTickHandler))

    [Stack]


    [Calls]
    [Called By]

    xQueueGenericCreate (Thumb, 70 bytes, Stack size 16 bytes, queue.o(i.xQueueGenericCreate))

    [Stack]


    [Calls]
    [Called By]

    xQueueGenericReceive (Thumb, 426 bytes, Stack size 64 bytes, queue.o(i.xQueueGenericReceive))

    [Stack]


    [Calls]
    [Called By]

    xQueueGenericReset (Thumb, 130 bytes, Stack size 16 bytes, queue.o(i.xQueueGenericReset))

    [Stack]


    [Calls]
    [Called By]

    xQueueGenericSend (Thumb, 462 bytes, Stack size 64 bytes, queue.o(i.xQueueGenericSend))

    [Stack]


    [Calls]
    [Called By]

    xQueueGiveFromISR (Thumb, 158 bytes, Stack size 16 bytes, queue.o(i.xQueueGiveFromISR))

    [Stack]


    [Calls]
    [Called By]

    xQueueReceiveFromISR (Thumb, 172 bytes, Stack size 32 bytes, queue.o(i.xQueueReceiveFromISR))

    [Stack]


    [Calls]
    [Called By]

    xTaskCheckForTimeOut (Thumb, 112 bytes, Stack size 16 bytes, tasks.o(i.xTaskCheckForTimeOut))

    [Stack]


    [Calls]
    [Called By]

    xTaskCreate (Thumb, 342 bytes, Stack size 40 bytes, tasks.o(i.xTaskCreate))

    [Stack]


    [Calls]
    [Called By]

    xTaskGenericNotify (Thumb, 190 bytes, Stack size 24 bytes, tasks.o(i.xTaskGenericNotify))

    [Stack]


    [Calls]
    [Called By]

    xTaskGenericNotifyFromISR (Thumb, 232 bytes, Stack size 32 bytes, tasks.o(i.xTaskGenericNotifyFromISR))

    [Stack]


    [Calls]
    [Called By]

    xTaskGetCurrentTaskHandle (Thumb, 6 bytes, Stack size 0 bytes, tasks.o(i.xTaskGetCurrentTaskHandle))

    [Called By]

    xTaskGetSchedulerState (Thumb, 24 bytes, Stack size 0 bytes, tasks.o(i.xTaskGetSchedulerState))

    [Called By]

    xTaskIncrementTick (Thumb, 226 bytes, Stack size 32 bytes, tasks.o(i.xTaskIncrementTick))

    [Stack]


    [Calls]
    [Called By]

    xTaskNotifyWait (Thumb, 136 bytes, Stack size 24 bytes, tasks.o(i.xTaskNotifyWait))

    [Stack]


    [Calls]
    [Called By]

    xTaskPriorityDisinherit (Thumb, 146 bytes, Stack size 16 bytes, tasks.o(i.xTaskPriorityDisinherit))

    [Stack]


    [Calls]
    [Called By]

    xTaskRemoveFromEventList (Thumb, 104 bytes, Stack size 16 bytes, tasks.o(i.xTaskRemoveFromEventList))

    [Stack]


    [Calls]
    [Called By]

    xTaskResumeAll (Thumb, 214 bytes, Stack size 32 bytes, tasks.o(i.xTaskResumeAll))

    [Stack]


    [Calls]
    [Called By]

    Local Symbols

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

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

    CDC_Init_FS (Thumb, 24 bytes, Stack size 8 bytes, usbd_cdc_if.o(i.CDC_Init_FS))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    CDC_Receive_FS (Thumb, 38 bytes, Stack size 8 bytes, usbd_cdc_if.o(i.CDC_Receive_FS))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    process_packet (Thumb, 24 bytes, Stack size 16 bytes, commands.o(i.process_packet))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    send_packet (Thumb, 4 bytes, Stack size 0 bytes, commands.o(i.send_packet))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    send_packet_wrapper (Thumb, 6 bytes, Stack size 0 bytes, commands.o(i.send_packet_wrapper))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    prvUnlockQueue (Thumb, 108 bytes, Stack size 16 bytes, queue.o(i.prvUnlockQueue))

    [Stack]


    [Calls]
    [Called By]

    prvAddCurrentTaskToDelayedList (Thumb, 108 bytes, Stack size 24 bytes, tasks.o(i.prvAddCurrentTaskToDelayedList))

    [Stack]


    [Calls]
    [Called By]

    prvIdleTask (Thumb, 110 bytes, Stack size 0 bytes, tasks.o(i.prvIdleTask))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    prvTaskExitError (Thumb, 38 bytes, Stack size 0 bytes, port.o(i.prvTaskExitError))
    [Address Reference Count : 1]

    prvInsertBlockIntoFreeList (Thumb, 86 bytes, Stack size 4 bytes, heap_4.o(i.prvInsertBlockIntoFreeList))

    [Stack]


    [Called By]

    USBD_CDC_DataIn (Thumb, 32 bytes, Stack size 8 bytes, usbd_cdc.o(i.USBD_CDC_DataIn))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_CDC_DataOut (Thumb, 48 bytes, Stack size 16 bytes, usbd_cdc.o(i.USBD_CDC_DataOut))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_CDC_DeInit (Thumb, 60 bytes, Stack size 16 bytes, usbd_cdc.o(i.USBD_CDC_DeInit))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_CDC_EP0_RxReady (Thumb, 38 bytes, Stack size 8 bytes, usbd_cdc.o(i.USBD_CDC_EP0_RxReady))

    [Stack]


    [Address Reference Count : 1]

    USBD_CDC_GetFSCfgDesc (Thumb, 8 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_GetFSCfgDesc))
    [Address Reference Count : 1]

    USBD_CDC_GetHSCfgDesc (Thumb, 8 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_GetHSCfgDesc))
    [Address Reference Count : 1]

    USBD_CDC_GetOtherSpeedCfgDesc (Thumb, 8 bytes, Stack size 0 bytes, usbd_cdc.o(i.USBD_CDC_GetOtherSpeedCfgDesc))
    [Address Reference Count : 1]

    USBD_CDC_Init (Thumb, 154 bytes, Stack size 16 bytes, usbd_cdc.o(i.USBD_CDC_Init))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    USBD_CDC_Setup (Thumb, 114 bytes, Stack size 16 bytes, usbd_cdc.o(i.USBD_CDC_Setup))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    SPI_CheckFlag_BSY (Thumb, 34 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(i.SPI_CheckFlag_BSY))

    [Stack]


    [Calls]
    [Called By]

    SPI_WaitFlagStateUntilTimeout (Thumb, 160 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout))

    [Stack]


    [Calls]
    [Called By]

    TIM_OC1_SetConfig (Thumb, 96 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(i.TIM_OC1_SetConfig))

    [Stack]


    [Called By]

    TIM_CCxNChannelCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(i.TIM_CCxNChannelCmd))

    [Called By]

    UART_DMAAbortOnError (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMAAbortOnError))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UART_DMAError (Thumb, 96 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMAError))

    [Stack]


    [Calls]
    [Address Reference Count : 2]

    UART_DMAReceiveCplt (Thumb, 60 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMAReceiveCplt))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UART_DMARxHalfCplt (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMARxHalfCplt))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UART_DMATransmitCplt (Thumb, 48 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMATransmitCplt))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UART_DMATxHalfCplt (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_DMATxHalfCplt))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    UART_Receive_IT (Thumb, 134 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(i.UART_Receive_IT))

    [Stack]


    [Calls]
    [Called By]

    UART_SetConfig (Thumb, 820 bytes, Stack size 24 bytes, stm32f4xx_hal_uart.o(i.UART_SetConfig))

    [Stack]


    [Calls]
    [Called By]

    _fp_digits (Thumb, 366 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)

    [Calls]


    [Called By]

    _printf_core (Thumb, 1744 bytes, Stack size 136 bytes, printfa.o(i._printf_core), UNUSED)

    [Calls]


    [Called By]

    _printf_post_padding (Thumb, 36 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)

    [Called By]

    _printf_pre_padding (Thumb, 46 bytes, Stack size 24 bytes, printfa.o(i._printf_pre_padding), UNUSED)

    [Called By]

    _snputc (Thumb, 22 bytes, Stack size 0 bytes, printfa.o(i._snputc))
    [Address Reference Count : 1]

    _fp_value (Thumb, 296 bytes, Stack size 64 bytes, scanf_fp.o(.text), UNUSED)

    [Calls]


    [Called By]

    _scanf_char_input (Thumb, 12 bytes, Stack size 0 bytes, scanf_char.o(.text))
    [Address Reference Count : 1]

    Undefined Global Symbols