ADC_IRQHandler   ⇒   ADC_IRQHandler
Function Pointers
 - ADC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - Ai_IdleLineCallback from ai.o(.text.Ai_IdleLineCallback) referenced 2 times from ai.o(.text.AI_Init)
 
 - Ai_RxCpltCallback from ai.o(.text.Ai_RxCpltCallback) referenced 2 times from ai.o(.text.AI_Init)
 
 - BMI088_AcclIntCallback from bmi088.o(.text.BMI088_AcclIntCallback) referenced 2 times from bmi088.o(.text.BMI088_Init)
 
 - BMI088_GyroIntCallback from bmi088.o(.text.BMI088_GyroIntCallback) referenced 2 times from bmi088.o(.text.BMI088_Init)
 
 - BMI088_RxCpltCallback from bmi088.o(.text.BMI088_RxCpltCallback) referenced 2 times from bmi088.o(.text.BMI088_Init)
 
 - BusFault_Handler from stm32f4xx_it.o(.text.BusFault_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN1_RX0_IRQHandler from stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN1_RX1_IRQHandler from stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN1_SCE_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN1_TX_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN2_RX0_IRQHandler from stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN2_RX1_IRQHandler from stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN2_SCE_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN2_TX_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - CAN_CAN1RxFifoMsgPendingCallback from can_2.o(.text.CAN_CAN1RxFifoMsgPendingCallback) referenced 2 times from can_2.o(.text.CAN_Init)
 
 - CAN_CAN2RxFifoMsgPendingCallback from can_2.o(.text.CAN_CAN2RxFifoMsgPendingCallback) referenced 2 times from can_2.o(.text.CAN_Init)
 
 - CDC_Control_FS from usbd_cdc_if.o(.text.CDC_Control_FS) referenced 2 times from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
 - CDC_DeInit_FS from usbd_cdc_if.o(.text.CDC_DeInit_FS) referenced 2 times from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
 - CDC_Init_FS from usbd_cdc_if.o(.text.CDC_Init_FS) referenced 2 times from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
 - CDC_Receive_FS from usbd_cdc_if.o(.text.CDC_Receive_FS) referenced 2 times from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
 - CDC_TransmitCplt_FS from usbd_cdc_if.o(.text.CDC_TransmitCplt_FS) referenced 2 times from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
 - Command_CaliGyro from cli.o(.text.Command_CaliGyro) referenced from cli.o(.rodata.command_table)
 
 - Command_Config from cli.o(.text.Command_Config) referenced from cli.o(.rodata.command_table)
 
 - Command_Endian from cli.o(.text.Command_Endian) referenced from cli.o(.rodata.command_table)
 
 - Command_SetGimbalLim from cli.o(.text.Command_SetGimbalLim) referenced from cli.o(.rodata.command_table)
 
 - Command_SetMechZero from cli.o(.text.Command_SetMechZero) referenced from cli.o(.rodata.command_table)
 
 - Command_Stats from cli.o(.text.Command_Stats) referenced from cli.o(.rodata.command_table)
 
 - DCMI_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream1_IRQHandler from stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream2_IRQHandler from stm32f4xx_it.o(.text.DMA1_Stream2_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream6_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA1_Stream7_IRQHandler from stm32f4xx_it.o(.text.DMA1_Stream7_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream1_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream2_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream3_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream5_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream5_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream6_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream6_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DMA2_Stream7_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream7_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - DR16_RxCpltCallback from dr16.o(.text.DR16_RxCpltCallback) referenced 2 times from dr16.o(.text.DR16_Init)
 
 - DebugMon_Handler from stm32f4xx_it.o(.text.DebugMon_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - ETH_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - ETH_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI0_IRQHandler from stm32f4xx_it.o(.text.EXTI0_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI15_10_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI3_IRQHandler from stm32f4xx_it.o(.text.EXTI3_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI4_IRQHandler from stm32f4xx_it.o(.text.EXTI4_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - EXTI9_5_IRQHandler from stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - FLASH_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - FMC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - FPU_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - HASH_RNG_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - HardFault_Handler from stm32f4xx_it.o(.text.HardFault_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C1_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C1_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C2_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C2_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C3_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - I2C3_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - MemManage_Handler from stm32f4xx_it.o(.text.MemManage_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - NMI_Handler from stm32f4xx_it.o(.text.NMI_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_FS_IRQHandler from stm32f4xx_it.o(.text.OTG_FS_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_FS_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_HS_EP1_IN_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_HS_EP1_OUT_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_HS_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - OTG_HS_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - PVD_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - PendSV_Handler from port.o(.text.PendSV_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - RCC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - RTC_Alarm_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - RTC_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - RefereeFastRefreshTimerCallback from referee.o(.text.RefereeFastRefreshTimerCallback) referenced 2 times from referee.o(.text.Referee_Init)
 
 - RefereeSlowRefreshTimerCallback from referee.o(.text.RefereeSlowRefreshTimerCallback) referenced 2 times from referee.o(.text.Referee_Init)
 
 - Referee_AbortRxCpltCallback from referee.o(.text.Referee_AbortRxCpltCallback) referenced 2 times from referee.o(.text.Referee_Init)
 
 - Referee_IdleLineCallback from referee.o(.text.Referee_IdleLineCallback) referenced 2 times from referee.o(.text.Referee_Init)
 
 - Referee_RxCpltCallback from referee.o(.text.Referee_RxCpltCallback) referenced 2 times from referee.o(.text.Referee_Init)
 
 - Reset_Handler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - SDIO_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - SPI1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - SPI2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - SPI3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - SPI_DMAError from stm32f4xx_hal_spi.o(.text.SPI_DMAError) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 
 - SPI_DMAError from stm32f4xx_hal_spi.o(.text.SPI_DMAError) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
 - SPI_DMAHalfReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 
 - SPI_DMAHalfReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
 - SPI_DMAHalfTransmitReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
 - SPI_DMAReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 
 - SPI_DMAReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
 - SPI_DMATransmitReceiveCplt from stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt) referenced 2 times from stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
 - SVC_Handler from port.o(.text.SVC_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - StartDefaultTask from freertos.o(.text.StartDefaultTask) referenced 2 times from freertos.o(.text.MX_FREERTOS_Init)
 
 - SysTick_Handler from stm32f4xx_it.o(.text.SysTick_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - SystemInit from system_stm32f4xx.o(.text.SystemInit) referenced from startup_stm32f407xx.o(.text)
 
 - TAMP_STAMP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM1_BRK_TIM9_IRQHandler from stm32f4xx_it.o(.text.TIM1_BRK_TIM9_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM1_CC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM1_TRG_COM_TIM11_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM1_UP_TIM10_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM6_DAC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM7_IRQHandler from stm32f4xx_it.o(.text.TIM7_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM8_BRK_TIM12_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM8_CC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM8_TRG_COM_TIM14_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - TIM8_UP_TIM13_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - Task_Ai from ai_1.o(.text.Task_Ai) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_AttiEsti from atti_esti.o(.text.Task_AttiEsti) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_CLI from cli.o(.text.Task_CLI) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Can from can_3.o(.text.Task_Can) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Cap from cap_1.o(.text.Task_Cap) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Command from command.o(.text.Task_Command) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_CtrlChassis from ctrl_chassis.o(.text.Task_CtrlChassis) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_CtrlGimbal from ctrl_gimbal.o(.text.Task_CtrlGimbal) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_CtrlShoot from ctrl_shoot.o(.text.Task_CtrlShoot) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Info from info.o(.text.Task_Info) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Init from init.o(.text.Task_Init) referenced 2 times from freertos.o(.text.MX_FREERTOS_Init)
 
 - Task_Monitor from monitor.o(.text.Task_Monitor) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_RC from rc.o(.text.Task_RC) referenced 2 times from init.o(.text.Task_Init)
 
 - Task_Referee from referee_1.o(.text.Task_Referee) referenced 2 times from init.o(.text.Task_Init)
 
 - TimerCallback from cmsis_os2.o(.text.TimerCallback) referenced 4 times from cmsis_os2.o(.text.osTimerNew)
 
 - UART4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - UART5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - UART_DMAAbortOnError from stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler)
 
 - UART_DMAError from stm32f4xx_hal_uart.o(.text.UART_DMAError) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 
 - UART_DMAError from stm32f4xx_hal_uart.o(.text.UART_DMAError) referenced 2 times from stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
 - UART_DMAReceiveCplt from stm32f4xx_hal_uart.o(.text.UART_DMAReceiveCplt) referenced 2 times from stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
 - UART_DMARxHalfCplt from stm32f4xx_hal_uart.o(.text.UART_DMARxHalfCplt) referenced 2 times from stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
 - UART_DMARxOnlyAbortCallback from stm32f4xx_hal_uart.o(.text.UART_DMARxOnlyAbortCallback) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_AbortReceive_IT)
 
 - UART_DMATransmitCplt from stm32f4xx_hal_uart.o(.text.UART_DMATransmitCplt) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 
 - UART_DMATxHalfCplt from stm32f4xx_hal_uart.o(.text.UART_DMATxHalfCplt) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 
 - USART1_IRQHandler from stm32f4xx_it.o(.text.USART1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - USART2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - USART3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - USART6_IRQHandler from stm32f4xx_it.o(.text.USART6_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
 
 - USBD_CDC_DataIn from usbd_cdc.o(.text.USBD_CDC_DataIn) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_DataOut from usbd_cdc.o(.text.USBD_CDC_DataOut) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_DeInit from usbd_cdc.o(.text.USBD_CDC_DeInit) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_EP0_RxReady from usbd_cdc.o(.text.USBD_CDC_EP0_RxReady) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_GetDeviceQualifierDescriptor from usbd_cdc.o(.text.USBD_CDC_GetDeviceQualifierDescriptor) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_GetFSCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetFSCfgDesc) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_GetHSCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetHSCfgDesc) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_GetOtherSpeedCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetOtherSpeedCfgDesc) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_Init from usbd_cdc.o(.text.USBD_CDC_Init) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_CDC_Setup from usbd_cdc.o(.text.USBD_CDC_Setup) referenced 2 times from usbd_cdc.o(.data.USBD_CDC)
 
 - USBD_FS_ConfigStrDescriptor from usbd_desc.o(.text.USBD_FS_ConfigStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_DeviceDescriptor from usbd_desc.o(.text.USBD_FS_DeviceDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_InterfaceStrDescriptor from usbd_desc.o(.text.USBD_FS_InterfaceStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_LangIDStrDescriptor from usbd_desc.o(.text.USBD_FS_LangIDStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_ManufacturerStrDescriptor from usbd_desc.o(.text.USBD_FS_ManufacturerStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_ProductStrDescriptor from usbd_desc.o(.text.USBD_FS_ProductStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - USBD_FS_SerialStrDescriptor from usbd_desc.o(.text.USBD_FS_SerialStrDescriptor) referenced 2 times from usbd_desc.o(.data.FS_Desc)
 
 - UsageFault_Handler from stm32f4xx_it.o(.text.UsageFault_Handler) referenced from startup_stm32f407xx.o(RESET)
 
 - WWDG_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
 
 - __main from entry.o(.ARM.Collect$$$$00000000) referenced from startup_stm32f407xx.o(.text)
 
 - _snputc from printfa.o(i._snputc) referenced from printfa.o(i.__0snprintf)
 
 - _snputc from printfa.o(i._snputc) referenced from printfa.o(i.__0vsnprintf)
 
 - _sputc from printfa.o(i._sputc) referenced from printfa.o(i.__0sprintf)
 
 - main from main.o(.text.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
 
 - prvHelpCommand from freertos_cli.o(.text.prvHelpCommand) referenced from freertos_cli.o(.rodata.xHelpCommand)
 
 - prvIdleTask from tasks.o(.text.prvIdleTask) referenced 2 times from tasks.o(.text.vTaskStartScheduler)
 
 - prvTaskExitError from port.o(.text.prvTaskExitError) referenced 2 times from port.o(.text.pxPortInitialiseStack)
 
 - prvTimerTask from timers.o(.text.prvTimerTask) referenced 2 times from timers.o(.text.xTimerCreateTimerTask)
 
Global Symbols
__main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(.text)
 
_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))
Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
ADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
CAN1_SCE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
CAN1_TX_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
CAN2_SCE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
CAN2_TX_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DCMI_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream6_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
ETH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
ETH_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
EXTI15_10_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
EXTI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
EXTI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
FLASH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
FMC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
FPU_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
HASH_RNG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C1_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C1_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C2_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C2_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C3_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
I2C3_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_FS_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_HS_EP1_IN_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_HS_EP1_OUT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_HS_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_HS_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
PVD_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
RCC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
RTC_Alarm_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
RTC_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
SDIO_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
SPI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
SPI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TAMP_STAMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM1_CC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM1_TRG_COM_TIM11_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM1_UP_TIM10_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM6_DAC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM8_BRK_TIM12_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM8_CC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM8_TRG_COM_TIM14_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
TIM8_UP_TIM13_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
UART4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
UART5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
USART2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
USART3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
WWDG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
__aeabi_uldivmod (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text))
[Stack]
- Max Depth = 40
 - Call Chain = __aeabi_uldivmod
 
[Calls]- >>   __aeabi_llsr
 - >>   __aeabi_llsl
 
[Called By]- >>   HAL_RCC_GetSysClockFreq
 - >>   UART_SetConfig
 - >>   _printf_core
 - >>   _fp_digits
 
rand (Thumb, 20 bytes, Stack size 0 bytes, rand.o(.text))
[Called By]
srand (Thumb, 6 bytes, Stack size 0 bytes, rand.o(.text))
[Called By]
__aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
[Called By]
- >>   prvCopyDataToQueue
 - >>   prvCopyDataFromQueue
 - >>   AI_ParseHost
 - >>   Referee_Parse
 - >>   Referee_MoveData
 - >>   BSP_Flash_ReadBytes
 
__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)
__aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
- >>   _memset$wrapper
 - >>   __aeabi_memclr
 
__aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
__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))
[Calls]
[Called By]- >>   Referee_MoveData
 - >>   Task_CLI
 
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
- >>   SystemClock_Config
 - >>   DR16_ParseRC
 - >>   DR16_HandleOffline
 - >>   CAN_Init
 - >>   Command_Config
 
__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]
strncpy (Thumb, 24 bytes, Stack size 8 bytes, strncpy.o(.text))
[Stack]
- Max Depth = 8
 - Call Chain = strncpy
 
[Called By]- >>   FreeRTOS_CLIProcessCommand
 - >>   prvHelpCommand
 - >>   Command_Stats
 
strlen (Thumb, 14 bytes, Stack size 0 bytes, strlen.o(.text))
[Called By]
- >>   vTaskList
 - >>   vTaskGetRunTimeStats
 - >>   prvWriteNameToBuffer
 - >>   FreeRTOS_CLIProcessCommand
 - >>   Task_CLI
 
strcmp (Thumb, 28 bytes, Stack size 8 bytes, strcmp.o(.text))
[Stack]
- Max Depth = 8
 - Call Chain = strcmp
 
[Called By]- >>   Config_GetRobotParam
 - >>   Config_GetPilotCfg
 
strcpy (Thumb, 18 bytes, Stack size 0 bytes, strcpy.o(.text))
[Called By]
strncmp (Thumb, 30 bytes, Stack size 12 bytes, strncmp.o(.text))
[Stack]
- Max Depth = 12
 - Call Chain = strncmp
 
[Called By]- >>   FreeRTOS_CLIProcessCommand
 - >>   Command_Config
 
__aeabi_dadd (Thumb, 322 bytes, Stack size 48 bytes, dadd.o(.text))
[Stack]
- Max Depth = 88
 - Call Chain = __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_lasr
 - >>   __aeabi_llsl
 - >>   _double_round
 - >>   _double_epilogue
 
[Called By]- >>   Chassis_CalcWz
 - >>   Referee_UIRefresh
 - >>   __kernel_poly
 - >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __mathlib_dbl_infnan2
 - >>   __mathlib_dbl_infnan
 - >>   __hardfp_atan
 - >>   _fp_digits
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 
__aeabi_dsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
[Stack]
- Max Depth = 88
 - Call Chain = __aeabi_dsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __kernel_cos
 - >>   __hardfp_atan
 - >>   __hardfp_atan2
 
__aeabi_drsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
[Stack]
- Max Depth = 88
 - Call Chain = __aeabi_drsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __kernel_cos
 - >>   __hardfp_atan
 - >>   __hardfp_atan2
 
__aeabi_dmul (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text))
[Stack]
- Max Depth = 88
 - Call Chain = __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   Chassis_CalcWz
 - >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 - >>   __kernel_poly
 - >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __mathlib_dbl_underflow
 - >>   __kernel_cos
 - >>   __hardfp_atan
 - >>   _fp_digits
 
__aeabi_dcmple (Thumb, 54 bytes, Stack size 12 bytes, dcmple.o(.text))
[Stack]
- Max Depth = 12
 - Call Chain = __aeabi_dcmple
 
[Called By]
__aeabi_dcmpge (Thumb, 54 bytes, Stack size 12 bytes, dcmpge.o(.text))
[Stack]
- Max Depth = 12
 - Call Chain = __aeabi_dcmpge
 
[Called By]
__aeabi_i2d (Thumb, 34 bytes, Stack size 16 bytes, dflti.o(.text))
[Stack]
- Max Depth = 56
 - Call Chain = __aeabi_i2d ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 - >>   __ieee754_rem_pio2
 
__aeabi_d2iz (Thumb, 62 bytes, Stack size 16 bytes, dfixi.o(.text))
[Stack]
- Max Depth = 16
 - Call Chain = __aeabi_d2iz
 
[Calls]
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 - >>   __ieee754_rem_pio2
 - >>   __kernel_cos
 
__aeabi_f2d (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))
[Called By]
- >>   Chassis_CalcWz
 - >>   AI_SearchArmor
 - >>   Referee_UIRefresh
 - >>   PID_Init
 - >>   PID_Calc
 - >>   LowPassFilter2p_Reset
 - >>   LowPassFilter2p_Apply
 - >>   AHRS_Init
 - >>   Command_Stats
 - >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_CaliGyro
 
__aeabi_d2f (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
[Stack]
- Max Depth = 8
 - Call Chain = __aeabi_d2f
 
[Calls]
[Called By]- >>   Chassis_CalcWz
 - >>   AHRS_Init
 
__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))
[Called By]
- >>   __aeabi_dadd
 - >>   _double_epilogue
 - >>   __aeabi_d2ulz
 - >>   __aeabi_uldivmod
 
_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))
[Called By]
- >>   __aeabi_d2iz
 - >>   _double_epilogue
 - >>   __aeabi_d2ulz
 - >>   __aeabi_uldivmod
 
_ll_ushift_r (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
__aeabi_lasr (Thumb, 36 bytes, Stack size 0 bytes, llsshr.o(.text))
[Called By]
_ll_sshift_r (Thumb, 0 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)
__I$use$fp (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
_float_round (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
[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))
[Stack]
- Max Depth = 8
 - Call Chain = _double_round
 
[Called By]- >>   __aeabi_dadd
 - >>   _double_epilogue
 - >>   __aeabi_ddiv
 
_double_epilogue (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
[Stack]
- Max Depth = 40
 - Call Chain = _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_llsr
 - >>   __aeabi_llsl
 - >>   _double_round
 
[Called By]- >>   __aeabi_i2d
 - >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __aeabi_ui2d
 
__aeabi_ddiv (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text))
[Stack]
- Max Depth = 40
 - Call Chain = __aeabi_ddiv ⇒ _double_round
 
[Calls]
[Called By]- >>   __mathlib_dbl_invalid
 - >>   __hardfp_atan
 - >>   _fp_digits
 - >>   __hardfp_atan2
 
__aeabi_d2ulz (Thumb, 48 bytes, Stack size 0 bytes, dfixul.o(.text), UNUSED)
[Calls]
- >>   __aeabi_llsr
 - >>   __aeabi_llsl
 
[Called By]
__aeabi_cdcmpeq (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text))
[Called By]
__aeabi_cdcmple (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
__aeabi_cdrcmple (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text), UNUSED)
[Called By]
__scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
[Calls]
- >>   __main_after_scatterload
 
[Called By]
__scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
__aeabi_ui2d (Thumb, 26 bytes, Stack size 16 bytes, dfltui.o(.text))
[Stack]
- Max Depth = 56
 - Call Chain = __aeabi_ui2d ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[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)
AHRS_GetEulr (Thumb, 348 bytes, Stack size 48 bytes, ahrs.o(.text.AHRS_GetEulr))
[Stack]
- Max Depth = 80
 - Call Chain = AHRS_GetEulr ⇒ __hardfp_atan2f
 
[Calls]- >>   copysignf
 - >>   __hardfp_atan2f
 - >>   __hardfp_asinf
 
[Called By]
AHRS_Init (Thumb, 644 bytes, Stack size 56 bytes, ahrs.o(.text.AHRS_Init))
[Stack]
- Max Depth = 280
 - Call Chain = AHRS_Init ⇒ __hardfp_atan2 ⇒ atan ⇒ __hardfp_atan ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_f2d
 - >>   __aeabi_d2f
 - >>   __hardfp_atan2
 
[Called By]
AHRS_ResetEulr (Thumb, 18 bytes, Stack size 4 bytes, ahrs.o(.text.AHRS_ResetEulr))
[Stack]
- Max Depth = 4
 - Call Chain = AHRS_ResetEulr
 
[Called By]- >>   Gimbal_SetMode
 - >>   Gimbal_Control
 
AHRS_Update (Thumb, 3098 bytes, Stack size 224 bytes, ahrs.o(.text.AHRS_Update))
[Stack]
- Max Depth = 376
 - Call Chain = AHRS_Update ⇒ AHRS_UpdateIMU ⇒ InvSqrt
 
[Calls]- >>   InvSqrt
 - >>   AHRS_UpdateIMU
 
[Called By]
AI_HandleOffline (Thumb, 92 bytes, Stack size 16 bytes, ai.o(.text.AI_HandleOffline))
[Stack]
- Max Depth = 16
 - Call Chain = AI_HandleOffline
 
[Called By]
AI_Init (Thumb, 184 bytes, Stack size 24 bytes, ai.o(.text.AI_Init))
[Stack]
- Max Depth = 44
 - Call Chain = AI_Init ⇒ osThreadGetId ⇒ xTaskGetCurrentTaskHandle
 
[Calls]- >>   osThreadGetId
 - >>   VerifyFailed
 - >>   BSP_UART_RegisterCallback
 
[Called By]
AI_PackCmd (Thumb, 62 bytes, Stack size 8 bytes, ai.o(.text.AI_PackCmd))
[Stack]
- Max Depth = 8
 - Call Chain = AI_PackCmd
 
[Called By]
AI_PackMCU (Thumb, 200 bytes, Stack size 24 bytes, ai.o(.text.AI_PackMCU))
[Stack]
- Max Depth = 52
 - Call Chain = AI_PackMCU ⇒ CRC16_Calc ⇒ CRC16_Byte
 
[Calls]
[Called By]
AI_PackRef (Thumb, 40 bytes, Stack size 16 bytes, ai.o(.text.AI_PackRef))
[Stack]
- Max Depth = 44
 - Call Chain = AI_PackRef ⇒ CRC16_Calc ⇒ CRC16_Byte
 
[Calls]
[Called By]
AI_ParseHost (Thumb, 112 bytes, Stack size 24 bytes, ai.o(.text.AI_ParseHost))
[Stack]
- Max Depth = 76
 - Call Chain = AI_ParseHost ⇒ CRC16_Verify ⇒ CRC16_Calc ⇒ CRC16_Byte
 
[Calls]- >>   CRC16_Verify
 - >>   __aeabi_memcpy
 
[Called By]
AI_SearchArmor (Thumb, 392 bytes, Stack size 24 bytes, ai.o(.text.AI_SearchArmor))
[Stack]
- Max Depth = 36
 - Call Chain = AI_SearchArmor ⇒ __aeabi_dcmple
 
[Calls]- >>   __aeabi_dcmple
 - >>   __aeabi_dcmpge
 - >>   fAbs
 - >>   __aeabi_f2d
 
[Called By]
AI_StartReceiving (Thumb, 54 bytes, Stack size 16 bytes, ai.o(.text.AI_StartReceiving))
[Stack]
- Max Depth = 128
 - Call Chain = AI_StartReceiving ⇒ HAL_UART_Receive_DMA ⇒ UART_Start_Receive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   HAL_UART_Receive_DMA
 - >>   BSP_UART_GetHandle
 
[Called By]
AI_StartSend (Thumb, 100 bytes, Stack size 24 bytes, ai.o(.text.AI_StartSend))
[Stack]
- Max Depth = 112
 - Call Chain = AI_StartSend ⇒ HAL_UART_Transmit_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   HAL_UART_Transmit_DMA
 - >>   BSP_UART_GetHandle
 
[Called By]
AI_WaitDmaCplt (Thumb, 26 bytes, Stack size 8 bytes, ai.o(.text.AI_WaitDmaCplt))
[Stack]
- Max Depth = 136
 - Call Chain = AI_WaitDmaCplt ⇒ osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]
[Called By]
AbsClip (Thumb, 106 bytes, Stack size 16 bytes, user_math.o(.text.AbsClip))
[Stack]
- Max Depth = 16
 - Call Chain = AbsClip
 
[Called By]
BMI088_AcclStartDmaRecv (Thumb, 30 bytes, Stack size 16 bytes, bmi088.o(.text.BMI088_AcclStartDmaRecv))
[Stack]
- Max Depth = 168
 - Call Chain = BMI088_AcclStartDmaRecv ⇒ BMI_Read ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]
[Called By]
BMI088_AcclWaitDmaCplt (Thumb, 16 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_AcclWaitDmaCplt))
[Stack]
- Max Depth = 136
 - Call Chain = BMI088_AcclWaitDmaCplt ⇒ osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]
[Called By]
BMI088_GetUpdateFreq (Thumb, 16 bytes, Stack size 4 bytes, bmi088.o(.text.BMI088_GetUpdateFreq))
[Stack]
- Max Depth = 4
 - Call Chain = BMI088_GetUpdateFreq
 
[Called By]
BMI088_GyroStable (Thumb, 100 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_GyroStable))
[Stack]
- Max Depth = 8
 - Call Chain = BMI088_GyroStable
 
[Called By]
BMI088_GyroStartDmaRecv (Thumb, 26 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_GyroStartDmaRecv))
[Stack]
- Max Depth = 160
 - Call Chain = BMI088_GyroStartDmaRecv ⇒ BMI_Read ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]
[Called By]
BMI088_GyroWaitDmaCplt (Thumb, 16 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_GyroWaitDmaCplt))
[Stack]
- Max Depth = 136
 - Call Chain = BMI088_GyroWaitDmaCplt ⇒ osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]
[Called By]
BMI088_Init (Thumb, 394 bytes, Stack size 56 bytes, bmi088.o(.text.BMI088_Init))
[Stack]
- Max Depth = 272
 - Call Chain = BMI088_Init ⇒ BMI_ReadSingle ⇒ HAL_SPI_Receive ⇒ HAL_SPI_TransmitReceive ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   osThreadGetId
 - >>   BMI_WriteSingle
 - >>   BMI_ReadSingle
 - >>   BSP_SPI_RegisterCallback
 - >>   BSP_GPIO_RegisterCallback
 - >>   BSP_GPIO_EnableIRQ
 - >>   BSP_GPIO_DisableIRQ
 - >>   BSP_Delay
 
[Called By]
BMI088_ParseAccl (Thumb, 244 bytes, Stack size 16 bytes, bmi088.o(.text.BMI088_ParseAccl))
[Stack]
- Max Depth = 16
 - Call Chain = BMI088_ParseAccl
 
[Called By]
BMI088_ParseGyro (Thumb, 280 bytes, Stack size 16 bytes, bmi088.o(.text.BMI088_ParseGyro))
[Stack]
- Max Depth = 16
 - Call Chain = BMI088_ParseGyro
 
[Called By]
BMI088_WaitNew (Thumb, 16 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_WaitNew))
[Stack]
- Max Depth = 136
 - Call Chain = BMI088_WaitNew ⇒ osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]
[Called By]
BSP_CAN_GetHandle (Thumb, 62 bytes, Stack size 12 bytes, can_1.o(.text.BSP_CAN_GetHandle))
[Stack]
- Max Depth = 12
 - Call Chain = BSP_CAN_GetHandle
 
[Called By]- >>   CAN_Motor_Control
 - >>   CAN_Init
 - >>   CAN_Cap_Control
 - >>   CAN_CAN2RxFifoMsgPendingCallback
 - >>   CAN_CAN1RxFifoMsgPendingCallback
 
BSP_CAN_RegisterCallback (Thumb, 70 bytes, Stack size 8 bytes, can_1.o(.text.BSP_CAN_RegisterCallback))
[Stack]
- Max Depth = 8
 - Call Chain = BSP_CAN_RegisterCallback
 
[Called By]
BSP_Delay (Thumb, 142 bytes, Stack size 32 bytes, delay.o(.text.BSP_Delay))
[Stack]
- Max Depth = 148
 - Call Chain = BSP_Delay ⇒ osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   HAL_Delay
 - >>   osKernelGetTickFreq
 - >>   osKernelGetState
 - >>   osDelay
 
[Called By]- >>   BMI088_Init
 - >>   BMI_WriteSingle
 - >>   BMI_ReadSingle
 - >>   BSP_USB_Transmit
 
BSP_Flash_EraseSector (Thumb, 72 bytes, Stack size 40 bytes, flash.o(.text.BSP_Flash_EraseSector))
[Stack]
- Max Depth = 104
 - Call Chain = BSP_Flash_EraseSector ⇒ HAL_FLASHEx_Erase ⇒ FLASH_Erase_Sector ⇒ assert_failed
 
[Calls]- >>   HAL_FLASHEx_Erase
 - >>   HAL_FLASH_Unlock
 - >>   HAL_FLASH_Lock
 - >>   FLASH_WaitForLastOperation
 
[Called By]
BSP_Flash_ReadBytes (Thumb, 24 bytes, Stack size 24 bytes, flash.o(.text.BSP_Flash_ReadBytes))
[Stack]
- Max Depth = 24
 - Call Chain = BSP_Flash_ReadBytes
 
[Calls]
[Called By]
BSP_Flash_WriteBytes (Thumb, 78 bytes, Stack size 24 bytes, flash.o(.text.BSP_Flash_WriteBytes))
[Stack]
- Max Depth = 96
 - Call Chain = BSP_Flash_WriteBytes ⇒ HAL_FLASH_Program ⇒ FLASH_Program_DoubleWord ⇒ assert_failed
 
[Calls]- >>   HAL_FLASH_Unlock
 - >>   HAL_FLASH_Program
 - >>   HAL_FLASH_Lock
 - >>   FLASH_WaitForLastOperation
 
[Called By]
BSP_Free (Thumb, 16 bytes, Stack size 16 bytes, mm.o(.text.BSP_Free))
[Stack]
- Max Depth = 116
 - Call Chain = BSP_Free ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]
BSP_GPIO_DisableIRQ (Thumb, 116 bytes, Stack size 16 bytes, gpio_1.o(.text.BSP_GPIO_DisableIRQ))
[Stack]
- Max Depth = 40
 - Call Chain = BSP_GPIO_DisableIRQ ⇒ HAL_NVIC_DisableIRQ ⇒ assert_failed
 
[Calls]
[Called By]
BSP_GPIO_EnableIRQ (Thumb, 116 bytes, Stack size 16 bytes, gpio_1.o(.text.BSP_GPIO_EnableIRQ))
[Stack]
- Max Depth = 40
 - Call Chain = BSP_GPIO_EnableIRQ ⇒ HAL_NVIC_EnableIRQ ⇒ assert_failed
 
[Calls]
[Called By]
BSP_GPIO_RegisterCallback (Thumb, 106 bytes, Stack size 12 bytes, gpio_1.o(.text.BSP_GPIO_RegisterCallback))
[Stack]
- Max Depth = 12
 - Call Chain = BSP_GPIO_RegisterCallback
 
[Called By]
BSP_GetBatteryVolt (Thumb, 120 bytes, Stack size 40 bytes, adc_1.o(.text.BSP_GetBatteryVolt))
[Stack]
- Max Depth = 80
 - Call Chain = BSP_GetBatteryVolt ⇒ HAL_ADC_ConfigChannel ⇒ assert_failed
 
[Calls]- >>   HAL_ADC_ConfigChannel
 - >>   Error_Handler
 - >>   HAL_ADC_Start
 - >>   HAL_ADC_PollForConversion
 - >>   HAL_ADC_GetValue
 
[Called By]
BSP_GetTemperature (Thumb, 140 bytes, Stack size 40 bytes, adc_1.o(.text.BSP_GetTemperature))
[Stack]
- Max Depth = 80
 - Call Chain = BSP_GetTemperature ⇒ HAL_ADC_ConfigChannel ⇒ assert_failed
 
