# Static Call Graph for image .\Obj\STM3210B-EVAL.axf

#<CALLGRAPH># ARM Linker, RVCT3.1 [Build 939]: Last Updated: Sun Jun 13 20:09:34 2010

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

### Call chain for Maximum Stack Depth:

main ⇒ VN100_SPI_SetMagAccRef ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData

### Mutually Recursive functions

- BusFaultException ⇒ BusFaultException
- HardFaultException ⇒ HardFaultException
- MemManageException ⇒ MemManageException
- UsageFaultException ⇒ UsageFaultException
- assert_failed ⇒ assert_failed

  ### Function Pointers

  - Reset_Handler
  - NMIException
  - HardFaultException
  - MemManageException
  - BusFaultException
  - UsageFaultException
  - SVCHandler
  - DebugMonitor
  - PendSVC
  - SysTickHandler
  - WWDG_IRQHandler
  - PVD_IRQHandler
  - TAMPER_IRQHandler
  - RTC_IRQHandler
  - FLASH_IRQHandler
  - RCC_IRQHandler
  - EXTI0_IRQHandler
  - EXTI1_IRQHandler
  - EXTI2_IRQHandler
  - EXTI3_IRQHandler
  - EXTI4_IRQHandler
  - DMA1_Channel1_IRQHandler
  - DMA1_Channel2_IRQHandler
  - DMA1_Channel3_IRQHandler
  - DMA1_Channel4_IRQHandler
  - DMA1_Channel5_IRQHandler
  - DMA1_Channel6_IRQHandler
  - DMA1_Channel7_IRQHandler
  - ADC1_2_IRQHandler
  - USB_HP_CAN_TX_IRQHandler
  - USB_LP_CAN_RX0_IRQHandler
  - CAN_RX1_IRQHandler
  - CAN_SCE_IRQHandler
  - EXTI9_5_IRQHandler
  - TIM1_BRK_IRQHandler
  - TIM1_UP_IRQHandler
  - TIM1_TRG_COM_IRQHandler
  - TIM1_CC_IRQHandler
  - TIM2_IRQHandler
  - TIM3_IRQHandler
  - TIM4_IRQHandler
  - I2C1_EV_IRQHandler
  - I2C1_ER_IRQHandler
  - I2C2_EV_IRQHandler
  - I2C2_ER_IRQHandler
  - SPI1_IRQHandler
  - SPI2_IRQHandler
  - USART1_IRQHandler
  - USART2_IRQHandler
  - USART3_IRQHandler
  - EXTI15_10_IRQHandler
  - RTCAlarm_IRQHandler
  - USBWakeUp_IRQHandler
  - TIM8_BRK_IRQHandler
  - TIM8_UP_IRQHandler
  - TIM8_TRG_COM_IRQHandler
  - TIM8_CC_IRQHandler
  - ADC3_IRQHandler
  - FSMC_IRQHandler
  - SDIO_IRQHandler
  - TIM5_IRQHandler
  - SPI3_IRQHandler
  - UART4_IRQHandler
  - UART5_IRQHandler
  - TIM6_IRQHandler
  - TIM7_IRQHandler
  - DMA2_Channel1_IRQHandler
  - DMA2_Channel2_IRQHandler
  - DMA2_Channel3_IRQHandler
  - DMA2_Channel4_5_IRQHandler
  - __main
  - main
  - fputc
  - _sputc

  ### Global Symbols

  __main (Thumb, 8 bytes, Stack size 0 bytes, entry.o($$startup$$))
  [Calls]

  - >> __init

  __call_main (Thumb, 2 bytes, Stack size 0 bytes, init.o(.emb_text))
  [Called By]

  - >> __init

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

  - stm32f10x_vector.o(RESET)

  __aeabi_dadd (Thumb, 48 bytes, Stack size 24 bytes, dadd.o(.text), UNUSED)
  [Calls]

  - >> _double_addcore
  [Called By]
  - >> _fp_digits

  __aeabi_dsub (Thumb, 48 bytes, Stack size 24 bytes, dadd.o(.text), UNUSED)
  [Calls]

  - >> _double_addcore

  __aeabi_drsub (Thumb, 48 bytes, Stack size 24 bytes, dadd.o(.text), UNUSED)
  [Calls]

  - >> _double_addcore

  __aeabi_dmul (Thumb, 230 bytes, Stack size 80 bytes, dmul.o(.text), UNUSED)
  [Calls]

  - >> _double_epilogue
  [Called By]
  - >> _fp_digits

  __aeabi_ddiv (Thumb, 246 bytes, Stack size 72 bytes, ddiv.o(.text), UNUSED)
  [Calls]

  - >> _double_epilogue
  [Called By]
  - >> _fp_digits

  __aeabi_f2d (Thumb, 36 bytes, Stack size 0 bytes, f2d.o(.text))
  [Called By]

  - >> main

  __aeabi_cdrcmple (Thumb, 74 bytes, Stack size 0 bytes, cdrcmple.o(.text), UNUSED)
  [Called By]

  - >> _fp_digits

  __init (Thumb, 30 bytes, Stack size 0 bytes, init.o(.text))
  [Calls]

  - >> __call_main
  [Called By]
  - >> __main

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

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

  __aeabi_uidivmod (Thumb, 38 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
  [Called By]

  - >> _printf_core

  __aeabi_uldivmod (Thumb, 84 bytes, Stack size 32 bytes, uldiv.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_llsr
  [Called By]
  - >> _printf_core
  - >> _fp_digits

  __aeabi_llsl (Thumb, 32 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
  [Called By]

  - >> __aeabi_d2ulz
  - >> _double_addcore

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

  __aeabi_llsr (Thumb, 30 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
  [Called By]

  - >> __aeabi_d2ulz
  - >> __aeabi_uldivmod
  - >> _double_addcore

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

  _double_round (Thumb, 54 bytes, Stack size 20 bytes, depilogue.o(.text), UNUSED)
  [Called By]

  - >> _double_epilogue

  _double_epilogue (Thumb, 138 bytes, Stack size 28 bytes, depilogue.o(.text), UNUSED)
  [Calls]

  - >> _double_round
  [Called By]
  - >> __aeabi_ddiv
  - >> __aeabi_dmul
  - >> _double_addcore

  __aeabi_d2ulz (Thumb, 50 bytes, Stack size 0 bytes, dfixull.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_llsr
  - >> __aeabi_llsl
  [Called By]
  - >> _fp_digits

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  BusFaultException (Thumb, 2 bytes, Stack size 0 bytes, stm32f10x_it.o(i.BusFaultException))
  [Calls]

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

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  FLASH_PrefetchBufferCmd (Thumb, 38 bytes, Stack size 8 bytes, stm32f10x_flash.o(i.FLASH_PrefetchBufferCmd))
  [Stack]

  - Max Depth = 8
  - Call Chain = FLASH_PrefetchBufferCmd
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  FLASH_SetLatency (Thumb, 42 bytes, Stack size 8 bytes, stm32f10x_flash.o(i.FLASH_SetLatency))
  [Stack]

  - Max Depth = 8
  - Call Chain = FLASH_SetLatency
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

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

  - stm32f10x_vector.o(RESET)

  GPIO_Configuration (Thumb, 104 bytes, Stack size 24 bytes, main.o(i.GPIO_Configuration))
  [Stack]

  - Max Depth = 24
  - Call Chain = GPIO_Configuration
  [Called By]
  - >> main

  GPIO_Init (Thumb, 290 bytes, Stack size 24 bytes, stm32f10x_gpio.o(i.GPIO_Init), UNUSED)
  [Calls]

  - >> assert_failed

  GPIO_ResetBits (Thumb, 74 bytes, Stack size 16 bytes, stm32f10x_gpio.o(i.GPIO_ResetBits))
  [Stack]

  - Max Depth = 16
  - Call Chain = GPIO_ResetBits
  [Calls]
  - >> assert_failed
  [Called By]
  - >> VN_SPI_SetSS

  GPIO_SetBits (Thumb, 74 bytes, Stack size 16 bytes, stm32f10x_gpio.o(i.GPIO_SetBits))
  [Stack]

  - Max Depth = 16
  - Call Chain = GPIO_SetBits
  [Calls]
  - >> assert_failed
  [Called By]
  - >> VN_SPI_SetSS

  HardFaultException (Thumb, 2 bytes, Stack size 0 bytes, stm32f10x_it.o(i.HardFaultException))
  [Calls]

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

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  MemManageException (Thumb, 2 bytes, Stack size 0 bytes, stm32f10x_it.o(i.MemManageException))
  [Calls]

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

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

  - stm32f10x_vector.o(RESET)

  NVIC_Configuration (Thumb, 10 bytes, Stack size 0 bytes, main.o(i.NVIC_Configuration))
  [Stack]

  - Max Depth = 16
  - Call Chain = NVIC_Configuration ⇒ NVIC_SetVectorTable
  [Calls]
  - >> NVIC_SetVectorTable
  [Called By]
  - >> main

  NVIC_SetVectorTable (Thumb, 58 bytes, Stack size 16 bytes, stm32f10x_nvic.o(i.NVIC_SetVectorTable))
  [Stack]

  - Max Depth = 16
  - Call Chain = NVIC_SetVectorTable
  [Calls]
  - >> assert_failed
  [Called By]
  - >> NVIC_Configuration

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  RCC_APB2PeriphClockCmd (Thumb, 64 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd))
  [Stack]

  - Max Depth = 16
  - Call Chain = RCC_APB2PeriphClockCmd
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_Configuration (Thumb, 118 bytes, Stack size 16 bytes, main.o(i.RCC_Configuration))
  [Stack]

  - Max Depth = 48
  - Call Chain = RCC_Configuration ⇒ RCC_WaitForHSEStartUp ⇒ RCC_GetFlagStatus
  [Calls]
  - >> RCC_WaitForHSEStartUp
  - >> RCC_SYSCLKConfig
  - >> RCC_PLLConfig
  - >> RCC_PLLCmd
  - >> RCC_PCLK2Config
  - >> RCC_PCLK1Config
  - >> RCC_HSEConfig
  - >> RCC_HCLKConfig
  - >> RCC_GetSYSCLKSource
  - >> RCC_GetFlagStatus
  - >> RCC_APB2PeriphClockCmd
  - >> FLASH_SetLatency
  - >> FLASH_PrefetchBufferCmd
  [Called By]
  - >> main

  RCC_DeInit (Thumb, 50 bytes, Stack size 0 bytes, stm32f10x_rcc.o(i.RCC_DeInit), UNUSED)

  RCC_GetClocksFreq (Thumb, 136 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_GetClocksFreq))
  [Stack]

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

  RCC_GetFlagStatus (Thumb, 104 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_GetFlagStatus))
  [Stack]

  - Max Depth = 16
  - Call Chain = RCC_GetFlagStatus
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_WaitForHSEStartUp
  - >> RCC_Configuration

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

  - >> RCC_Configuration

  RCC_HCLKConfig (Thumb, 64 bytes, Stack size 8 bytes, stm32f10x_rcc.o(i.RCC_HCLKConfig))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_HCLKConfig
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_HSEConfig (Thumb, 76 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_HSEConfig))
  [Stack]

  - Max Depth = 16
  - Call Chain = RCC_HSEConfig
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

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

  - stm32f10x_vector.o(RESET)

  RCC_PCLK1Config (Thumb, 56 bytes, Stack size 8 bytes, stm32f10x_rcc.o(i.RCC_PCLK1Config))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_PCLK1Config
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_PCLK2Config (Thumb, 58 bytes, Stack size 8 bytes, stm32f10x_rcc.o(i.RCC_PCLK2Config))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_PCLK2Config
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_PLLCmd (Thumb, 26 bytes, Stack size 8 bytes, stm32f10x_rcc.o(i.RCC_PLLCmd))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_PLLCmd
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_PLLConfig (Thumb, 144 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_PLLConfig))
  [Stack]

  - Max Depth = 16
  - Call Chain = RCC_PLLConfig
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_SYSCLKConfig (Thumb, 40 bytes, Stack size 8 bytes, stm32f10x_rcc.o(i.RCC_SYSCLKConfig))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_SYSCLKConfig
  [Calls]
  - >> assert_failed
  [Called By]
  - >> RCC_Configuration

  RCC_WaitForHSEStartUp (Thumb, 36 bytes, Stack size 16 bytes, stm32f10x_rcc.o(i.RCC_WaitForHSEStartUp))
  [Stack]

  - Max Depth = 32
  - Call Chain = RCC_WaitForHSEStartUp ⇒ RCC_GetFlagStatus
  [Calls]
  - >> RCC_GetFlagStatus
  [Called By]
  - >> RCC_Configuration

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  SPI_Cmd (Thumb, 68 bytes, Stack size 16 bytes, stm32f10x_spi.o(i.SPI_Cmd))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_Cmd
  [Calls]
  - >> assert_failed
  [Called By]
  - >> main

  SPI_I2S_GetFlagStatus (Thumb, 90 bytes, Stack size 16 bytes, stm32f10x_spi.o(i.SPI_I2S_GetFlagStatus))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_I2S_GetFlagStatus
  [Calls]
  - >> assert_failed
  [Called By]
  - >> VN_SPI_SendReceive

  SPI_I2S_ReceiveData (Thumb, 36 bytes, Stack size 8 bytes, stm32f10x_spi.o(i.SPI_I2S_ReceiveData))
  [Stack]

  - Max Depth = 8
  - Call Chain = SPI_I2S_ReceiveData
  [Calls]
  - >> assert_failed
  [Called By]
  - >> VN_SPI_SendReceive

  SPI_I2S_SendData (Thumb, 38 bytes, Stack size 16 bytes, stm32f10x_spi.o(i.SPI_I2S_SendData))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_I2S_SendData
  [Calls]
  - >> assert_failed
  [Called By]
  - >> VN_SPI_SendReceive

  SPI_Init (Thumb, 270 bytes, Stack size 16 bytes, stm32f10x_spi.o(i.SPI_Init))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_Init
  [Calls]
  - >> assert_failed
  [Called By]
  - >> main

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

  - stm32f10x_vector.o(RESET)

  Serial_SendByte (Thumb, 26 bytes, Stack size 8 bytes, main.o(i.Serial_SendByte))
  [Stack]

  - Max Depth = 40
  - Call Chain = Serial_SendByte ⇒ USART_GetFlagStatus
  [Calls]
  - >> USART_SendData
  - >> USART_GetFlagStatus
  [Called By]
  - >> Serial_SendHexBytes

  Serial_SendHexBytes (Thumb, 62 bytes, Stack size 24 bytes, main.o(i.Serial_SendHexBytes))
  [Stack]

  - Max Depth = 64
  - Call Chain = Serial_SendHexBytes ⇒ Serial_SendByte ⇒ USART_GetFlagStatus
  [Calls]
  - >> Serial_SendByte
  - >> __1sprintf
  [Called By]
  - >> main

  SysTickHandler (Thumb, 6 bytes, Stack size 0 bytes, sysclock.o(i.SysTickHandler))
  [Address Reference Count : 1]

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  USART_Cmd (Thumb, 80 bytes, Stack size 16 bytes, stm32f10x_usart.o(i.USART_Cmd))
  [Stack]

  - Max Depth = 16
  - Call Chain = USART_Cmd
  [Calls]
  - >> assert_failed
  [Called By]
  - >> main

  USART_GetFlagStatus (Thumb, 144 bytes, Stack size 32 bytes, stm32f10x_usart.o(i.USART_GetFlagStatus))
  [Stack]

  - Max Depth = 32
  - Call Chain = USART_GetFlagStatus
  [Calls]
  - >> assert_failed
  [Called By]
  - >> fputc
  - >> Serial_SendByte

  USART_Init (Thumb, 330 bytes, Stack size 48 bytes, stm32f10x_usart.o(i.USART_Init))
  [Stack]

  - Max Depth = 64
  - Call Chain = USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> assert_failed
  - >> RCC_GetClocksFreq
  [Called By]
  - >> main

  USART_SendData (Thumb, 70 bytes, Stack size 16 bytes, stm32f10x_usart.o(i.USART_SendData))
  [Stack]

  - Max Depth = 16
  - Call Chain = USART_SendData
  [Calls]
  - >> assert_failed
  [Called By]
  - >> fputc
  - >> Serial_SendByte

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

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

  - stm32f10x_vector.o(RESET)

  UsageFaultException (Thumb, 2 bytes, Stack size 0 bytes, stm32f10x_it.o(i.UsageFaultException))
  [Calls]

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

  VN100_SPI_GetADOF (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetADOF))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetADOF ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetADOR (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetADOR))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetADOR ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetAcc (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetAcc))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetAcc ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetAccComp (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetAccComp))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetAccComp ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetAccGain (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetAccGain))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetAccGain ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetBaudRate (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetBaudRate))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetBaudRate ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetDCM (Thumb, 60 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_GetDCM))
  [Stack]

  - Max Depth = 96
  - Call Chain = VN100_SPI_GetDCM ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetFWVer (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetFWVer))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetFWVer ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetFiltActTuning (Thumb, 44 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_GetFiltActTuning))
  [Stack]

  - Max Depth = 96
  - Call Chain = VN100_SPI_GetFiltActTuning ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetFiltMeasVar (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetFiltMeasVar))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetFiltMeasVar ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetHWRev (Thumb, 22 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetHWRev))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetHWRev ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetHardSoftIronComp (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetHardSoftIronComp))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetHardSoftIronComp ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetMag (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetMag))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetMag ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetMagAccRates (Thumb, 82 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetMagAccRates))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetMagAccRates ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetMagAccRef (Thumb, 62 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetMagAccRef))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetMagAccRef ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetModel (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetModel))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetModel ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuat (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetQuat))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetQuat ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatAcc (Thumb, 62 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetQuatAcc))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetQuatAcc ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatAccRates (Thumb, 82 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetQuatAccRates))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetQuatAccRates ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatMag (Thumb, 62 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetQuatMag))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetQuatMag ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatMagAcc (Thumb, 82 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetQuatMagAcc))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetQuatMagAcc ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatMagAccRates (Thumb, 108 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_GetQuatMagAccRates))
  [Stack]

  - Max Depth = 96
  - Call Chain = VN100_SPI_GetQuatMagAccRates ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetQuatRates (Thumb, 62 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetQuatRates))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetQuatRates ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetRates (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetRates))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetRates ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetRefFrameRot (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetRefFrameRot))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetRefFrameRot ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetSerial (Thumb, 38 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_GetSerial))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_GetSerial ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetYPR (Thumb, 34 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_GetYPR))
  [Stack]

  - Max Depth = 88
  - Call Chain = VN100_SPI_GetYPR ⇒ VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_ReadRegister
  [Called By]
  - >> main

  VN100_SPI_GetYPRMagAccRates (Thumb, 108 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_GetYPRMagAccRates))
  [Stack]

  - Max Depth = 24
  - Call Chain = VN100_SPI_GetYPRMagAccRates
  [Called By]
  - >> main

  VN100_SPI_ReadRegister (Thumb, 90 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_ReadRegister))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_ReadRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN_SPI_SetSS
  - >> VN_SPI_SendReceive
  - >> VN_Delay
  [Called By]
  - >> VN100_SPI_GetYPR
  - >> VN100_SPI_GetSerial
  - >> VN100_SPI_GetRefFrameRot
  - >> VN100_SPI_GetRates
  - >> VN100_SPI_GetQuatRates
  - >> VN100_SPI_GetQuatMagAccRates
  - >> VN100_SPI_GetQuatMagAcc
  - >> VN100_SPI_GetQuatMag
  - >> VN100_SPI_GetQuatAccRates
  - >> VN100_SPI_GetQuatAcc
  - >> VN100_SPI_GetQuat
  - >> VN100_SPI_GetModel
  - >> VN100_SPI_GetMagAccRef
  - >> VN100_SPI_GetMagAccRates
  - >> VN100_SPI_GetMag
  - >> VN100_SPI_GetHardSoftIronComp
  - >> VN100_SPI_GetHWRev
  - >> VN100_SPI_GetFiltMeasVar
  - >> VN100_SPI_GetFiltActTuning
  - >> VN100_SPI_GetFWVer
  - >> VN100_SPI_GetDCM
  - >> VN100_SPI_GetBaudRate
  - >> VN100_SPI_GetAccGain
  - >> VN100_SPI_GetAccComp
  - >> VN100_SPI_GetAcc
  - >> VN100_SPI_GetADOR
  - >> VN100_SPI_GetADOF

  VN100_SPI_RestoreFactorySettings (Thumb, 74 bytes, Stack size 16 bytes, vn100.o(i.VN100_SPI_RestoreFactorySettings))
  [Stack]

  - Max Depth = 64
  - Call Chain = VN100_SPI_RestoreFactorySettings ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN_SPI_SetSS
  - >> VN_SPI_SendReceive
  - >> VN_Delay
  [Called By]
  - >> main

  VN100_SPI_SetADOF (Thumb, 16 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_SetADOF))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_SetADOF ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetADOR (Thumb, 16 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_SetADOR))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_SetADOR ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetAccComp (Thumb, 10 bytes, Stack size 0 bytes, vn100.o(i.VN100_SPI_SetAccComp))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_SetAccComp ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetAccGain (Thumb, 16 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_SetAccGain))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_SetAccGain ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetBaudRate (Thumb, 16 bytes, Stack size 8 bytes, vn100.o(i.VN100_SPI_SetBaudRate))
  [Stack]

  - Max Depth = 80
  - Call Chain = VN100_SPI_SetBaudRate ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetFiltActTuning (Thumb, 22 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_SetFiltActTuning))
  [Stack]

  - Max Depth = 96
  - Call Chain = VN100_SPI_SetFiltActTuning ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetFiltMeasVar (Thumb, 10 bytes, Stack size 0 bytes, vn100.o(i.VN100_SPI_SetFiltMeasVar))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_SetFiltMeasVar ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetHardSoftIronComp (Thumb, 10 bytes, Stack size 0 bytes, vn100.o(i.VN100_SPI_SetHardSoftIronComp))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_SetHardSoftIronComp ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetMagAccRef (Thumb, 42 bytes, Stack size 32 bytes, vn100.o(i.VN100_SPI_SetMagAccRef))
  [Stack]

  - Max Depth = 104
  - Call Chain = VN100_SPI_SetMagAccRef ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_SetRefFrameRot (Thumb, 10 bytes, Stack size 0 bytes, vn100.o(i.VN100_SPI_SetRefFrameRot))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_SetRefFrameRot ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN100_SPI_WriteRegister
  [Called By]
  - >> main

  VN100_SPI_WriteRegister (Thumb, 102 bytes, Stack size 24 bytes, vn100.o(i.VN100_SPI_WriteRegister))
  [Stack]

  - Max Depth = 72
  - Call Chain = VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> VN_SPI_SetSS
  - >> VN_SPI_SendReceive
  [Called By]
  - >> VN100_SPI_SetRefFrameRot
  - >> VN100_SPI_SetMagAccRef
  - >> VN100_SPI_SetHardSoftIronComp
  - >> VN100_SPI_SetFiltMeasVar
  - >> VN100_SPI_SetFiltActTuning
  - >> VN100_SPI_SetBaudRate
  - >> VN100_SPI_SetAccGain
  - >> VN100_SPI_SetAccComp
  - >> VN100_SPI_SetADOR
  - >> VN100_SPI_SetADOF

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

  - >> VN100_SPI_ReadRegister
  - >> VN100_SPI_RestoreFactorySettings
  - >> main

  VN_SPI_SendReceive (Thumb, 82 bytes, Stack size 32 bytes, vn_user.o(i.VN_SPI_SendReceive))
  [Stack]

  - Max Depth = 48
  - Call Chain = VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> SPI_I2S_SendData
  - >> SPI_I2S_ReceiveData
  - >> SPI_I2S_GetFlagStatus
  [Called By]
  - >> VN100_SPI_WriteRegister
  - >> VN100_SPI_ReadRegister
  - >> VN100_SPI_RestoreFactorySettings

  VN_SPI_SetSS (Thumb, 26 bytes, Stack size 0 bytes, vn_user.o(i.VN_SPI_SetSS))
  [Stack]

  - Max Depth = 16
  - Call Chain = VN_SPI_SetSS ⇒ GPIO_SetBits
  [Calls]
  - >> GPIO_SetBits
  - >> GPIO_ResetBits
  [Called By]
  - >> VN100_SPI_WriteRegister
  - >> VN100_SPI_ReadRegister
  - >> VN100_SPI_RestoreFactorySettings

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

  - stm32f10x_vector.o(RESET)

  __0printf (Thumb, 22 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)
  [Calls]

  - >> _printf_core

  __1printf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf))
  [Stack]

  - Max Depth = 24
  - Call Chain = __1printf
  [Called By]
  - >> main

  __c89printf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)

  printf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)

  __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))
  [Stack]

  - Max Depth = 24
  - Call Chain = __1sprintf
  [Called By]
  - >> Serial_SendHexBytes

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

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

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

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

  assert_failed (Thumb, 2 bytes, Stack size 0 bytes, main.o(i.assert_failed))
  [Calls]

  - >> assert_failed
  [Called By]
  - >> USART_SendData
  - >> USART_Init
  - >> USART_GetFlagStatus
  - >> USART_Cmd
  - >> SPI_Init
  - >> SPI_Cmd
  - >> RCC_SYSCLKConfig
  - >> RCC_PLLConfig
  - >> RCC_PLLCmd
  - >> RCC_PCLK2Config
  - >> RCC_PCLK1Config
  - >> RCC_HSEConfig
  - >> RCC_HCLKConfig
  - >> RCC_GetFlagStatus
  - >> RCC_APB2PeriphClockCmd
  - >> NVIC_SetVectorTable
  - >> GPIO_Init
  - >> FLASH_SetLatency
  - >> FLASH_PrefetchBufferCmd
  - >> assert_failed
  - >> SPI_I2S_SendData
  - >> SPI_I2S_ReceiveData
  - >> SPI_I2S_GetFlagStatus
  - >> GPIO_SetBits
  - >> GPIO_ResetBits

  debug (Thumb, 50 bytes, Stack size 0 bytes, stm32f10x_lib.o(i.debug))
  [Called By]

  - >> main

  fputc (Thumb, 30 bytes, Stack size 16 bytes, main.o(i.fputc))
  [Stack]

  - Max Depth = 48
  - Call Chain = fputc ⇒ USART_GetFlagStatus
  [Calls]
  - >> USART_SendData
  - >> USART_GetFlagStatus
  [Address Reference Count : 1]
  - printfa.o(i.__0printf)

  main (Thumb, 9620 bytes, Stack size 88 bytes, main.o(i.main))
  [Stack]

  - Max Depth = 192
  - Call Chain = main ⇒ VN100_SPI_SetMagAccRef ⇒ VN100_SPI_WriteRegister ⇒ VN_SPI_SendReceive ⇒ SPI_I2S_SendData
  [Calls]
  - >> debug
  - >> VN_Delay
  - >> VN100_SPI_SetRefFrameRot
  - >> VN100_SPI_SetMagAccRef
  - >> VN100_SPI_SetHardSoftIronComp
  - >> VN100_SPI_SetFiltMeasVar
  - >> VN100_SPI_SetFiltActTuning
  - >> VN100_SPI_SetBaudRate
  - >> VN100_SPI_SetAccGain
  - >> VN100_SPI_SetAccComp
  - >> VN100_SPI_SetADOR
  - >> VN100_SPI_SetADOF
  - >> VN100_SPI_RestoreFactorySettings
  - >> VN100_SPI_GetYPRMagAccRates
  - >> VN100_SPI_GetYPR
  - >> VN100_SPI_GetSerial
  - >> VN100_SPI_GetRefFrameRot
  - >> VN100_SPI_GetRates
  - >> VN100_SPI_GetQuatRates
  - >> VN100_SPI_GetQuatMagAccRates
  - >> VN100_SPI_GetQuatMagAcc
  - >> VN100_SPI_GetQuatMag
  - >> VN100_SPI_GetQuatAccRates
  - >> VN100_SPI_GetQuatAcc
  - >> VN100_SPI_GetQuat
  - >> VN100_SPI_GetModel
  - >> VN100_SPI_GetMagAccRef
  - >> VN100_SPI_GetMagAccRates
  - >> VN100_SPI_GetMag
  - >> VN100_SPI_GetHardSoftIronComp
  - >> VN100_SPI_GetHWRev
  - >> VN100_SPI_GetFiltMeasVar
  - >> VN100_SPI_GetFiltActTuning
  - >> VN100_SPI_GetFWVer
  - >> VN100_SPI_GetDCM
  - >> VN100_SPI_GetBaudRate
  - >> VN100_SPI_GetAccGain
  - >> VN100_SPI_GetAccComp
  - >> VN100_SPI_GetAcc
  - >> VN100_SPI_GetADOR
  - >> VN100_SPI_GetADOF
  - >> USART_Init
  - >> USART_Cmd
  - >> SPI_Init
  - >> SPI_Cmd
  - >> Serial_SendHexBytes
  - >> RCC_Configuration
  - >> NVIC_Configuration
  - >> GPIO_Configuration
  - >> __aeabi_f2d
  - >> __1printf
  [Address Reference Count : 1]
  - init.o(.text)

  ### Local Symbols

  _fp_digits (Thumb, 372 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
  [Calls]

  - >> __aeabi_d2ulz
  - >> __aeabi_uldivmod
  - >> __aeabi_cdrcmple
  - >> __aeabi_ddiv
  - >> __aeabi_dmul
  - >> __aeabi_dadd
  [Called By]
  - >> _printf_core

  _printf_core (Thumb, 1754 bytes, Stack size 152 bytes, printfa.o(i._printf_core), UNUSED)
  [Calls]

  - >> __aeabi_uldivmod
  - >> __aeabi_uidivmod
  - >> _printf_pre_padding
  - >> _fp_digits
  [Called By]
  - >> __0sprintf
  - >> __0printf

  _printf_pre_padding (Thumb, 44 bytes, Stack size 24 bytes, printfa.o(i._printf_pre_padding), UNUSED)
  [Called By]

  - >> _printf_core

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

  - >> __0sprintf
  [Address Reference Count : 1]
  - printfa.o(i.__0sprintf)

  _double_addcore (Thumb, 274 bytes, Stack size 64 bytes, dadd.o(.text), UNUSED)
  [Calls]

  - >> _double_epilogue
  - >> __aeabi_llsr
  - >> __aeabi_llsl
  [Called By]
  - >> __aeabi_drsub
  - >> __aeabi_dsub
  - >> __aeabi_dadd

  ### Undefined Global Symbols