# Static Call Graph for image ..\OBJ\QF-TEST-CMOS7670_WithFIFO.axf

#<CALLGRAPH># ARM Linker, 5.03 [Build 24]: Last Updated: Wed Dec 14 10:34:06 2016

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

### Call chain for Maximum Stack Depth:

main ⇒ USART1_Init ⇒ USART_HardwareInit ⇒ USART_Init ⇒ RCC_GetClocksFreq

### Mutually Recursive functions

- ADC1_2_IRQHandler ⇒ ADC1_2_IRQHandler

  ### Function Pointers

  - ADC1_2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - ADC3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - BusFault_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - CAN1_RX1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - CAN1_SCE_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel6_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA1_Channel7_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DMA2_Channel4_5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - DebugMon_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI0_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI15_10_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI4_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - EXTI9_5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - FLASH_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - FSMC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - HardFault_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C1_ER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C1_EV_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C2_ER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - I2C2_EV_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - MemManage_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - NMI_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - PVD_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - PendSV_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - RCC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - RTCAlarm_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - RTC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - Reset_Handler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SDIO_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI1_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SPI3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SVC_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SysTick_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - SystemInit from system_stm32f10x.o(.text) referenced from startup_stm32f10x_hd.o(.text)
  - TAMPER_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_BRK_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_CC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_TRG_COM_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM1_UP_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM2_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM6_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM7_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_BRK_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_CC_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_TRG_COM_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - TIM8_UP_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UART4_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UART5_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USART1_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USART2_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USART3_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USBWakeUp_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USB_HP_CAN1_TX_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - USB_LP_CAN1_RX0_IRQHandler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - UsageFault_Handler from stm32f10x_it.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - WWDG_IRQHandler from startup_stm32f10x_hd.o(.text) referenced from startup_stm32f10x_hd.o(RESET)
  - __main from entry.o(.ARM.Collect$$$$00000000) referenced from startup_stm32f10x_hd.o(.text)
  - fputc from usart.o(.text) referenced from printfb.o(i.__0printf$bare)
  - main from main.o(.text) referenced from entry9a.o(.ARM.Collect$$$$0000000B)

  ### Global Symbols

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

  - startup_stm32f10x_hd.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]

  - >> __scatterload

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

  - >> __scatterload

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

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

  USART1_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, stm32f10x_it.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = USART1_IRQHandler ⇒ USART1_RxIntHandler ⇒ USART_GetITStatus
  [Calls]
  - >> USART1_RxIntHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  USART2_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, stm32f10x_it.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = USART2_IRQHandler ⇒ USART2_RxIntHandler ⇒ USART_GetITStatus
  [Calls]
  - >> USART2_RxIntHandler
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  EXTI4_IRQHandler (Thumb, 400 bytes, Stack size 8 bytes, stm32f10x_it.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = EXTI4_IRQHandler ⇒ Address_set
  [Calls]
  - >> EXTI_ClearITPendingBit
  - >> Address_set
  [Address Reference Count : 1]
  - startup_stm32f10x_hd.o(RESET)

  IO_Init (Thumb, 116 bytes, Stack size 8 bytes, main.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = IO_Init
  [Calls]
  - >> JTAG_Set
  [Called By]
  - >> main

  RCC_Configuration (Thumb, 96 bytes, Stack size 8 bytes, main.o(.text))
  [Stack]

  - Max Depth = 32
  - 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_DeInit
  - >> RCC_APB2PeriphClockCmd
  [Called By]
  - >> main

  main (Thumb, 148 bytes, Stack size 16 bytes, main.o(.text))
  [Stack]

  - Max Depth = 124
  - Call Chain = main ⇒ USART1_Init ⇒ USART_HardwareInit ⇒ USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> __2printf
  - >> delay_ms
  - >> delay_init
  - >> USART1_Init
  - >> LCD_ShowString
  - >> LCD_Init
  - >> LCD_Clear
  - >> InitI2C0
  - >> Exit_Init
  - >> Cmos7670_init
  - >> RCC_Configuration
  - >> IO_Init
  [Address Reference Count : 1]
  - entry9a.o(.ARM.Collect$$$$0000000B)

  _sys_exit (Thumb, 6 bytes, Stack size 0 bytes, usart.o(.text), UNUSED)

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

  - Max Depth = 16
  - Call Chain = fputc
  [Calls]
  - >> USART_SendData
  - >> USART_GetFlagStatus
  [Address Reference Count : 1]
  - printfb.o(i.__0printf$bare)

  USART_SendChar (Thumb, 38 bytes, Stack size 16 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART_SendData
  - >> USART_GetFlagStatus

  USART1_Init (Thumb, 40 bytes, Stack size 24 bytes, usart.o(.text))
  [Stack]

  - Max Depth = 108
  - Call Chain = USART1_Init ⇒ USART_HardwareInit ⇒ USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> USART_HardwareInit
  [Called By]
  - >> main

  USART2_Init (Thumb, 40 bytes, Stack size 24 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART_HardwareInit

  USART1_RxIntHandler (Thumb, 52 bytes, Stack size 8 bytes, usart.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = USART1_RxIntHandler ⇒ USART_GetITStatus
  [Calls]
  - >> USART_ReceiveData
  - >> USART_GetITStatus
  [Called By]
  - >> USART1_IRQHandler

  USART2_RxIntHandler (Thumb, 40 bytes, Stack size 8 bytes, usart.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = USART2_RxIntHandler ⇒ USART_GetITStatus
  [Calls]
  - >> USART_ReceiveData
  - >> USART_GetITStatus
  [Called By]
  - >> USART2_IRQHandler

  USART1_Transmit (Thumb, 28 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART_SendData
  - >> USART_GetFlagStatus
  [Called By]
  - >> PrintHex
  - >> PrintLongInt
  - >> Prints
  - >> USART_SendString
  - >> USART_SendLine
  - >> USART_Debug

  USART2_Transmit (Thumb, 28 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART_SendData
  - >> USART_GetFlagStatus

  USART_Debug (Thumb, 24 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit

  USART_SendLine (Thumb, 140 bytes, Stack size 40 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit

  USART_SendString (Thumb, 22 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit

  USART_GetChar (Thumb, 68 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Called By]

  - >> USART_GetRate

  USART_GetRate (Thumb, 82 bytes, Stack size 28 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART_GetChar

  Prints (Thumb, 22 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit
  [Called By]
  - >> PrintShortIntHex

  PrintLongInt (Thumb, 82 bytes, Stack size 24 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit

  PrintShortIntHex (Thumb, 134 bytes, Stack size 24 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> Prints

  PrintHex (Thumb, 48 bytes, Stack size 8 bytes, usart.o(.text), UNUSED)
  [Calls]

  - >> USART1_Transmit

  NVIC_Config (Thumb, 22 bytes, Stack size 8 bytes, nvic_exit.o(.text), UNUSED)
  [Calls]

  - >> NVIC_SetVectorTable
  - >> NVIC_PriorityGroupConfig

  GpioInit (Thumb, 62 bytes, Stack size 32 bytes, nvic_exit.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = GpioInit ⇒ GPIO_Init
  [Calls]
  - >> GetGpioPortNumber
  - >> GPIO_Init
  - >> RCC_APB2PeriphClockCmd
  [Called By]
  - >> Exit_Init

  Exit_Init (Thumb, 134 bytes, Stack size 48 bytes, nvic_exit.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = Exit_Init ⇒ GpioInit ⇒ GPIO_Init
  [Calls]
  - >> GPIO_EXTILineConfig
  - >> EXTI_Init
  - >> GpioInit
  - >> GetGpioPinNumber
  - >> GetGpioPortNumber
  - >> NVIC_Init
  - >> RCC_APB2PeriphClockCmd
  [Called By]
  - >> main

  delay_init (Thumb, 54 bytes, Stack size 0 bytes, delay.o(.text))
  [Called By]

  - >> main

  delay_ms (Thumb, 54 bytes, Stack size 0 bytes, delay.o(.text))
  [Called By]

  - >> LCD_Init
  - >> Cmos7670_init
  - >> main

  delay_us (Thumb, 54 bytes, Stack size 0 bytes, delay.o(.text))
  [Called By]

  - >> rdCmos7670Reg
  - >> WrCmos7670
  - >> I2CRead0
  - >> I2CWrite0
  - >> TestAck0
  - >> Ack0
  - >> NoAck0
  - >> StopI2C0
  - >> StartI2C0

  LCD_WR_DATA (Thumb, 88 bytes, Stack size 0 bytes, tft.o(.text))
  [Called By]

  - >> LCD_Fill
  - >> LCD_DrawPoint
  - >> LCD_WriteRAM
  - >> LCD_WriteReg
  - >> LCD_Clear

  LCD_WR_REG (Thumb, 88 bytes, Stack size 0 bytes, tft.o(.text), UNUSED)
  [Called By]

  - >> LCD_ReadPoint
  - >> LCD_WriteRAM_Prepare
  - >> LCD_ReadReg
  - >> LCD_WriteReg

  LCD_Write_REG (Thumb, 52 bytes, Stack size 0 bytes, tft.o(.text))
  [Called By]

  - >> LCD_Init
  - >> Address_set

  LCD_Write_COMDATA (Thumb, 52 bytes, Stack size 0 bytes, tft.o(.text))
  [Called By]

  - >> LCD_Init
  - >> Address_set

  LCD_WriteReg (Thumb, 20 bytes, Stack size 8 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WR_REG
  - >> LCD_WR_DATA
  [Called By]
  - >> LCD_SetCursor
  - >> LCD_DisplayOff
  - >> LCD_DisplayOn

  LCD_ReadReg (Thumb, 142 bytes, Stack size 16 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WR_REG

  LCD_WriteRAM_Prepare (Thumb, 10 bytes, Stack size 4 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WR_REG
  [Called By]
  - >> LCD_Fill

  LCD_WriteRAM (Thumb, 12 bytes, Stack size 4 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WR_DATA

  LCD_Init (Thumb, 710 bytes, Stack size 8 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = LCD_Init
  [Calls]
  - >> LCD_Write_COMDATA
  - >> LCD_Write_REG
  - >> delay_ms
  [Called By]
  - >> main

  LCD_BGR2RGB (Thumb, 26 bytes, Stack size 12 bytes, tft.o(.text), UNUSED)
  [Called By]

  - >> LCD_ReadPoint

  LCD_ReadPoint (Thumb, 160 bytes, Stack size 16 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_SetCursor
  - >> LCD_BGR2RGB
  - >> LCD_WR_REG

  LCD_DisplayOn (Thumb, 14 bytes, Stack size 4 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WriteReg

  LCD_DisplayOff (Thumb, 12 bytes, Stack size 4 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_WriteReg

  Address_set (Thumb, 84 bytes, Stack size 16 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = Address_set
  [Calls]
  - >> LCD_Write_COMDATA
  - >> LCD_Write_REG
  [Called By]
  - >> LCD_DrawPoint
  - >> LCD_Clear
  - >> EXTI4_IRQHandler

  LCD_DrawPoint (Thumb, 28 bytes, Stack size 12 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = LCD_DrawPoint ⇒ Address_set
  [Calls]
  - >> LCD_WR_DATA
  - >> Address_set
  [Called By]
  - >> LCD_ShowChar
  - >> Draw_Circle
  - >> LCD_DrawLine

  LCD_Clear (Thumb, 40 bytes, Stack size 12 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = LCD_Clear ⇒ Address_set
  [Calls]
  - >> LCD_WR_DATA
  - >> Address_set
  [Called By]
  - >> main

  LCD_Fill (Thumb, 80 bytes, Stack size 40 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_SetCursor
  - >> LCD_WriteRAM_Prepare
  - >> LCD_WR_DATA

  LCD_DrawLine (Thumb, 176 bytes, Stack size 68 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_DrawPoint
  [Called By]
  - >> LCD_DrawRectangle

  LCD_DrawRectangle (Thumb, 60 bytes, Stack size 20 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_DrawLine

  Draw_Circle (Thumb, 176 bytes, Stack size 28 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> LCD_DrawPoint

  LCD_ShowChar (Thumb, 308 bytes, Stack size 40 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 68
  - Call Chain = LCD_ShowChar ⇒ LCD_DrawPoint ⇒ Address_set
  [Calls]
  - >> LCD_DrawPoint
  [Called By]
  - >> LCD_Show2Num
  - >> LCD_ShowNum
  - >> LCD_ShowString

  mypow (Thumb, 22 bytes, Stack size 8 bytes, tft.o(.text), UNUSED)
  [Called By]

  - >> LCD_Show2Num
  - >> LCD_ShowNum

  LCD_ShowNum (Thumb, 148 bytes, Stack size 56 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> mypow
  - >> LCD_ShowChar

  LCD_Show2Num (Thumb, 92 bytes, Stack size 56 bytes, tft.o(.text), UNUSED)
  [Calls]

  - >> mypow
  - >> LCD_ShowChar

  LCD_ShowString (Thumb, 66 bytes, Stack size 20 bytes, tft.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = LCD_ShowString ⇒ LCD_ShowChar ⇒ LCD_DrawPoint ⇒ Address_set
  [Calls]
  - >> LCD_ShowChar
  [Called By]
  - >> main

  InitI2C0 (Thumb, 46 bytes, Stack size 0 bytes, i2c.o(.text))
  [Called By]

  - >> Cmos7670_init
  - >> main

  StartI2C0 (Thumb, 60 bytes, Stack size 8 bytes, i2c.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = StartI2C0
  [Calls]
  - >> delay_us
  [Called By]
  - >> rdCmos7670Reg
  - >> WrCmos7670

  StopI2C0 (Thumb, 46 bytes, Stack size 8 bytes, i2c.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = StopI2C0
  [Calls]
  - >> delay_us
  [Called By]
  - >> rdCmos7670Reg
  - >> WrCmos7670

  NoAck0 (Thumb, 60 bytes, Stack size 8 bytes, i2c.o(.text), UNUSED)
  [Calls]

  - >> delay_us
  [Called By]
  - >> rdCmos7670Reg

  Ack0 (Thumb, 76 bytes, Stack size 8 bytes, i2c.o(.text), UNUSED)
  [Calls]

  - >> delay_us

  TestAck0 (Thumb, 76 bytes, Stack size 8 bytes, i2c.o(.text), UNUSED)
  [Calls]

  - >> delay_us

  I2CWrite0 (Thumb, 180 bytes, Stack size 16 bytes, i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2CWrite0
  [Calls]
  - >> delay_us
  [Called By]
  - >> rdCmos7670Reg
  - >> WrCmos7670

  I2CRead0 (Thumb, 100 bytes, Stack size 16 bytes, i2c.o(.text), UNUSED)
  [Calls]

  - >> delay_us
  [Called By]
  - >> rdCmos7670Reg

  WrCmos7670 (Thumb, 78 bytes, Stack size 16 bytes, ov7670.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = WrCmos7670 ⇒ I2CWrite0
  [Calls]
  - >> I2CWrite0
  - >> StopI2C0
  - >> StartI2C0
  - >> delay_us
  [Called By]
  - >> set_Cmos7670reg
  - >> Cmos7670_init

  rdCmos7670Reg (Thumb, 100 bytes, Stack size 16 bytes, ov7670.o(.text), UNUSED)
  [Calls]

  - >> I2CRead0
  - >> I2CWrite0
  - >> NoAck0
  - >> StopI2C0
  - >> StartI2C0
  - >> delay_us

  set_Cmos7670reg (Thumb, 1316 bytes, Stack size 8 bytes, ov7670.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = set_Cmos7670reg ⇒ WrCmos7670 ⇒ I2CWrite0
  [Calls]
  - >> WrCmos7670
  [Called By]
  - >> Cmos7670_init

  Cmos7670_init (Thumb, 36 bytes, Stack size 8 bytes, ov7670.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = Cmos7670_init ⇒ set_Cmos7670reg ⇒ WrCmos7670 ⇒ I2CWrite0
  [Calls]
  - >> set_Cmos7670reg
  - >> WrCmos7670
  - >> delay_ms
  - >> InitI2C0
  [Called By]
  - >> main

  JTAG_Set (Thumb, 38 bytes, Stack size 0 bytes, sys.o(.text))
  [Called By]

  - >> IO_Init

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

  - >> NVIC_Config

  NVIC_Init (Thumb, 102 bytes, Stack size 16 bytes, misc.o(.text))
  [Stack]

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

  NVIC_SetVectorTable (Thumb, 14 bytes, Stack size 0 bytes, misc.o(.text), UNUSED)
  [Called By]

  - >> NVIC_Config

  NVIC_SystemLPConfig (Thumb, 34 bytes, Stack size 0 bytes, misc.o(.text), UNUSED)

  SysTick_CLKSourceConfig (Thumb, 40 bytes, Stack size 0 bytes, misc.o(.text), UNUSED)

  GPIO_DeInit (Thumb, 172 bytes, Stack size 8 bytes, stm32f10x_gpio.o(.text), UNUSED)
  [Calls]

  - >> RCC_APB2PeriphResetCmd

  GPIO_AFIODeInit (Thumb, 20 bytes, Stack size 8 bytes, stm32f10x_gpio.o(.text), UNUSED)
  [Calls]

  - >> RCC_APB2PeriphResetCmd

  GPIO_Init (Thumb, 274 bytes, Stack size 24 bytes, stm32f10x_gpio.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = GPIO_Init
  [Called By]
  - >> GpioInit
  - >> USART_HardwareInit

  GPIO_StructInit (Thumb, 16 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_ReadInputDataBit (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_ReadInputData (Thumb, 8 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_ReadOutputDataBit (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_ReadOutputData (Thumb, 8 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_SetBits (Thumb, 4 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_ResetBits (Thumb, 4 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_WriteBit (Thumb, 10 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_Write (Thumb, 4 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_PinLockConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_EventOutputConfig (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_EventOutputCmd (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_PinRemapConfig (Thumb, 138 bytes, Stack size 20 bytes, stm32f10x_gpio.o(.text), UNUSED)

  GPIO_EXTILineConfig (Thumb, 66 bytes, Stack size 12 bytes, stm32f10x_gpio.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = GPIO_EXTILineConfig
  [Called By]
  - >> Exit_Init

  GPIO_ETH_MediaInterfaceConfig (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_gpio.o(.text), UNUSED)

  RCC_DeInit (Thumb, 64 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_HSEConfig (Thumb, 70 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_GetFlagStatus (Thumb, 56 bytes, Stack size 8 bytes, stm32f10x_rcc.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_GetFlagStatus
  [Called By]
  - >> RCC_WaitForHSEStartUp
  - >> RCC_Configuration

  RCC_WaitForHSEStartUp (Thumb, 56 bytes, Stack size 16 bytes, stm32f10x_rcc.o(.text))
  [Stack]

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

  RCC_AdjustHSICalibrationValue (Thumb, 20 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_HSICmd (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_PLLConfig (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_PLLCmd (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_SYSCLKConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

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

  - >> RCC_Configuration

  RCC_HCLKConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_PCLK1Config (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_PCLK2Config (Thumb, 20 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text))
  [Called By]

  - >> RCC_Configuration

  RCC_ITConfig (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_USBCLKConfig (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_ADCCLKConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_LSEConfig (Thumb, 44 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_LSICmd (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_RTCCLKConfig (Thumb, 12 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_RTCCLKCmd (Thumb, 8 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

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

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

  RCC_AHBPeriphClockCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

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

  - >> GpioInit
  - >> USART_HardwareInit
  - >> Exit_Init
  - >> RCC_Configuration

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

  - >> USART_HardwareInit

  RCC_APB2PeriphResetCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)
  [Called By]

  - >> USART_DeInit
  - >> GPIO_AFIODeInit
  - >> GPIO_DeInit

  RCC_APB1PeriphResetCmd (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)
  [Called By]

  - >> USART_DeInit

  RCC_BackupResetCmd (Thumb, 8 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_ClockSecuritySystemCmd (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_MCOConfig (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_ClearFlag (Thumb, 14 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_GetITStatus (Thumb, 20 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  RCC_ClearITPendingBit (Thumb, 6 bytes, Stack size 0 bytes, stm32f10x_rcc.o(.text), UNUSED)

  USART_DeInit (Thumb, 134 bytes, Stack size 8 bytes, stm32f10x_usart.o(.text), UNUSED)
  [Calls]

  - >> RCC_APB1PeriphResetCmd
  - >> RCC_APB2PeriphResetCmd

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

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

  USART_StructInit (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_ClockInit (Thumb, 34 bytes, Stack size 8 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_ClockStructInit (Thumb, 12 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

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

  - >> USART_HardwareInit

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

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

  USART_DMACmd (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_SetAddress (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_WakeUpConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_ReceiverWakeUpCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_LINBreakDetectLengthConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_LINCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

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

  - >> USART2_Transmit
  - >> USART1_Transmit
  - >> USART_SendChar
  - >> fputc

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

  - >> USART2_RxIntHandler
  - >> USART1_RxIntHandler

  USART_SendBreak (Thumb, 10 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_SetGuardTime (Thumb, 16 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_SetPrescaler (Thumb, 16 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_SmartCardCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_SmartCardNACKCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_HalfDuplexCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_OverSampling8Cmd (Thumb, 22 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_OneBitMethodCmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_IrDAConfig (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_IrDACmd (Thumb, 24 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

  USART_GetFlagStatus (Thumb, 26 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text))
  [Called By]

  - >> USART2_Transmit
  - >> USART1_Transmit
  - >> USART_SendChar
  - >> fputc

  USART_ClearFlag (Thumb, 18 bytes, Stack size 0 bytes, stm32f10x_usart.o(.text), UNUSED)

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

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

  USART_ClearITPendingBit (Thumb, 52 bytes, Stack size 8 bytes, stm32f10x_usart.o(.text), UNUSED)

  EXTI_DeInit (Thumb, 28 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

  EXTI_Init (Thumb, 142 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text))
  [Called By]

  - >> Exit_Init

  EXTI_StructInit (Thumb, 16 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

  EXTI_GenerateSWInterrupt (Thumb, 16 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

  EXTI_GetFlagStatus (Thumb, 22 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

  EXTI_ClearFlag (Thumb, 8 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

  EXTI_GetITStatus (Thumb, 34 bytes, Stack size 0 bytes, stm32f10x_exti.o(.text), UNUSED)

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

  - >> EXTI4_IRQHandler

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

  - startup_stm32f10x_hd.o(RESET)

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

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

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

  - startup_stm32f10x_hd.o(RESET)

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

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

  SystemCoreClockUpdate (Thumb, 142 bytes, Stack size 8 bytes, system_stm32f10x.o(.text), UNUSED)

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

  - >> __main_after_scatterload
  [Called By]
  - >> _main_scatterload

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

  LCD_SetCursor (Thumb, 54 bytes, Stack size 12 bytes, tft.o(i.LCD_SetCursor), UNUSED)
  [Calls]

  - >> LCD_WriteReg
  [Called By]
  - >> LCD_Fill
  - >> LCD_ReadPoint

  __0printf$bare (Thumb, 8 bytes, Stack size 0 bytes, printfb.o(i.__0printf$bare), UNUSED)
  [Calls]

  - >> _printf_core

  __1printf$bare (Thumb, 0 bytes, Stack size 0 bytes, printfb.o(i.__0printf$bare), UNUSED)

  __2printf (Thumb, 0 bytes, Stack size 0 bytes, printfb.o(i.__0printf$bare))
  [Called By]

  - >> main

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

  ### Local Symbols

  USART_NvicCfg (Thumb, 36 bytes, Stack size 16 bytes, usart.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = USART_NvicCfg ⇒ NVIC_Init
  [Calls]
  - >> NVIC_Init
  [Called By]
  - >> USART_HardwareInit

  USART_HardwareInit (Thumb, 174 bytes, Stack size 16 bytes, usart.o(.text))
  [Stack]

  - Max Depth = 84
  - Call Chain = USART_HardwareInit ⇒ USART_Init ⇒ RCC_GetClocksFreq
  [Calls]
  - >> USART_Init
  - >> USART_ITConfig
  - >> USART_Cmd
  - >> RCC_APB1PeriphClockCmd
  - >> GPIO_Init
  - >> USART_NvicCfg
  - >> RCC_APB2PeriphClockCmd
  [Called By]
  - >> USART2_Init
  - >> USART1_Init

  GetGpioPortNumber (Thumb, 34 bytes, Stack size 0 bytes, nvic_exit.o(.text))
  [Called By]

  - >> GpioInit
  - >> Exit_Init

  GetGpioPinNumber (Thumb, 34 bytes, Stack size 0 bytes, nvic_exit.o(.text))
  [Called By]

  - >> Exit_Init

  SetSysClockTo72 (Thumb, 212 bytes, Stack size 12 bytes, system_stm32f10x.o(.text))
  [Stack]

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

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

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

  _printf_core (Thumb, 34 bytes, Stack size 24 bytes, printfb.o(i._printf_core), UNUSED)
  [Called By]

  - >> __0printf$bare

  ### Undefined Global Symbols