[Calls]- >>   HAL_ADC_ConfigChannel
 - >>   Error_Handler
 - >>   HAL_ADC_Start
 - >>   HAL_ADC_PollForConversion
 - >>   HAL_ADC_GetValue
 
[Called By]
BSP_LED_Set (Thumb, 368 bytes, Stack size 40 bytes, led.o(.text.BSP_LED_Set))
[Stack]
- Max Depth = 128
 - Call Chain = BSP_LED_Set ⇒ HAL_TIM_PWM_Start ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Stop
 - >>   HAL_TIM_PWM_Start
 
[Called By]- >>   Task_Monitor
 - >>   Task_Info
 
BSP_Malloc (Thumb, 16 bytes, Stack size 16 bytes, mm.o(.text.BSP_Malloc))
[Stack]
- Max Depth = 132
 - Call Chain = BSP_Malloc ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]
BSP_PWM_Set (Thumb, 270 bytes, Stack size 32 bytes, pwm.o(.text.BSP_PWM_Set))
[Stack]
- Max Depth = 120
 - Call Chain = BSP_PWM_Set ⇒ BSP_PWM_Stop ⇒ HAL_TIM_PWM_Stop ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]
[Called By]- >>   Task_AttiEsti
 - >>   Shoot_Init
 - >>   Shoot_Control
 
BSP_PWM_Start (Thumb, 66 bytes, Stack size 16 bytes, pwm.o(.text.BSP_PWM_Start))
[Stack]
- Max Depth = 104
 - Call Chain = BSP_PWM_Start ⇒ HAL_TIM_PWM_Start ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]
[Called By]- >>   Task_AttiEsti
 - >>   Shoot_Init
 - >>   Shoot_Control
 
BSP_PWM_Stop (Thumb, 84 bytes, Stack size 24 bytes, pwm.o(.text.BSP_PWM_Stop))
[Stack]
- Max Depth = 88
 - Call Chain = BSP_PWM_Stop ⇒ HAL_TIM_PWM_Stop ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]- >>   HAL_GPIO_WritePin
 - >>   HAL_TIM_PWM_Stop
 
[Called By]- >>   BSP_PWM_Set
 - >>   Shoot_Control
 
BSP_SPI_GetHandle (Thumb, 62 bytes, Stack size 12 bytes, spi_1.o(.text.BSP_SPI_GetHandle))
[Stack]
- Max Depth = 12
 - Call Chain = BSP_SPI_GetHandle
 
[Called By]- >>   BMI_WriteSingle
 - >>   BMI_ReadSingle
 - >>   BMI_Read
 
BSP_SPI_RegisterCallback (Thumb, 68 bytes, Stack size 8 bytes, spi_1.o(.text.BSP_SPI_RegisterCallback))
[Stack]
- Max Depth = 8
 - Call Chain = BSP_SPI_RegisterCallback
 
[Called By]
BSP_UART_GetHandle (Thumb, 82 bytes, Stack size 12 bytes, uart.o(.text.BSP_UART_GetHandle))
[Stack]
- Max Depth = 12
 - Call Chain = BSP_UART_GetHandle
 
[Called By]- >>   AI_StartSend
 - >>   AI_StartReceiving
 - >>   Referee_UIRefresh
 - >>   Referee_StartSend
 - >>   Referee_StartReceiving
 - >>   Referee_Parse
 - >>   Referee_Init
 - >>   Referee_CheckTXReady
 - >>   Referee_IdleLineCallback
 - >>   DR16_StartDmaRecv
 
BSP_UART_IRQHandler (Thumb, 108 bytes, Stack size 16 bytes, uart.o(.text.BSP_UART_IRQHandler))
[Stack]
- Max Depth = 24
 - Call Chain = BSP_UART_IRQHandler ⇒ UART_Get
 
[Calls]
[Called By]- >>   USART6_IRQHandler
 - >>   USART1_IRQHandler
 
BSP_UART_RegisterCallback (Thumb, 72 bytes, Stack size 8 bytes, uart.o(.text.BSP_UART_RegisterCallback))
[Stack]
- Max Depth = 8
 - Call Chain = BSP_UART_RegisterCallback
 
[Called By]- >>   AI_Init
 - >>   Referee_Init
 - >>   DR16_Init
 
BSP_USB_Printf (Thumb, 104 bytes, Stack size 40 bytes, usb.o(.text.BSP_USB_Printf))
[Stack]
- Max Depth = 256
 - Call Chain = BSP_USB_Printf ⇒ BSP_USB_Transmit ⇒ CDC_Transmit_FS ⇒ USBD_CDC_TransmitPacket ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   BSP_USB_Transmit
 - >>   vsnprintf
 
[Called By]
BSP_USB_ReadChar (Thumb, 12 bytes, Stack size 0 bytes, usb.o(.text.BSP_USB_ReadChar))
[Called By]
BSP_USB_ReadyReceive (Thumb, 52 bytes, Stack size 16 bytes, usb.o(.text.BSP_USB_ReadyReceive))
[Stack]
- Max Depth = 192
 - Call Chain = BSP_USB_ReadyReceive ⇒ CDC_ReadyReceive ⇒ USBD_CDC_ReceivePacket ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]
BusFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.BusFault_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
CAN1_RX0_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler))
[Stack]
- Max Depth = 80
 - Call Chain = CAN1_RX0_IRQHandler ⇒ HAL_CAN_IRQHandler ⇒ HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
CAN1_RX1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler))
[Stack]
- Max Depth = 80
 - Call Chain = CAN1_RX1_IRQHandler ⇒ HAL_CAN_IRQHandler ⇒ HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
CAN2_RX0_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler))
[Stack]
- Max Depth = 80
 - Call Chain = CAN2_RX0_IRQHandler ⇒ HAL_CAN_IRQHandler ⇒ HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
CAN2_RX1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler))
[Stack]
- Max Depth = 80
 - Call Chain = CAN2_RX1_IRQHandler ⇒ HAL_CAN_IRQHandler ⇒ HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
CAN_CAP_HandleOffline (Thumb, 26 bytes, Stack size 12 bytes, can_2.o(.text.CAN_CAP_HandleOffline))
[Stack]
- Max Depth = 12
 - Call Chain = CAN_CAP_HandleOffline
 
[Called By]
CAN_Cap_Control (Thumb, 120 bytes, Stack size 40 bytes, can_2.o(.text.CAN_Cap_Control))
[Stack]
- Max Depth = 88
 - Call Chain = CAN_Cap_Control ⇒ HAL_CAN_AddTxMessage ⇒ assert_failed
 
[Calls]- >>   HAL_CAN_AddTxMessage
 - >>   BSP_CAN_GetHandle
 
[Called By]
CAN_Cap_Decode (Thumb, 108 bytes, Stack size 8 bytes, can_2.o(.text.CAN_Cap_Decode))
[Stack]
- Max Depth = 8
 - Call Chain = CAN_Cap_Decode
 
[Called By]
CAN_CheckFlag (Thumb, 50 bytes, Stack size 12 bytes, can_2.o(.text.CAN_CheckFlag))
[Stack]
- Max Depth = 12
 - Call Chain = CAN_CheckFlag
 
[Called By]
CAN_ClearFlag (Thumb, 46 bytes, Stack size 12 bytes, can_2.o(.text.CAN_ClearFlag))
[Stack]
- Max Depth = 12
 - Call Chain = CAN_ClearFlag
 
[Called By]
CAN_Init (Thumb, 282 bytes, Stack size 80 bytes, can_2.o(.text.CAN_Init))
[Stack]
- Max Depth = 276
 - Call Chain = CAN_Init ⇒ osMessageQueueNew ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   HAL_CAN_Start
 - >>   HAL_CAN_ConfigFilter
 - >>   HAL_CAN_ActivateNotification
 - >>   osMessageQueueNew
 - >>   BSP_CAN_RegisterCallback
 - >>   BSP_CAN_GetHandle
 - >>   __aeabi_memclr4
 
[Called By]
CAN_Motor_Control (Thumb, 600 bytes, Stack size 72 bytes, can_2.o(.text.CAN_Motor_Control))
[Stack]
- Max Depth = 120
 - Call Chain = CAN_Motor_Control ⇒ HAL_CAN_AddTxMessage ⇒ assert_failed
 
[Calls]- >>   HAL_CAN_AddTxMessage
 - >>   BSP_CAN_GetHandle
 
[Called By]
CAN_StoreMsg (Thumb, 306 bytes, Stack size 32 bytes, can_2.o(.text.CAN_StoreMsg))
[Stack]
- Max Depth = 44
 - Call Chain = CAN_StoreMsg ⇒ CAN_Motor_Decode
 
[Calls]- >>   CAN_Tof_Decode
 - >>   CAN_Cap_Decode
 - >>   CAN_Motor_Decode
 
[Called By]
CAN_Tof_Decode (Thumb, 76 bytes, Stack size 8 bytes, can_2.o(.text.CAN_Tof_Decode))
[Stack]
- Max Depth = 8
 - Call Chain = CAN_Tof_Decode
 
[Called By]
CDC_ReadyReceive (Thumb, 18 bytes, Stack size 8 bytes, usbd_cdc_if.o(.text.CDC_ReadyReceive))
[Stack]
- Max Depth = 176
 - Call Chain = CDC_ReadyReceive ⇒ USBD_CDC_ReceivePacket ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CDC_ReceivePacket
 
[Called By]
CDC_Transmit_FS (Thumb, 96 bytes, Stack size 32 bytes, usbd_cdc_if.o(.text.CDC_Transmit_FS))
[Stack]
- Max Depth = 200
 - Call Chain = CDC_Transmit_FS ⇒ USBD_CDC_TransmitPacket ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CDC_TransmitPacket
 - >>   USBD_CDC_SetTxBuffer
 
[Called By]
CMD_CheckHostOverwrite (Thumb, 16 bytes, Stack size 4 bytes, cmd.o(.text.CMD_CheckHostOverwrite))
[Stack]
- Max Depth = 4
 - Call Chain = CMD_CheckHostOverwrite
 
[Called By]
CMD_Init (Thumb, 60 bytes, Stack size 12 bytes, cmd.o(.text.CMD_Init))
[Stack]
- Max Depth = 12
 - Call Chain = CMD_Init
 
[Called By]
CMD_ParseHost (Thumb, 120 bytes, Stack size 16 bytes, cmd.o(.text.CMD_ParseHost))
[Stack]
- Max Depth = 16
 - Call Chain = CMD_ParseHost
 
[Called By]
CMD_ParseRc (Thumb, 208 bytes, Stack size 24 bytes, cmd.o(.text.CMD_ParseRc))
[Stack]
- Max Depth = 96
 - Call Chain = CMD_ParseRc ⇒ CMD_PcLogic ⇒ CMD_BehaviorOccurredRc ⇒ CMD_BehaviorToKey
 
[Calls]- >>   CMD_RcLostLogic
 - >>   CMD_RcLogic
 - >>   CMD_PcLogic
 - >>   CMD_KeyPressedRc
 
[Called By]
CMD_RefereeAdd (Thumb, 86 bytes, Stack size 12 bytes, cmd.o(.text.CMD_RefereeAdd))
[Stack]
- Max Depth = 12
 - Call Chain = CMD_RefereeAdd
 
[Called By]
CRC16_Calc (Thumb, 54 bytes, Stack size 24 bytes, crc16.o(.text.CRC16_Calc))
[Stack]
- Max Depth = 28
 - Call Chain = CRC16_Calc ⇒ CRC16_Byte
 
[Calls]
[Called By]- >>   AI_PackRef
 - >>   AI_PackMCU
 - >>   Referee_PackUI
 - >>   CRC16_Verify
 
CRC16_Verify (Thumb, 88 bytes, Stack size 24 bytes, crc16.o(.text.CRC16_Verify))
[Stack]
- Max Depth = 52
 - Call Chain = CRC16_Verify ⇒ CRC16_Calc ⇒ CRC16_Byte
 
[Calls]
[Called By]- >>   AI_ParseHost
 - >>   Referee_Parse
 
CRC8_Calc (Thumb, 60 bytes, Stack size 12 bytes, crc8.o(.text.CRC8_Calc))
[Stack]
- Max Depth = 12
 - Call Chain = CRC8_Calc
 
[Called By]- >>   Referee_PackUI
 - >>   CRC8_Verify
 
CRC8_Verify (Thumb, 76 bytes, Stack size 24 bytes, crc8.o(.text.CRC8_Verify))
[Stack]
- Max Depth = 36
 - Call Chain = CRC8_Verify ⇒ CRC8_Calc
 
[Calls]
[Called By]
CalculateRpm (Thumb, 284 bytes, Stack size 20 bytes, user_math.o(.text.CalculateRpm))
[Stack]
- Max Depth = 20
 - Call Chain = CalculateRpm
 
[Called By]
Cap_Control (Thumb, 90 bytes, Stack size 24 bytes, cap.o(.text.Cap_Control))
[Stack]
- Max Depth = 44
 - Call Chain = Cap_Control ⇒ PowerLimit_CapInput
 
[Calls]- >>   PowerLimit_CapInput
 - >>   Capacity_GetCapacitorRemain
 
[Called By]
Cap_DumpUI (Thumb, 26 bytes, Stack size 8 bytes, cap.o(.text.Cap_DumpUI))
[Stack]
- Max Depth = 8
 - Call Chain = Cap_DumpUI
 
[Called By]
Capacity_GetBatteryRemain (Thumb, 332 bytes, Stack size 16 bytes, capacity.o(.text.Capacity_GetBatteryRemain))
[Stack]
- Max Depth = 16
 - Call Chain = Capacity_GetBatteryRemain
 
[Called By]
Capacity_GetCapacitorRemain (Thumb, 102 bytes, Stack size 16 bytes, capacity.o(.text.Capacity_GetCapacitorRemain))
[Stack]
- Max Depth = 16
 - Call Chain = Capacity_GetCapacitorRemain
 
[Called By]
Chassis_Control (Thumb, 784 bytes, Stack size 64 bytes, chassis.o(.text.Chassis_Control))
[Stack]
- Max Depth = 192
 - Call Chain = Chassis_Control ⇒ Chassis_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   Chassis_SetMode
 - >>   Chassis_CalcWz
 - >>   PID_Calc
 - >>   Mixer_Apply
 - >>   LowPassFilter2p_Apply
 - >>   __hardfp_sinf
 - >>   __hardfp_cosf
 
[Called By]
Chassis_DumpOutput (Thumb, 66 bytes, Stack size 12 bytes, chassis.o(.text.Chassis_DumpOutput))
[Stack]
- Max Depth = 12
 - Call Chain = Chassis_DumpOutput
 
[Called By]
Chassis_DumpUI (Thumb, 40 bytes, Stack size 8 bytes, chassis.o(.text.Chassis_DumpUI))
[Stack]
- Max Depth = 8
 - Call Chain = Chassis_DumpUI
 
[Called By]
Chassis_Init (Thumb, 614 bytes, Stack size 48 bytes, chassis.o(.text.Chassis_Init))
[Stack]
- Max Depth = 180
 - Call Chain = Chassis_Init ⇒ BSP_Malloc ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   CircleReverse
 - >>   PID_Init
 - >>   Mixer_Init
 - >>   LowPassFilter2p_Init
 - >>   BSP_Malloc
 - >>   BSP_Free
 
[Called By]
Chassis_PowerLimit (Thumb, 208 bytes, Stack size 24 bytes, chassis.o(.text.Chassis_PowerLimit))
[Stack]
- Max Depth = 56
 - Call Chain = Chassis_PowerLimit ⇒ PowerLimit_ChassicOutput
 
[Calls]- >>   PowerLimit_TargetPower
 - >>   PowerLimit_ChassicOutput
 
[Called By]
Chassis_UpdateFeedback (Thumb, 180 bytes, Stack size 16 bytes, chassis.o(.text.Chassis_UpdateFeedback))
[Stack]
- Max Depth = 16
 - Call Chain = Chassis_UpdateFeedback
 
[Called By]
CircleAdd (Thumb, 132 bytes, Stack size 16 bytes, user_math.o(.text.CircleAdd))
[Stack]
- Max Depth = 16
 - Call Chain = CircleAdd
 
[Called By]- >>   Shoot_UpdateFeedback
 - >>   Shoot_Control
 - >>   Shoot_SetMode
 - >>   Gimbal_Init
 - >>   Gimbal_Control
 
CircleError (Thumb, 154 bytes, Stack size 20 bytes, user_math.o(.text.CircleError))
[Stack]
- Max Depth = 20
 - Call Chain = CircleError
 
[Called By]- >>   PID_Calc
 - >>   Shoot_UpdateFeedback
 - >>   Shoot_SetMode
 - >>   Gimbal_Control
 
CircleReverse (Thumb, 32 bytes, Stack size 4 bytes, user_math.o(.text.CircleReverse))
[Stack]
- Max Depth = 4
 - Call Chain = CircleReverse
 
[Called By]- >>   Chassis_Init
 - >>   Gimbal_UpdateFeedback
 - >>   Gimbal_Init
 
Clip (Thumb, 76 bytes, Stack size 12 bytes, user_math.o(.text.Clip))
[Stack]
- Max Depth = 12
 - Call Chain = Clip
 
[Called By]
Config_Get (Thumb, 138 bytes, Stack size 16 bytes, config.o(.text.Config_Get))
[Stack]
- Max Depth = 48
 - Call Chain = Config_Get ⇒ Config_GetRobotParam ⇒ strcmp
 
[Calls]- >>   Config_GetRobotParam
 - >>   Config_GetPilotCfg
 - >>   BSP_Flash_ReadBytes
 
[Called By]- >>   Task_Init
 - >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_Config
 - >>   Command_CaliGyro
 
Config_GetPilotCfg (Thumb, 108 bytes, Stack size 24 bytes, config.o(.text.Config_GetPilotCfg))
[Stack]
- Max Depth = 32
 - Call Chain = Config_GetPilotCfg ⇒ strcmp
 
[Calls]
[Called By]- >>   Config_Get
 - >>   Command_Config
 
Config_GetPilotNameMap (Thumb, 10 bytes, Stack size 0 bytes, config.o(.text.Config_GetPilotNameMap))
[Called By]
Config_GetRobotNameMap (Thumb, 10 bytes, Stack size 0 bytes, config.o(.text.Config_GetRobotNameMap))
[Called By]
Config_GetRobotParam (Thumb, 108 bytes, Stack size 24 bytes, config.o(.text.Config_GetRobotParam))
[Stack]
- Max Depth = 32
 - Call Chain = Config_GetRobotParam ⇒ strcmp
 
[Calls]
[Called By]- >>   Config_Get
 - >>   Command_Config
 
Config_Set (Thumb, 38 bytes, Stack size 16 bytes, config.o(.text.Config_Set))
[Stack]
- Max Depth = 120
 - Call Chain = Config_Set ⇒ BSP_Flash_EraseSector ⇒ HAL_FLASHEx_Erase ⇒ FLASH_Erase_Sector ⇒ assert_failed
 
[Calls]- >>   osKernelUnlock
 - >>   osKernelLock
 - >>   BSP_Flash_WriteBytes
 - >>   BSP_Flash_EraseSector
 
[Called By]- >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_Config
 - >>   Command_CaliGyro
 
DMA1_Stream1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA1_Stream1_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA1_Stream2_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA1_Stream2_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA1_Stream7_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA1_Stream7_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA1_Stream7_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream1_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream1_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream2_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream3_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream3_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream5_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream5_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream5_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream6_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream6_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream6_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DMA2_Stream7_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream7_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = DMA2_Stream7_IRQHandler ⇒ HAL_DMA_IRQHandler
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
DR16_HandleOffline (Thumb, 60 bytes, Stack size 24 bytes, dr16.o(.text.DR16_HandleOffline))
[Stack]
- Max Depth = 24
 - Call Chain = DR16_HandleOffline
 
[Calls]
[Called By]
DR16_Init (Thumb, 116 bytes, Stack size 24 bytes, dr16.o(.text.DR16_Init))
[Stack]
- Max Depth = 44
 - Call Chain = DR16_Init ⇒ osThreadGetId ⇒ xTaskGetCurrentTaskHandle
 
[Calls]- >>   osThreadGetId
 - >>   BSP_UART_RegisterCallback
 
[Called By]
DR16_ParseRC (Thumb, 356 bytes, Stack size 24 bytes, dr16.o(.text.DR16_ParseRC))
[Stack]
- Max Depth = 32
 - Call Chain = DR16_ParseRC ⇒ DR16_DataCorrupted
 
[Calls]- >>   DR16_DataCorrupted
 - >>   __aeabi_memclr4
 
[Called By]
DR16_StartDmaRecv (Thumb, 48 bytes, Stack size 16 bytes, dr16.o(.text.DR16_StartDmaRecv))
[Stack]
- Max Depth = 128
 - Call Chain = DR16_StartDmaRecv ⇒ HAL_UART_Receive_DMA ⇒ UART_Start_Receive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   HAL_UART_Receive_DMA
 - >>   BSP_UART_GetHandle
 
[Called By]
DR16_WaitDmaCplt (Thumb, 28 bytes, Stack size 16 bytes, dr16.o(.text.DR16_WaitDmaCplt))
[Stack]
- Max Depth = 144
 - Call Chain = DR16_WaitDmaCplt ⇒ osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]
[Called By]
DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.DebugMon_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
EXTI0_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI0_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = EXTI0_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
 
[Calls]- >>   HAL_GPIO_EXTI_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
EXTI3_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI3_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = EXTI3_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
 
[Calls]- >>   HAL_GPIO_EXTI_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
EXTI4_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI4_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = EXTI4_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
 
[Calls]- >>   HAL_GPIO_EXTI_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
EXTI9_5_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI9_5_IRQHandler))
[Stack]
- Max Depth = 40
 - Call Chain = EXTI9_5_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
 
[Calls]- >>   HAL_GPIO_EXTI_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
Error_Handler (Thumb, 6 bytes, Stack size 0 bytes, main.o(.text.Error_Handler))
[Called By]
- >>   USBD_LL_Init
 - >>   HAL_PCD_ResetCallback
 - >>   HAL_UART_MspInit
 - >>   HAL_SPI_MspInit
 - >>   HAL_I2C_MspInit
 - >>   MX_USB_DEVICE_Init
 - >>   SystemClock_Config
 - >>   MX_USART6_UART_Init
 - >>   MX_USART3_UART_Init
 - >>   MX_USART1_UART_Init
 - >>   MX_TIM8_Init
 - >>   MX_TIM7_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 - >>   MX_SPI2_Init
 - >>   MX_SPI1_Init
 - >>   MX_RNG_Init
 - >>   MX_I2C3_Init
 - >>   MX_I2C2_Init
 - >>   MX_I2C1_Init
 - >>   MX_CRC_Init
 - >>   MX_CAN2_Init
 - >>   MX_CAN1_Init
 - >>   MX_ADC3_Init
 - >>   MX_ADC1_Init
 - >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
FLASH_Erase_Sector (Thumb, 306 bytes, Stack size 24 bytes, stm32f4xx_hal_flash_ex.o(.text.FLASH_Erase_Sector))
[Stack]
- Max Depth = 32
 - Call Chain = FLASH_Erase_Sector ⇒ assert_failed
 
[Calls]
[Called By]
FLASH_FlushCaches (Thumb, 162 bytes, Stack size 0 bytes, stm32f4xx_hal_flash_ex.o(.text.FLASH_FlushCaches))
[Called By]
FLASH_WaitForLastOperation (Thumb, 164 bytes, Stack size 24 bytes, stm32f4xx_hal_flash.o(.text.FLASH_WaitForLastOperation))
[Stack]
- Max Depth = 24
 - Call Chain = FLASH_WaitForLastOperation
 
[Calls]- >>   FLASH_SetErrorCode
 - >>   HAL_GetTick
 
[Called By]- >>   HAL_FLASHEx_Erase
 - >>   HAL_FLASH_Program
 - >>   BSP_Flash_WriteBytes
 - >>   BSP_Flash_EraseSector
 
FreeRTOS_CLIGetOutputBuffer (Thumb, 10 bytes, Stack size 0 bytes, freertos_cli.o(.text.FreeRTOS_CLIGetOutputBuffer))
[Called By]
FreeRTOS_CLIGetParameter (Thumb, 228 bytes, Stack size 32 bytes, freertos_cli.o(.text.FreeRTOS_CLIGetParameter))
[Stack]
- Max Depth = 32
 - Call Chain = FreeRTOS_CLIGetParameter
 
[Called By]
FreeRTOS_CLIProcessCommand (Thumb, 348 bytes, Stack size 32 bytes, freertos_cli.o(.text.FreeRTOS_CLIProcessCommand))
[Stack]
- Max Depth = 44
 - Call Chain = FreeRTOS_CLIProcessCommand ⇒ prvGetNumberOfParameters
 
[Calls]- >>   prvGetNumberOfParameters
 - >>   strncmp
 - >>   strlen
 - >>   strncpy
 
[Called By]
FreeRTOS_CLIRegisterCommand (Thumb, 130 bytes, Stack size 32 bytes, freertos_cli.o(.text.FreeRTOS_CLIRegisterCommand))
[Stack]
- Max Depth = 148
 - Call Chain = FreeRTOS_CLIRegisterCommand ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   vPortExitCritical
 - >>   vPortEnterCritical
 - >>   pvPortMalloc
 
[Called By]
Gimbal_Control (Thumb, 844 bytes, Stack size 64 bytes, gimbal.o(.text.Gimbal_Control))
[Stack]
- Max Depth = 184
 - Call Chain = Gimbal_Control ⇒ Gimbal_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   Gimbal_SetMode
 - >>   Clip
 - >>   CircleAdd
 - >>   PID_Calc
 - >>   CircleError
 - >>   LowPassFilter2p_Apply
 - >>   AHRS_ResetEulr
 
[Called By]
Gimbal_DumpOutput (Thumb, 30 bytes, Stack size 8 bytes, gimbal.o(.text.Gimbal_DumpOutput))
[Stack]
- Max Depth = 8
 - Call Chain = Gimbal_DumpOutput
 
[Called By]
Gimbal_DumpUI (Thumb, 18 bytes, Stack size 8 bytes, gimbal.o(.text.Gimbal_DumpUI))
[Stack]
- Max Depth = 8
 - Call Chain = Gimbal_DumpUI
 
[Called By]
Gimbal_Init (Thumb, 288 bytes, Stack size 48 bytes, gimbal.o(.text.Gimbal_Init))
[Stack]
- Max Depth = 176
 - Call Chain = Gimbal_Init ⇒ PID_Init ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   CircleReverse
 - >>   CircleAdd
 - >>   PID_Init
 - >>   LowPassFilter2p_Init
 
[Called By]
Gimbal_PackAI (Thumb, 34 bytes, Stack size 8 bytes, gimbal.o(.text.Gimbal_PackAI))
[Stack]
- Max Depth = 8
 - Call Chain = Gimbal_PackAI
 
[Called By]
Gimbal_UpdateFeedback (Thumb, 124 bytes, Stack size 24 bytes, gimbal.o(.text.Gimbal_UpdateFeedback))
[Stack]
- Max Depth = 28
 - Call Chain = Gimbal_UpdateFeedback ⇒ CircleReverse
 
[Calls]
[Called By]
HAL_ADC_ConfigChannel (Thumb, 704 bytes, Stack size 32 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_ConfigChannel))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_ADC_ConfigChannel ⇒ assert_failed
 
[Calls]
[Called By]- >>   MX_ADC3_Init
 - >>   MX_ADC1_Init
 - >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
HAL_ADC_GetValue (Thumb, 14 bytes, Stack size 4 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_GetValue))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_ADC_GetValue
 
[Called By]- >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
HAL_ADC_Init (Thumb, 946 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_Init))
[Stack]
- Max Depth = 144
 - Call Chain = HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_ADC_MspInit
 - >>   assert_failed
 - >>   ADC_Init
 
[Called By]- >>   MX_ADC3_Init
 - >>   MX_ADC1_Init
 
HAL_ADC_MspInit (Thumb, 194 bytes, Stack size 48 bytes, adc.o(.text.HAL_ADC_MspInit))
[Stack]
- Max Depth = 120
 - Call Chain = HAL_ADC_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]
[Called By]
HAL_ADC_PollForConversion (Thumb, 298 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_PollForConversion))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_ADC_PollForConversion
 
[Calls]
[Called By]- >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
HAL_ADC_Start (Thumb, 568 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_Start))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_ADC_Start ⇒ assert_failed
 
[Calls]
[Called By]- >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
HAL_CAN_ActivateNotification (Thumb, 120 bytes, Stack size 24 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_ActivateNotification))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_CAN_ActivateNotification ⇒ assert_failed
 
[Calls]
[Called By]
HAL_CAN_AddTxMessage (Thumb, 582 bytes, Stack size 40 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_AddTxMessage))
[Stack]
- Max Depth = 48
 - Call Chain = HAL_CAN_AddTxMessage ⇒ assert_failed
 
[Calls]
[Called By]- >>   CAN_Motor_Control
 - >>   CAN_Cap_Control
 
HAL_CAN_ConfigFilter (Thumb, 746 bytes, Stack size 32 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_ConfigFilter))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_CAN_ConfigFilter ⇒ assert_failed
 
[Calls]
[Called By]
HAL_CAN_ErrorCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_ErrorCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_ErrorCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_GetRxMessage (Thumb, 532 bytes, Stack size 32 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxMessage))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_CAN_GetRxMessage ⇒ assert_failed
 
[Calls]
[Called By]- >>   CAN_CAN2RxFifoMsgPendingCallback
 - >>   CAN_CAN1RxFifoMsgPendingCallback
 
HAL_CAN_IRQHandler (Thumb, 1010 bytes, Stack size 48 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler))
[Stack]
- Max Depth = 72
 - Call Chain = HAL_CAN_IRQHandler ⇒ HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]- >>   HAL_CAN_WakeUpFromRxMsgCallback
 - >>   HAL_CAN_TxMailbox2CompleteCallback
 - >>   HAL_CAN_TxMailbox2AbortCallback
 - >>   HAL_CAN_TxMailbox1CompleteCallback
 - >>   HAL_CAN_TxMailbox1AbortCallback
 - >>   HAL_CAN_TxMailbox0CompleteCallback
 - >>   HAL_CAN_TxMailbox0AbortCallback
 - >>   HAL_CAN_SleepCallback
 - >>   HAL_CAN_RxFifo1MsgPendingCallback
 - >>   HAL_CAN_RxFifo1FullCallback
 - >>   HAL_CAN_RxFifo0MsgPendingCallback
 - >>   HAL_CAN_RxFifo0FullCallback
 - >>   HAL_CAN_ErrorCallback
 
[Called By]- >>   CAN2_RX1_IRQHandler
 - >>   CAN2_RX0_IRQHandler
 - >>   CAN1_RX1_IRQHandler
 - >>   CAN1_RX0_IRQHandler
 
HAL_CAN_Init (Thumb, 1252 bytes, Stack size 24 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_Init))
[Stack]
- Max Depth = 184
 - Call Chain = HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_GetTick
 - >>   HAL_CAN_MspInit
 - >>   assert_failed
 
[Called By]- >>   MX_CAN2_Init
 - >>   MX_CAN1_Init
 
HAL_CAN_MspInit (Thumb, 428 bytes, Stack size 88 bytes, can.o(.text.HAL_CAN_MspInit))
[Stack]
- Max Depth = 160
 - Call Chain = HAL_CAN_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 - >>   HAL_GPIO_Init
 
[Called By]
HAL_CAN_RxFifo0FullCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_RxFifo0FullCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_RxFifo0FullCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_RxFifo0MsgPendingCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_RxFifo0MsgPendingCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_RxFifo0MsgPendingCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_RxFifo1FullCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_RxFifo1FullCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_RxFifo1FullCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_RxFifo1MsgPendingCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_RxFifo1MsgPendingCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_RxFifo1MsgPendingCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_SleepCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_SleepCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_SleepCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_Start (Thumb, 138 bytes, Stack size 24 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_Start))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_Start
 
[Calls]
[Called By]
HAL_CAN_TxMailbox0AbortCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox0AbortCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox0AbortCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_TxMailbox0CompleteCallback (Thumb, 76 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox0CompleteCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox0CompleteCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_TxMailbox1AbortCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox1AbortCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox1AbortCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_TxMailbox1CompleteCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox1CompleteCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox1CompleteCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_TxMailbox2AbortCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox2AbortCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox2AbortCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_TxMailbox2CompleteCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_TxMailbox2CompleteCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_TxMailbox2CompleteCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CAN_WakeUpFromRxMsgCallback (Thumb, 80 bytes, Stack size 16 bytes, can_1.o(.text.HAL_CAN_WakeUpFromRxMsgCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CAN_WakeUpFromRxMsgCallback ⇒ CAN_Get
 
[Calls]
[Called By]
HAL_CRC_Init (Thumb, 100 bytes, Stack size 16 bytes, stm32f4xx_hal_crc.o(.text.HAL_CRC_Init))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_CRC_Init ⇒ HAL_CRC_MspInit
 
[Calls]- >>   HAL_CRC_MspInit
 - >>   assert_failed
 
[Called By]
HAL_CRC_MspInit (Thumb, 62 bytes, Stack size 8 bytes, crc.o(.text.HAL_CRC_MspInit))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_CRC_MspInit
 
[Called By]
HAL_DMA_Abort (Thumb, 234 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_DMA_Abort
 
[Calls]
[Called By]
HAL_DMA_Abort_IT (Thumb, 68 bytes, Stack size 8 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_DMA_Abort_IT
 
[Called By]- >>   HAL_UART_IRQHandler
 - >>   HAL_UART_AbortReceive_IT
 
HAL_DMA_IRQHandler (Thumb, 798 bytes, Stack size 32 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_DMA_IRQHandler
 
[Called By]- >>   DMA2_Stream7_IRQHandler
 - >>   DMA2_Stream6_IRQHandler
 - >>   DMA2_Stream5_IRQHandler
 - >>   DMA2_Stream3_IRQHandler
 - >>   DMA2_Stream2_IRQHandler
 - >>   DMA2_Stream1_IRQHandler
 - >>   DMA1_Stream7_IRQHandler
 - >>   DMA1_Stream2_IRQHandler
 - >>   DMA1_Stream1_IRQHandler
 
HAL_DMA_Init (Thumb, 1334 bytes, Stack size 32 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Init))
[Stack]
- Max Depth = 56
 - Call Chain = HAL_DMA_Init ⇒ DMA_CheckFifoParam
 
[Calls]- >>   DMA_CheckFifoParam
 - >>   DMA_CalcBaseAndBitshift
 - >>   HAL_GetTick
 - >>   assert_failed
 
[Called By]- >>   HAL_UART_MspInit
 - >>   HAL_SPI_MspInit
 - >>   HAL_I2C_MspInit
 
HAL_DMA_Start_IT (Thumb, 228 bytes, Stack size 40 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Start_IT))
[Stack]
- Max Depth = 56
 - Call Chain = HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   DMA_SetConfig
 - >>   assert_failed
 
[Called By]- >>   HAL_SPI_TransmitReceive_DMA
 - >>   HAL_SPI_Receive_DMA
 - >>   UART_Start_Receive_DMA
 - >>   HAL_UART_Transmit_DMA
 
HAL_Delay (Thumb, 66 bytes, Stack size 24 bytes, stm32f4xx_hal.o(.text.HAL_Delay))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_Delay
 
[Calls]
[Called By]- >>   USB_SetCurrentMode
 - >>   BSP_Delay
 
HAL_FLASHEx_Erase (Thumb, 350 bytes, Stack size 32 bytes, stm32f4xx_hal_flash_ex.o(.text.HAL_FLASHEx_Erase))
[Stack]
- Max Depth = 64
 - Call Chain = HAL_FLASHEx_Erase ⇒ FLASH_Erase_Sector ⇒ assert_failed
 
[Calls]- >>   FLASH_MassErase
 - >>   FLASH_WaitForLastOperation
 - >>   FLASH_FlushCaches
 - >>   FLASH_Erase_Sector
 - >>   assert_failed
 
[Called By]
HAL_FLASH_Lock (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_flash.o(.text.HAL_FLASH_Lock))
[Called By]
- >>   BSP_Flash_WriteBytes
 - >>   BSP_Flash_EraseSector
 
HAL_FLASH_Program (Thumb, 264 bytes, Stack size 40 bytes, stm32f4xx_hal_flash.o(.text.HAL_FLASH_Program))
[Stack]
- Max Depth = 72
 - Call Chain = HAL_FLASH_Program ⇒ FLASH_Program_DoubleWord ⇒ assert_failed
 
[Calls]- >>   FLASH_WaitForLastOperation
 - >>   FLASH_Program_Word
 - >>   FLASH_Program_HalfWord
 - >>   FLASH_Program_DoubleWord
 - >>   FLASH_Program_Byte
 - >>   assert_failed
 
[Called By]
HAL_FLASH_Unlock (Thumb, 86 bytes, Stack size 4 bytes, stm32f4xx_hal_flash.o(.text.HAL_FLASH_Unlock))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_FLASH_Unlock
 
[Called By]- >>   BSP_Flash_WriteBytes
 - >>   BSP_Flash_EraseSector
 
HAL_GPIO_EXTI_Callback (Thumb, 102 bytes, Stack size 16 bytes, gpio_1.o(.text.HAL_GPIO_EXTI_Callback))
[Stack]
- Max Depth = 16
 - Call Chain = HAL_GPIO_EXTI_Callback
 
[Called By]- >>   HAL_GPIO_EXTI_IRQHandler
 
HAL_GPIO_EXTI_IRQHandler (Thumb, 56 bytes, Stack size 16 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
 
[Calls]- >>   HAL_GPIO_EXTI_Callback
 
[Called By]- >>   EXTI9_5_IRQHandler
 - >>   EXTI4_IRQHandler
 - >>   EXTI3_IRQHandler
 - >>   EXTI0_IRQHandler
 
HAL_GPIO_Init (Thumb, 1824 bytes, Stack size 64 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init))
[Stack]
- Max Depth = 72
 - Call Chain = HAL_GPIO_Init ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_PCD_MspInit
 - >>   HAL_UART_MspInit
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_SPI_MspInit
 - >>   HAL_I2C_MspInit
 - >>   HAL_CAN_MspInit
 - >>   HAL_ADC_MspInit
 - >>   MX_GPIO_Init
 
HAL_GPIO_ReadPin (Thumb, 82 bytes, Stack size 16 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_ReadPin))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_GPIO_ReadPin ⇒ assert_failed
 
[Calls]
[Called By]
HAL_GPIO_WritePin (Thumb, 120 bytes, Stack size 16 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_GPIO_WritePin ⇒ assert_failed
 
[Calls]
[Called By]- >>   MX_GPIO_Init
 - >>   BMI_WriteSingle
 - >>   BMI_ReadSingle
 - >>   BMI_Read
 - >>   BMI088_RxCpltCallback
 - >>   BSP_PWM_Stop
 
HAL_GetTick (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text.HAL_GetTick))
[Called By]
- >>   HAL_DMA_Abort
 - >>   FLASH_WaitForLastOperation
 - >>   HAL_Delay
 - >>   HAL_DMA_Init
 - >>   HAL_CAN_Init
 - >>   HAL_RCC_OscConfig
 - >>   HAL_RCC_ClockConfig
 - >>   HAL_SPI_TransmitReceive
 - >>   HAL_SPI_Transmit
 - >>   HAL_SPI_Receive
 - >>   SPI_WaitFlagStateUntilTimeout
 - >>   SPI_DMATransmitReceiveCplt
 - >>   SPI_DMAReceiveCplt
 - >>   HAL_CAN_Start
 - >>   HAL_ADC_PollForConversion
 - >>   Task_CtrlShoot
 
HAL_I2C_Init (Thumb, 1058 bytes, Stack size 64 bytes, stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init))
[Stack]
- Max Depth = 224
 - Call Chain = HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_RCC_GetPCLK1Freq
 - >>   HAL_I2C_MspInit
 - >>   assert_failed
 
[Called By]- >>   MX_I2C3_Init
 - >>   MX_I2C2_Init
 - >>   MX_I2C1_Init
 
HAL_I2C_MspInit (Thumb, 650 bytes, Stack size 88 bytes, i2c.o(.text.HAL_I2C_MspInit))
[Stack]
- Max Depth = 160
 - Call Chain = HAL_I2C_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_DMA_Init
 - >>   HAL_GPIO_Init
 - >>   Error_Handler
 
[Called By]
HAL_IncTick (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text.HAL_IncTick))
[Called By]
HAL_Init (Thumb, 54 bytes, Stack size 8 bytes, stm32f4xx_hal.o(.text.HAL_Init))
[Stack]
- Max Depth = 88
 - Call Chain = HAL_Init ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_InitTick
 - >>   HAL_MspInit
 - >>   HAL_NVIC_SetPriorityGrouping
 
[Called By]
HAL_InitTick (Thumb, 112 bytes, Stack size 16 bytes, stm32f4xx_hal.o(.text.HAL_InitTick))
[Stack]
- Max Depth = 80
 - Call Chain = HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_SYSTICK_Config
 
[Called By]- >>   HAL_RCC_ClockConfig
 - >>   HAL_Init
 
HAL_MspInit (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_msp.o(.text.HAL_MspInit))
[Stack]
- Max Depth = 80
 - Call Chain = HAL_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]
[Called By]
HAL_NVIC_DisableIRQ (Thumb, 48 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_NVIC_DisableIRQ ⇒ assert_failed
 
[Calls]- >>   assert_failed
 - >>   __NVIC_DisableIRQ
 
[Called By]
HAL_NVIC_EnableIRQ (Thumb, 48 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_NVIC_EnableIRQ ⇒ assert_failed
 
[Calls]- >>   assert_failed
 - >>   __NVIC_EnableIRQ
 
[Called By]- >>   HAL_PCD_MspInit
 - >>   HAL_UART_MspInit
 - >>   HAL_TIM_Base_MspInit
 - >>   HAL_CAN_MspInit
 - >>   MX_GPIO_Init
 - >>   MX_DMA_Init
 - >>   BSP_GPIO_EnableIRQ
 
HAL_NVIC_SetPriority (Thumb, 102 bytes, Stack size 32 bytes, stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority))
[Stack]
- Max Depth = 64
 - Call Chain = HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   assert_failed
 - >>   __NVIC_SetPriority
 - >>   __NVIC_GetPriorityGrouping
 - >>   NVIC_EncodePriority
 
[Called By]- >>   HAL_InitTick
 - >>   HAL_PCD_MspInit
 - >>   HAL_MspInit
 - >>   HAL_UART_MspInit
 - >>   HAL_TIM_Base_MspInit
 - >>   HAL_CAN_MspInit
 - >>   MX_GPIO_Init
 - >>   MX_DMA_Init
 
HAL_NVIC_SetPriorityGrouping (Thumb, 74 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping))
[Stack]
- Max Depth = 28
 - Call Chain = HAL_NVIC_SetPriorityGrouping ⇒ __NVIC_SetPriorityGrouping
 
[Calls]- >>   assert_failed
 - >>   __NVIC_SetPriorityGrouping
 
[Called By]
HAL_PCDEx_LPM_Callback (Thumb, 12 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_LPM_Callback))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_PCDEx_LPM_Callback
 
[Called By]
HAL_PCDEx_SetRxFiFo (Thumb, 24 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_SetRxFiFo))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_PCDEx_SetRxFiFo
 
[Called By]
HAL_PCDEx_SetTxFiFo (Thumb, 156 bytes, Stack size 16 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_SetTxFiFo))
[Stack]
- Max Depth = 16
 - Call Chain = HAL_PCDEx_SetTxFiFo
 
[Called By]
HAL_PCD_ConnectCallback (Thumb, 20 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_ConnectCallback))
[Stack]
- Max Depth = 20
 - Call Chain = HAL_PCD_ConnectCallback ⇒ USBD_LL_DevConnected
 
[Calls]
[Called By]
HAL_PCD_DataInStageCallback (Thumb, 38 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_DataInStageCallback))
[Stack]
- Max Depth = 224
 - Call Chain = HAL_PCD_DataInStageCallback ⇒ USBD_LL_DataInStage ⇒ USBD_CtlContinueSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]
HAL_PCD_DataOutStageCallback (Thumb, 40 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_DataOutStageCallback))
[Stack]
- Max Depth = 232
 - Call Chain = HAL_PCD_DataOutStageCallback ⇒ USBD_LL_DataOutStage ⇒ USBD_CtlContinueRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]- >>   PCD_EP_OutXfrComplete_int
 
HAL_PCD_DisconnectCallback (Thumb, 20 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_DisconnectCallback))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_PCD_DisconnectCallback ⇒ USBD_LL_DevDisconnected
 
[Calls]- >>   USBD_LL_DevDisconnected
 
[Called By]
HAL_PCD_EP_Close (Thumb, 168 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Close))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
 
[Calls]- >>   USB_DeactivateEndpoint
 
[Called By]
HAL_PCD_EP_ClrStall (Thumb, 200 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_ClrStall))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_PCD_EP_ClrStall ⇒ USB_EPClearStall
 
[Calls]
[Called By]
HAL_PCD_EP_GetRxCount (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_GetRxCount))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_PCD_EP_GetRxCount
 
[Called By]
HAL_PCD_EP_Open (Thumb, 234 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Open))
[Stack]
- Max Depth = 48
 - Call Chain = HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
 
[Calls]
[Called By]
HAL_PCD_EP_Receive (Thumb, 134 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Receive))
[Stack]
- Max Depth = 112
 - Call Chain = HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USB_EPStartXfer
 - >>   USB_EP0StartXfer
 
[Called By]- >>   USBD_LL_PrepareReceive
 
HAL_PCD_EP_SetStall (Thumb, 222 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_SetStall))
[Stack]
- Max Depth = 48
 - Call Chain = HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
 
[Calls]- >>   USB_EPSetStall
 - >>   USB_EP0_OutStart
 
[Called By]
HAL_PCD_EP_Transmit (Thumb, 134 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Transmit))
[Stack]
- Max Depth = 112
 - Call Chain = HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USB_EPStartXfer
 - >>   USB_EP0StartXfer
 
[Called By]
HAL_PCD_IRQHandler (Thumb, 1622 bytes, Stack size 56 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_IRQHandler))
[Stack]
- Max Depth = 368
 - Call Chain = HAL_PCD_IRQHandler ⇒ PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USB_SetTurnaroundTime
 - >>   USB_ReadPacket
 - >>   USB_ReadInterrupts
 - >>   USB_ReadDevOutEPInterrupt
 - >>   USB_ReadDevInEPInterrupt
 - >>   USB_ReadDevAllOutEpInterrupt
 - >>   USB_ReadDevAllInEpInterrupt
 - >>   USB_GetMode
 - >>   USB_GetDevSpeed
 - >>   USB_FlushTxFifo
 - >>   USB_EP0_OutStart
 - >>   USB_ActivateSetup
 - >>   HAL_RCC_GetHCLKFreq
 - >>   HAL_PCDEx_LPM_Callback
 - >>   PCD_WriteEmptyTxFifo
 - >>   PCD_EP_OutXfrComplete_int
 - >>   PCD_EP_OutSetupPacket_int
 - >>   HAL_PCD_SuspendCallback
 - >>   HAL_PCD_SOFCallback
 - >>   HAL_PCD_ResumeCallback
 - >>   HAL_PCD_ResetCallback
 - >>   HAL_PCD_ISOOUTIncompleteCallback
 - >>   HAL_PCD_ISOINIncompleteCallback
 - >>   HAL_PCD_DisconnectCallback
 - >>   HAL_PCD_DataInStageCallback
 - >>   HAL_PCD_ConnectCallback
 
[Called By]
HAL_PCD_ISOINIncompleteCallback (Thumb, 28 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_ISOINIncompleteCallback))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_PCD_ISOINIncompleteCallback ⇒ USBD_LL_IsoINIncomplete
 
[Calls]- >>   USBD_LL_IsoINIncomplete
 
[Called By]
HAL_PCD_ISOOUTIncompleteCallback (Thumb, 28 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_ISOOUTIncompleteCallback))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_PCD_ISOOUTIncompleteCallback ⇒ USBD_LL_IsoOUTIncomplete
 
[Calls]- >>   USBD_LL_IsoOUTIncomplete
 
[Called By]
HAL_PCD_Init (Thumb, 738 bytes, Stack size 128 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_Init))
[Stack]
- Max Depth = 256
 - Call Chain = HAL_PCD_Init ⇒ USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]- >>   USB_SetCurrentMode
 - >>   USB_DisableGlobalInt
 - >>   USB_DevInit
 - >>   USB_DevDisconnect
 - >>   USB_CoreInit
 - >>   HAL_PCD_MspInit
 - >>   assert_failed
 
[Called By]
HAL_PCD_MspInit (Thumb, 176 bytes, Stack size 48 bytes, usbd_conf.o(.text.HAL_PCD_MspInit))
[Stack]
- Max Depth = 120
 - Call Chain = HAL_PCD_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 - >>   HAL_GPIO_Init
 
[Called By]
HAL_PCD_ResetCallback (Thumb, 82 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_ResetCallback))
[Stack]
- Max Depth = 120
 - Call Chain = HAL_PCD_ResetCallback ⇒ USBD_LL_Reset ⇒ USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
 
[Calls]- >>   USBD_LL_SetSpeed
 - >>   USBD_LL_Reset
 - >>   Error_Handler
 
[Called By]
HAL_PCD_ResumeCallback (Thumb, 20 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_ResumeCallback))
[Stack]
- Max Depth = 20
 - Call Chain = HAL_PCD_ResumeCallback ⇒ USBD_LL_Resume
 
[Calls]
[Called By]
HAL_PCD_SOFCallback (Thumb, 20 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_SOFCallback))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_PCD_SOFCallback ⇒ USBD_LL_SOF
 
[Calls]
[Called By]
HAL_PCD_SetAddress (Thumb, 94 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_SetAddress))
[Stack]
- Max Depth = 36
 - Call Chain = HAL_PCD_SetAddress ⇒ USB_SetDevAddress
 
[Calls]
[Called By]
HAL_PCD_SetupStageCallback (Thumb, 24 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_SetupStageCallback))
[Stack]
- Max Depth = 280
 - Call Chain = HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]- >>   PCD_EP_OutSetupPacket_int
 
HAL_PCD_Start (Thumb, 122 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_Start))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_PCD_Start ⇒ USB_DevConnect
 
[Calls]- >>   USB_EnableGlobalInt
 - >>   USB_DevConnect
 
[Called By]
HAL_PCD_SuspendCallback (Thumb, 62 bytes, Stack size 16 bytes, usbd_conf.o(.text.HAL_PCD_SuspendCallback))
[Stack]
- Max Depth = 20
 - Call Chain = HAL_PCD_SuspendCallback ⇒ USBD_LL_Suspend
 
[Calls]
[Called By]
HAL_RCC_ClockConfig (Thumb, 1050 bytes, Stack size 24 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig))
[Stack]
- Max Depth = 104
 - Call Chain = HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_RCC_GetSysClockFreq
 - >>   HAL_InitTick
 - >>   HAL_GetTick
 - >>   assert_failed
 
[Called By]
HAL_RCC_GetHCLKFreq (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq))
[Called By]
- >>   HAL_RCC_GetPCLK2Freq
 - >>   HAL_RCC_GetPCLK1Freq
 - >>   HAL_PCD_IRQHandler
 
HAL_RCC_GetPCLK1Freq (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_RCC_GetPCLK1Freq
 
[Calls]
[Called By]- >>   HAL_I2C_Init
 - >>   UART_SetConfig
 
HAL_RCC_GetPCLK2Freq (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_RCC_GetPCLK2Freq
 
[Calls]
[Called By]
HAL_RCC_GetSysClockFreq (Thumb, 230 bytes, Stack size 32 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq))
[Stack]
- Max Depth = 72
 - Call Chain = HAL_RCC_GetSysClockFreq ⇒ __aeabi_uldivmod
 
[Calls]
[Called By]
HAL_RCC_OscConfig (Thumb, 2222 bytes, Stack size 32 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_RCC_OscConfig ⇒ assert_failed
 
[Calls]- >>   HAL_GetTick
 - >>   assert_failed
 
[Called By]
HAL_RNG_Init (Thumb, 122 bytes, Stack size 16 bytes, stm32f4xx_hal_rng.o(.text.HAL_RNG_Init))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_RNG_Init ⇒ HAL_RNG_MspInit
 
[Calls]- >>   HAL_RNG_MspInit
 - >>   assert_failed
 
[Called By]
HAL_RNG_MspInit (Thumb, 62 bytes, Stack size 8 bytes, rng.o(.text.HAL_RNG_MspInit))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_RNG_MspInit
 
[Called By]
HAL_SPI_ErrorCallback (Thumb, 84 bytes, Stack size 16 bytes, spi_1.o(.text.HAL_SPI_ErrorCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_SPI_ErrorCallback ⇒ SPI_Get
 
[Calls]
[Called By]- >>   SPI_DMATransmitReceiveCplt
 - >>   SPI_DMAReceiveCplt
 - >>   SPI_DMAError
 
HAL_SPI_Init (Thumb, 962 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_Init))
[Stack]
- Max Depth = 176
 - Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_SPI_MspInit
 - >>   assert_failed
 
[Called By]- >>   MX_SPI2_Init
 - >>   MX_SPI1_Init
 
HAL_SPI_MspInit (Thumb, 530 bytes, Stack size 80 bytes, spi.o(.text.HAL_SPI_MspInit))
[Stack]
- Max Depth = 152
 - Call Chain = HAL_SPI_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_DMA_Init
 - >>   HAL_GPIO_Init
 - >>   Error_Handler
 
[Called By]
HAL_SPI_Receive (Thumb, 560 bytes, Stack size 40 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive))
[Stack]
- Max Depth = 184
 - Call Chain = HAL_SPI_Receive ⇒ HAL_SPI_TransmitReceive ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GetTick
 - >>   HAL_SPI_TransmitReceive
 - >>   SPI_EndRxTransaction
 
[Called By]
HAL_SPI_Receive_DMA (Thumb, 468 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA))
[Stack]
- Max Depth = 120
 - Call Chain = HAL_SPI_Receive_DMA ⇒ HAL_SPI_TransmitReceive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   assert_failed
 - >>   HAL_SPI_TransmitReceive_DMA
 - >>   HAL_DMA_Start_IT
 
[Called By]
HAL_SPI_RxCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, spi_1.o(.text.HAL_SPI_RxCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_SPI_RxCpltCallback ⇒ SPI_Get
 
[Calls]
[Called By]
HAL_SPI_RxHalfCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, spi_1.o(.text.HAL_SPI_RxHalfCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_SPI_RxHalfCpltCallback ⇒ SPI_Get
 
[Calls]
[Called By]- >>   SPI_DMAHalfReceiveCplt
 
HAL_SPI_Transmit (Thumb, 684 bytes, Stack size 40 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit))
[Stack]
- Max Depth = 120
 - Call Chain = HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GetTick
 - >>   assert_failed
 - >>   SPI_EndRxTxTransaction
 
[Called By]- >>   BMI_WriteSingle
 - >>   BMI_ReadSingle
 - >>   BMI_Read
 
HAL_SPI_TransmitReceive (Thumb, 898 bytes, Stack size 64 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive))
[Stack]
- Max Depth = 144
 - Call Chain = HAL_SPI_TransmitReceive ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GetTick
 - >>   assert_failed
 - >>   SPI_EndRxTxTransaction
 
[Called By]
HAL_SPI_TransmitReceive_DMA (Thumb, 614 bytes, Stack size 40 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA))
[Stack]
- Max Depth = 96
 - Call Chain = HAL_SPI_TransmitReceive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   assert_failed
 - >>   HAL_DMA_Start_IT
 
[Called By]
HAL_SPI_TxRxCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, spi_1.o(.text.HAL_SPI_TxRxCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_SPI_TxRxCpltCallback ⇒ SPI_Get
 
[Calls]
[Called By]- >>   SPI_DMATransmitReceiveCplt
 
HAL_SPI_TxRxHalfCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, spi_1.o(.text.HAL_SPI_TxRxHalfCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_SPI_TxRxHalfCpltCallback ⇒ SPI_Get
 
[Calls]
[Called By]- >>   SPI_DMAHalfTransmitReceiveCplt
 
HAL_SYSTICK_Config (Thumb, 16 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text.HAL_SYSTICK_Config))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_SYSTICK_Config ⇒ SysTick_Config ⇒ __NVIC_SetPriority
 
[Calls]
[Called By]
HAL_TIMEx_BreakCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIMEx_BreakCallback
 
[Called By]
HAL_TIMEx_CommutCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIMEx_CommutCallback
 
[Called By]
HAL_TIMEx_ConfigBreakDeadTime (Thumb, 528 bytes, Stack size 24 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_ConfigBreakDeadTime))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_TIMEx_ConfigBreakDeadTime ⇒ assert_failed
 
[Calls]
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM1_Init
 
HAL_TIMEx_MasterConfigSynchronization (Thumb, 584 bytes, Stack size 32 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_TIMEx_MasterConfigSynchronization ⇒ assert_failed
 
[Calls]
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM7_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 
HAL_TIM_Base_Init (Thumb, 578 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init))
[Stack]
- Max Depth = 128
 - Call Chain = HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_TIM_Base_MspInit
 - >>   assert_failed
 - >>   TIM_Base_SetConfig
 
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM7_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 
HAL_TIM_Base_MspInit (Thumb, 434 bytes, Stack size 48 bytes, tim.o(.text.HAL_TIM_Base_MspInit))
[Stack]
- Max Depth = 112
 - Call Chain = HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 
[Called By]
HAL_TIM_Base_Start_IT (Thumb, 512 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Start_IT))
[Stack]
- Max Depth = 32
 - Call Chain = HAL_TIM_Base_Start_IT ⇒ assert_failed
 
[Calls]
[Called By]- >>   configureTimerForRunTimeStats
 
HAL_TIM_ConfigClockSource (Thumb, 2298 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource))
[Stack]
- Max Depth = 52
 - Call Chain = HAL_TIM_ConfigClockSource ⇒ TIM_ETR_SetConfig
 
[Calls]- >>   assert_failed
 - >>   TIM_ETR_SetConfig
 - >>   TIM_TI2_ConfigInputStage
 - >>   TIM_TI1_ConfigInputStage
 - >>   TIM_ITRx_SetConfig
 
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 
HAL_TIM_IC_CaptureCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_IC_CaptureCallback
 
[Called By]
HAL_TIM_IRQHandler (Thumb, 634 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler))
[Stack]
- Max Depth = 20
 - Call Chain = HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
 
[Calls]- >>   HAL_TIM_PeriodElapsedCallback
 - >>   HAL_TIM_TriggerCallback
 - >>   HAL_TIM_PWM_PulseFinishedCallback
 - >>   HAL_TIM_OC_DelayElapsedCallback
 - >>   HAL_TIM_IC_CaptureCallback
 - >>   HAL_TIMEx_CommutCallback
 - >>   HAL_TIMEx_BreakCallback
 
[Called By]- >>   TIM7_IRQHandler
 - >>   TIM1_BRK_TIM9_IRQHandler
 
HAL_TIM_MspPostInit (Thumb, 626 bytes, Stack size 80 bytes, tim.o(.text.HAL_TIM_MspPostInit))
[Stack]
- Max Depth = 152
 - Call Chain = HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 
HAL_TIM_OC_DelayElapsedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_OC_DelayElapsedCallback
 
[Called By]
HAL_TIM_PWM_ConfigChannel (Thumb, 1118 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel))
[Stack]
- Max Depth = 72
 - Call Chain = HAL_TIM_PWM_ConfigChannel ⇒ TIM_OC2_SetConfig ⇒ assert_failed
 
[Calls]- >>   assert_failed
 - >>   TIM_OC2_SetConfig
 - >>   TIM_OC4_SetConfig
 - >>   TIM_OC3_SetConfig
 - >>   TIM_OC1_SetConfig
 
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 
HAL_TIM_PWM_Init (Thumb, 578 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init))
[Stack]
- Max Depth = 28
 - Call Chain = HAL_TIM_PWM_Init ⇒ TIM_Base_SetConfig
 
[Calls]- >>   assert_failed
 - >>   TIM_Base_SetConfig
 - >>   HAL_TIM_PWM_MspInit
 
[Called By]- >>   MX_TIM8_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 
HAL_TIM_PWM_MspInit (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_PWM_MspInit
 
[Called By]
HAL_TIM_PWM_PulseFinishedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_PWM_PulseFinishedCallback
 
[Called By]
HAL_TIM_PWM_Start (Thumb, 964 bytes, Stack size 56 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Start))
[Stack]
- Max Depth = 88
 - Call Chain = HAL_TIM_PWM_Start ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]- >>   assert_failed
 - >>   TIM_CCxChannelCmd
 
[Called By]- >>   BSP_PWM_Start
 - >>   BSP_LED_Set
 
HAL_TIM_PWM_Stop (Thumb, 768 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Stop))
[Stack]
- Max Depth = 64
 - Call Chain = HAL_TIM_PWM_Stop ⇒ TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]- >>   assert_failed
 - >>   TIM_CCxChannelCmd
 
[Called By]- >>   BSP_PWM_Stop
 - >>   BSP_LED_Set
 
HAL_TIM_PeriodElapsedCallback (Thumb, 42 bytes, Stack size 4 bytes, freertos.o(.text.HAL_TIM_PeriodElapsedCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_PeriodElapsedCallback
 
[Called By]
HAL_TIM_TriggerCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback))
[Stack]
- Max Depth = 4
 - Call Chain = HAL_TIM_TriggerCallback
 
[Called By]
HAL_UARTEx_RxEventCallback (Thumb, 12 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback))
[Stack]
- Max Depth = 8
 - Call Chain = HAL_UARTEx_RxEventCallback
 
[Called By]- >>   HAL_UART_IRQHandler
 - >>   UART_Receive_IT
 - >>   UART_DMARxHalfCplt
 - >>   UART_DMAReceiveCplt
 
HAL_UART_AbortReceiveCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_AbortReceiveCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_AbortReceiveCpltCallback ⇒ UART_Get
 
[Calls]
[Called By]- >>   HAL_UART_AbortReceive_IT
 - >>   UART_DMARxOnlyAbortCallback
 
HAL_UART_AbortReceive_IT (Thumb, 186 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_AbortReceive_IT))
[Stack]
- Max Depth = 40
 - Call Chain = HAL_UART_AbortReceive_IT ⇒ HAL_UART_AbortReceiveCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_DMA_Abort_IT
 - >>   HAL_UART_AbortReceiveCpltCallback
 
[Called By]- >>   Referee_IdleLineCallback
 
HAL_UART_ErrorCallback (Thumb, 84 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_ErrorCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_ErrorCallback ⇒ UART_Get
 
[Calls]
[Called By]- >>   HAL_UART_IRQHandler
 - >>   UART_DMAError
 - >>   UART_DMAAbortOnError
 
HAL_UART_IRQHandler (Thumb, 840 bytes, Stack size 40 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler))
[Stack]
- Max Depth = 88
 - Call Chain = HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_DMA_Abort_IT
 - >>   HAL_DMA_Abort
 - >>   HAL_UARTEx_RxEventCallback
 - >>   UART_Transmit_IT
 - >>   UART_Receive_IT
 - >>   UART_EndTransmit_IT
 - >>   UART_EndRxTransfer
 - >>   HAL_UART_ErrorCallback
 
[Called By]- >>   USART6_IRQHandler
 - >>   USART1_IRQHandler
 
HAL_UART_Init (Thumb, 520 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_Init))
[Stack]
- Max Depth = 208
 - Call Chain = HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_UART_MspInit
 - >>   assert_failed
 - >>   UART_SetConfig
 
[Called By]- >>   MX_USART6_UART_Init
 - >>   MX_USART3_UART_Init
 - >>   MX_USART1_UART_Init
 
HAL_UART_MspInit (Thumb, 958 bytes, Stack size 120 bytes, usart.o(.text.HAL_UART_MspInit))
[Stack]
- Max Depth = 192
 - Call Chain = HAL_UART_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_DMA_Init
 - >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 - >>   HAL_GPIO_Init
 - >>   Error_Handler
 
[Called By]
HAL_UART_Receive_DMA (Thumb, 120 bytes, Stack size 24 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_Receive_DMA))
[Stack]
- Max Depth = 112
 - Call Chain = HAL_UART_Receive_DMA ⇒ UART_Start_Receive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   UART_Start_Receive_DMA
 
[Called By]- >>   AI_StartReceiving
 - >>   Referee_StartReceiving
 - >>   DR16_StartDmaRecv
 
HAL_UART_RxCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_RxCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]
[Called By]- >>   UART_Receive_IT
 - >>   UART_DMAReceiveCplt
 
HAL_UART_RxHalfCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_RxHalfCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_RxHalfCpltCallback ⇒ UART_Get
 
[Calls]
[Called By]
HAL_UART_Transmit_DMA (Thumb, 246 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA))
[Stack]
- Max Depth = 88
 - Call Chain = HAL_UART_Transmit_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]
[Called By]- >>   AI_StartSend
 - >>   Referee_StartSend
 
HAL_UART_TxCpltCallback (Thumb, 84 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_TxCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_TxCpltCallback ⇒ UART_Get
 
[Calls]
[Called By]- >>   UART_EndTransmit_IT
 - >>   UART_DMATransmitCplt
 
HAL_UART_TxHalfCpltCallback (Thumb, 80 bytes, Stack size 16 bytes, uart.o(.text.HAL_UART_TxHalfCpltCallback))
[Stack]
- Max Depth = 24
 - Call Chain = HAL_UART_TxHalfCpltCallback ⇒ UART_Get
 
[Calls]
[Called By]
HardFault_Handler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.HardFault_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
HeatLimit_ShootFreq (Thumb, 140 bytes, Stack size 36 bytes, limiter.o(.text.HeatLimit_ShootFreq))
[Stack]
- Max Depth = 36
 - Call Chain = HeatLimit_ShootFreq
 
[Called By]
InvSqrt (Thumb, 118 bytes, Stack size 16 bytes, user_math.o(.text.InvSqrt))
[Stack]
- Max Depth = 16
 - Call Chain = InvSqrt
 
[Called By]- >>   AHRS_Update
 - >>   AHRS_UpdateIMU
 
LowPassFilter2p_Apply (Thumb, 184 bytes, Stack size 32 bytes, filter.o(.text.LowPassFilter2p_Apply))
[Stack]
- Max Depth = 48
 - Call Chain = LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   __ARM_isinff
 - >>   __ARM_isinf
 - >>   __aeabi_f2d
 
[Called By]- >>   Chassis_Control
 - >>   PID_Calc
 - >>   LowPassFilter2p_Reset
 - >>   Shoot_Control
 - >>   Gimbal_Control
 
LowPassFilter2p_Init (Thumb, 316 bytes, Stack size 40 bytes, filter.o(.text.LowPassFilter2p_Init))
[Stack]
- Max Depth = 76
 - Call Chain = LowPassFilter2p_Init ⇒ __hardfp_tanf ⇒ __mathlib_rredf2
 
[Calls]- >>   __hardfp_tanf
 - >>   __hardfp_cosf
 
[Called By]- >>   Chassis_Init
 - >>   PID_Init
 - >>   Shoot_Init
 - >>   Gimbal_Init
 
LowPassFilter2p_Reset (Thumb, 146 bytes, Stack size 24 bytes, filter.o(.text.LowPassFilter2p_Reset))
[Stack]
- Max Depth = 72
 - Call Chain = LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   LowPassFilter2p_Apply
 - >>   __ARM_isfinitef
 - >>   __ARM_isfinite
 - >>   __aeabi_f2d
 
[Called By]- >>   Gimbal_SetMode
 - >>   Chassis_SetMode
 - >>   PID_Reset
 - >>   Shoot_SetMode
 
MX_ADC1_Init (Thumb, 128 bytes, Stack size 32 bytes, adc.o(.text.MX_ADC1_Init))
[Stack]
- Max Depth = 176
 - Call Chain = MX_ADC1_Init ⇒ HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_ADC_Init
 - >>   HAL_ADC_ConfigChannel
 - >>   Error_Handler
 
[Called By]
MX_ADC3_Init (Thumb, 128 bytes, Stack size 32 bytes, adc.o(.text.MX_ADC3_Init))
[Stack]
- Max Depth = 176
 - Call Chain = MX_ADC3_Init ⇒ HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_ADC_Init
 - >>   HAL_ADC_ConfigChannel
 - >>   Error_Handler
 
[Called By]
MX_CAN1_Init (Thumb, 78 bytes, Stack size 16 bytes, can.o(.text.MX_CAN1_Init))
[Stack]
- Max Depth = 200
 - Call Chain = MX_CAN1_Init ⇒ HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_CAN_Init
 - >>   Error_Handler
 
[Called By]
MX_CAN2_Init (Thumb, 78 bytes, Stack size 16 bytes, can.o(.text.MX_CAN2_Init))
[Stack]
- Max Depth = 200
 - Call Chain = MX_CAN2_Init ⇒ HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_CAN_Init
 - >>   Error_Handler
 
[Called By]
MX_CRC_Init (Thumb, 36 bytes, Stack size 8 bytes, crc.o(.text.MX_CRC_Init))
[Stack]
- Max Depth = 32
 - Call Chain = MX_CRC_Init ⇒ HAL_CRC_Init ⇒ HAL_CRC_MspInit
 
[Calls]- >>   HAL_CRC_Init
 - >>   Error_Handler
 
[Called By]
MX_DMA_Init (Thumb, 242 bytes, Stack size 64 bytes, dma.o(.text.MX_DMA_Init))
[Stack]
- Max Depth = 128
 - Call Chain = MX_DMA_Init ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 
[Called By]
MX_FREERTOS_Init (Thumb, 64 bytes, Stack size 16 bytes, freertos.o(.text.MX_FREERTOS_Init))
[Stack]
- Max Depth = 268
 - Call Chain = MX_FREERTOS_Init ⇒ osThreadNew ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]
MX_GPIO_Init (Thumb, 620 bytes, Stack size 128 bytes, gpio.o(.text.MX_GPIO_Init))
[Stack]
- Max Depth = 200
 - Call Chain = MX_GPIO_Init ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 - >>   HAL_GPIO_WritePin
 - >>   HAL_GPIO_Init
 
[Called By]
MX_I2C1_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C1_Init))
[Stack]
- Max Depth = 240
 - Call Chain = MX_I2C1_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_I2C_Init
 - >>   Error_Handler
 
[Called By]
MX_I2C2_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C2_Init))
[Stack]
- Max Depth = 240
 - Call Chain = MX_I2C2_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_I2C_Init
 - >>   Error_Handler
 
[Called By]
MX_I2C3_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C3_Init))
[Stack]
- Max Depth = 240
 - Call Chain = MX_I2C3_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_I2C_Init
 - >>   Error_Handler
 
[Called By]
MX_RNG_Init (Thumb, 36 bytes, Stack size 8 bytes, rng.o(.text.MX_RNG_Init))
[Stack]
- Max Depth = 32
 - Call Chain = MX_RNG_Init ⇒ HAL_RNG_Init ⇒ HAL_RNG_MspInit
 
[Calls]- >>   HAL_RNG_Init
 - >>   Error_Handler
 
[Called By]
MX_SPI1_Init (Thumb, 82 bytes, Stack size 16 bytes, spi.o(.text.MX_SPI1_Init))
[Stack]
- Max Depth = 192
 - Call Chain = MX_SPI1_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_SPI_Init
 - >>   Error_Handler
 
[Called By]
MX_SPI2_Init (Thumb, 78 bytes, Stack size 16 bytes, spi.o(.text.MX_SPI2_Init))
[Stack]
- Max Depth = 192
 - Call Chain = MX_SPI2_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_SPI_Init
 - >>   Error_Handler
 
[Called By]
MX_TIM10_Init (Thumb, 142 bytes, Stack size 40 bytes, tim.o(.text.MX_TIM10_Init))
[Stack]
- Max Depth = 192
 - Call Chain = MX_TIM10_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_Base_Init
 - >>   Error_Handler
 
[Called By]
MX_TIM1_Init (Thumb, 368 bytes, Stack size 104 bytes, tim.o(.text.MX_TIM1_Init))
[Stack]
- Max Depth = 256
 - Call Chain = MX_TIM1_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   HAL_TIMEx_ConfigBreakDeadTime
 - >>   Error_Handler
 
[Called By]
MX_TIM3_Init (Thumb, 216 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM3_Init))
[Stack]
- Max Depth = 216
 - Call Chain = MX_TIM3_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   Error_Handler
 
[Called By]
MX_TIM4_Init (Thumb, 218 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM4_Init))
[Stack]
- Max Depth = 216
 - Call Chain = MX_TIM4_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   Error_Handler
 
[Called By]
MX_TIM5_Init (Thumb, 266 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM5_Init))
[Stack]
- Max Depth = 216
 - Call Chain = MX_TIM5_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   Error_Handler
 
[Called By]
MX_TIM7_Init (Thumb, 88 bytes, Stack size 16 bytes, tim.o(.text.MX_TIM7_Init))
[Stack]
- Max Depth = 144
 - Call Chain = MX_TIM7_Init ⇒ HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   Error_Handler
 
[Called By]
MX_TIM8_Init (Thumb, 316 bytes, Stack size 104 bytes, tim.o(.text.MX_TIM8_Init))
[Stack]
- Max Depth = 256
 - Call Chain = MX_TIM8_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_MspPostInit
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   HAL_TIMEx_ConfigBreakDeadTime
 - >>   Error_Handler
 
[Called By]
MX_USART1_UART_Init (Thumb, 64 bytes, Stack size 16 bytes, usart.o(.text.MX_USART1_UART_Init))
[Stack]
- Max Depth = 224
 - Call Chain = MX_USART1_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_UART_Init
 - >>   Error_Handler
 
[Called By]
MX_USART3_UART_Init (Thumb, 72 bytes, Stack size 16 bytes, usart.o(.text.MX_USART3_UART_Init))
[Stack]
- Max Depth = 224
 - Call Chain = MX_USART3_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_UART_Init
 - >>   Error_Handler
 
[Called By]
MX_USART6_UART_Init (Thumb, 64 bytes, Stack size 16 bytes, usart.o(.text.MX_USART6_UART_Init))
[Stack]
- Max Depth = 224
 - Call Chain = MX_USART6_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_GPIO_Init ⇒ assert_failed
 
[Calls]- >>   HAL_UART_Init
 - >>   Error_Handler
 
[Called By]
MX_USB_DEVICE_Init (Thumb, 118 bytes, Stack size 8 bytes, usb_device.o(.text.MX_USB_DEVICE_Init))
[Stack]
- Max Depth = 312
 - Call Chain = MX_USB_DEVICE_Init ⇒ USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]- >>   USBD_Start
 - >>   USBD_RegisterClass
 - >>   USBD_Init
 - >>   USBD_CDC_RegisterInterface
 - >>   Error_Handler
 
[Called By]
MemManage_Handler (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.MemManage_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
Mixer_Apply (Thumb, 674 bytes, Stack size 60 bytes, mixer.o(.text.Mixer_Apply))
[Stack]
- Max Depth = 60
 - Call Chain = Mixer_Apply
 
[Called By]
Mixer_Init (Thumb, 46 bytes, Stack size 12 bytes, mixer.o(.text.Mixer_Init))
[Stack]
- Max Depth = 12
 - Call Chain = Mixer_Init
 
[Called By]
NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.NMI_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
OTG_FS_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.OTG_FS_IRQHandler))
[Stack]
- Max Depth = 376
 - Call Chain = OTG_FS_IRQHandler ⇒ HAL_PCD_IRQHandler ⇒ PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
PID_Calc (Thumb, 752 bytes, Stack size 72 bytes, pid.o(.text.PID_Calc))
[Stack]
- Max Depth = 120
 - Call Chain = PID_Calc ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   CircleError
 - >>   AbsClip
 - >>   __ARM_isfinitef
 - >>   __ARM_isfinite
 - >>   LowPassFilter2p_Apply
 - >>   __aeabi_f2d
 
[Called By]- >>   Chassis_Control
 - >>   Task_AttiEsti
 - >>   Shoot_Control
 - >>   Gimbal_Control
 
PID_Init (Thumb, 406 bytes, Stack size 32 bytes, pid.o(.text.PID_Init))
[Stack]
- Max Depth = 128
 - Call Chain = PID_Init ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   PID_Reset
 - >>   __ARM_isfinitef
 - >>   __ARM_isfinite
 - >>   LowPassFilter2p_Init
 - >>   __aeabi_f2d
 
[Called By]- >>   Chassis_Init
 - >>   Task_AttiEsti
 - >>   Shoot_Init
 - >>   Gimbal_Init
 
PID_Reset (Thumb, 72 bytes, Stack size 24 bytes, pid.o(.text.PID_Reset))
[Stack]
- Max Depth = 96
 - Call Chain = PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]
[Called By]- >>   Gimbal_SetMode
 - >>   Chassis_SetMode
 - >>   PID_Init
 - >>   Shoot_SetMode
 
PendSV_Handler (Thumb, 100 bytes, Stack size 0 bytes, port.o(.text.PendSV_Handler))
[Stack]
- Max Depth = 40
 - Call Chain = PendSV_Handler ⇒ vTaskSwitchContext ⇒ vApplicationStackOverflowHook
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
PowerLimit_CapInput (Thumb, 120 bytes, Stack size 20 bytes, limiter.o(.text.PowerLimit_CapInput))
[Stack]
- Max Depth = 20
 - Call Chain = PowerLimit_CapInput
 
[Called By]
PowerLimit_ChassicOutput (Thumb, 232 bytes, Stack size 32 bytes, limiter.o(.text.PowerLimit_ChassicOutput))
[Stack]
- Max Depth = 32
 - Call Chain = PowerLimit_ChassicOutput
 
[Called By]
PowerLimit_TargetPower (Thumb, 76 bytes, Stack size 12 bytes, limiter.o(.text.PowerLimit_TargetPower))
[Stack]
- Max Depth = 12
 - Call Chain = PowerLimit_TargetPower
 
[Called By]
Referee_CheckTXReady (Thumb, 22 bytes, Stack size 8 bytes, referee.o(.text.Referee_CheckTXReady))
[Stack]
- Max Depth = 20
 - Call Chain = Referee_CheckTXReady ⇒ BSP_UART_GetHandle
 
[Calls]
[Called By]
Referee_GetCharacterAdd (Thumb, 66 bytes, Stack size 8 bytes, referee.o(.text.Referee_GetCharacterAdd))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_GetCharacterAdd
 
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
Referee_GetDelAdd (Thumb, 66 bytes, Stack size 8 bytes, referee.o(.text.Referee_GetDelAdd))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_GetDelAdd
 
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
Referee_GetGrapicAdd (Thumb, 64 bytes, Stack size 8 bytes, referee.o(.text.Referee_GetGrapicAdd))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_GetGrapicAdd
 
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
Referee_HandleOffline (Thumb, 14 bytes, Stack size 4 bytes, referee.o(.text.Referee_HandleOffline))
[Stack]
- Max Depth = 4
 - Call Chain = Referee_HandleOffline
 
[Called By]
Referee_Init (Thumb, 262 bytes, Stack size 40 bytes, referee.o(.text.Referee_Init))
[Stack]
- Max Depth = 356
 - Call Chain = Referee_Init ⇒ osTimerNew ⇒ xTimerCreateStatic ⇒ prvInitialiseNewTimer ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osTimerStart
 - >>   osTimerNew
 - >>   BSP_UART_RegisterCallback
 - >>   BSP_UART_GetHandle
 
[Called By]
Referee_MoveData (Thumb, 70 bytes, Stack size 24 bytes, referee.o(.text.Referee_MoveData))
[Stack]
- Max Depth = 24
 - Call Chain = Referee_MoveData
 
[Calls]- >>   __aeabi_memclr
 - >>   __aeabi_memcpy
 
[Called By]
Referee_PackAI (Thumb, 20 bytes, Stack size 8 bytes, referee.o(.text.Referee_PackAI))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_PackAI
 
[Called By]
Referee_PackCap (Thumb, 68 bytes, Stack size 8 bytes, referee.o(.text.Referee_PackCap))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_PackCap
 
[Called By]
Referee_PackChassis (Thumb, 60 bytes, Stack size 8 bytes, referee.o(.text.Referee_PackChassis))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_PackChassis
 
[Called By]
Referee_PackShoot (Thumb, 112 bytes, Stack size 8 bytes, referee.o(.text.Referee_PackShoot))
[Stack]
- Max Depth = 8
 - Call Chain = Referee_PackShoot
 
[Called By]
Referee_PackUI (Thumb, 958 bytes, Stack size 64 bytes, referee.o(.text.Referee_PackUI))
[Stack]
- Max Depth = 176
 - Call Chain = Referee_PackUI ⇒ Referee_StartSend ⇒ HAL_UART_Transmit_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   Referee_StartSend
 - >>   Referee_SetHeader
 - >>   Referee_MoveData
 - >>   Referee_CheckTXReady
 - >>   CRC16_Calc
 - >>   CRC8_Calc
 
[Called By]
Referee_Parse (Thumb, 966 bytes, Stack size 56 bytes, referee.o(.text.Referee_Parse))
[Stack]
- Max Depth = 108
 - Call Chain = Referee_Parse ⇒ CRC16_Verify ⇒ CRC16_Calc ⇒ CRC16_Byte
 
[Calls]- >>   CRC16_Verify
 - >>   CRC8_Verify
 - >>   BSP_UART_GetHandle
 - >>   __aeabi_memcpy
 
[Called By]
Referee_PraseCmd (Thumb, 448 bytes, Stack size 72 bytes, referee.o(.text.Referee_PraseCmd))
[Stack]
- Max Depth = 168
 - Call Chain = Referee_PraseCmd ⇒ UI_DrawLine ⇒ snprintf
 
[Calls]- >>   __aeabi_i2d
 - >>   __aeabi_dmul
 - >>   __aeabi_d2iz
 - >>   Referee_GetGrapicAdd
 - >>   Referee_GetDelAdd
 - >>   Referee_GetCharacterAdd
 - >>   UI_DrawLine
 - >>   UI_DrawCycle
 - >>   UI_DrawCharacter
 - >>   UI_DelLayer
 
[Called By]
Referee_SetHeader (Thumb, 350 bytes, Stack size 20 bytes, referee.o(.text.Referee_SetHeader))
[Stack]
- Max Depth = 20
 - Call Chain = Referee_SetHeader
 
[Called By]
Referee_StartReceiving (Thumb, 54 bytes, Stack size 16 bytes, referee.o(.text.Referee_StartReceiving))
[Stack]
- Max Depth = 128
 - Call Chain = Referee_StartReceiving ⇒ HAL_UART_Receive_DMA ⇒ UART_Start_Receive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   HAL_UART_Receive_DMA
 - >>   BSP_UART_GetHandle
 
[Called By]
Referee_StartSend (Thumb, 52 bytes, Stack size 24 bytes, referee.o(.text.Referee_StartSend))
[Stack]
- Max Depth = 112
 - Call Chain = Referee_StartSend ⇒ HAL_UART_Transmit_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]- >>   HAL_UART_Transmit_DMA
 - >>   BSP_UART_GetHandle
 
[Called By]
Referee_UIRefresh (Thumb, 3744 bytes, Stack size 352 bytes, referee.o(.text.Referee_UIRefresh))
[Stack]
- Max Depth = 592
 - Call Chain = Referee_UIRefresh ⇒ __hardfp_sin ⇒ __ieee754_rem_pio2 ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   osThreadFlagsGet
 - >>   osThreadFlagsClear
 - >>   __aeabi_i2d
 - >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __aeabi_d2iz
 - >>   Referee_GetGrapicAdd
 - >>   Referee_GetDelAdd
 - >>   Referee_GetCharacterAdd
 - >>   UI_DrawRectangle
 - >>   UI_DrawLine
 - >>   UI_DrawCharacter
 - >>   UI_DrawArc
 - >>   UI_DelLayer
 - >>   __aeabi_f2d
 - >>   BSP_UART_GetHandle
 - >>   __hardfp_sin
 - >>   __hardfp_cos
 
[Called By]
SVC_Handler (Thumb, 36 bytes, Stack size 0 bytes, port.o(.text.SVC_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
Shoot_Control (Thumb, 1100 bytes, Stack size 96 bytes, shoot.o(.text.Shoot_Control))
[Stack]
- Max Depth = 224
 - Call Chain = Shoot_Control ⇒ Shoot_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   CircleAdd
 - >>   CalculateRpm
 - >>   PID_Calc
 - >>   HeatLimit_ShootFreq
 - >>   LowPassFilter2p_Apply
 - >>   BSP_PWM_Stop
 - >>   BSP_PWM_Start
 - >>   BSP_PWM_Set
 - >>   Shoot_SetMode
 - >>   Shoot_HeatLimit
 
[Called By]
Shoot_DumpOutput (Thumb, 62 bytes, Stack size 12 bytes, shoot.o(.text.Shoot_DumpOutput))
[Stack]
- Max Depth = 12
 - Call Chain = Shoot_DumpOutput
 
[Called By]
Shoot_DumpUI (Thumb, 28 bytes, Stack size 8 bytes, shoot.o(.text.Shoot_DumpUI))
[Stack]
- Max Depth = 8
 - Call Chain = Shoot_DumpUI
 
[Called By]
Shoot_Init (Thumb, 266 bytes, Stack size 40 bytes, shoot.o(.text.Shoot_Init))
[Stack]
- Max Depth = 168
 - Call Chain = Shoot_Init ⇒ PID_Init ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   PID_Init
 - >>   LowPassFilter2p_Init
 - >>   BSP_PWM_Start
 - >>   BSP_PWM_Set
 
[Called By]
Shoot_ResetOutput (Thumb, 42 bytes, Stack size 8 bytes, shoot.o(.text.Shoot_ResetOutput))
[Stack]
- Max Depth = 8
 - Call Chain = Shoot_ResetOutput
 
[Called By]
Shoot_UpdateFeedback (Thumb, 180 bytes, Stack size 40 bytes, shoot.o(.text.Shoot_UpdateFeedback))
[Stack]
- Max Depth = 60
 - Call Chain = Shoot_UpdateFeedback ⇒ CircleError
 
[Calls]- >>   CircleAdd
 - >>   CircleError
 
[Called By]
StartDefaultTask (Thumb, 22 bytes, Stack size 16 bytes, freertos.o(.text.StartDefaultTask))
[Stack]
- Max Depth = 328
 - Call Chain = StartDefaultTask ⇒ MX_USB_DEVICE_Init ⇒ USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]- >>   osThreadTerminate
 - >>   osThreadGetId
 - >>   MX_USB_DEVICE_Init
 
[Address Reference Count : 1]-  freertos.o(.text.MX_FREERTOS_Init)
 
SysTick_Handler (Thumb, 24 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.SysTick_Handler))
[Stack]
- Max Depth = 68
 - Call Chain = SysTick_Handler ⇒ xPortSysTickHandler ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   xPortSysTickHandler
 - >>   HAL_IncTick
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
SystemClock_Config (Thumb, 188 bytes, Stack size 88 bytes, main.o(.text.SystemClock_Config))
[Stack]
- Max Depth = 192
 - Call Chain = SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
 
[Calls]- >>   HAL_RCC_OscConfig
 - >>   HAL_RCC_ClockConfig
 - >>   Error_Handler
 - >>   __aeabi_memclr4
 
[Called By]
SystemInit (Thumb, 32 bytes, Stack size 0 bytes, system_stm32f4xx.o(.text.SystemInit))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(.text)
 
TIM1_BRK_TIM9_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.TIM1_BRK_TIM9_IRQHandler))
[Stack]
- Max Depth = 28
 - Call Chain = TIM1_BRK_TIM9_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
TIM7_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.TIM7_IRQHandler))
[Stack]
- Max Depth = 28
 - Call Chain = TIM7_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
 
[Calls]
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
TIM_Base_SetConfig (Thumb, 410 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig))
[Stack]
- Max Depth = 12
 - Call Chain = TIM_Base_SetConfig
 
[Called By]- >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_Base_Init
 
TIM_CCxChannelCmd (Thumb, 318 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text.TIM_CCxChannelCmd))
[Stack]
- Max Depth = 32
 - Call Chain = TIM_CCxChannelCmd ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_TIM_PWM_Stop
 - >>   HAL_TIM_PWM_Start
 
TIM_ETR_SetConfig (Thumb, 52 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_ETR_SetConfig))
[Stack]
- Max Depth = 20
 - Call Chain = TIM_ETR_SetConfig
 
[Called By]- >>   HAL_TIM_ConfigClockSource
 
TIM_OC2_SetConfig (Thumb, 364 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig))
[Stack]
- Max Depth = 40
 - Call Chain = TIM_OC2_SetConfig ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_TIM_PWM_ConfigChannel
 
Task_Ai (Thumb, 474 bytes, Stack size 56 bytes, ai_1.o(.text.Task_Ai))
[Stack]
- Max Depth = 252
 - Call Chain = Task_Ai ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   AI_WaitDmaCplt
 - >>   AI_StartSend
 - >>   AI_StartReceiving
 - >>   AI_SearchArmor
 - >>   AI_ParseHost
 - >>   AI_PackRef
 - >>   AI_PackMCU
 - >>   AI_PackCmd
 - >>   AI_Init
 - >>   AI_HandleOffline
 
[Address Reference Count : 1]
Task_AttiEsti (Thumb, 364 bytes, Stack size 48 bytes, atti_esti.o(.text.Task_AttiEsti))
[Stack]
- Max Depth = 424
 - Call Chain = Task_AttiEsti ⇒ AHRS_Update ⇒ AHRS_UpdateIMU ⇒ InvSqrt
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   BMI088_WaitNew
 - >>   BMI088_ParseGyro
 - >>   BMI088_ParseAccl
 - >>   BMI088_Init
 - >>   BMI088_GyroWaitDmaCplt
 - >>   BMI088_GyroStartDmaRecv
 - >>   BMI088_GetUpdateFreq
 - >>   BMI088_AcclWaitDmaCplt
 - >>   BMI088_AcclStartDmaRecv
 - >>   PID_Init
 - >>   PID_Calc
 - >>   AHRS_Update
 - >>   AHRS_Init
 - >>   AHRS_GetEulr
 - >>   BSP_PWM_Start
 - >>   BSP_PWM_Set
 
[Address Reference Count : 1]
Task_CLI (Thumb, 520 bytes, Stack size 40 bytes, cli.o(.text.Task_CLI))
[Stack]
- Max Depth = 296
 - Call Chain = Task_CLI ⇒ BSP_USB_Printf ⇒ BSP_USB_Transmit ⇒ CDC_Transmit_FS ⇒ USBD_CDC_TransmitPacket ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osThreadFlagsWait
 - >>   FreeRTOS_CLIRegisterCommand
 - >>   FreeRTOS_CLIProcessCommand
 - >>   FreeRTOS_CLIGetOutputBuffer
 - >>   BSP_USB_ReadyReceive
 - >>   BSP_USB_ReadChar
 - >>   BSP_USB_Printf
 - >>   strlen
 - >>   __aeabi_memclr
 
[Address Reference Count : 1]
Task_Can (Thumb, 602 bytes, Stack size 48 bytes, can_3.o(.text.Task_Can))
[Stack]
- Max Depth = 324
 - Call Chain = Task_Can ⇒ CAN_Init ⇒ osMessageQueueNew ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   CAN_StoreMsg
 - >>   CAN_Motor_Control
 - >>   CAN_Init
 - >>   CAN_ClearFlag
 - >>   CAN_CheckFlag
 - >>   CAN_Cap_Control
 
[Address Reference Count : 1]
Task_Cap (Thumb, 432 bytes, Stack size 72 bytes, cap_1.o(.text.Task_Cap))
[Stack]
- Max Depth = 268
 - Call Chain = Task_Cap ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   Cap_DumpUI
 - >>   Cap_Control
 - >>   CAN_CAP_HandleOffline
 
[Address Reference Count : 1]
Task_Command (Thumb, 456 bytes, Stack size 48 bytes, command.o(.text.Task_Command))
[Stack]
- Max Depth = 244
 - Call Chain = Task_Command ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   CMD_ParseRc
 - >>   CMD_ParseHost
 - >>   CMD_Init
 - >>   CMD_CheckHostOverwrite
 
[Address Reference Count : 1]
Task_CtrlChassis (Thumb, 352 bytes, Stack size 64 bytes, ctrl_chassis.o(.text.Task_CtrlChassis))
[Stack]
- Max Depth = 260
 - Call Chain = Task_CtrlChassis ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   Chassis_UpdateFeedback
 - >>   Chassis_PowerLimit
 - >>   Chassis_Init
 - >>   Chassis_DumpUI
 - >>   Chassis_DumpOutput
 - >>   Chassis_Control
 
[Address Reference Count : 1]
Task_CtrlGimbal (Thumb, 368 bytes, Stack size 56 bytes, ctrl_gimbal.o(.text.Task_CtrlGimbal))
[Stack]
- Max Depth = 252
 - Call Chain = Task_CtrlGimbal ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   Gimbal_UpdateFeedback
 - >>   Gimbal_PackAI
 - >>   Gimbal_Init
 - >>   Gimbal_DumpUI
 - >>   Gimbal_DumpOutput
 - >>   Gimbal_Control
 
[Address Reference Count : 1]
Task_CtrlShoot (Thumb, 372 bytes, Stack size 56 bytes, ctrl_shoot.o(.text.Task_CtrlShoot))
[Stack]
- Max Depth = 280
 - Call Chain = Task_CtrlShoot ⇒ Shoot_Control ⇒ Shoot_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   HAL_GetTick
 - >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   Shoot_UpdateFeedback
 - >>   Shoot_ResetOutput
 - >>   Shoot_Init
 - >>   Shoot_DumpUI
 - >>   Shoot_DumpOutput
 - >>   Shoot_Control
 
[Address Reference Count : 1]
Task_Info (Thumb, 78 bytes, Stack size 24 bytes, info.o(.text.Task_Info))
[Stack]
- Max Depth = 172
 - Call Chain = Task_Info ⇒ osDelayUntil ⇒ vTaskDelayUntil ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   osDelay
 - >>   BSP_LED_Set
 
[Address Reference Count : 1]
Task_Init (Thumb, 940 bytes, Stack size 48 bytes, init.o(.text.Task_Init))
[Stack]
- Max Depth = 300
 - Call Chain = Task_Init ⇒ osThreadNew ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadTerminate
 - >>   osThreadNew
 - >>   osThreadGetId
 - >>   osMessageQueueNew
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   Config_Get
 
[Address Reference Count : 1]-  freertos.o(.text.MX_FREERTOS_Init)
 
Task_Monitor (Thumb, 212 bytes, Stack size 32 bytes, monitor.o(.text.Task_Monitor))
[Stack]
- Max Depth = 180
 - Call Chain = Task_Monitor ⇒ osDelayUntil ⇒ vTaskDelayUntil ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   osDelay
 - >>   Capacity_GetBatteryRemain
 - >>   BSP_LED_Set
 - >>   BSP_GetTemperature
 - >>   BSP_GetBatteryVolt
 
[Address Reference Count : 1]
Task_RC (Thumb, 144 bytes, Stack size 16 bytes, rc.o(.text.Task_RC))
[Stack]
- Max Depth = 212
 - Call Chain = Task_RC ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   DR16_WaitDmaCplt
 - >>   DR16_StartDmaRecv
 - >>   DR16_ParseRC
 - >>   DR16_Init
 - >>   DR16_HandleOffline
 
[Address Reference Count : 1]
Task_Referee (Thumb, 604 bytes, Stack size 40 bytes, referee_1.o(.text.Task_Referee))
[Stack]
- Max Depth = 632
 - Call Chain = Task_Referee ⇒ Referee_UIRefresh ⇒ __hardfp_sin ⇒ __ieee754_rem_pio2 ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   osThreadGetId
 - >>   osThreadGetStackSpace
 - >>   osThreadFlagsWait
 - >>   osMessageQueueReset
 - >>   osMessageQueuePut
 - >>   osMessageQueueGet
 - >>   osKernelGetTickFreq
 - >>   osKernelGetTickCount
 - >>   osDelay
 - >>   Referee_UIRefresh
 - >>   Referee_StartReceiving
 - >>   Referee_PraseCmd
 - >>   Referee_Parse
 - >>   Referee_PackUI
 - >>   Referee_PackShoot
 - >>   Referee_PackChassis
 - >>   Referee_PackCap
 - >>   Referee_PackAI
 - >>   Referee_Init
 - >>   Referee_HandleOffline
 
[Address Reference Count : 1]
UART_Start_Receive_DMA (Thumb, 192 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA))
[Stack]
- Max Depth = 88
 - Call Chain = UART_Start_Receive_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
 
[Calls]
[Called By]
UI_DelLayer (Thumb, 58 bytes, Stack size 12 bytes, ui.o(.text.UI_DelLayer))
[Stack]
- Max Depth = 12
 - Call Chain = UI_DelLayer
 
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
UI_DrawArc (Thumb, 558 bytes, Stack size 64 bytes, ui.o(.text.UI_DrawArc))
[Stack]
- Max Depth = 104
 - Call Chain = UI_DrawArc ⇒ snprintf
 
[Calls]
[Called By]
UI_DrawCharacter (Thumb, 476 bytes, Stack size 56 bytes, ui.o(.text.UI_DrawCharacter))
[Stack]
- Max Depth = 96
 - Call Chain = UI_DrawCharacter ⇒ snprintf
 
[Calls]
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
UI_DrawCycle (Thumb, 406 bytes, Stack size 48 bytes, ui.o(.text.UI_DrawCycle))
[Stack]
- Max Depth = 88
 - Call Chain = UI_DrawCycle ⇒ snprintf
 
[Calls]
[Called By]
UI_DrawLine (Thumb, 458 bytes, Stack size 56 bytes, ui.o(.text.UI_DrawLine))
[Stack]
- Max Depth = 96
 - Call Chain = UI_DrawLine ⇒ snprintf
 
[Calls]
[Called By]- >>   Referee_UIRefresh
 - >>   Referee_PraseCmd
 
UI_DrawRectangle (Thumb, 462 bytes, Stack size 56 bytes, ui.o(.text.UI_DrawRectangle))
[Stack]
- Max Depth = 96
 - Call Chain = UI_DrawRectangle ⇒ snprintf
 
[Calls]
[Called By]
USART1_IRQHandler (Thumb, 28 bytes, Stack size 16 bytes, stm32f4xx_it.o(.text.USART1_IRQHandler))
[Stack]
- Max Depth = 104
 - Call Chain = USART1_IRQHandler ⇒ HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_IRQHandler
 - >>   BSP_UART_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
USART6_IRQHandler (Thumb, 28 bytes, Stack size 16 bytes, stm32f4xx_it.o(.text.USART6_IRQHandler))
[Stack]
- Max Depth = 104
 - Call Chain = USART6_IRQHandler ⇒ HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_IRQHandler
 - >>   BSP_UART_IRQHandler
 
[Address Reference Count : 1]-  startup_stm32f407xx.o(RESET)
 
USBD_CDC_GetDeviceQualifierDescriptor (Thumb, 22 bytes, Stack size 4 bytes, usbd_cdc.o(.text.USBD_CDC_GetDeviceQualifierDescriptor))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_CDC_GetDeviceQualifierDescriptor
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_ReceivePacket (Thumb, 94 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_ReceivePacket))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CDC_ReceivePacket ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_PrepareReceive
 
[Called By]
USBD_CDC_RegisterInterface (Thumb, 44 bytes, Stack size 12 bytes, usbd_cdc.o(.text.USBD_CDC_RegisterInterface))
[Stack]
- Max Depth = 12
 - Call Chain = USBD_CDC_RegisterInterface
 
[Called By]
USBD_CDC_SetRxBuffer (Thumb, 52 bytes, Stack size 16 bytes, usbd_cdc.o(.text.USBD_CDC_SetRxBuffer))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_CDC_SetRxBuffer
 
[Called By]
USBD_CDC_SetTxBuffer (Thumb, 62 bytes, Stack size 20 bytes, usbd_cdc.o(.text.USBD_CDC_SetTxBuffer))
[Stack]
- Max Depth = 20
 - Call Chain = USBD_CDC_SetTxBuffer
 
[Called By]
USBD_CDC_TransmitPacket (Thumb, 110 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_TransmitPacket))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CDC_TransmitPacket ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]
USBD_ClrClassConfig (Thumb, 42 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_ClrClassConfig))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_ClrClassConfig
 
[Called By]
USBD_CtlContinueRx (Thumb, 30 bytes, Stack size 24 bytes, usbd_ioreq.o(.text.USBD_CtlContinueRx))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CtlContinueRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_PrepareReceive
 
[Called By]
USBD_CtlContinueSendData (Thumb, 30 bytes, Stack size 24 bytes, usbd_ioreq.o(.text.USBD_CtlContinueSendData))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CtlContinueSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]
USBD_CtlError (Thumb, 28 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_CtlError))
[Stack]
- Max Depth = 80
 - Call Chain = USBD_CtlError ⇒ USBD_LL_StallEP ⇒ HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
 
[Calls]
[Called By]- >>   USBD_SetConfig
 - >>   USBD_SetAddress
 - >>   USBD_GetStatus
 - >>   USBD_GetDescriptor
 - >>   USBD_GetConfig
 - >>   USBD_ClrFeature
 - >>   USBD_StdItfReq
 - >>   USBD_StdEPReq
 - >>   USBD_StdDevReq
 - >>   USBD_CDC_Setup
 
USBD_CtlPrepareRx (Thumb, 54 bytes, Stack size 24 bytes, usbd_ioreq.o(.text.USBD_CtlPrepareRx))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CtlPrepareRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_PrepareReceive
 
[Called By]
USBD_CtlReceiveStatus (Thumb, 34 bytes, Stack size 16 bytes, usbd_ioreq.o(.text.USBD_CtlReceiveStatus))
[Stack]
- Max Depth = 160
 - Call Chain = USBD_CtlReceiveStatus ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_PrepareReceive
 
[Called By]
USBD_CtlSendData (Thumb, 50 bytes, Stack size 24 bytes, usbd_ioreq.o(.text.USBD_CtlSendData))
[Stack]
- Max Depth = 168
 - Call Chain = USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]- >>   USBD_GetStatus
 - >>   USBD_GetDescriptor
 - >>   USBD_GetConfig
 - >>   USBD_StdEPReq
 - >>   USBD_CDC_Setup
 
USBD_CtlSendStatus (Thumb, 34 bytes, Stack size 16 bytes, usbd_ioreq.o(.text.USBD_CtlSendStatus))
[Stack]
- Max Depth = 160
 - Call Chain = USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]- >>   USBD_LL_DataOutStage
 - >>   USBD_SetFeature
 - >>   USBD_SetConfig
 - >>   USBD_SetAddress
 - >>   USBD_GetDescriptor
 - >>   USBD_ClrFeature
 - >>   USBD_StdItfReq
 - >>   USBD_StdEPReq
 
USBD_FS_ConfigStrDescriptor (Thumb, 78 bytes, Stack size 16 bytes, usbd_desc.o(.text.USBD_FS_ConfigStrDescriptor))
[Stack]
- Max Depth = 60
 - Call Chain = USBD_FS_ConfigStrDescriptor ⇒ USBD_GetString ⇒ USBD_GetLen
 
[Calls]
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_DeviceDescriptor (Thumb, 26 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_DeviceDescriptor))
[Stack]
- Max Depth = 8
 - Call Chain = USBD_FS_DeviceDescriptor
 
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_InterfaceStrDescriptor (Thumb, 78 bytes, Stack size 16 bytes, usbd_desc.o(.text.USBD_FS_InterfaceStrDescriptor))
[Stack]
- Max Depth = 60
 - Call Chain = USBD_FS_InterfaceStrDescriptor ⇒ USBD_GetString ⇒ USBD_GetLen
 
[Calls]
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_LangIDStrDescriptor (Thumb, 26 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_LangIDStrDescriptor))
[Stack]
- Max Depth = 8
 - Call Chain = USBD_FS_LangIDStrDescriptor
 
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_ManufacturerStrDescriptor (Thumb, 40 bytes, Stack size 24 bytes, usbd_desc.o(.text.USBD_FS_ManufacturerStrDescriptor))
[Stack]
- Max Depth = 68
 - Call Chain = USBD_FS_ManufacturerStrDescriptor ⇒ USBD_GetString ⇒ USBD_GetLen
 
[Calls]
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_ProductStrDescriptor (Thumb, 78 bytes, Stack size 16 bytes, usbd_desc.o(.text.USBD_FS_ProductStrDescriptor))
[Stack]
- Max Depth = 60
 - Call Chain = USBD_FS_ProductStrDescriptor ⇒ USBD_GetString ⇒ USBD_GetLen
 
[Calls]
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_FS_SerialStrDescriptor (Thumb, 32 bytes, Stack size 16 bytes, usbd_desc.o(.text.USBD_FS_SerialStrDescriptor))
[Stack]
- Max Depth = 52
 - Call Chain = USBD_FS_SerialStrDescriptor ⇒ Get_SerialNum ⇒ IntToUnicode
 
[Calls]
[Address Reference Count : 1]-  usbd_desc.o(.data.FS_Desc)
 
USBD_GetString (Thumb, 152 bytes, Stack size 32 bytes, usbd_ctlreq.o(.text.USBD_GetString))
[Stack]
- Max Depth = 44
 - Call Chain = USBD_GetString ⇒ USBD_GetLen
 
[Calls]
[Called By]- >>   USBD_FS_ProductStrDescriptor
 - >>   USBD_FS_ManufacturerStrDescriptor
 - >>   USBD_FS_InterfaceStrDescriptor
 - >>   USBD_FS_ConfigStrDescriptor
 
USBD_Get_USB_Status (Thumb, 82 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_Get_USB_Status))
[Stack]
- Max Depth = 8
 - Call Chain = USBD_Get_USB_Status
 
[Called By]- >>   USBD_LL_Transmit
 - >>   USBD_LL_Start
 - >>   USBD_LL_StallEP
 - >>   USBD_LL_SetUSBAddress
 - >>   USBD_LL_PrepareReceive
 - >>   USBD_LL_OpenEP
 - >>   USBD_LL_CloseEP
 - >>   USBD_LL_ClearStallEP
 
USBD_Init (Thumb, 106 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_Init))
[Stack]
- Max Depth = 304
 - Call Chain = USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]
[Called By]
USBD_LL_ClearStallEP (Thumb, 58 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_ClearStallEP))
[Stack]
- Max Depth = 56
 - Call Chain = USBD_LL_ClearStallEP ⇒ HAL_PCD_EP_ClrStall ⇒ USB_EPClearStall
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_ClrStall
 
[Called By]
USBD_LL_CloseEP (Thumb, 58 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_CloseEP))
[Stack]
- Max Depth = 56
 - Call Chain = USBD_LL_CloseEP ⇒ HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_Close
 
[Called By]
USBD_LL_DataInStage (Thumb, 332 bytes, Stack size 40 bytes, usbd_core.o(.text.USBD_LL_DataInStage))
[Stack]
- Max Depth = 208
 - Call Chain = USBD_LL_DataInStage ⇒ USBD_CtlContinueSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_StallEP
 - >>   USBD_LL_PrepareReceive
 - >>   USBD_RunTestMode
 - >>   USBD_CtlReceiveStatus
 - >>   USBD_CtlContinueSendData
 
[Called By]- >>   HAL_PCD_DataInStageCallback
 
USBD_LL_DataOutStage (Thumb, 246 bytes, Stack size 48 bytes, usbd_core.o(.text.USBD_LL_DataOutStage))
[Stack]
- Max Depth = 216
 - Call Chain = USBD_LL_DataOutStage ⇒ USBD_CtlContinueRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlSendStatus
 - >>   USBD_CtlContinueRx
 
[Called By]- >>   HAL_PCD_DataOutStageCallback
 
USBD_LL_DevConnected (Thumb, 10 bytes, Stack size 4 bytes, usbd_core.o(.text.USBD_LL_DevConnected))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_LL_DevConnected
 
[Called By]- >>   HAL_PCD_ConnectCallback
 
USBD_LL_DevDisconnected (Thumb, 44 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_LL_DevDisconnected))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_LL_DevDisconnected
 
[Called By]- >>   HAL_PCD_DisconnectCallback
 
USBD_LL_GetRxDataSize (Thumb, 28 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_GetRxDataSize))
[Stack]
- Max Depth = 24
 - Call Chain = USBD_LL_GetRxDataSize ⇒ HAL_PCD_EP_GetRxCount
 
[Calls]
[Called By]
USBD_LL_Init (Thumb, 126 bytes, Stack size 24 bytes, usbd_conf.o(.text.USBD_LL_Init))
[Stack]
- Max Depth = 280
 - Call Chain = USBD_LL_Init ⇒ HAL_PCD_Init ⇒ USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]- >>   HAL_PCD_Init
 - >>   HAL_PCDEx_SetTxFiFo
 - >>   HAL_PCDEx_SetRxFiFo
 - >>   Error_Handler
 
[Called By]
USBD_LL_IsStallEP (Thumb, 92 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_IsStallEP))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_LL_IsStallEP
 
[Called By]
USBD_LL_IsoINIncomplete (Thumb, 86 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_LL_IsoINIncomplete))
[Stack]
- Max Depth = 24
 - Call Chain = USBD_LL_IsoINIncomplete
 
[Called By]- >>   HAL_PCD_ISOINIncompleteCallback
 
USBD_LL_IsoOUTIncomplete (Thumb, 86 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_LL_IsoOUTIncomplete))
[Stack]
- Max Depth = 24
 - Call Chain = USBD_LL_IsoOUTIncomplete
 
[Called By]- >>   HAL_PCD_ISOOUTIncompleteCallback
 
USBD_LL_OpenEP (Thumb, 74 bytes, Stack size 24 bytes, usbd_conf.o(.text.USBD_LL_OpenEP))
[Stack]
- Max Depth = 72
 - Call Chain = USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_Open
 
[Called By]- >>   USBD_LL_Reset
 - >>   USBD_CDC_Init
 
USBD_LL_PrepareReceive (Thumb, 66 bytes, Stack size 32 bytes, usbd_conf.o(.text.USBD_LL_PrepareReceive))
[Stack]
- Max Depth = 144
 - Call Chain = USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_Receive
 
[Called By]- >>   USBD_LL_DataInStage
 - >>   USBD_CDC_ReceivePacket
 - >>   USBD_CtlReceiveStatus
 - >>   USBD_CtlContinueRx
 - >>   USBD_CDC_Init
 - >>   USBD_CtlPrepareRx
 
USBD_LL_Reset (Thumb, 160 bytes, Stack size 32 bytes, usbd_core.o(.text.USBD_LL_Reset))
[Stack]
- Max Depth = 104
 - Call Chain = USBD_LL_Reset ⇒ USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
 
[Calls]
[Called By]
USBD_LL_Resume (Thumb, 36 bytes, Stack size 4 bytes, usbd_core.o(.text.USBD_LL_Resume))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_LL_Resume
 
[Called By]- >>   HAL_PCD_ResumeCallback
 
USBD_LL_SOF (Thumb, 78 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_LL_SOF))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_LL_SOF
 
[Called By]
USBD_LL_SetSpeed (Thumb, 22 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_SetSpeed))
[Stack]
- Max Depth = 8
 - Call Chain = USBD_LL_SetSpeed
 
[Called By]
USBD_LL_SetUSBAddress (Thumb, 58 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_SetUSBAddress))
[Stack]
- Max Depth = 52
 - Call Chain = USBD_LL_SetUSBAddress ⇒ HAL_PCD_SetAddress ⇒ USB_SetDevAddress
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_SetAddress
 
[Called By]
USBD_LL_SetupStage (Thumb, 148 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_LL_SetupStage))
[Stack]
- Max Depth = 264
 - Call Chain = USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_StallEP
 - >>   USBD_StdItfReq
 - >>   USBD_StdEPReq
 - >>   USBD_StdDevReq
 - >>   USBD_ParseSetupRequest
 
[Called By]- >>   HAL_PCD_SetupStageCallback
 
USBD_LL_StallEP (Thumb, 58 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_StallEP))
[Stack]
- Max Depth = 64
 - Call Chain = USBD_LL_StallEP ⇒ HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_SetStall
 
[Called By]- >>   USBD_LL_SetupStage
 - >>   USBD_LL_DataInStage
 - >>   USBD_CtlError
 - >>   USBD_StdEPReq
 
USBD_LL_Start (Thumb, 50 bytes, Stack size 16 bytes, usbd_conf.o(.text.USBD_LL_Start))
[Stack]
- Max Depth = 48
 - Call Chain = USBD_LL_Start ⇒ HAL_PCD_Start ⇒ USB_DevConnect
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_Start
 
[Called By]
USBD_LL_Suspend (Thumb, 30 bytes, Stack size 4 bytes, usbd_core.o(.text.USBD_LL_Suspend))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_LL_Suspend
 
[Called By]- >>   HAL_PCD_SuspendCallback
 
USBD_LL_Transmit (Thumb, 66 bytes, Stack size 32 bytes, usbd_conf.o(.text.USBD_LL_Transmit))
[Stack]
- Max Depth = 144
 - Call Chain = USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_Get_USB_Status
 - >>   HAL_PCD_EP_Transmit
 
[Called By]- >>   USBD_CDC_TransmitPacket
 - >>   USBD_CtlSendData
 - >>   USBD_CtlSendStatus
 - >>   USBD_CtlContinueSendData
 - >>   USBD_CDC_DataIn
 
USBD_ParseSetupRequest (Thumb, 98 bytes, Stack size 24 bytes, usbd_ctlreq.o(.text.USBD_ParseSetupRequest))
[Stack]
- Max Depth = 40
 - Call Chain = USBD_ParseSetupRequest ⇒ SWAPBYTE
 
[Calls]
[Called By]
USBD_RegisterClass (Thumb, 86 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_RegisterClass))
[Stack]
- Max Depth = 24
 - Call Chain = USBD_RegisterClass
 
[Called By]
USBD_RunTestMode (Thumb, 10 bytes, Stack size 4 bytes, usbd_core.o(.text.USBD_RunTestMode))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_RunTestMode
 
[Called By]
USBD_SetClassConfig (Thumb, 54 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_SetClassConfig))
[Stack]
- Max Depth = 16
 - Call Chain = USBD_SetClassConfig
 
[Called By]
USBD_Start (Thumb, 16 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_Start))
[Stack]
- Max Depth = 64
 - Call Chain = USBD_Start ⇒ USBD_LL_Start ⇒ HAL_PCD_Start ⇒ USB_DevConnect
 
[Calls]
[Called By]
USBD_StdDevReq (Thumb, 196 bytes, Stack size 32 bytes, usbd_ctlreq.o(.text.USBD_StdDevReq))
[Stack]
- Max Depth = 240
 - Call Chain = USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlError
 - >>   USBD_SetFeature
 - >>   USBD_SetConfig
 - >>   USBD_SetAddress
 - >>   USBD_GetStatus
 - >>   USBD_GetDescriptor
 - >>   USBD_GetConfig
 - >>   USBD_ClrFeature
 
[Called By]
USBD_StdEPReq (Thumb, 792 bytes, Stack size 56 bytes, usbd_ctlreq.o(.text.USBD_StdEPReq))
[Stack]
- Max Depth = 224
 - Call Chain = USBD_StdEPReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_StallEP
 - >>   USBD_LL_IsStallEP
 - >>   USBD_LL_ClearStallEP
 - >>   USBD_CtlSendData
 - >>   USBD_CtlError
 - >>   USBD_CtlSendStatus
 
[Called By]
USBD_StdItfReq (Thumb, 154 bytes, Stack size 24 bytes, usbd_ctlreq.o(.text.USBD_StdItfReq))
[Stack]
- Max Depth = 184
 - Call Chain = USBD_StdItfReq ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlError
 - >>   USBD_CtlSendStatus
 
[Called By]
USBD_static_free (Thumb, 8 bytes, Stack size 4 bytes, usbd_conf.o(.text.USBD_static_free))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_static_free
 
[Called By]
USBD_static_malloc (Thumb, 16 bytes, Stack size 4 bytes, usbd_conf.o(.text.USBD_static_malloc))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_static_malloc
 
[Called By]
USB_ActivateEndpoint (Thumb, 222 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_ActivateEndpoint))
[Stack]
- Max Depth = 16
 - Call Chain = USB_ActivateEndpoint
 
[Called By]
USB_ActivateSetup (Thumb, 44 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_ActivateSetup))
[Stack]
- Max Depth = 8
 - Call Chain = USB_ActivateSetup
 
[Called By]
USB_CoreInit (Thumb, 252 bytes, Stack size 104 bytes, stm32f4xx_ll_usb.o(.text.USB_CoreInit))
[Stack]
- Max Depth = 116
 - Call Chain = USB_CoreInit ⇒ USB_CoreReset
 
[Calls]
[Called By]
USB_DeactivateEndpoint (Thumb, 326 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_DeactivateEndpoint))
[Stack]
- Max Depth = 16
 - Call Chain = USB_DeactivateEndpoint
 
[Called By]
USB_DevConnect (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_DevConnect))
[Stack]
- Max Depth = 8
 - Call Chain = USB_DevConnect
 
[Called By]
USB_DevDisconnect (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_DevDisconnect))
[Stack]
- Max Depth = 8
 - Call Chain = USB_DevDisconnect
 
[Called By]
USB_DevInit (Thumb, 706 bytes, Stack size 112 bytes, stm32f4xx_ll_usb.o(.text.USB_DevInit))
[Stack]
- Max Depth = 128
 - Call Chain = USB_DevInit ⇒ USB_FlushTxFifo
 
[Calls]- >>   USB_SetDevSpeed
 - >>   USB_FlushTxFifo
 - >>   USB_FlushRxFifo
 
[Called By]
USB_DisableGlobalInt (Thumb, 20 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_DisableGlobalInt))
[Stack]
- Max Depth = 4
 - Call Chain = USB_DisableGlobalInt
 
[Called By]
USB_EP0StartXfer (Thumb, 496 bytes, Stack size 20 bytes, stm32f4xx_ll_usb.o(.text.USB_EP0StartXfer))
[Stack]
- Max Depth = 20
 - Call Chain = USB_EP0StartXfer
 
[Called By]- >>   HAL_PCD_EP_Transmit
 - >>   HAL_PCD_EP_Receive
 
USB_EP0_OutStart (Thumb, 158 bytes, Stack size 24 bytes, stm32f4xx_ll_usb.o(.text.USB_EP0_OutStart))
[Stack]
- Max Depth = 24
 - Call Chain = USB_EP0_OutStart
 
[Called By]- >>   PCD_EP_OutXfrComplete_int
 - >>   PCD_EP_OutSetupPacket_int
 - >>   HAL_PCD_EP_SetStall
 - >>   HAL_PCD_IRQHandler
 
USB_EPClearStall (Thumb, 160 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_EPClearStall))
[Stack]
- Max Depth = 16
 - Call Chain = USB_EPClearStall
 
[Called By]
USB_EPSetStall (Thumb, 168 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_EPSetStall))
[Stack]
- Max Depth = 16
 - Call Chain = USB_EPSetStall
 
[Called By]
USB_EPStartXfer (Thumb, 868 bytes, Stack size 40 bytes, stm32f4xx_ll_usb.o(.text.USB_EPStartXfer))
[Stack]
- Max Depth = 80
 - Call Chain = USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]- >>   HAL_PCD_EP_Transmit
 - >>   HAL_PCD_EP_Receive
 
USB_EnableGlobalInt (Thumb, 20 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_EnableGlobalInt))
[Stack]
- Max Depth = 4
 - Call Chain = USB_EnableGlobalInt
 
[Called By]
USB_FlushRxFifo (Thumb, 76 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_FlushRxFifo))
[Stack]
- Max Depth = 12
 - Call Chain = USB_FlushRxFifo
 
[Called By]
USB_FlushTxFifo (Thumb, 82 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_FlushTxFifo))
[Stack]
- Max Depth = 16
 - Call Chain = USB_FlushTxFifo
 
[Called By]- >>   USB_DevInit
 - >>   HAL_PCD_IRQHandler
 
USB_GetDevSpeed (Thumb, 76 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_GetDevSpeed))
[Stack]
- Max Depth = 16
 - Call Chain = USB_GetDevSpeed
 
[Called By]
USB_GetMode (Thumb, 16 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_GetMode))
[Stack]
- Max Depth = 4
 - Call Chain = USB_GetMode
 
[Called By]
USB_ReadDevAllInEpInterrupt (Thumb, 36 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevAllInEpInterrupt))
[Stack]
- Max Depth = 12
 - Call Chain = USB_ReadDevAllInEpInterrupt
 
[Called By]
USB_ReadDevAllOutEpInterrupt (Thumb, 36 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevAllOutEpInterrupt))
[Stack]
- Max Depth = 12
 - Call Chain = USB_ReadDevAllOutEpInterrupt
 
[Called By]
USB_ReadDevInEPInterrupt (Thumb, 78 bytes, Stack size 24 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevInEPInterrupt))
[Stack]
- Max Depth = 24
 - Call Chain = USB_ReadDevInEPInterrupt
 
[Called By]
USB_ReadDevOutEPInterrupt (Thumb, 46 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevOutEPInterrupt))
[Stack]
- Max Depth = 16
 - Call Chain = USB_ReadDevOutEPInterrupt
 
[Called By]
USB_ReadInterrupts (Thumb, 26 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadInterrupts))
[Stack]
- Max Depth = 8
 - Call Chain = USB_ReadInterrupts
 
[Called By]
USB_ReadPacket (Thumb, 78 bytes, Stack size 28 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadPacket))
[Stack]
- Max Depth = 28
 - Call Chain = USB_ReadPacket
 
[Called By]
USB_SetCurrentMode (Thumb, 94 bytes, Stack size 24 bytes, stm32f4xx_ll_usb.o(.text.USB_SetCurrentMode))
[Stack]
- Max Depth = 48
 - Call Chain = USB_SetCurrentMode ⇒ HAL_Delay
 
[Calls]
[Called By]
USB_SetDevAddress (Thumb, 54 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_SetDevAddress))
[Stack]
- Max Depth = 12
 - Call Chain = USB_SetDevAddress
 
[Called By]
USB_SetDevSpeed (Thumb, 34 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_SetDevSpeed))
[Stack]
- Max Depth = 12
 - Call Chain = USB_SetDevSpeed
 
[Called By]
USB_SetTurnaroundTime (Thumb, 442 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_SetTurnaroundTime))
[Stack]
- Max Depth = 16
 - Call Chain = USB_SetTurnaroundTime
 
[Called By]
USB_WritePacket (Thumb, 112 bytes, Stack size 40 bytes, stm32f4xx_ll_usb.o(.text.USB_WritePacket))
[Stack]
- Max Depth = 40
 - Call Chain = USB_WritePacket
 
[Called By]- >>   USB_EPStartXfer
 - >>   PCD_WriteEmptyTxFifo
 
UsageFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.UsageFault_Handler))
[Address Reference Count : 1]
-  startup_stm32f407xx.o(RESET)
 
VerifyFailed (Thumb, 12 bytes, Stack size 8 bytes, user_math.o(.text.VerifyFailed))
[Stack]
- Max Depth = 8
 - Call Chain = VerifyFailed
 
[Called By]
assert_failed (Thumb, 12 bytes, Stack size 8 bytes, main.o(.text.assert_failed))
[Stack]
- Max Depth = 8
 - Call Chain = assert_failed
 
[Called By]- >>   HAL_GPIO_ReadPin
 - >>   HAL_FLASHEx_Erase
 - >>   FLASH_MassErase
 - >>   HAL_FLASH_Program
 - >>   FLASH_Erase_Sector
 - >>   FLASH_Program_Word
 - >>   FLASH_Program_HalfWord
 - >>   FLASH_Program_DoubleWord
 - >>   FLASH_Program_Byte
 - >>   HAL_PCD_Init
 - >>   HAL_UART_Init
 - >>   HAL_TIM_PWM_Init
 - >>   HAL_TIM_PWM_ConfigChannel
 - >>   HAL_TIM_ConfigClockSource
 - >>   HAL_TIM_Base_Init
 - >>   HAL_TIMEx_MasterConfigSynchronization
 - >>   HAL_TIMEx_ConfigBreakDeadTime
 - >>   HAL_SPI_Init
 - >>   HAL_RNG_Init
 - >>   HAL_I2C_Init
 - >>   HAL_DMA_Init
 - >>   HAL_CRC_Init
 - >>   HAL_NVIC_DisableIRQ
 - >>   HAL_CAN_Init
 - >>   HAL_ADC_Init
 - >>   HAL_ADC_ConfigChannel
 - >>   HAL_TIM_Base_Start_IT
 - >>   HAL_NVIC_SetPriority
 - >>   HAL_NVIC_EnableIRQ
 - >>   HAL_GPIO_WritePin
 - >>   HAL_GPIO_Init
 - >>   HAL_RCC_OscConfig
 - >>   HAL_RCC_ClockConfig
 - >>   TIM_OC2_SetConfig
 - >>   TIM_CCxChannelCmd
 - >>   HAL_TIM_PWM_Stop
 - >>   HAL_TIM_PWM_Start
 - >>   TIM_OC4_SetConfig
 - >>   TIM_OC3_SetConfig
 - >>   TIM_OC1_SetConfig
 - >>   HAL_SPI_TransmitReceive_DMA
 - >>   HAL_SPI_TransmitReceive
 - >>   HAL_SPI_Transmit
 - >>   HAL_SPI_Receive_DMA
 - >>   HAL_CAN_GetRxMessage
 - >>   HAL_CAN_ConfigFilter
 - >>   HAL_CAN_AddTxMessage
 - >>   HAL_CAN_ActivateNotification
 - >>   HAL_ADC_Start
 - >>   ADC_Init
 - >>   HAL_NVIC_SetPriorityGrouping
 - >>   HAL_DMA_Start_IT
 - >>   UART_SetConfig
 
configureTimerForRunTimeStats (Thumb, 28 bytes, Stack size 8 bytes, freertos.o(.text.configureTimerForRunTimeStats))
[Stack]
- Max Depth = 40
 - Call Chain = configureTimerForRunTimeStats ⇒ HAL_TIM_Base_Start_IT ⇒ assert_failed
 
[Calls]
[Called By]
eTaskGetState (Thumb, 246 bytes, Stack size 40 bytes, tasks.o(.text.eTaskGetState))
[Stack]
- Max Depth = 48
 - Call Chain = eTaskGetState ⇒ vPortExitCritical
 
[Calls]- >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   osThreadTerminate
 - >>   vTaskGetInfo
 
fAbs (Thumb, 54 bytes, Stack size 8 bytes, user_math.o(.text.fAbs))
[Stack]
- Max Depth = 8
 - Call Chain = fAbs
 
[Called By]
getRunTimeCounterValue (Thumb, 12 bytes, Stack size 0 bytes, freertos.o(.text.getRunTimeCounterValue))
[Called By]
- >>   vTaskSwitchContext
 - >>   uxTaskGetSystemState
 
main (Thumb, 124 bytes, Stack size 16 bytes, main.o(.text.main))
[Stack]
- Max Depth = 308
 - Call Chain = main ⇒ osKernelStart ⇒ vTaskStartScheduler ⇒ xTimerCreateTimerTask ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   osKernelStart
 - >>   osKernelInitialize
 - >>   SystemClock_Config
 - >>   MX_USART6_UART_Init
 - >>   MX_USART3_UART_Init
 - >>   MX_USART1_UART_Init
 - >>   MX_TIM8_Init
 - >>   MX_TIM7_Init
 - >>   MX_TIM5_Init
 - >>   MX_TIM4_Init
 - >>   MX_TIM3_Init
 - >>   MX_TIM1_Init
 - >>   MX_TIM10_Init
 - >>   MX_SPI2_Init
 - >>   MX_SPI1_Init
 - >>   MX_RNG_Init
 - >>   MX_I2C3_Init
 - >>   MX_I2C2_Init
 - >>   MX_I2C1_Init
 - >>   MX_GPIO_Init
 - >>   MX_FREERTOS_Init
 - >>   MX_DMA_Init
 - >>   MX_CRC_Init
 - >>   MX_CAN2_Init
 - >>   MX_CAN1_Init
 - >>   MX_ADC3_Init
 - >>   MX_ADC1_Init
 - >>   HAL_Init
 
[Address Reference Count : 1]-  entry9a.o(.ARM.Collect$$$$0000000B)
 
osDelay (Thumb, 52 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osDelay))
[Stack]
- Max Depth = 116
 - Call Chain = osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]- >>   BSP_Delay
 - >>   Task_Referee
 - >>   Task_Monitor
 - >>   Task_Info
 
osDelayUntil (Thumb, 88 bytes, Stack size 32 bytes, cmsis_os2.o(.text.osDelayUntil))
[Stack]
- Max Depth = 148
 - Call Chain = osDelayUntil ⇒ vTaskDelayUntil ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetTickCount
 - >>   vTaskDelayUntil
 
[Called By]- >>   Task_Monitor
 - >>   Task_Info
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_Ai
 
osKernelGetState (Thumb, 82 bytes, Stack size 16 bytes, cmsis_os2.o(.text.osKernelGetState))
[Stack]
- Max Depth = 20
 - Call Chain = osKernelGetState ⇒ xTaskGetSchedulerState
 
[Calls]- >>   xTaskGetSchedulerState
 
[Called By]
osKernelGetTickCount (Thumb, 38 bytes, Stack size 16 bytes, cmsis_os2.o(.text.osKernelGetTickCount))
[Stack]
- Max Depth = 48
 - Call Chain = osKernelGetTickCount ⇒ xTaskGetTickCountFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]- >>   xTaskGetTickCountFromISR
 - >>   xTaskGetTickCount
 
[Called By]- >>   Task_Referee
 - >>   Task_Monitor
 - >>   Task_Info
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_Ai
 
osKernelGetTickFreq (Thumb, 6 bytes, Stack size 0 bytes, cmsis_os2.o(.text.osKernelGetTickFreq))
[Called By]
- >>   BSP_Delay
 - >>   Task_Referee
 - >>   Task_Monitor
 - >>   Task_Info
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_Ai
 
osKernelInitialize (Thumb, 70 bytes, Stack size 8 bytes, cmsis_os2.o(.text.osKernelInitialize))
[Stack]
- Max Depth = 8
 - Call Chain = osKernelInitialize
 
[Called By]
osKernelLock (Thumb, 86 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osKernelLock))
[Stack]
- Max Depth = 28
 - Call Chain = osKernelLock ⇒ xTaskGetSchedulerState
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   vTaskSuspendAll
 
[Called By]- >>   Task_Init
 - >>   Config_Set
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_AttiEsti
 
osKernelStart (Thumb, 82 bytes, Stack size 16 bytes, cmsis_os2.o(.text.osKernelStart))
[Stack]
- Max Depth = 292
 - Call Chain = osKernelStart ⇒ vTaskStartScheduler ⇒ xTimerCreateTimerTask ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   SVC_Setup
 - >>   vTaskStartScheduler
 
[Called By]
osKernelUnlock (Thumb, 110 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osKernelUnlock))
[Stack]
- Max Depth = 92
 - Call Chain = osKernelUnlock ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   xTaskResumeAll
 
[Called By]- >>   Task_Init
 - >>   Config_Set
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_AttiEsti
 
osMessageQueueGet (Thumb, 192 bytes, Stack size 40 bytes, cmsis_os2.o(.text.osMessageQueueGet))
[Stack]
- Max Depth = 172
 - Call Chain = osMessageQueueGet ⇒ xQueueReceive ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xQueueReceiveFromISR
 - >>   xQueueReceive
 
[Called By]- >>   Task_Referee
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_CaliGyro
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_Ai
 
osMessageQueueNew (Thumb, 254 bytes, Stack size 40 bytes, cmsis_os2.o(.text.osMessageQueueNew))
[Stack]
- Max Depth = 196
 - Call Chain = osMessageQueueNew ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xQueueGenericCreateStatic
 - >>   xQueueGenericCreate
 - >>   vQueueAddToRegistry
 
[Called By]
osMessageQueuePut (Thumb, 196 bytes, Stack size 40 bytes, cmsis_os2.o(.text.osMessageQueuePut))
[Stack]
- Max Depth = 196
 - Call Chain = osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xQueueGenericSendFromISR
 - >>   xQueueGenericSend
 
[Called By]- >>   CAN_CAN2RxFifoMsgPendingCallback
 - >>   CAN_CAN1RxFifoMsgPendingCallback
 - >>   Task_Referee
 - >>   Task_RC
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_AttiEsti
 - >>   Task_Ai
 
osMessageQueueReset (Thumb, 64 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osMessageQueueReset))
[Stack]
- Max Depth = 84
 - Call Chain = osMessageQueueReset ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]
[Called By]- >>   Task_Referee
 - >>   Task_RC
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_AttiEsti
 - >>   Task_Ai
 
osThreadFlagsClear (Thumb, 128 bytes, Stack size 32 bytes, cmsis_os2.o(.text.osThreadFlagsClear))
[Stack]
- Max Depth = 100
 - Call Chain = osThreadFlagsClear ⇒ xTaskGenericNotify ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGenericNotify
 - >>   xTaskGetCurrentTaskHandle
 
[Called By]
osThreadFlagsGet (Thumb, 64 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osThreadFlagsGet))
[Stack]
- Max Depth = 92
 - Call Chain = osThreadFlagsGet ⇒ xTaskGenericNotify ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGenericNotify
 - >>   xTaskGetCurrentTaskHandle
 
[Called By]
osThreadFlagsSet (Thumb, 164 bytes, Stack size 48 bytes, cmsis_os2.o(.text.osThreadFlagsSet))
[Stack]
- Max Depth = 136
 - Call Chain = osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]- >>   xTaskGenericNotifyFromISR
 - >>   xTaskGenericNotify
 
[Called By]- >>   CDC_Receive_FS
 - >>   Ai_RxCpltCallback
 - >>   Ai_IdleLineCallback
 - >>   Referee_RxCpltCallback
 - >>   Referee_AbortRxCpltCallback
 - >>   RefereeSlowRefreshTimerCallback
 - >>   RefereeFastRefreshTimerCallback
 - >>   DR16_RxCpltCallback
 - >>   BMI088_RxCpltCallback
 - >>   BMI088_GyroIntCallback
 - >>   BMI088_AcclIntCallback
 
osThreadFlagsWait (Thumb, 282 bytes, Stack size 56 bytes, cmsis_os2.o(.text.osThreadFlagsWait))
[Stack]
- Max Depth = 128
 - Call Chain = osThreadFlagsWait ⇒ xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   xTaskGetTickCount
 - >>   xTaskNotifyWait
 
[Called By]- >>   AI_WaitDmaCplt
 - >>   DR16_WaitDmaCplt
 - >>   BMI088_WaitNew
 - >>   BMI088_GyroWaitDmaCplt
 - >>   BMI088_AcclWaitDmaCplt
 - >>   Task_Referee
 - >>   Task_CLI
 
osThreadGetId (Thumb, 16 bytes, Stack size 16 bytes, cmsis_os2.o(.text.osThreadGetId))
[Stack]
- Max Depth = 20
 - Call Chain = osThreadGetId ⇒ xTaskGetCurrentTaskHandle
 
[Calls]- >>   xTaskGetCurrentTaskHandle
 
[Called By]- >>   Task_Init
 - >>   StartDefaultTask
 - >>   AI_Init
 - >>   Referee_Init
 - >>   DR16_Init
 - >>   CAN_Init
 - >>   BMI088_Init
 - >>   Task_Referee
 - >>   Task_RC
 - >>   Task_Monitor
 - >>   Task_Info
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_CLI
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_AttiEsti
 - >>   Task_Ai
 
osThreadGetStackSpace (Thumb, 52 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osThreadGetStackSpace))
[Stack]
- Max Depth = 64
 - Call Chain = osThreadGetStackSpace ⇒ uxTaskGetStackHighWaterMark ⇒ prvTaskCheckFreeStackSpace
 
[Calls]- >>   uxTaskGetStackHighWaterMark
 
[Called By]- >>   Task_Referee
 - >>   Task_RC
 - >>   Task_Monitor
 - >>   Task_Info
 - >>   Task_CtrlShoot
 - >>   Task_CtrlGimbal
 - >>   Task_CtrlChassis
 - >>   Task_Command
 - >>   Task_CLI
 - >>   Task_Cap
 - >>   Task_Can
 - >>   Task_AttiEsti
 - >>   Task_Ai
 
osThreadNew (Thumb, 346 bytes, Stack size 72 bytes, cmsis_os2.o(.text.osThreadNew))
[Stack]
- Max Depth = 252
 - Call Chain = osThreadNew ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskCreateStatic
 - >>   xTaskCreate
 
[Called By]- >>   Task_Init
 - >>   MX_FREERTOS_Init
 
osThreadResume (Thumb, 64 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osThreadResume))
[Stack]
- Max Depth = 64
 - Call Chain = osThreadResume ⇒ vTaskResume ⇒ prvTaskIsTaskSuspended
 
[Calls]
[Called By]- >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_CaliGyro
 
osThreadSuspend (Thumb, 64 bytes, Stack size 24 bytes, cmsis_os2.o(.text.osThreadSuspend))
[Stack]
- Max Depth = 88
 - Call Chain = osThreadSuspend ⇒ vTaskSuspend ⇒ vTaskSwitchContext ⇒ vApplicationStackOverflowHook
 
[Calls]
[Called By]- >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_CaliGyro
 
osThreadTerminate (Thumb, 94 bytes, Stack size 32 bytes, cmsis_os2.o(.text.osThreadTerminate))
[Stack]
- Max Depth = 172
 - Call Chain = osThreadTerminate ⇒ vTaskDelete ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   vTaskDelete
 - >>   eTaskGetState
 
[Called By]- >>   Task_Init
 - >>   StartDefaultTask
 
osTimerNew (Thumb, 290 bytes, Stack size 56 bytes, cmsis_os2.o(.text.osTimerNew))
[Stack]
- Max Depth = 316
 - Call Chain = osTimerNew ⇒ xTimerCreateStatic ⇒ prvInitialiseNewTimer ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xTimerCreateStatic
 - >>   xTimerCreate
 - >>   vPortFree
 - >>   pvPortMalloc
 
[Called By]
osTimerStart (Thumb, 92 bytes, Stack size 32 bytes, cmsis_os2.o(.text.osTimerStart))
[Stack]
- Max Depth = 236
 - Call Chain = osTimerStart ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]
[Called By]
pvPortMalloc (Thumb, 530 bytes, Stack size 48 bytes, heap_4.o(.text.pvPortMalloc))
[Stack]
- Max Depth = 116
 - Call Chain = pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvInsertBlockIntoFreeList
 - >>   prvHeapInit
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]- >>   osTimerNew
 - >>   xTimerCreate
 - >>   xTaskCreate
 - >>   vTaskList
 - >>   vTaskGetRunTimeStats
 - >>   xQueueGenericCreate
 - >>   FreeRTOS_CLIRegisterCommand
 - >>   BSP_Malloc
 
pvTimerGetTimerID (Thumb, 58 bytes, Stack size 24 bytes, timers.o(.text.pvTimerGetTimerID))
[Stack]
- Max Depth = 32
 - Call Chain = pvTimerGetTimerID ⇒ vPortExitCritical
 
[Calls]- >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
pxPortInitialiseStack (Thumb, 94 bytes, Stack size 12 bytes, port.o(.text.pxPortInitialiseStack))
[Stack]
- Max Depth = 12
 - Call Chain = pxPortInitialiseStack
 
[Called By]
uxListRemove (Thumb, 72 bytes, Stack size 8 bytes, list.o(.text.uxListRemove))
[Stack]
- Max Depth = 8
 - Call Chain = uxListRemove
 
[Called By]- >>   prvSwitchTimerLists
 - >>   prvProcessReceivedCommands
 - >>   prvProcessExpiredTimer
 - >>   xTaskIncrementTick
 - >>   vTaskSuspend
 - >>   vTaskResume
 - >>   vTaskDelete
 - >>   prvCheckTasksWaitingTermination
 - >>   prvAddCurrentTaskToDelayedList
 - >>   xTaskGenericNotifyFromISR
 - >>   xTaskGenericNotify
 - >>   xTaskRemoveFromEventList
 - >>   xTaskPriorityDisinherit
 - >>   xTaskResumeAll
 
uxTaskGetStackHighWaterMark (Thumb, 56 bytes, Stack size 32 bytes, tasks.o(.text.uxTaskGetStackHighWaterMark))
[Stack]
- Max Depth = 40
 - Call Chain = uxTaskGetStackHighWaterMark ⇒ prvTaskCheckFreeStackSpace
 
[Calls]- >>   prvTaskCheckFreeStackSpace
 
[Called By]
uxTaskGetSystemState (Thumb, 274 bytes, Stack size 32 bytes, tasks.o(.text.uxTaskGetSystemState))
[Stack]
- Max Depth = 172
 - Call Chain = uxTaskGetSystemState ⇒ prvListTasksWithinSingleList ⇒ vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   getRunTimeCounterValue
 - >>   prvListTasksWithinSingleList
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]- >>   vTaskList
 - >>   vTaskGetRunTimeStats
 
vApplicationGetIdleTaskMemory (Thumb, 42 bytes, Stack size 12 bytes, cmsis_os2.o(.text.vApplicationGetIdleTaskMemory))
[Stack]
- Max Depth = 12
 - Call Chain = vApplicationGetIdleTaskMemory
 
[Called By]
vApplicationGetTimerTaskMemory (Thumb, 44 bytes, Stack size 12 bytes, cmsis_os2.o(.text.vApplicationGetTimerTaskMemory))
[Stack]
- Max Depth = 12
 - Call Chain = vApplicationGetTimerTaskMemory
 
[Called By]
vApplicationStackOverflowHook (Thumb, 12 bytes, Stack size 8 bytes, freertos.o(.text.vApplicationStackOverflowHook))
[Stack]
- Max Depth = 8
 - Call Chain = vApplicationStackOverflowHook
 
[Called By]
vListInitialise (Thumb, 46 bytes, Stack size 4 bytes, list.o(.text.vListInitialise))
[Stack]
- Max Depth = 4
 - Call Chain = vListInitialise
 
[Called By]- >>   prvCheckForValidListAndQueue
 - >>   prvInitialiseTaskLists
 - >>   xQueueGenericReset
 
vListInitialiseItem (Thumb, 14 bytes, Stack size 4 bytes, list.o(.text.vListInitialiseItem))
[Stack]
- Max Depth = 4
 - Call Chain = vListInitialiseItem
 
[Called By]- >>   prvInitialiseNewTimer
 - >>   prvInitialiseNewTask
 
vListInsert (Thumb, 106 bytes, Stack size 16 bytes, list.o(.text.vListInsert))
[Stack]
- Max Depth = 16
 - Call Chain = vListInsert
 
[Called By]- >>   prvSwitchTimerLists
 - >>   prvInsertTimerInActiveList
 - >>   prvAddCurrentTaskToDelayedList
 - >>   vTaskPlaceOnEventList
 
vListInsertEnd (Thumb, 58 bytes, Stack size 12 bytes, list.o(.text.vListInsertEnd))
[Stack]
- Max Depth = 12
 - Call Chain = vListInsertEnd
 
[Called By]- >>   xTaskIncrementTick
 - >>   vTaskSuspend
 - >>   vTaskResume
 - >>   vTaskDelete
 - >>   prvAddNewTaskToReadyList
 - >>   prvAddCurrentTaskToDelayedList
 - >>   xTaskGenericNotifyFromISR
 - >>   xTaskGenericNotify
 - >>   xTaskRemoveFromEventList
 - >>   xTaskPriorityDisinherit
 - >>   vTaskPlaceOnEventListRestricted
 - >>   xTaskResumeAll
 
vPortEnterCritical (Thumb, 86 bytes, Stack size 8 bytes, port.o(.text.vPortEnterCritical))
[Stack]
- Max Depth = 8
 - Call Chain = vPortEnterCritical
 
[Called By]- >>   vPortGetHeapStats
 - >>   pvTimerGetTimerID
 - >>   prvCheckForValidListAndQueue
 - >>   vTaskSuspend
 - >>   vTaskResume
 - >>   vTaskDelete
 - >>   eTaskGetState
 - >>   prvCheckTasksWaitingTermination
 - >>   prvAddNewTaskToReadyList
 - >>   xTaskNotifyWait
 - >>   xTaskGenericNotify
 - >>   xTaskCheckForTimeOut
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 - >>   xQueueGenericReset
 - >>   vQueueWaitForMessageRestricted
 - >>   prvUnlockQueue
 - >>   prvIsQueueFull
 - >>   prvIsQueueEmpty
 - >>   xTaskResumeAll
 - >>   FreeRTOS_CLIRegisterCommand
 
vPortExitCritical (Thumb, 74 bytes, Stack size 8 bytes, port.o(.text.vPortExitCritical))
[Stack]
- Max Depth = 8
 - Call Chain = vPortExitCritical
 
[Called By]- >>   vPortGetHeapStats
 - >>   pvTimerGetTimerID
 - >>   prvCheckForValidListAndQueue
 - >>   vTaskSuspend
 - >>   vTaskResume
 - >>   vTaskDelete
 - >>   eTaskGetState
 - >>   prvCheckTasksWaitingTermination
 - >>   prvAddNewTaskToReadyList
 - >>   xTaskNotifyWait
 - >>   xTaskGenericNotify
 - >>   xTaskCheckForTimeOut
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 - >>   xQueueGenericReset
 - >>   vQueueWaitForMessageRestricted
 - >>   prvUnlockQueue
 - >>   prvIsQueueFull
 - >>   prvIsQueueEmpty
 - >>   xTaskResumeAll
 - >>   FreeRTOS_CLIRegisterCommand
 
vPortFree (Thumb, 206 bytes, Stack size 32 bytes, heap_4.o(.text.vPortFree))
[Stack]
- Max Depth = 100
 - Call Chain = vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvInsertBlockIntoFreeList
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]- >>   osTimerNew
 - >>   prvProcessReceivedCommands
 - >>   xTaskCreate
 - >>   vTaskList
 - >>   vTaskGetRunTimeStats
 - >>   prvDeleteTCB
 - >>   BSP_Free
 
vPortGetHeapStats (Thumb, 206 bytes, Stack size 32 bytes, heap_4.o(.text.vPortGetHeapStats))
[Stack]
- Max Depth = 100
 - Call Chain = vPortGetHeapStats ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
vPortSetupTimerInterrupt (Thumb, 68 bytes, Stack size 0 bytes, port.o(.text.vPortSetupTimerInterrupt))
[Called By]
vPortValidateInterruptPriority (Thumb, 132 bytes, Stack size 16 bytes, port.o(.text.vPortValidateInterruptPriority))
[Stack]
- Max Depth = 16
 - Call Chain = vPortValidateInterruptPriority
 
[Called By]- >>   xTaskGetTickCountFromISR
 - >>   xTaskGenericNotifyFromISR
 - >>   xQueueReceiveFromISR
 - >>   xQueueGenericSendFromISR
 
vQueueAddToRegistry (Thumb, 82 bytes, Stack size 12 bytes, queue.o(.text.vQueueAddToRegistry))
[Stack]
- Max Depth = 12
 - Call Chain = vQueueAddToRegistry
 
[Called By]- >>   osMessageQueueNew
 - >>   prvCheckForValidListAndQueue
 
vQueueWaitForMessageRestricted (Thumb, 100 bytes, Stack size 24 bytes, queue.o(.text.vQueueWaitForMessageRestricted))
[Stack]
- Max Depth = 88
 - Call Chain = vQueueWaitForMessageRestricted ⇒ vTaskPlaceOnEventListRestricted ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   vTaskPlaceOnEventListRestricted
 - >>   prvUnlockQueue
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   prvProcessTimerOrBlockTask
 
vTaskDelay (Thumb, 110 bytes, Stack size 24 bytes, tasks.o(.text.vTaskDelay))
[Stack]
- Max Depth = 92
 - Call Chain = vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvAddCurrentTaskToDelayedList
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]
vTaskDelayUntil (Thumb, 276 bytes, Stack size 48 bytes, tasks.o(.text.vTaskDelayUntil))
[Stack]
- Max Depth = 116
 - Call Chain = vTaskDelayUntil ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvAddCurrentTaskToDelayedList
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]
vTaskDelete (Thumb, 270 bytes, Stack size 24 bytes, tasks.o(.text.vTaskDelete))
[Stack]
- Max Depth = 140
 - Call Chain = vTaskDelete ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvResetNextTaskUnblockTime
 - >>   prvDeleteTCB
 - >>   vListInsertEnd
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
vTaskGetInfo (Thumb, 226 bytes, Stack size 32 bytes, tasks.o(.text.vTaskGetInfo))
[Stack]
- Max Depth = 100
 - Call Chain = vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   eTaskGetState
 - >>   prvTaskCheckFreeStackSpace
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]- >>   prvListTasksWithinSingleList
 
vTaskGetRunTimeStats (Thumb, 254 bytes, Stack size 32 bytes, tasks.o(.text.vTaskGetRunTimeStats))
[Stack]
- Max Depth = 204
 - Call Chain = vTaskGetRunTimeStats ⇒ uxTaskGetSystemState ⇒ prvListTasksWithinSingleList ⇒ vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   uxTaskGetSystemState
 - >>   prvWriteNameToBuffer
 - >>   vPortFree
 - >>   pvPortMalloc
 - >>   sprintf
 - >>   strlen
 
[Called By]
vTaskInternalSetTimeOutState (Thumb, 36 bytes, Stack size 4 bytes, tasks.o(.text.vTaskInternalSetTimeOutState))
[Stack]
- Max Depth = 4
 - Call Chain = vTaskInternalSetTimeOutState
 
[Called By]- >>   xTaskCheckForTimeOut
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 
vTaskList (Thumb, 270 bytes, Stack size 48 bytes, tasks.o(.text.vTaskList))
[Stack]
- Max Depth = 220
 - Call Chain = vTaskList ⇒ uxTaskGetSystemState ⇒ prvListTasksWithinSingleList ⇒ vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   uxTaskGetSystemState
 - >>   prvWriteNameToBuffer
 - >>   vPortFree
 - >>   pvPortMalloc
 - >>   sprintf
 - >>   strlen
 
[Called By]
vTaskMissedYield (Thumb, 14 bytes, Stack size 0 bytes, tasks.o(.text.vTaskMissedYield))
[Called By]
vTaskPlaceOnEventList (Thumb, 66 bytes, Stack size 24 bytes, tasks.o(.text.vTaskPlaceOnEventList))
[Stack]
- Max Depth = 64
 - Call Chain = vTaskPlaceOnEventList ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   prvAddCurrentTaskToDelayedList
 - >>   vListInsert
 
[Called By]- >>   xQueueReceive
 - >>   xQueueGenericSend
 
vTaskPlaceOnEventListRestricted (Thumb, 82 bytes, Stack size 24 bytes, tasks.o(.text.vTaskPlaceOnEventListRestricted))
[Stack]
- Max Depth = 64
 - Call Chain = vTaskPlaceOnEventListRestricted ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   prvAddCurrentTaskToDelayedList
 - >>   vListInsertEnd
 
[Called By]- >>   vQueueWaitForMessageRestricted
 
vTaskResume (Thumb, 214 bytes, Stack size 24 bytes, tasks.o(.text.vTaskResume))
[Stack]
- Max Depth = 40
 - Call Chain = vTaskResume ⇒ prvTaskIsTaskSuspended
 
[Calls]- >>   prvTaskIsTaskSuspended
 - >>   vListInsertEnd
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
vTaskStartScheduler (Thumb, 228 bytes, Stack size 48 bytes, tasks.o(.text.vTaskStartScheduler))
[Stack]
- Max Depth = 276
 - Call Chain = vTaskStartScheduler ⇒ xTimerCreateTimerTask ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   configureTimerForRunTimeStats
 - >>   xTimerCreateTimerTask
 - >>   xTaskCreateStatic
 - >>   xPortStartScheduler
 - >>   vApplicationGetIdleTaskMemory
 
[Called By]
vTaskSuspend (Thumb, 296 bytes, Stack size 24 bytes, tasks.o(.text.vTaskSuspend))
[Stack]
- Max Depth = 64
 - Call Chain = vTaskSuspend ⇒ vTaskSwitchContext ⇒ vApplicationStackOverflowHook
 
[Calls]- >>   vTaskSwitchContext
 - >>   prvResetNextTaskUnblockTime
 - >>   vListInsertEnd
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
vTaskSuspendAll (Thumb, 16 bytes, Stack size 0 bytes, tasks.o(.text.vTaskSuspendAll))
[Called By]
- >>   vPortGetHeapStats
 - >>   osKernelLock
 - >>   prvProcessTimerOrBlockTask
 - >>   vTaskGetInfo
 - >>   vTaskDelayUntil
 - >>   vTaskDelay
 - >>   uxTaskGetSystemState
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 - >>   vPortFree
 - >>   pvPortMalloc
 
vTaskSwitchContext (Thumb, 384 bytes, Stack size 32 bytes, tasks.o(.text.vTaskSwitchContext))
[Stack]
- Max Depth = 40
 - Call Chain = vTaskSwitchContext ⇒ vApplicationStackOverflowHook
 
[Calls]- >>   vApplicationStackOverflowHook
 - >>   getRunTimeCounterValue
 
[Called By]- >>   PendSV_Handler
 - >>   xPortStartScheduler
 - >>   vTaskSuspend
 
xPortStartScheduler (Thumb, 342 bytes, Stack size 40 bytes, port.o(.text.xPortStartScheduler))
[Stack]
- Max Depth = 80
 - Call Chain = xPortStartScheduler ⇒ vTaskSwitchContext ⇒ vApplicationStackOverflowHook
 
[Calls]- >>   vPortSetupTimerInterrupt
 - >>   vPortEnableVFP
 - >>   prvTaskExitError
 - >>   prvPortStartFirstTask
 - >>   vTaskSwitchContext
 
[Called By]
xPortSysTickHandler (Thumb, 60 bytes, Stack size 16 bytes, port.o(.text.xPortSysTickHandler))
[Stack]
- Max Depth = 60
 - Call Chain = xPortSysTickHandler ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]
xQueueGenericCreate (Thumb, 116 bytes, Stack size 40 bytes, queue.o(.text.xQueueGenericCreate))
[Stack]
- Max Depth = 156
 - Call Chain = xQueueGenericCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvInitialiseNewQueue
 - >>   pvPortMalloc
 
[Called By]
xQueueGenericCreateStatic (Thumb, 270 bytes, Stack size 72 bytes, queue.o(.text.xQueueGenericCreateStatic))
[Stack]
- Max Depth = 156
 - Call Chain = xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]
[Called By]- >>   osMessageQueueNew
 - >>   prvCheckForValidListAndQueue
 
xQueueGenericReset (Thumb, 186 bytes, Stack size 24 bytes, queue.o(.text.xQueueGenericReset))
[Stack]
- Max Depth = 60
 - Call Chain = xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xTaskRemoveFromEventList
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 - >>   vListInitialise
 
[Called By]- >>   osMessageQueueReset
 - >>   prvInitialiseNewQueue
 
xQueueGenericSend (Thumb, 556 bytes, Stack size 80 bytes, queue.o(.text.xQueueGenericSend))
[Stack]
- Max Depth = 156
 - Call Chain = xQueueGenericSend ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   xTaskRemoveFromEventList
 - >>   xTaskCheckForTimeOut
 - >>   vTaskPlaceOnEventList
 - >>   vTaskInternalSetTimeOutState
 - >>   prvUnlockQueue
 - >>   prvIsQueueFull
 - >>   prvCopyDataToQueue
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   osMessageQueuePut
 - >>   xTimerGenericCommand
 
xQueueGenericSendFromISR (Thumb, 332 bytes, Stack size 80 bytes, queue.o(.text.xQueueGenericSendFromISR))
[Stack]
- Max Depth = 156
 - Call Chain = xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTaskRemoveFromEventList
 - >>   vPortValidateInterruptPriority
 - >>   prvCopyDataToQueue
 
[Called By]- >>   osMessageQueuePut
 - >>   xTimerGenericCommand
 
xQueueReceive (Thumb, 476 bytes, Stack size 64 bytes, queue.o(.text.xQueueReceive))
[Stack]
- Max Depth = 132
 - Call Chain = xQueueReceive ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   xTaskRemoveFromEventList
 - >>   xTaskCheckForTimeOut
 - >>   vTaskPlaceOnEventList
 - >>   vTaskInternalSetTimeOutState
 - >>   prvUnlockQueue
 - >>   prvIsQueueEmpty
 - >>   prvCopyDataFromQueue
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   osMessageQueueGet
 - >>   prvProcessReceivedCommands
 
xQueueReceiveFromISR (Thumb, 264 bytes, Stack size 64 bytes, queue.o(.text.xQueueReceiveFromISR))
[Stack]
- Max Depth = 100
 - Call Chain = xQueueReceiveFromISR ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xTaskRemoveFromEventList
 - >>   vPortValidateInterruptPriority
 - >>   prvCopyDataFromQueue
 
[Called By]
xTaskCheckForTimeOut (Thumb, 246 bytes, Stack size 40 bytes, tasks.o(.text.xTaskCheckForTimeOut))
[Stack]
- Max Depth = 48
 - Call Chain = xTaskCheckForTimeOut ⇒ vPortExitCritical
 
[Calls]- >>   vTaskInternalSetTimeOutState
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   xQueueReceive
 - >>   xQueueGenericSend
 
xTaskCreate (Thumb, 158 bytes, Stack size 64 bytes, tasks.o(.text.xTaskCreate))
[Stack]
- Max Depth = 180
 - Call Chain = xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvInitialiseNewTask
 - >>   prvAddNewTaskToReadyList
 - >>   vPortFree
 - >>   pvPortMalloc
 
[Called By]
xTaskCreateStatic (Thumb, 206 bytes, Stack size 72 bytes, tasks.o(.text.xTaskCreateStatic))
[Stack]
- Max Depth = 124
 - Call Chain = xTaskCreateStatic ⇒ prvInitialiseNewTask ⇒ pxPortInitialiseStack
 
[Calls]- >>   prvInitialiseNewTask
 - >>   prvAddNewTaskToReadyList
 
[Called By]- >>   osThreadNew
 - >>   xTimerCreateTimerTask
 - >>   vTaskStartScheduler
 
xTaskGenericNotify (Thumb, 376 bytes, Stack size 56 bytes, tasks.o(.text.xTaskGenericNotify))
[Stack]
- Max Depth = 68
 - Call Chain = xTaskGenericNotify ⇒ vListInsertEnd
 
[Calls]- >>   vListInsertEnd
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   osThreadFlagsSet
 - >>   osThreadFlagsGet
 - >>   osThreadFlagsClear
 
xTaskGenericNotifyFromISR (Thumb, 452 bytes, Stack size 72 bytes, tasks.o(.text.xTaskGenericNotifyFromISR))
[Stack]
- Max Depth = 88
 - Call Chain = xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]- >>   vPortValidateInterruptPriority
 - >>   vListInsertEnd
 - >>   uxListRemove
 
[Called By]
xTaskGetCurrentTaskHandle (Thumb, 20 bytes, Stack size 4 bytes, tasks.o(.text.xTaskGetCurrentTaskHandle))
[Stack]
- Max Depth = 4
 - Call Chain = xTaskGetCurrentTaskHandle
 
[Called By]- >>   osThreadGetId
 - >>   osThreadFlagsGet
 - >>   osThreadFlagsClear
 
xTaskGetSchedulerState (Thumb, 56 bytes, Stack size 4 bytes, tasks.o(.text.xTaskGetSchedulerState))
[Stack]
- Max Depth = 4
 - Call Chain = xTaskGetSchedulerState
 
[Called By]- >>   SysTick_Handler
 - >>   osKernelUnlock
 - >>   osKernelLock
 - >>   osKernelGetState
 - >>   xTimerGenericCommand
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 
xTaskGetTickCount (Thumb, 20 bytes, Stack size 4 bytes, tasks.o(.text.xTaskGetTickCount))
[Stack]
- Max Depth = 4
 - Call Chain = xTaskGetTickCount
 
[Called By]- >>   osThreadFlagsWait
 - >>   osKernelGetTickCount
 - >>   osDelayUntil
 - >>   prvSampleTimeNow
 
xTaskGetTickCountFromISR (Thumb, 30 bytes, Stack size 16 bytes, tasks.o(.text.xTaskGetTickCountFromISR))
[Stack]
- Max Depth = 32
 - Call Chain = xTaskGetTickCountFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]- >>   vPortValidateInterruptPriority
 
[Called By]
xTaskIncrementTick (Thumb, 452 bytes, Stack size 32 bytes, tasks.o(.text.xTaskIncrementTick))
[Stack]
- Max Depth = 44
 - Call Chain = xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvResetNextTaskUnblockTime
 - >>   vListInsertEnd
 - >>   uxListRemove
 
[Called By]- >>   xPortSysTickHandler
 - >>   xTaskResumeAll
 
xTaskNotifyWait (Thumb, 214 bytes, Stack size 32 bytes, tasks.o(.text.xTaskNotifyWait))
[Stack]
- Max Depth = 72
 - Call Chain = xTaskNotifyWait ⇒ prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   prvAddCurrentTaskToDelayedList
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
xTaskPriorityDisinherit (Thumb, 236 bytes, Stack size 32 bytes, tasks.o(.text.xTaskPriorityDisinherit))
[Stack]
- Max Depth = 44
 - Call Chain = xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   vListInsertEnd
 - >>   uxListRemove
 
[Called By]
xTaskRemoveFromEventList (Thumb, 206 bytes, Stack size 24 bytes, tasks.o(.text.xTaskRemoveFromEventList))
[Stack]
- Max Depth = 36
 - Call Chain = xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   vListInsertEnd
 - >>   uxListRemove
 
[Called By]- >>   xQueueReceiveFromISR
 - >>   xQueueReceive
 - >>   xQueueGenericSendFromISR
 - >>   xQueueGenericSend
 - >>   xQueueGenericReset
 - >>   prvUnlockQueue
 
xTaskResumeAll (Thumb, 390 bytes, Stack size 24 bytes, tasks.o(.text.xTaskResumeAll))
[Stack]
- Max Depth = 68
 - Call Chain = xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   xTaskIncrementTick
 - >>   prvResetNextTaskUnblockTime
 - >>   vListInsertEnd
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   vPortGetHeapStats
 - >>   osKernelUnlock
 - >>   prvProcessTimerOrBlockTask
 - >>   vTaskGetInfo
 - >>   vTaskDelayUntil
 - >>   vTaskDelay
 - >>   uxTaskGetSystemState
 - >>   xQueueReceive
 - >>   xQueueGenericSend
 - >>   vPortFree
 - >>   pvPortMalloc
 
xTimerCreate (Thumb, 74 bytes, Stack size 40 bytes, timers.o(.text.xTimerCreate))
[Stack]
- Max Depth = 252
 - Call Chain = xTimerCreate ⇒ prvInitialiseNewTimer ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   prvInitialiseNewTimer
 - >>   pvPortMalloc
 
[Called By]
xTimerCreateStatic (Thumb, 138 bytes, Stack size 48 bytes, timers.o(.text.xTimerCreateStatic))
[Stack]
- Max Depth = 260
 - Call Chain = xTimerCreateStatic ⇒ prvInitialiseNewTimer ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]
[Called By]
xTimerCreateTimerTask (Thumb, 148 bytes, Stack size 48 bytes, timers.o(.text.xTimerCreateTimerTask))
[Stack]
- Max Depth = 228
 - Call Chain = xTimerCreateTimerTask ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   vApplicationGetTimerTaskMemory
 - >>   prvCheckForValidListAndQueue
 - >>   xTaskCreateStatic
 
[Called By]
xTimerGenericCommand (Thumb, 176 bytes, Stack size 48 bytes, timers.o(.text.xTimerGenericCommand))
[Stack]
- Max Depth = 204
 - Call Chain = xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTaskGetSchedulerState
 - >>   xQueueGenericSendFromISR
 - >>   xQueueGenericSend
 
[Called By]- >>   osTimerStart
 - >>   prvSwitchTimerLists
 - >>   prvProcessReceivedCommands
 - >>   prvProcessExpiredTimer
 
__0snprintf (Thumb, 48 bytes, Stack size 40 bytes, printfa.o(i.__0snprintf), UNUSED)
[Calls]
__1snprintf (Thumb, 0 bytes, Stack size 40 bytes, printfa.o(i.__0snprintf), UNUSED)
__2snprintf (Thumb, 0 bytes, Stack size 40 bytes, printfa.o(i.__0snprintf), UNUSED)
__c89snprintf (Thumb, 0 bytes, Stack size 40 bytes, printfa.o(i.__0snprintf), UNUSED)
snprintf (Thumb, 0 bytes, Stack size 40 bytes, printfa.o(i.__0snprintf))
[Stack]
- Max Depth = 40
 - Call Chain = snprintf
 
[Called By]- >>   UI_DrawRectangle
 - >>   UI_DrawLine
 - >>   UI_DrawCycle
 - >>   UI_DrawCharacter
 - >>   UI_DrawArc
 - >>   Command_Stats
 - >>   Command_SetMechZero
 - >>   Command_SetGimbalLim
 - >>   Command_Endian
 - >>   Command_Config
 - >>   Command_CaliGyro
 
__0sprintf (Thumb, 34 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
[Calls]
- >>   _sputc
 - >>   _printf_core
 
__1sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
__2sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
__c89sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf))
[Stack]
- Max Depth = 24
 - Call Chain = sprintf
 
[Called By]- >>   vTaskList
 - >>   vTaskGetRunTimeStats
 
__0vsnprintf (Thumb, 46 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]
- Max Depth = 24
 - Call Chain = vsnprintf
 
[Called By]
__ARM_fpclassify (Thumb, 48 bytes, Stack size 8 bytes, fpclassify.o(i.__ARM_fpclassify))
[Stack]
- Max Depth = 8
 - Call Chain = __ARM_fpclassify
 
[Called By]- >>   __kernel_sin
 - >>   __hardfp_atan
 
__ARM_fpclassifyf (Thumb, 38 bytes, Stack size 0 bytes, fpclassifyf.o(i.__ARM_fpclassifyf))
[Called By]
- >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_atan2f
 - >>   __hardfp_asinf
 
__hardfp_asinf (Thumb, 258 bytes, Stack size 16 bytes, asinf.o(i.__hardfp_asinf))
[Stack]
- Max Depth = 32
 - Call Chain = __hardfp_asinf ⇒ sqrtf
 
[Calls]- >>   __set_errno
 - >>   sqrtf
 - >>   __mathlib_flt_underflow
 - >>   __mathlib_flt_invalid
 - >>   __mathlib_flt_infnan
 - >>   __ARM_fpclassifyf
 
[Called By]
__hardfp_atan (Thumb, 622 bytes, Stack size 48 bytes, atan.o(i.__hardfp_atan))
[Stack]
- Max Depth = 160
 - Call Chain = __hardfp_atan ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __kernel_poly
 - >>   __ARM_fpclassify
 - >>   fabs
 - >>   __mathlib_dbl_underflow
 - >>   __mathlib_dbl_infnan
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 - >>   __aeabi_ddiv
 
[Called By]
__hardfp_atan2 (Thumb, 448 bytes, Stack size 56 bytes, atan2.o(i.__hardfp_atan2))
[Stack]
- Max Depth = 224
 - Call Chain = __hardfp_atan2 ⇒ atan ⇒ __hardfp_atan ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __set_errno
 - >>   fabs
 - >>   __mathlib_dbl_infnan2
 - >>   atan
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 - >>   __aeabi_ddiv
 - >>   __aeabi_cdcmpeq
 
[Called By]
__hardfp_atan2f (Thumb, 594 bytes, Stack size 32 bytes, atan2f.o(i.__hardfp_atan2f))
[Stack]
- Max Depth = 32
 - Call Chain = __hardfp_atan2f
 
[Calls]- >>   __set_errno
 - >>   __mathlib_flt_underflow
 - >>   __mathlib_flt_infnan2
 - >>   __ARM_fpclassifyf
 
[Called By]
__hardfp_cos (Thumb, 180 bytes, Stack size 32 bytes, cos.o(i.__hardfp_cos))
[Stack]
- Max Depth = 240
 - Call Chain = __hardfp_cos ⇒ __ieee754_rem_pio2 ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __set_errno
 - >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __mathlib_dbl_invalid
 - >>   __mathlib_dbl_infnan
 - >>   __kernel_cos
 
[Called By]
__hardfp_cosf (Thumb, 280 bytes, Stack size 8 bytes, cosf.o(i.__hardfp_cosf))
[Stack]
- Max Depth = 28
 - Call Chain = __hardfp_cosf ⇒ __mathlib_rredf2
 
[Calls]- >>   __set_errno
 - >>   __mathlib_rredf2
 - >>   __mathlib_flt_invalid
 - >>   __mathlib_flt_infnan
 
[Called By]- >>   Chassis_Control
 - >>   LowPassFilter2p_Init
 
__hardfp_floorf (Thumb, 98 bytes, Stack size 0 bytes, floorf.o(i.__hardfp_floorf))
[Called By]
__hardfp_sin (Thumb, 180 bytes, Stack size 32 bytes, sin.o(i.__hardfp_sin))
[Stack]
- Max Depth = 240
 - Call Chain = __hardfp_sin ⇒ __ieee754_rem_pio2 ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __set_errno
 - >>   __kernel_sin
 - >>   __ieee754_rem_pio2
 - >>   __mathlib_dbl_invalid
 - >>   __mathlib_dbl_infnan
 - >>   __kernel_cos
 
[Called By]
__hardfp_sinf (Thumb, 344 bytes, Stack size 16 bytes, sinf.o(i.__hardfp_sinf))
[Stack]
- Max Depth = 36
 - Call Chain = __hardfp_sinf ⇒ __mathlib_rredf2
 
[Calls]- >>   __set_errno
 - >>   __mathlib_rredf2
 - >>   __mathlib_flt_underflow
 - >>   __mathlib_flt_invalid
 - >>   __mathlib_flt_infnan
 - >>   __ARM_fpclassifyf
 
[Called By]- >>   Chassis_Control
 - >>   Chassis_CalcWz
 
__hardfp_tanf (Thumb, 322 bytes, Stack size 16 bytes, tanf.o(i.__hardfp_tanf))
[Stack]
- Max Depth = 36
 - Call Chain = __hardfp_tanf ⇒ __mathlib_rredf2
 
[Calls]- >>   __set_errno
 - >>   __mathlib_rredf2
 - >>   __mathlib_flt_underflow
 - >>   __mathlib_flt_invalid
 - >>   __mathlib_flt_infnan
 - >>   __ARM_fpclassifyf
 
[Called By]
__ieee754_rem_pio2 (Thumb, 938 bytes, Stack size 120 bytes, rred.o(i.__ieee754_rem_pio2))
[Stack]
- Max Depth = 208
 - Call Chain = __ieee754_rem_pio2 ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_i2d
 - >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __aeabi_d2iz
 - >>   __aeabi_ui2d
 - >>   fabs
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 
[Called By]- >>   __hardfp_sin
 - >>   __hardfp_cos
 
__kernel_cos (Thumb, 322 bytes, Stack size 64 bytes, cos_i.o(i.__kernel_cos))
[Stack]
- Max Depth = 176
 - Call Chain = __kernel_cos ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_dmul
 - >>   __aeabi_d2iz
 - >>   __kernel_poly
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 
[Called By]- >>   __hardfp_sin
 - >>   __hardfp_cos
 
__kernel_poly (Thumb, 248 bytes, Stack size 24 bytes, poly.o(i.__kernel_poly))
[Stack]
- Max Depth = 112
 - Call Chain = __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_dmul
 - >>   __aeabi_dadd
 
[Called By]- >>   __kernel_sin
 - >>   __kernel_cos
 - >>   __hardfp_atan
 
__kernel_sin (Thumb, 280 bytes, Stack size 72 bytes, sin_i.o(i.__kernel_sin))
[Stack]
- Max Depth = 184
 - Call Chain = __kernel_sin ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __kernel_poly
 - >>   __ARM_fpclassify
 - >>   __mathlib_dbl_underflow
 - >>   __aeabi_dsub
 - >>   __aeabi_drsub
 
[Called By]- >>   __hardfp_sin
 - >>   __hardfp_cos
 
__mathlib_dbl_infnan (Thumb, 20 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_infnan))
[Stack]
- Max Depth = 96
 - Call Chain = __mathlib_dbl_infnan ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   __hardfp_atan
 - >>   __hardfp_sin
 - >>   __hardfp_cos
 
__mathlib_dbl_infnan2 (Thumb, 20 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_infnan2))
[Stack]
- Max Depth = 96
 - Call Chain = __mathlib_dbl_infnan2 ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]
__mathlib_dbl_invalid (Thumb, 24 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_invalid))
[Stack]
- Max Depth = 48
 - Call Chain = __mathlib_dbl_invalid ⇒ __aeabi_ddiv ⇒ _double_round
 
[Calls]
[Called By]- >>   __hardfp_sin
 - >>   __hardfp_cos
 
__mathlib_dbl_underflow (Thumb, 24 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_underflow))
[Stack]
- Max Depth = 96
 - Call Chain = __mathlib_dbl_underflow ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]- >>   __kernel_sin
 - >>   __hardfp_atan
 
__mathlib_flt_infnan (Thumb, 6 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_infnan))
[Called By]
- >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_cosf
 - >>   __hardfp_asinf
 
__mathlib_flt_infnan2 (Thumb, 6 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_infnan2))
[Called By]
__mathlib_flt_invalid (Thumb, 10 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_invalid))
[Called By]
- >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_cosf
 - >>   __hardfp_asinf
 
__mathlib_flt_underflow (Thumb, 10 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_underflow))
[Called By]
- >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_atan2f
 - >>   __hardfp_asinf
 
__mathlib_rredf2 (Thumb, 316 bytes, Stack size 20 bytes, rredf.o(i.__mathlib_rredf2))
[Stack]
- Max Depth = 20
 - Call Chain = __mathlib_rredf2
 
[Called By]- >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_cosf
 
__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)
__set_errno (Thumb, 6 bytes, Stack size 0 bytes, errno.o(i.__set_errno))
[Called By]
- >>   sqrtf
 - >>   __hardfp_tanf
 - >>   __hardfp_sinf
 - >>   __hardfp_sin
 - >>   __hardfp_cosf
 - >>   __hardfp_cos
 - >>   __hardfp_atan2f
 - >>   __hardfp_atan2
 - >>   __hardfp_asinf
 
atan (Thumb, 16 bytes, Stack size 8 bytes, atan.o(i.atan))
[Stack]
- Max Depth = 168
 - Call Chain = atan ⇒ __hardfp_atan ⇒ __kernel_poly ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]
[Called By]
fabs (Thumb, 24 bytes, Stack size 8 bytes, fabs.o(i.fabs))
[Stack]
- Max Depth = 8
 - Call Chain = fabs
 
[Called By]- >>   __ieee754_rem_pio2
 - >>   __hardfp_atan
 - >>   __hardfp_atan2
 
sqrtf (Thumb, 62 bytes, Stack size 16 bytes, sqrtf.o(i.sqrtf))
[Stack]
- Max Depth = 16
 - Call Chain = sqrtf
 
[Calls]
[Called By]
Local Symbols
Get_SerialNum (Thumb, 92 bytes, Stack size 24 bytes, usbd_desc.o(.text.Get_SerialNum))
[Stack]
- Max Depth = 36
 - Call Chain = Get_SerialNum ⇒ IntToUnicode
 
[Calls]
[Called By]- >>   USBD_FS_SerialStrDescriptor
 
IntToUnicode (Thumb, 118 bytes, Stack size 12 bytes, usbd_desc.o(.text.IntToUnicode))
[Stack]
- Max Depth = 12
 - Call Chain = IntToUnicode
 
[Called By]
CDC_Control_FS (Thumb, 92 bytes, Stack size 16 bytes, usbd_cdc_if.o(.text.CDC_Control_FS))
[Stack]
- Max Depth = 16
 - Call Chain = CDC_Control_FS
 
[Address Reference Count : 1]-  usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
CDC_DeInit_FS (Thumb, 4 bytes, Stack size 0 bytes, usbd_cdc_if.o(.text.CDC_DeInit_FS))
[Address Reference Count : 1]
-  usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
CDC_Init_FS (Thumb, 26 bytes, Stack size 8 bytes, usbd_cdc_if.o(.text.CDC_Init_FS))
[Stack]
- Max Depth = 24
 - Call Chain = CDC_Init_FS ⇒ USBD_CDC_SetRxBuffer
 
[Calls]
[Address Reference Count : 1]-  usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
CDC_Receive_FS (Thumb, 30 bytes, Stack size 16 bytes, usbd_cdc_if.o(.text.CDC_Receive_FS))
[Stack]
- Max Depth = 152
 - Call Chain = CDC_Receive_FS ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
CDC_TransmitCplt_FS (Thumb, 24 bytes, Stack size 12 bytes, usbd_cdc_if.o(.text.CDC_TransmitCplt_FS))
[Stack]
- Max Depth = 12
 - Call Chain = CDC_TransmitCplt_FS
 
[Address Reference Count : 1]-  usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
 
PCD_EP_OutSetupPacket_int (Thumb, 138 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.PCD_EP_OutSetupPacket_int))
[Stack]
- Max Depth = 312
 - Call Chain = PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USB_EP0_OutStart
 - >>   HAL_PCD_SetupStageCallback
 
[Called By]
PCD_EP_OutXfrComplete_int (Thumb, 484 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.PCD_EP_OutXfrComplete_int))
[Stack]
- Max Depth = 264
 - Call Chain = PCD_EP_OutXfrComplete_int ⇒ HAL_PCD_DataOutStageCallback ⇒ USBD_LL_DataOutStage ⇒ USBD_CtlContinueRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USB_EP0_OutStart
 - >>   HAL_PCD_DataOutStageCallback
 
[Called By]
PCD_WriteEmptyTxFifo (Thumb, 306 bytes, Stack size 56 bytes, stm32f4xx_hal_pcd.o(.text.PCD_WriteEmptyTxFifo))
[Stack]
- Max Depth = 96
 - Call Chain = PCD_WriteEmptyTxFifo ⇒ USB_WritePacket
 
[Calls]
[Called By]
USB_CoreReset (Thumb, 126 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_CoreReset))
[Stack]
- Max Depth = 12
 - Call Chain = USB_CoreReset
 
[Called By]
FLASH_Program_Byte (Thumb, 122 bytes, Stack size 16 bytes, stm32f4xx_hal_flash.o(.text.FLASH_Program_Byte))
[Stack]
- Max Depth = 24
 - Call Chain = FLASH_Program_Byte ⇒ assert_failed
 
[Calls]
[Called By]
FLASH_Program_DoubleWord (Thumb, 134 bytes, Stack size 24 bytes, stm32f4xx_hal_flash.o(.text.FLASH_Program_DoubleWord))
[Stack]
- Max Depth = 32
 - Call Chain = FLASH_Program_DoubleWord ⇒ assert_failed
 
[Calls]
[Called By]
FLASH_Program_HalfWord (Thumb, 126 bytes, Stack size 16 bytes, stm32f4xx_hal_flash.o(.text.FLASH_Program_HalfWord))
[Stack]
- Max Depth = 24
 - Call Chain = FLASH_Program_HalfWord ⇒ assert_failed
 
[Calls]
[Called By]
FLASH_Program_Word (Thumb, 122 bytes, Stack size 16 bytes, stm32f4xx_hal_flash.o(.text.FLASH_Program_Word))
[Stack]
- Max Depth = 24
 - Call Chain = FLASH_Program_Word ⇒ assert_failed
 
[Calls]
[Called By]
FLASH_SetErrorCode (Thumb, 242 bytes, Stack size 0 bytes, stm32f4xx_hal_flash.o(.text.FLASH_SetErrorCode))
[Called By]
- >>   FLASH_WaitForLastOperation
 
FLASH_MassErase (Thumb, 140 bytes, Stack size 16 bytes, stm32f4xx_hal_flash_ex.o(.text.FLASH_MassErase))
[Stack]
- Max Depth = 24
 - Call Chain = FLASH_MassErase ⇒ assert_failed
 
[Calls]
[Called By]
DMA_CalcBaseAndBitshift (Thumb, 86 bytes, Stack size 8 bytes, stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift))
[Stack]
- Max Depth = 8
 - Call Chain = DMA_CalcBaseAndBitshift
 
[Called By]
DMA_CheckFifoParam (Thumb, 240 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam))
[Stack]
- Max Depth = 24
 - Call Chain = DMA_CheckFifoParam
 
[Called By]
DMA_SetConfig (Thumb, 80 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(.text.DMA_SetConfig))
[Stack]
- Max Depth = 16
 - Call Chain = DMA_SetConfig
 
[Called By]
NVIC_EncodePriority (Thumb, 108 bytes, Stack size 32 bytes, stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority))
[Stack]
- Max Depth = 32
 - Call Chain = NVIC_EncodePriority
 
[Called By]
SysTick_Config (Thumb, 82 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text.SysTick_Config))
[Stack]
- Max Depth = 24
 - Call Chain = SysTick_Config ⇒ __NVIC_SetPriority
 
[Calls]
[Called By]
__NVIC_DisableIRQ (Thumb, 56 bytes, Stack size 4 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_DisableIRQ))
[Stack]
- Max Depth = 4
 - Call Chain = __NVIC_DisableIRQ
 
[Called By]
__NVIC_EnableIRQ (Thumb, 48 bytes, Stack size 4 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ))
[Stack]
- Max Depth = 4
 - Call Chain = __NVIC_EnableIRQ
 
[Called By]
__NVIC_GetPriorityGrouping (Thumb, 16 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping))
[Called By]
__NVIC_SetPriority (Thumb, 66 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority))
[Stack]
- Max Depth = 8
 - Call Chain = __NVIC_SetPriority
 
[Called By]- >>   HAL_NVIC_SetPriority
 - >>   SysTick_Config
 
__NVIC_SetPriorityGrouping (Thumb, 60 bytes, Stack size 12 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping))
[Stack]
- Max Depth = 12
 - Call Chain = __NVIC_SetPriorityGrouping
 
[Called By]- >>   HAL_NVIC_SetPriorityGrouping
 
ADC_Init (Thumb, 434 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text.ADC_Init))
[Stack]
- Max Depth = 24
 - Call Chain = ADC_Init ⇒ assert_failed
 
[Calls]
[Called By]
SPI_DMAError (Thumb, 52 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text.SPI_DMAError))
[Stack]
- Max Depth = 40
 - Call Chain = SPI_DMAError ⇒ HAL_SPI_ErrorCallback ⇒ SPI_Get
 
[Calls]
[Address Reference Count : 2]-  stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 -  stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
SPI_DMAHalfReceiveCplt (Thumb, 22 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt))
[Stack]
- Max Depth = 40
 - Call Chain = SPI_DMAHalfReceiveCplt ⇒ HAL_SPI_RxHalfCpltCallback ⇒ SPI_Get
 
[Calls]- >>   HAL_SPI_RxHalfCpltCallback
 
[Address Reference Count : 2]-  stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 -  stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
SPI_DMAHalfTransmitReceiveCplt (Thumb, 22 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt))
[Stack]
- Max Depth = 40
 - Call Chain = SPI_DMAHalfTransmitReceiveCplt ⇒ HAL_SPI_TxRxHalfCpltCallback ⇒ SPI_Get
 
[Calls]- >>   HAL_SPI_TxRxHalfCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
SPI_DMAReceiveCplt (Thumb, 162 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt))
[Stack]
- Max Depth = 104
 - Call Chain = SPI_DMAReceiveCplt ⇒ SPI_EndRxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GetTick
 - >>   SPI_EndRxTransaction
 - >>   HAL_SPI_RxCpltCallback
 - >>   HAL_SPI_ErrorCallback
 
[Address Reference Count : 2]-  stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA)
 -  stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
SPI_DMATransmitReceiveCplt (Thumb, 134 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt))
[Stack]
- Max Depth = 104
 - Call Chain = SPI_DMATransmitReceiveCplt ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GetTick
 - >>   SPI_EndRxTxTransaction
 - >>   HAL_SPI_TxRxCpltCallback
 - >>   HAL_SPI_ErrorCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA)
 
SPI_EndRxTransaction (Thumb, 228 bytes, Stack size 32 bytes, stm32f4xx_hal_spi.o(.text.SPI_EndRxTransaction))
[Stack]
- Max Depth = 80
 - Call Chain = SPI_EndRxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   SPI_WaitFlagStateUntilTimeout
 
[Called By]- >>   HAL_SPI_Receive
 - >>   SPI_DMAReceiveCplt
 
SPI_EndRxTxTransaction (Thumb, 164 bytes, Stack size 32 bytes, stm32f4xx_hal_spi.o(.text.SPI_EndRxTxTransaction))
[Stack]
- Max Depth = 80
 - Call Chain = SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   SPI_WaitFlagStateUntilTimeout
 
[Called By]- >>   HAL_SPI_TransmitReceive
 - >>   HAL_SPI_Transmit
 - >>   SPI_DMATransmitReceiveCplt
 
SPI_WaitFlagStateUntilTimeout (Thumb, 298 bytes, Stack size 48 bytes, stm32f4xx_hal_spi.o(.text.SPI_WaitFlagStateUntilTimeout))
[Stack]
- Max Depth = 48
 - Call Chain = SPI_WaitFlagStateUntilTimeout
 
[Calls]
[Called By]- >>   SPI_EndRxTxTransaction
 - >>   SPI_EndRxTransaction
 
TIM_ITRx_SetConfig (Thumb, 42 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text.TIM_ITRx_SetConfig))
[Stack]
- Max Depth = 12
 - Call Chain = TIM_ITRx_SetConfig
 
[Called By]- >>   HAL_TIM_ConfigClockSource
 
TIM_OC1_SetConfig (Thumb, 354 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig))
[Stack]
- Max Depth = 40
 - Call Chain = TIM_OC1_SetConfig ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_TIM_PWM_ConfigChannel
 
TIM_OC3_SetConfig (Thumb, 362 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig))
[Stack]
- Max Depth = 40
 - Call Chain = TIM_OC3_SetConfig ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_TIM_PWM_ConfigChannel
 
TIM_OC4_SetConfig (Thumb, 206 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig))
[Stack]
- Max Depth = 40
 - Call Chain = TIM_OC4_SetConfig ⇒ assert_failed
 
[Calls]
[Called By]- >>   HAL_TIM_PWM_ConfigChannel
 
TIM_TI1_ConfigInputStage (Thumb, 80 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage))
[Stack]
- Max Depth = 20
 - Call Chain = TIM_TI1_ConfigInputStage
 
[Called By]- >>   HAL_TIM_ConfigClockSource
 
TIM_TI2_ConfigInputStage (Thumb, 82 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage))
[Stack]
- Max Depth = 20
 - Call Chain = TIM_TI2_ConfigInputStage
 
[Called By]- >>   HAL_TIM_ConfigClockSource
 
UART_DMAAbortOnError (Thumb, 32 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMAAbortOnError ⇒ HAL_UART_ErrorCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_ErrorCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler)
 
UART_DMAError (Thumb, 124 bytes, Stack size 24 bytes, stm32f4xx_hal_uart.o(.text.UART_DMAError))
[Stack]
- Max Depth = 48
 - Call Chain = UART_DMAError ⇒ HAL_UART_ErrorCallback ⇒ UART_Get
 
[Calls]- >>   UART_EndTxTransfer
 - >>   UART_EndRxTransfer
 - >>   HAL_UART_ErrorCallback
 
[Address Reference Count : 2]-  stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 -  stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
UART_DMAReceiveCplt (Thumb, 134 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMAReceiveCplt))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMAReceiveCplt ⇒ HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UARTEx_RxEventCallback
 - >>   HAL_UART_RxCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
UART_DMARxHalfCplt (Thumb, 46 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMARxHalfCplt))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMARxHalfCplt ⇒ HAL_UART_RxHalfCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UARTEx_RxEventCallback
 - >>   HAL_UART_RxHalfCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.UART_Start_Receive_DMA)
 
UART_DMARxOnlyAbortCallback (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMARxOnlyAbortCallback))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMARxOnlyAbortCallback ⇒ HAL_UART_AbortReceiveCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_AbortReceiveCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.HAL_UART_AbortReceive_IT)
 
UART_DMATransmitCplt (Thumb, 70 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMATransmitCplt))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMATransmitCplt ⇒ HAL_UART_TxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_TxCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 
UART_DMATxHalfCplt (Thumb, 22 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMATxHalfCplt))
[Stack]
- Max Depth = 40
 - Call Chain = UART_DMATxHalfCplt ⇒ HAL_UART_TxHalfCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_TxHalfCpltCallback
 
[Address Reference Count : 1]-  stm32f4xx_hal_uart.o(.text.HAL_UART_Transmit_DMA)
 
UART_EndRxTransfer (Thumb, 70 bytes, Stack size 4 bytes, stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer))
[Stack]
- Max Depth = 4
 - Call Chain = UART_EndRxTransfer
 
[Called By]- >>   HAL_UART_IRQHandler
 - >>   UART_DMAError
 
UART_EndTransmit_IT (Thumb, 38 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT))
[Stack]
- Max Depth = 40
 - Call Chain = UART_EndTransmit_IT ⇒ HAL_UART_TxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_TxCpltCallback
 
[Called By]
UART_EndTxTransfer (Thumb, 28 bytes, Stack size 4 bytes, stm32f4xx_hal_uart.o(.text.UART_EndTxTransfer))
[Stack]
- Max Depth = 4
 - Call Chain = UART_EndTxTransfer
 
[Called By]
UART_Receive_IT (Thumb, 282 bytes, Stack size 24 bytes, stm32f4xx_hal_uart.o(.text.UART_Receive_IT))
[Stack]
- Max Depth = 48
 - Call Chain = UART_Receive_IT ⇒ HAL_UART_RxCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UARTEx_RxEventCallback
 - >>   HAL_UART_RxCpltCallback
 
[Called By]
UART_SetConfig (Thumb, 486 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(.text.UART_SetConfig))
[Stack]
- Max Depth = 72
 - Call Chain = UART_SetConfig ⇒ __aeabi_uldivmod
 
[Calls]- >>   HAL_RCC_GetPCLK2Freq
 - >>   HAL_RCC_GetPCLK1Freq
 - >>   assert_failed
 - >>   __aeabi_uldivmod
 
[Called By]
UART_Transmit_IT (Thumb, 148 bytes, Stack size 12 bytes, stm32f4xx_hal_uart.o(.text.UART_Transmit_IT))
[Stack]
- Max Depth = 12
 - Call Chain = UART_Transmit_IT
 
[Called By]
prvCopyDataFromQueue (Thumb, 66 bytes, Stack size 16 bytes, queue.o(.text.prvCopyDataFromQueue))
[Stack]
- Max Depth = 16
 - Call Chain = prvCopyDataFromQueue
 
[Calls]
[Called By]- >>   xQueueReceiveFromISR
 - >>   xQueueReceive
 
prvCopyDataToQueue (Thumb, 204 bytes, Stack size 32 bytes, queue.o(.text.prvCopyDataToQueue))
[Stack]
- Max Depth = 76
 - Call Chain = prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTaskPriorityDisinherit
 - >>   __aeabi_memcpy
 
[Called By]- >>   xQueueGenericSendFromISR
 - >>   xQueueGenericSend
 
prvInitialiseNewQueue (Thumb, 72 bytes, Stack size 24 bytes, queue.o(.text.prvInitialiseNewQueue))
[Stack]
- Max Depth = 84
 - Call Chain = prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]
[Called By]- >>   xQueueGenericCreateStatic
 - >>   xQueueGenericCreate
 
prvIsQueueEmpty (Thumb, 40 bytes, Stack size 16 bytes, queue.o(.text.prvIsQueueEmpty))
[Stack]
- Max Depth = 24
 - Call Chain = prvIsQueueEmpty ⇒ vPortExitCritical
 
[Calls]- >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
prvIsQueueFull (Thumb, 46 bytes, Stack size 16 bytes, queue.o(.text.prvIsQueueFull))
[Stack]
- Max Depth = 24
 - Call Chain = prvIsQueueFull ⇒ vPortExitCritical
 
[Calls]- >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
prvUnlockQueue (Thumb, 174 bytes, Stack size 16 bytes, queue.o(.text.prvUnlockQueue))
[Stack]
- Max Depth = 52
 - Call Chain = prvUnlockQueue ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xTaskRemoveFromEventList
 - >>   vTaskMissedYield
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   xQueueReceive
 - >>   xQueueGenericSend
 - >>   vQueueWaitForMessageRestricted
 
prvAddCurrentTaskToDelayedList (Thumb, 220 bytes, Stack size 24 bytes, tasks.o(.text.prvAddCurrentTaskToDelayedList))
[Stack]
- Max Depth = 40
 - Call Chain = prvAddCurrentTaskToDelayedList ⇒ vListInsert
 
[Calls]- >>   vListInsertEnd
 - >>   vListInsert
 - >>   uxListRemove
 
[Called By]- >>   vTaskDelayUntil
 - >>   vTaskDelay
 - >>   xTaskNotifyWait
 - >>   vTaskPlaceOnEventListRestricted
 - >>   vTaskPlaceOnEventList
 
prvAddNewTaskToReadyList (Thumb, 290 bytes, Stack size 16 bytes, tasks.o(.text.prvAddNewTaskToReadyList))
[Stack]
- Max Depth = 44
 - Call Chain = prvAddNewTaskToReadyList ⇒ prvInitialiseTaskLists ⇒ vListInitialise
 
[Calls]- >>   prvInitialiseTaskLists
 - >>   vListInsertEnd
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]- >>   xTaskCreateStatic
 - >>   xTaskCreate
 
prvCheckTasksWaitingTermination (Thumb, 90 bytes, Stack size 16 bytes, tasks.o(.text.prvCheckTasksWaitingTermination))
[Stack]
- Max Depth = 132
 - Call Chain = prvCheckTasksWaitingTermination ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvDeleteTCB
 - >>   uxListRemove
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 
[Called By]
prvDeleteTCB (Thumb, 94 bytes, Stack size 16 bytes, tasks.o(.text.prvDeleteTCB))
[Stack]
- Max Depth = 116
 - Call Chain = prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]- >>   vTaskDelete
 - >>   prvCheckTasksWaitingTermination
 
prvIdleTask (Thumb, 56 bytes, Stack size 16 bytes, tasks.o(.text.prvIdleTask))
[Stack]
- Max Depth = 148
 - Call Chain = prvIdleTask ⇒ prvCheckTasksWaitingTermination ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   prvCheckTasksWaitingTermination
 
[Address Reference Count : 1]-  tasks.o(.text.vTaskStartScheduler)
 
prvInitialiseNewTask (Thumb, 306 bytes, Stack size 40 bytes, tasks.o(.text.prvInitialiseNewTask))
[Stack]
- Max Depth = 52
 - Call Chain = prvInitialiseNewTask ⇒ pxPortInitialiseStack
 
[Calls]- >>   pxPortInitialiseStack
 - >>   vListInitialiseItem
 - >>   __aeabi_memset4
 
[Called By]- >>   xTaskCreateStatic
 - >>   xTaskCreate
 
prvInitialiseTaskLists (Thumb, 142 bytes, Stack size 24 bytes, tasks.o(.text.prvInitialiseTaskLists))
[Stack]
- Max Depth = 28
 - Call Chain = prvInitialiseTaskLists ⇒ vListInitialise
 
[Calls]
[Called By]- >>   prvAddNewTaskToReadyList
 
prvListTasksWithinSingleList (Thumb, 164 bytes, Stack size 40 bytes, tasks.o(.text.prvListTasksWithinSingleList))
[Stack]
- Max Depth = 140
 - Call Chain = prvListTasksWithinSingleList ⇒ vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]
[Called By]
prvResetNextTaskUnblockTime (Thumb, 70 bytes, Stack size 4 bytes, tasks.o(.text.prvResetNextTaskUnblockTime))
[Stack]
- Max Depth = 4
 - Call Chain = prvResetNextTaskUnblockTime
 
[Called By]- >>   xTaskIncrementTick
 - >>   vTaskSuspend
 - >>   vTaskDelete
 - >>   xTaskResumeAll
 
prvTaskCheckFreeStackSpace (Thumb, 48 bytes, Stack size 8 bytes, tasks.o(.text.prvTaskCheckFreeStackSpace))
[Stack]
- Max Depth = 8
 - Call Chain = prvTaskCheckFreeStackSpace
 
[Called By]- >>   vTaskGetInfo
 - >>   uxTaskGetStackHighWaterMark
 
prvTaskIsTaskSuspended (Thumb, 106 bytes, Stack size 16 bytes, tasks.o(.text.prvTaskIsTaskSuspended))
[Stack]
- Max Depth = 16
 - Call Chain = prvTaskIsTaskSuspended
 
[Called By]
prvWriteNameToBuffer (Thumb, 70 bytes, Stack size 24 bytes, tasks.o(.text.prvWriteNameToBuffer))
[Stack]
- Max Depth = 24
 - Call Chain = prvWriteNameToBuffer
 
[Calls]
[Called By]- >>   vTaskList
 - >>   vTaskGetRunTimeStats
 
prvCheckForValidListAndQueue (Thumb, 162 bytes, Stack size 24 bytes, timers.o(.text.prvCheckForValidListAndQueue))
[Stack]
- Max Depth = 180
 - Call Chain = prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   xQueueGenericCreateStatic
 - >>   vQueueAddToRegistry
 - >>   vPortExitCritical
 - >>   vPortEnterCritical
 - >>   vListInitialise
 
[Called By]- >>   prvInitialiseNewTimer
 - >>   xTimerCreateTimerTask
 
prvGetNextExpireTime (Thumb, 64 bytes, Stack size 8 bytes, timers.o(.text.prvGetNextExpireTime))
[Stack]
- Max Depth = 8
 - Call Chain = prvGetNextExpireTime
 
[Called By]
prvInitialiseNewTimer (Thumb, 118 bytes, Stack size 32 bytes, timers.o(.text.prvInitialiseNewTimer))
[Stack]
- Max Depth = 212
 - Call Chain = prvInitialiseNewTimer ⇒ prvCheckForValidListAndQueue ⇒ xQueueGenericCreateStatic ⇒ prvInitialiseNewQueue ⇒ xQueueGenericReset ⇒ xTaskRemoveFromEventList ⇒ vListInsertEnd
 
[Calls]- >>   prvCheckForValidListAndQueue
 - >>   vListInitialiseItem
 
[Called By]- >>   xTimerCreateStatic
 - >>   xTimerCreate
 
prvInsertTimerInActiveList (Thumb, 134 bytes, Stack size 32 bytes, timers.o(.text.prvInsertTimerInActiveList))
[Stack]
- Max Depth = 48
 - Call Chain = prvInsertTimerInActiveList ⇒ vListInsert
 
[Calls]
[Called By]- >>   prvProcessReceivedCommands
 - >>   prvProcessExpiredTimer
 
prvProcessExpiredTimer (Thumb, 142 bytes, Stack size 32 bytes, timers.o(.text.prvProcessExpiredTimer))
[Stack]
- Max Depth = 236
 - Call Chain = prvProcessExpiredTimer ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTimerGenericCommand
 - >>   prvInsertTimerInActiveList
 - >>   uxListRemove
 
[Called By]- >>   prvProcessTimerOrBlockTask
 
prvProcessReceivedCommands (Thumb, 402 bytes, Stack size 64 bytes, timers.o(.text.prvProcessReceivedCommands))
[Stack]
- Max Depth = 324
 - Call Chain = prvProcessReceivedCommands ⇒ prvSampleTimeNow ⇒ prvSwitchTimerLists ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTimerGenericCommand
 - >>   prvSampleTimeNow
 - >>   prvInsertTimerInActiveList
 - >>   xQueueReceive
 - >>   uxListRemove
 - >>   vPortFree
 
[Called By]
prvProcessTimerOrBlockTask (Thumb, 154 bytes, Stack size 24 bytes, timers.o(.text.prvProcessTimerOrBlockTask))
[Stack]
- Max Depth = 284
 - Call Chain = prvProcessTimerOrBlockTask ⇒ prvSampleTimeNow ⇒ prvSwitchTimerLists ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   prvSampleTimeNow
 - >>   prvProcessExpiredTimer
 - >>   vQueueWaitForMessageRestricted
 - >>   xTaskResumeAll
 - >>   vTaskSuspendAll
 
[Called By]
prvSampleTimeNow (Thumb, 68 bytes, Stack size 16 bytes, timers.o(.text.prvSampleTimeNow))
[Stack]
- Max Depth = 260
 - Call Chain = prvSampleTimeNow ⇒ prvSwitchTimerLists ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   prvSwitchTimerLists
 - >>   xTaskGetTickCount
 
[Called By]- >>   prvProcessTimerOrBlockTask
 - >>   prvProcessReceivedCommands
 
prvSwitchTimerLists (Thumb, 212 bytes, Stack size 40 bytes, timers.o(.text.prvSwitchTimerLists))
[Stack]
- Max Depth = 244
 - Call Chain = prvSwitchTimerLists ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   xTimerGenericCommand
 - >>   vListInsert
 - >>   uxListRemove
 
[Called By]
prvTimerTask (Thumb, 30 bytes, Stack size 24 bytes, timers.o(.text.prvTimerTask))
[Stack]
- Max Depth = 348
 - Call Chain = prvTimerTask ⇒ prvProcessReceivedCommands ⇒ prvSampleTimeNow ⇒ prvSwitchTimerLists ⇒ xTimerGenericCommand ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   prvProcessTimerOrBlockTask
 - >>   prvProcessReceivedCommands
 - >>   prvGetNextExpireTime
 
[Address Reference Count : 1]-  timers.o(.text.xTimerCreateTimerTask)
 
SVC_Setup (Thumb, 14 bytes, Stack size 8 bytes, cmsis_os2.o(.text.SVC_Setup))
[Stack]
- Max Depth = 16
 - Call Chain = SVC_Setup ⇒ __NVIC_SetPriority
 
[Calls]
[Called By]
TimerCallback (Thumb, 34 bytes, Stack size 16 bytes, cmsis_os2.o(.text.TimerCallback))
[Stack]
- Max Depth = 48
 - Call Chain = TimerCallback ⇒ pvTimerGetTimerID ⇒ vPortExitCritical
 
[Calls]
[Address Reference Count : 1]-  cmsis_os2.o(.text.osTimerNew)
 
__NVIC_SetPriority (Thumb, 66 bytes, Stack size 8 bytes, cmsis_os2.o(.text.__NVIC_SetPriority))
[Stack]
- Max Depth = 8
 - Call Chain = __NVIC_SetPriority
 
[Called By]
prvHeapInit (Thumb, 188 bytes, Stack size 16 bytes, heap_4.o(.text.prvHeapInit))
[Stack]
- Max Depth = 16
 - Call Chain = prvHeapInit
 
[Called By]
prvInsertBlockIntoFreeList (Thumb, 198 bytes, Stack size 12 bytes, heap_4.o(.text.prvInsertBlockIntoFreeList))
[Stack]
- Max Depth = 12
 - Call Chain = prvInsertBlockIntoFreeList
 
[Called By]- >>   vPortFree
 - >>   pvPortMalloc
 
prvPortStartFirstTask (Thumb, 40 bytes, Stack size 0 bytes, port.o(.text.prvPortStartFirstTask))
[Called By]
prvTaskExitError (Thumb, 76 bytes, Stack size 12 bytes, port.o(.text.prvTaskExitError))
[Stack]
- Max Depth = 12
 - Call Chain = prvTaskExitError
 
[Called By]
[Address Reference Count : 1]-  port.o(.text.pxPortInitialiseStack)
 
vPortEnableVFP (Thumb, 20 bytes, Stack size 0 bytes, port.o(.text.vPortEnableVFP))
[Called By]
SWAPBYTE (Thumb, 54 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.SWAPBYTE))
[Stack]
- Max Depth = 16
 - Call Chain = SWAPBYTE
 
[Called By]- >>   USBD_ParseSetupRequest
 
USBD_ClrFeature (Thumb, 64 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_ClrFeature))
[Stack]
- Max Depth = 176
 - Call Chain = USBD_ClrFeature ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlError
 - >>   USBD_CtlSendStatus
 
[Called By]
USBD_GetConfig (Thumb, 100 bytes, Stack size 24 bytes, usbd_ctlreq.o(.text.USBD_GetConfig))
[Stack]
- Max Depth = 192
 - Call Chain = USBD_GetConfig ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlSendData
 - >>   USBD_CtlError
 
[Called By]
USBD_GetDescriptor (Thumb, 728 bytes, Stack size 40 bytes, usbd_ctlreq.o(.text.USBD_GetDescriptor))
[Stack]
- Max Depth = 208
 - Call Chain = USBD_GetDescriptor ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlSendData
 - >>   USBD_CtlError
 - >>   USBD_CtlSendStatus
 
[Called By]
USBD_GetLen (Thumb, 50 bytes, Stack size 12 bytes, usbd_ctlreq.o(.text.USBD_GetLen))
[Stack]
- Max Depth = 12
 - Call Chain = USBD_GetLen
 
[Called By]
USBD_GetStatus (Thumb, 98 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_GetStatus))
[Stack]
- Max Depth = 184
 - Call Chain = USBD_GetStatus ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlSendData
 - >>   USBD_CtlError
 
[Called By]
USBD_SetAddress (Thumb, 140 bytes, Stack size 24 bytes, usbd_ctlreq.o(.text.USBD_SetAddress))
[Stack]
- Max Depth = 184
 - Call Chain = USBD_SetAddress ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_LL_SetUSBAddress
 - >>   USBD_CtlError
 - >>   USBD_CtlSendStatus
 
[Called By]
USBD_SetConfig (Thumb, 374 bytes, Stack size 32 bytes, usbd_ctlreq.o(.text.USBD_SetConfig))
[Stack]
- Max Depth = 192
 - Call Chain = USBD_SetConfig ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlError
 - >>   USBD_SetClassConfig
 - >>   USBD_CtlSendStatus
 - >>   USBD_ClrClassConfig
 
[Called By]
USBD_SetFeature (Thumb, 38 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_SetFeature))
[Stack]
- Max Depth = 176
 - Call Chain = USBD_SetFeature ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Called By]
USBD_CDC_DataIn (Thumb, 200 bytes, Stack size 32 bytes, usbd_cdc.o(.text.USBD_CDC_DataIn))
[Stack]
- Max Depth = 176
 - Call Chain = USBD_CDC_DataIn ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_DataOut (Thumb, 88 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_DataOut))
[Stack]
- Max Depth = 48
 - Call Chain = USBD_CDC_DataOut ⇒ USBD_LL_GetRxDataSize ⇒ HAL_PCD_EP_GetRxCount
 
[Calls]
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_DeInit (Thumb, 110 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_DeInit))
[Stack]
- Max Depth = 80
 - Call Chain = USBD_CDC_DeInit ⇒ USBD_LL_CloseEP ⇒ HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
 
[Calls]- >>   USBD_static_free
 - >>   USBD_LL_CloseEP
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_EP0_RxReady (Thumb, 96 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_EP0_RxReady))
[Stack]
- Max Depth = 24
 - Call Chain = USBD_CDC_EP0_RxReady
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_GetFSCfgDesc (Thumb, 22 bytes, Stack size 4 bytes, usbd_cdc.o(.text.USBD_CDC_GetFSCfgDesc))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_CDC_GetFSCfgDesc
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_GetHSCfgDesc (Thumb, 22 bytes, Stack size 4 bytes, usbd_cdc.o(.text.USBD_CDC_GetHSCfgDesc))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_CDC_GetHSCfgDesc
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_GetOtherSpeedCfgDesc (Thumb, 22 bytes, Stack size 4 bytes, usbd_cdc.o(.text.USBD_CDC_GetOtherSpeedCfgDesc))
[Stack]
- Max Depth = 4
 - Call Chain = USBD_CDC_GetOtherSpeedCfgDesc
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_Init (Thumb, 270 bytes, Stack size 48 bytes, usbd_cdc.o(.text.USBD_CDC_Init))
[Stack]
- Max Depth = 192
 - Call Chain = USBD_CDC_Init ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_static_malloc
 - >>   USBD_LL_PrepareReceive
 - >>   USBD_LL_OpenEP
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
USBD_CDC_Setup (Thumb, 412 bytes, Stack size 48 bytes, usbd_cdc.o(.text.USBD_CDC_Setup))
[Stack]
- Max Depth = 216
 - Call Chain = USBD_CDC_Setup ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   USBD_CtlSendData
 - >>   USBD_CtlError
 - >>   USBD_CtlPrepareRx
 
[Address Reference Count : 1]-  usbd_cdc.o(.data.USBD_CDC)
 
CAN_Get (Thumb, 72 bytes, Stack size 8 bytes, can_1.o(.text.CAN_Get))
[Stack]
- Max Depth = 8
 - Call Chain = CAN_Get
 
[Called By]- >>   HAL_CAN_WakeUpFromRxMsgCallback
 - >>   HAL_CAN_TxMailbox2CompleteCallback
 - >>   HAL_CAN_TxMailbox2AbortCallback
 - >>   HAL_CAN_TxMailbox1CompleteCallback
 - >>   HAL_CAN_TxMailbox1AbortCallback
 - >>   HAL_CAN_TxMailbox0CompleteCallback
 - >>   HAL_CAN_TxMailbox0AbortCallback
 - >>   HAL_CAN_SleepCallback
 - >>   HAL_CAN_RxFifo1MsgPendingCallback
 - >>   HAL_CAN_RxFifo1FullCallback
 - >>   HAL_CAN_RxFifo0MsgPendingCallback
 - >>   HAL_CAN_RxFifo0FullCallback
 - >>   HAL_CAN_ErrorCallback
 
SPI_Get (Thumb, 72 bytes, Stack size 8 bytes, spi_1.o(.text.SPI_Get))
[Stack]
- Max Depth = 8
 - Call Chain = SPI_Get
 
[Called By]- >>   HAL_SPI_TxRxHalfCpltCallback
 - >>   HAL_SPI_TxRxCpltCallback
 - >>   HAL_SPI_RxHalfCpltCallback
 - >>   HAL_SPI_RxCpltCallback
 - >>   HAL_SPI_ErrorCallback
 
UART_Get (Thumb, 98 bytes, Stack size 8 bytes, uart.o(.text.UART_Get))
[Stack]
- Max Depth = 8
 - Call Chain = UART_Get
 
[Called By]- >>   BSP_UART_IRQHandler
 - >>   HAL_UART_TxHalfCpltCallback
 - >>   HAL_UART_TxCpltCallback
 - >>   HAL_UART_RxHalfCpltCallback
 - >>   HAL_UART_RxCpltCallback
 - >>   HAL_UART_ErrorCallback
 - >>   HAL_UART_AbortReceiveCpltCallback
 
BSP_USB_Transmit (Thumb, 70 bytes, Stack size 16 bytes, usb.o(.text.BSP_USB_Transmit))
[Stack]
- Max Depth = 216
 - Call Chain = BSP_USB_Transmit ⇒ CDC_Transmit_FS ⇒ USBD_CDC_TransmitPacket ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
 
[Calls]- >>   CDC_Transmit_FS
 - >>   BSP_Delay
 
[Called By]
AHRS_UpdateIMU (Thumb, 1480 bytes, Stack size 136 bytes, ahrs.o(.text.AHRS_UpdateIMU))
[Stack]
- Max Depth = 152
 - Call Chain = AHRS_UpdateIMU ⇒ InvSqrt
 
[Calls]
[Called By]
copysignf (Thumb, 30 bytes, Stack size 8 bytes, ahrs.o(.text.copysignf))
[Stack]
- Max Depth = 8
 - Call Chain = copysignf
 
[Called By]
CMD_BehaviorOccurredRc (Thumb, 274 bytes, Stack size 40 bytes, cmd.o(.text.CMD_BehaviorOccurredRc))
[Stack]
- Max Depth = 48
 - Call Chain = CMD_BehaviorOccurredRc ⇒ CMD_BehaviorToKey
 
[Calls]- >>   CMD_BehaviorToKey
 - >>   CMD_BehaviorToActive
 
[Called By]
CMD_BehaviorToActive (Thumb, 26 bytes, Stack size 8 bytes, cmd.o(.text.CMD_BehaviorToActive))
[Stack]
- Max Depth = 8
 - Call Chain = CMD_BehaviorToActive
 
[Called By]- >>   CMD_BehaviorOccurredRc
 
CMD_BehaviorToKey (Thumb, 26 bytes, Stack size 8 bytes, cmd.o(.text.CMD_BehaviorToKey))
[Stack]
- Max Depth = 8
 - Call Chain = CMD_BehaviorToKey
 
[Called By]- >>   CMD_BehaviorOccurredRc
 
CMD_KeyPressedRc (Thumb, 84 bytes, Stack size 12 bytes, cmd.o(.text.CMD_KeyPressedRc))
[Stack]
- Max Depth = 12
 - Call Chain = CMD_KeyPressedRc
 
[Called By]
CMD_PcLogic (Thumb, 774 bytes, Stack size 24 bytes, cmd.o(.text.CMD_PcLogic))
[Stack]
- Max Depth = 72
 - Call Chain = CMD_PcLogic ⇒ CMD_BehaviorOccurredRc ⇒ CMD_BehaviorToKey
 
[Calls]- >>   CMD_RefereeAdd
 - >>   CMD_BehaviorOccurredRc
 
[Called By]
CMD_RcLogic (Thumb, 338 bytes, Stack size 20 bytes, cmd.o(.text.CMD_RcLogic))
[Stack]
- Max Depth = 20
 - Call Chain = CMD_RcLogic
 
[Called By]
CMD_RcLostLogic (Thumb, 26 bytes, Stack size 4 bytes, cmd.o(.text.CMD_RcLostLogic))
[Stack]
- Max Depth = 4
 - Call Chain = CMD_RcLostLogic
 
[Called By]
CRC16_Byte (Thumb, 42 bytes, Stack size 4 bytes, crc16.o(.text.CRC16_Byte))
[Stack]
- Max Depth = 4
 - Call Chain = CRC16_Byte
 
[Called By]
__ARM_isfinite (Thumb, 30 bytes, Stack size 8 bytes, filter.o(.text.__ARM_isfinite))
[Stack]
- Max Depth = 8
 - Call Chain = __ARM_isfinite
 
[Called By]
__ARM_isfinitef (Thumb, 24 bytes, Stack size 4 bytes, filter.o(.text.__ARM_isfinitef))
[Stack]
- Max Depth = 4
 - Call Chain = __ARM_isfinitef
 
[Called By]
__ARM_isinf (Thumb, 52 bytes, Stack size 16 bytes, filter.o(.text.__ARM_isinf))
[Stack]
- Max Depth = 16
 - Call Chain = __ARM_isinf
 
[Called By]
__ARM_isinff (Thumb, 28 bytes, Stack size 4 bytes, filter.o(.text.__ARM_isinff))
[Stack]
- Max Depth = 4
 - Call Chain = __ARM_isinff
 
[Called By]
__ARM_isfinite (Thumb, 30 bytes, Stack size 8 bytes, pid.o(.text.__ARM_isfinite))
[Stack]
- Max Depth = 8
 - Call Chain = __ARM_isfinite
 
[Called By]
__ARM_isfinitef (Thumb, 24 bytes, Stack size 4 bytes, pid.o(.text.__ARM_isfinitef))
[Stack]
- Max Depth = 4
 - Call Chain = __ARM_isfinitef
 
[Called By]
prvGetNumberOfParameters (Thumb, 100 bytes, Stack size 12 bytes, freertos_cli.o(.text.prvGetNumberOfParameters))
[Stack]
- Max Depth = 12
 - Call Chain = prvGetNumberOfParameters
 
[Called By]- >>   FreeRTOS_CLIProcessCommand
 
prvHelpCommand (Thumb, 100 bytes, Stack size 32 bytes, freertos_cli.o(.text.prvHelpCommand))
[Stack]
- Max Depth = 40
 - Call Chain = prvHelpCommand ⇒ strncpy
 
[Calls]
[Address Reference Count : 1]-  freertos_cli.o(.rodata.xHelpCommand)
 
BMI088_AcclIntCallback (Thumb, 20 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_AcclIntCallback))
[Stack]
- Max Depth = 144
 - Call Chain = BMI088_AcclIntCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  bmi088.o(.text.BMI088_Init)
 
BMI088_GyroIntCallback (Thumb, 20 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_GyroIntCallback))
[Stack]
- Max Depth = 144
 - Call Chain = BMI088_GyroIntCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  bmi088.o(.text.BMI088_Init)
 
BMI088_RxCpltCallback (Thumb, 104 bytes, Stack size 8 bytes, bmi088.o(.text.BMI088_RxCpltCallback))
[Stack]
- Max Depth = 144
 - Call Chain = BMI088_RxCpltCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]- >>   HAL_GPIO_ReadPin
 - >>   osThreadFlagsSet
 - >>   HAL_GPIO_WritePin
 
[Address Reference Count : 1]-  bmi088.o(.text.BMI088_Init)
 
BMI_Read (Thumb, 140 bytes, Stack size 32 bytes, bmi088.o(.text.BMI_Read))
[Stack]
- Max Depth = 152
 - Call Chain = BMI_Read ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GPIO_WritePin
 - >>   HAL_SPI_Transmit
 - >>   HAL_SPI_Receive_DMA
 - >>   BSP_SPI_GetHandle
 
[Called By]- >>   BMI088_GyroStartDmaRecv
 - >>   BMI088_AcclStartDmaRecv
 
BMI_ReadSingle (Thumb, 218 bytes, Stack size 32 bytes, bmi088.o(.text.BMI_ReadSingle))
[Stack]
- Max Depth = 216
 - Call Chain = BMI_ReadSingle ⇒ HAL_SPI_Receive ⇒ HAL_SPI_TransmitReceive ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
 
[Calls]- >>   HAL_GPIO_WritePin
 - >>   HAL_SPI_Transmit
 - >>   HAL_SPI_Receive
 - >>   BSP_SPI_GetHandle
 - >>   BSP_Delay
 
[Called By]
BMI_WriteSingle (Thumb, 180 bytes, Stack size 24 bytes, bmi088.o(.text.BMI_WriteSingle))
[Stack]
- Max Depth = 172
 - Call Chain = BMI_WriteSingle ⇒ BSP_Delay ⇒ osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   HAL_GPIO_WritePin
 - >>   HAL_SPI_Transmit
 - >>   BSP_SPI_GetHandle
 - >>   BSP_Delay
 
[Called By]
CAN_CAN1RxFifoMsgPendingCallback (Thumb, 60 bytes, Stack size 16 bytes, can_2.o(.text.CAN_CAN1RxFifoMsgPendingCallback))
[Stack]
- Max Depth = 212
 - Call Chain = CAN_CAN1RxFifoMsgPendingCallback ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   HAL_CAN_GetRxMessage
 - >>   osMessageQueuePut
 - >>   BSP_CAN_GetHandle
 
[Address Reference Count : 1]
CAN_CAN2RxFifoMsgPendingCallback (Thumb, 60 bytes, Stack size 16 bytes, can_2.o(.text.CAN_CAN2RxFifoMsgPendingCallback))
[Stack]
- Max Depth = 212
 - Call Chain = CAN_CAN2RxFifoMsgPendingCallback ⇒ osMessageQueuePut ⇒ xQueueGenericSendFromISR ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
 
[Calls]- >>   HAL_CAN_GetRxMessage
 - >>   osMessageQueuePut
 - >>   BSP_CAN_GetHandle
 
[Address Reference Count : 1]
CAN_Motor_Decode (Thumb, 160 bytes, Stack size 12 bytes, can_2.o(.text.CAN_Motor_Decode))
[Stack]
- Max Depth = 12
 - Call Chain = CAN_Motor_Decode
 
[Called By]
DR16_DataCorrupted (Thumb, 260 bytes, Stack size 8 bytes, dr16.o(.text.DR16_DataCorrupted))
[Stack]
- Max Depth = 8
 - Call Chain = DR16_DataCorrupted
 
[Called By]
DR16_RxCpltCallback (Thumb, 20 bytes, Stack size 8 bytes, dr16.o(.text.DR16_RxCpltCallback))
[Stack]
- Max Depth = 144
 - Call Chain = DR16_RxCpltCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]
RefereeFastRefreshTimerCallback (Thumb, 28 bytes, Stack size 16 bytes, referee.o(.text.RefereeFastRefreshTimerCallback))
[Stack]
- Max Depth = 152
 - Call Chain = RefereeFastRefreshTimerCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  referee.o(.text.Referee_Init)
 
RefereeSlowRefreshTimerCallback (Thumb, 28 bytes, Stack size 16 bytes, referee.o(.text.RefereeSlowRefreshTimerCallback))
[Stack]
- Max Depth = 152
 - Call Chain = RefereeSlowRefreshTimerCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  referee.o(.text.Referee_Init)
 
Referee_AbortRxCpltCallback (Thumb, 22 bytes, Stack size 8 bytes, referee.o(.text.Referee_AbortRxCpltCallback))
[Stack]
- Max Depth = 144
 - Call Chain = Referee_AbortRxCpltCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  referee.o(.text.Referee_Init)
 
Referee_IdleLineCallback (Thumb, 14 bytes, Stack size 8 bytes, referee.o(.text.Referee_IdleLineCallback))
[Stack]
- Max Depth = 48
 - Call Chain = Referee_IdleLineCallback ⇒ HAL_UART_AbortReceive_IT ⇒ HAL_UART_AbortReceiveCpltCallback ⇒ UART_Get
 
[Calls]- >>   HAL_UART_AbortReceive_IT
 - >>   BSP_UART_GetHandle
 
[Address Reference Count : 1]-  referee.o(.text.Referee_Init)
 
Referee_RxCpltCallback (Thumb, 22 bytes, Stack size 8 bytes, referee.o(.text.Referee_RxCpltCallback))
[Stack]
- Max Depth = 144
 - Call Chain = Referee_RxCpltCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]-  referee.o(.text.Referee_Init)
 
Ai_IdleLineCallback (Thumb, 22 bytes, Stack size 8 bytes, ai.o(.text.Ai_IdleLineCallback))
[Stack]
- Max Depth = 144
 - Call Chain = Ai_IdleLineCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]
Ai_RxCpltCallback (Thumb, 22 bytes, Stack size 8 bytes, ai.o(.text.Ai_RxCpltCallback))
[Stack]
- Max Depth = 144
 - Call Chain = Ai_RxCpltCallback ⇒ osThreadFlagsSet ⇒ xTaskGenericNotifyFromISR ⇒ vPortValidateInterruptPriority
 
[Calls]
[Address Reference Count : 1]
Chassis_CalcWz (Thumb, 232 bytes, Stack size 40 bytes, chassis.o(.text.Chassis_CalcWz))
[Stack]
- Max Depth = 128
 - Call Chain = Chassis_CalcWz ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
 
[Calls]- >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __aeabi_f2d
 - >>   __aeabi_d2f
 - >>   __hardfp_sinf
 
[Called By]
Chassis_SetMode (Thumb, 244 bytes, Stack size 32 bytes, chassis.o(.text.Chassis_SetMode))
[Stack]
- Max Depth = 128
 - Call Chain = Chassis_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   PID_Reset
 - >>   LowPassFilter2p_Reset
 - >>   srand
 - >>   rand
 
[Called By]
Gimbal_SetMode (Thumb, 256 bytes, Stack size 24 bytes, gimbal.o(.text.Gimbal_SetMode))
[Stack]
- Max Depth = 120
 - Call Chain = Gimbal_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   PID_Reset
 - >>   LowPassFilter2p_Reset
 - >>   AHRS_ResetEulr
 
[Called By]
Shoot_HeatLimit (Thumb, 380 bytes, Stack size 24 bytes, shoot.o(.text.Shoot_HeatLimit))
[Stack]
- Max Depth = 24
 - Call Chain = Shoot_HeatLimit
 
[Calls]
[Called By]
Shoot_SetMode (Thumb, 328 bytes, Stack size 32 bytes, shoot.o(.text.Shoot_SetMode))
[Stack]
- Max Depth = 128
 - Call Chain = Shoot_SetMode ⇒ PID_Reset ⇒ LowPassFilter2p_Reset ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf
 
[Calls]- >>   CircleAdd
 - >>   PID_Reset
 - >>   CircleError
 - >>   LowPassFilter2p_Reset
 
[Called By]
Command_CaliGyro (Thumb, 1048 bytes, Stack size 216 bytes, cli.o(.text.Command_CaliGyro))
[Stack]
- Max Depth = 388
 - Call Chain = Command_CaliGyro ⇒ osMessageQueueGet ⇒ xQueueReceive ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadSuspend
 - >>   osThreadResume
 - >>   osMessageQueueGet
 - >>   Config_Set
 - >>   Config_Get
 - >>   BMI088_GyroStable
 - >>   __aeabi_f2d
 - >>   snprintf
 
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
Command_Config (Thumb, 1246 bytes, Stack size 200 bytes, cli.o(.text.Command_Config))
[Stack]
- Max Depth = 320
 - Call Chain = Command_Config ⇒ Config_Set ⇒ BSP_Flash_EraseSector ⇒ HAL_FLASHEx_Erase ⇒ FLASH_Erase_Sector ⇒ assert_failed
 
[Calls]- >>   Config_Set
 - >>   Config_GetRobotParam
 - >>   Config_GetRobotNameMap
 - >>   Config_GetPilotNameMap
 - >>   Config_GetPilotCfg
 - >>   Config_Get
 - >>   FreeRTOS_CLIGetParameter
 - >>   snprintf
 - >>   strncmp
 - >>   __aeabi_memclr4
 
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
Command_Endian (Thumb, 312 bytes, Stack size 40 bytes, cli.o(.text.Command_Endian))
[Stack]
- Max Depth = 80
 - Call Chain = Command_Endian ⇒ snprintf
 
[Calls]
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
Command_SetGimbalLim (Thumb, 432 bytes, Stack size 368 bytes, cli.o(.text.Command_SetGimbalLim))
[Stack]
- Max Depth = 540
 - Call Chain = Command_SetGimbalLim ⇒ osMessageQueueGet ⇒ xQueueReceive ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadSuspend
 - >>   osThreadResume
 - >>   osMessageQueueGet
 - >>   Config_Set
 - >>   Config_Get
 - >>   __aeabi_f2d
 - >>   snprintf
 
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
Command_SetMechZero (Thumb, 418 bytes, Stack size 400 bytes, cli.o(.text.Command_SetMechZero))
[Stack]
- Max Depth = 572
 - Call Chain = Command_SetMechZero ⇒ osMessageQueueGet ⇒ xQueueReceive ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   osThreadSuspend
 - >>   osThreadResume
 - >>   osMessageQueueGet
 - >>   Config_Set
 - >>   Config_Get
 - >>   __aeabi_f2d
 - >>   snprintf
 
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
Command_Stats (Thumb, 562 bytes, Stack size 96 bytes, cli.o(.text.Command_Stats))
[Stack]
- Max Depth = 316
 - Call Chain = Command_Stats ⇒ vTaskList ⇒ uxTaskGetSystemState ⇒ prvListTasksWithinSingleList ⇒ vTaskGetInfo ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
 
[Calls]- >>   vPortGetHeapStats
 - >>   vTaskList
 - >>   vTaskGetRunTimeStats
 - >>   __aeabi_f2d
 - >>   snprintf
 - >>   strncpy
 
[Address Reference Count : 1]-  cli.o(.rodata.command_table)
 
_fp_digits (Thumb, 366 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
[Calls]
- >>   __aeabi_dmul
 - >>   __aeabi_dadd
 - >>   __aeabi_d2ulz
 - >>   __aeabi_cdrcmple
 - >>   __aeabi_uldivmod
 - >>   __aeabi_ddiv
 
[Called By]
_printf_core (Thumb, 1744 bytes, Stack size 136 bytes, printfa.o(i._printf_core), UNUSED)
[Calls]
- >>   __aeabi_uidivmod
 - >>   _printf_pre_padding
 - >>   _printf_post_padding
 - >>   _fp_digits
 - >>   __aeabi_uldivmod
 
[Called By]- >>   __0vsnprintf
 - >>   __0sprintf
 - >>   __0snprintf
 
_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 : 2]
-  printfa.o(i.__0snprintf)
 -  printfa.o(i.__0vsnprintf)
 
_sputc (Thumb, 10 bytes, Stack size 0 bytes, printfa.o(i._sputc))
[Called By]
[Address Reference Count : 1]
Undefined Global Symbols