Compare commits

...

2 commits

Author SHA1 Message Date
ee0077b722 Remplacement des fichiers 2025-12-17 00:11:41 +01:00
137e61c2ca Mavaise version 2025-12-17 00:00:09 +01:00
111 changed files with 1658 additions and 6497 deletions

View file

@ -1,36 +0,0 @@
// File: STM32F101_102_103_105_107.dbgconf
// Version: 1.0.0
// Note: refer to STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx Reference manual (RM0008)
// STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx datasheets
// <<< Use Configuration Wizard in Context Menu >>>
// <h> Debug MCU configuration register (DBGMCU_CR)
// <i> Reserved bits must be kept at reset value
// <o.30> DBG_TIM11_STOP <i> TIM11 counter stopped when core is halted
// <o.29> DBG_TIM10_STOP <i> TIM10 counter stopped when core is halted
// <o.28> DBG_TIM9_STOP <i> TIM9 counter stopped when core is halted
// <o.27> DBG_TIM14_STOP <i> TIM14 counter stopped when core is halted
// <o.26> DBG_TIM13_STOP <i> TIM13 counter stopped when core is halted
// <o.25> DBG_TIM12_STOP <i> TIM12 counter stopped when core is halted
// <o.21> DBG_CAN2_STOP <i> Debug CAN2 stopped when core is halted
// <o.20> DBG_TIM7_STOP <i> TIM7 counter stopped when core is halted
// <o.19> DBG_TIM6_STOP <i> TIM6 counter stopped when core is halted
// <o.18> DBG_TIM5_STOP <i> TIM5 counter stopped when core is halted
// <o.17> DBG_TIM8_STOP <i> TIM8 counter stopped when core is halted
// <o.16> DBG_I2C2_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.15> DBG_I2C1_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.14> DBG_CAN1_STOP <i> Debug CAN1 stopped when Core is halted
// <o.13> DBG_TIM4_STOP <i> TIM4 counter stopped when core is halted
// <o.12> DBG_TIM3_STOP <i> TIM3 counter stopped when core is halted
// <o.11> DBG_TIM2_STOP <i> TIM2 counter stopped when core is halted
// <o.10> DBG_TIM1_STOP <i> TIM1 counter stopped when core is halted
// <o.9> DBG_WWDG_STOP <i> Debug window watchdog stopped when core is halted
// <o.8> DBG_IWDG_STOP <i> Debug independent watchdog stopped when core is halted
// <o.2> DBG_STANDBY <i> Debug standby mode
// <o.1> DBG_STOP <i> Debug stop mode
// <o.0> DBG_SLEEP <i> Debug sleep mode
// </h>
DbgMCU_CR = 0x00000007;
// <<< end of configuration section >>>

View file

@ -1,36 +0,0 @@
// File: STM32F101_102_103_105_107.dbgconf
// Version: 1.0.0
// Note: refer to STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx Reference manual (RM0008)
// STM32F101xx STM32F102xx STM32F103xx STM32F105xx STM32F107xx datasheets
// <<< Use Configuration Wizard in Context Menu >>>
// <h> Debug MCU configuration register (DBGMCU_CR)
// <i> Reserved bits must be kept at reset value
// <o.30> DBG_TIM11_STOP <i> TIM11 counter stopped when core is halted
// <o.29> DBG_TIM10_STOP <i> TIM10 counter stopped when core is halted
// <o.28> DBG_TIM9_STOP <i> TIM9 counter stopped when core is halted
// <o.27> DBG_TIM14_STOP <i> TIM14 counter stopped when core is halted
// <o.26> DBG_TIM13_STOP <i> TIM13 counter stopped when core is halted
// <o.25> DBG_TIM12_STOP <i> TIM12 counter stopped when core is halted
// <o.21> DBG_CAN2_STOP <i> Debug CAN2 stopped when core is halted
// <o.20> DBG_TIM7_STOP <i> TIM7 counter stopped when core is halted
// <o.19> DBG_TIM6_STOP <i> TIM6 counter stopped when core is halted
// <o.18> DBG_TIM5_STOP <i> TIM5 counter stopped when core is halted
// <o.17> DBG_TIM8_STOP <i> TIM8 counter stopped when core is halted
// <o.16> DBG_I2C2_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.15> DBG_I2C1_SMBUS_TIMEOUT <i> SMBUS timeout mode stopped when core is halted
// <o.14> DBG_CAN1_STOP <i> Debug CAN1 stopped when Core is halted
// <o.13> DBG_TIM4_STOP <i> TIM4 counter stopped when core is halted
// <o.12> DBG_TIM3_STOP <i> TIM3 counter stopped when core is halted
// <o.11> DBG_TIM2_STOP <i> TIM2 counter stopped when core is halted
// <o.10> DBG_TIM1_STOP <i> TIM1 counter stopped when core is halted
// <o.9> DBG_WWDG_STOP <i> Debug window watchdog stopped when core is halted
// <o.8> DBG_IWDG_STOP <i> Debug independent watchdog stopped when core is halted
// <o.2> DBG_STANDBY <i> Debug standby mode
// <o.1> DBG_STOP <i> Debug stop mode
// <o.0> DBG_SLEEP <i> Debug sleep mode
// </h>
DbgMCU_CR = 0x00000007;
// <<< end of configuration section >>>

View file

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<component_viewer schemaVersion="0.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="Component_Viewer.xsd">
<component name="EventRecorderStub" version="1.0.0"/> <!--name and version of the component-->
<events>
</events>
</component_viewer>

View file

@ -1,889 +0,0 @@
Component: Arm Compiler for Embedded 6.24 Tool: armlink [5f371500]
==============================================================================
Section Cross References
principal.o(.text.main) refers to servo.o(.text.initServo) for initServo
principal.o(.text.main) refers to girouette.o(.text.configEncoder) for configEncoder
principal.o(.text.main) refers to accelerometre.o(.text.initAccelo) for initAccelo
principal.o(.text.main) refers to accelerometre.o(.text.initLacheur) for initLacheur
principal.o(.text.main) refers to principal.o(.bss.moyenne) for moyenne
principal.o(.text.main) refers to girouette.o(.text.LocaliserZero) for LocaliserZero
principal.o(.text.main) refers to girouette.o(.text.angleVent) for angleVent
principal.o(.text.main) refers to principal.o(.bss.angleVentVar) for angleVentVar
principal.o(.text.main) refers to girouette.o(.text.vent2voile) for vent2voile
principal.o(.text.main) refers to principal.o(.bss.angleVoileVar) for angleVoileVar
principal.o(.text.main) refers to servo.o(.text.Servo_Moteur) for Servo_Moteur
principal.o(.text.main) refers to accelerometre.o(.text.RecupAccelo) for RecupAccelo
principal.o(.text.main) refers to principal.o(.bss.sum) for sum
principal.o(.text.main) refers to principal.o(.bss.moy) for moy
principal.o(.ARM.exidx.text.main) refers to principal.o(.text.main) for [Anonymous Symbol]
accelerometre.o(.ARM.exidx.text.initAccelo) refers to accelerometre.o(.text.initAccelo) for [Anonymous Symbol]
accelerometre.o(.text.RecupAccelo) refers to accelerometre.o(.bss.RecupAccelo.Messie) for RecupAccelo.Messie
accelerometre.o(.ARM.exidx.text.RecupAccelo) refers to accelerometre.o(.text.RecupAccelo) for [Anonymous Symbol]
accelerometre.o(.text.initLacheur) refers to horloge.o(.text.Timer_Init) for Timer_Init
accelerometre.o(.ARM.exidx.text.initLacheur) refers to accelerometre.o(.text.initLacheur) for [Anonymous Symbol]
accelerometre.o(.text.LacheVoile) refers to servo.o(.text.Servo_Moteur) for Servo_Moteur
accelerometre.o(.ARM.exidx.text.LacheVoile) refers to accelerometre.o(.text.LacheVoile) for [Anonymous Symbol]
girouette.o(.text.configEncoder) refers to timer.o(.text.EnableTimer) for EnableTimer
girouette.o(.text.configEncoder) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
girouette.o(.ARM.exidx.text.configEncoder) refers to girouette.o(.text.configEncoder) for [Anonymous Symbol]
girouette.o(.ARM.exidx.text.angleVent) refers to girouette.o(.text.angleVent) for [Anonymous Symbol]
girouette.o(.ARM.exidx.text.vent2voile) refers to girouette.o(.text.vent2voile) for [Anonymous Symbol]
girouette.o(.text.LocaliserZero) refers to drivergpio.o(.text.MyGPIO_Read) for MyGPIO_Read
girouette.o(.ARM.exidx.text.LocaliserZero) refers to girouette.o(.text.LocaliserZero) for [Anonymous Symbol]
myuart.o(.text.My_USART_Config) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
myuart.o(.text.My_USART_Config) refers to myuart.o(.text.__NVIC_EnableIRQ) for __NVIC_EnableIRQ
myuart.o(.text.My_USART_Config) refers to myuart.o(.text.__NVIC_SetPriority) for __NVIC_SetPriority
myuart.o(.ARM.exidx.text.My_USART_Config) refers to myuart.o(.text.My_USART_Config) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.__NVIC_EnableIRQ) refers to myuart.o(.text.__NVIC_EnableIRQ) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.__NVIC_SetPriority) refers to myuart.o(.text.__NVIC_SetPriority) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.USART_Send_Char) refers to myuart.o(.text.USART_Send_Char) for [Anonymous Symbol]
myuart.o(.text.USART_Send_String) refers to myuart.o(.text.USART_Send_Char) for USART_Send_Char
myuart.o(.ARM.exidx.text.USART_Send_String) refers to myuart.o(.text.USART_Send_String) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.USART_IT_Receive_Enable) refers to myuart.o(.text.USART_IT_Receive_Enable) for [Anonymous Symbol]
myuart.o(.text.Init_IT_Receive) refers to myuart.o(.bss.pFnc_Receive) for pFnc_Receive
myuart.o(.ARM.exidx.text.Init_IT_Receive) refers to myuart.o(.text.Init_IT_Receive) for [Anonymous Symbol]
myuart.o(.text.USART1_IRQHandler) refers to myuart.o(.bss.pFnc_Receive) for pFnc_Receive
myuart.o(.ARM.exidx.text.USART1_IRQHandler) refers to myuart.o(.text.USART1_IRQHandler) for [Anonymous Symbol]
servo.o(.text.Servo_Moteur) refers to pwm.o(.text.Set_DutyCycle_PWM) for Set_DutyCycle_PWM
servo.o(.ARM.exidx.text.Servo_Moteur) refers to servo.o(.text.Servo_Moteur) for [Anonymous Symbol]
servo.o(.text.initServo) refers to horloge.o(.text.Timer_Init) for Timer_Init
servo.o(.text.initServo) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
servo.o(.text.initServo) refers to pwm.o(.text.MyTimer_PWM) for MyTimer_PWM
servo.o(.ARM.exidx.text.initServo) refers to servo.o(.text.initServo) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Init) refers to drivergpio.o(.text.MyGPIO_Init) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Read) refers to drivergpio.o(.text.MyGPIO_Read) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Set) refers to drivergpio.o(.text.MyGPIO_Set) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Reset) refers to drivergpio.o(.text.MyGPIO_Reset) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Toggle) refers to drivergpio.o(.text.MyGPIO_Toggle) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.Timer_Init) refers to horloge.o(.text.Timer_Init) for [Anonymous Symbol]
horloge.o(.text.TIM2_IRQHandler) refers to horloge.o(.bss.TIM2_Appel) for TIM2_Appel
horloge.o(.ARM.exidx.text.TIM2_IRQHandler) refers to horloge.o(.text.TIM2_IRQHandler) for [Anonymous Symbol]
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.bss.TIM2_Appel) for TIM2_Appel
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.text.__NVIC_EnableIRQ) for __NVIC_EnableIRQ
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.text.__NVIC_SetPriority) for __NVIC_SetPriority
horloge.o(.ARM.exidx.text.MyTimer_ActiveIT) refers to horloge.o(.text.MyTimer_ActiveIT) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.__NVIC_EnableIRQ) refers to horloge.o(.text.__NVIC_EnableIRQ) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.__NVIC_SetPriority) refers to horloge.o(.text.__NVIC_SetPriority) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.initGPIO_Interne) refers to mygpio.o(.text.initGPIO_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.boutonAppuye_Interne) refers to mygpio.o(.text.boutonAppuye_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.allumerDEL_Interne) refers to mygpio.o(.text.allumerDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.eteindreDEL_Interne) refers to mygpio.o(.text.eteindreDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.commuterDEL_Interne) refers to mygpio.o(.text.commuterDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.initGPIO_Externe) refers to mygpio.o(.text.initGPIO_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.boutonAppuye_Externe) refers to mygpio.o(.text.boutonAppuye_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.allumerDEL_Externe) refers to mygpio.o(.text.allumerDEL_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.eteindreDEL_Externe) refers to mygpio.o(.text.eteindreDEL_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.commuterDEL_Externe) refers to mygpio.o(.text.commuterDEL_Externe) for [Anonymous Symbol]
mytimer.o(.text.Test) refers to mytimer.o(.bss.g_tick_count) for g_tick_count
mytimer.o(.text.Test) refers to drivergpio.o(.text.MyGPIO_Toggle) for MyGPIO_Toggle
mytimer.o(.ARM.exidx.text.Test) refers to mytimer.o(.text.Test) for [Anonymous Symbol]
mytimer.o(.text.ConfigureTimers) refers to horloge.o(.text.Timer_Init) for Timer_Init
mytimer.o(.ARM.exidx.text.ConfigureTimers) refers to mytimer.o(.text.ConfigureTimers) for [Anonymous Symbol]
mytimer.o(.text.ConfigureIT) refers to mytimer.o(.text.Test) for Test
mytimer.o(.text.ConfigureIT) refers to horloge.o(.text.MyTimer_ActiveIT) for MyTimer_ActiveIT
mytimer.o(.ARM.exidx.text.ConfigureIT) refers to mytimer.o(.text.ConfigureIT) for [Anonymous Symbol]
mytimer.o(.text.ConfigurePWM) refers to pwm.o(.text.MyTimer_PWM) for MyTimer_PWM
mytimer.o(.ARM.exidx.text.ConfigurePWM) refers to mytimer.o(.text.ConfigurePWM) for [Anonymous Symbol]
pwm.o(.ARM.exidx.text.MyTimer_PWM) refers to pwm.o(.text.MyTimer_PWM) for [Anonymous Symbol]
pwm.o(.ARM.exidx.text.Set_DutyCycle_PWM) refers to pwm.o(.text.Set_DutyCycle_PWM) for [Anonymous Symbol]
timer.o(.ARM.exidx.text.MyTimer_Base_Init) refers to timer.o(.text.MyTimer_Base_Init) for [Anonymous Symbol]
timer.o(.ARM.exidx.text.EnableTimer) refers to timer.o(.text.EnableTimer) for [Anonymous Symbol]
i2c.o(.ARM.exidx.text.initI2C) refers to i2c.o(.text.initI2C) for [Anonymous Symbol]
startup_stm32f10x_md.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(STACK) for __initial_sp
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(.text) for Reset_Handler
startup_stm32f10x_md.o(RESET) refers to horloge.o(.text.TIM2_IRQHandler) for TIM2_IRQHandler
startup_stm32f10x_md.o(RESET) refers to myuart.o(.text.USART1_IRQHandler) for USART1_IRQHandler
startup_stm32f10x_md.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(.text) refers to system_stm32f10x.o(.text.SystemInit) for SystemInit
startup_stm32f10x_md.o(.text) refers to __main.o(!!!main) for __main
startup_stm32f10x_md.o(.text) refers to startup_stm32f10x_md.o(HEAP) for Heap_Mem
startup_stm32f10x_md.o(.text) refers to startup_stm32f10x_md.o(STACK) for Stack_Mem
system_stm32f10x.o(.text.SystemInit) refers to system_stm32f10x.o(.text.SetSysClock) for SetSysClock
system_stm32f10x.o(.ARM.exidx.text.SystemInit) refers to system_stm32f10x.o(.text.SystemInit) for [Anonymous Symbol]
system_stm32f10x.o(.text.SetSysClock) refers to system_stm32f10x.o(.text.SetSysClockTo72) for SetSysClockTo72
system_stm32f10x.o(.ARM.exidx.text.SetSysClock) refers to system_stm32f10x.o(.text.SetSysClock) for [Anonymous Symbol]
system_stm32f10x.o(.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.data.SystemCoreClock) for SystemCoreClock
system_stm32f10x.o(.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.rodata.AHBPrescTable) for AHBPrescTable
system_stm32f10x.o(.ARM.exidx.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.text.SystemCoreClockUpdate) for [Anonymous Symbol]
system_stm32f10x.o(.ARM.exidx.text.SetSysClockTo72) refers to system_stm32f10x.o(.text.SetSysClockTo72) for [Anonymous Symbol]
__main.o(!!!main) refers to __rtentry.o(.ARM.Collect$$rtentry$$00000000) for __rt_entry
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for __rt_entry_li
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for __rt_entry_main
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) for __rt_entry_postli_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000009) for __rt_entry_postsh_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000002) for __rt_entry_presh_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for __rt_entry_sh
__rtentry2.o(.ARM.Collect$$rtentry$$00000008) refers to boardinit2.o(.text) for _platform_post_stackheap_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000A) refers to libinit.o(.ARM.Collect$$libinit$$00000000) for __rt_lib_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000B) refers to boardinit3.o(.text) for _platform_post_lib_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to principal.o(.text.main) for main
__rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to exit.o(.text) for exit
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000001) for .ARM.Collect$$rtentry$$00000001
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000008) for .ARM.Collect$$rtentry$$00000008
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for .ARM.Collect$$rtentry$$0000000A
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) for .ARM.Collect$$rtentry$$0000000B
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for .ARM.Collect$$rtentry$$0000000D
__rtentry4.o(.ARM.Collect$$rtentry$$00000004) refers to sys_stackheap_outer.o(.text) for __user_setup_stackheap
__rtentry4.o(.ARM.exidx) refers to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for .ARM.Collect$$rtentry$$00000004
sys_stackheap_outer.o(.text) refers to libspace.o(.text) for __user_perproc_libspace
sys_stackheap_outer.o(.text) refers to startup_stm32f10x_md.o(.text) for __user_initial_stackheap
exit.o(.text) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for __rt_exit
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000030) for __rt_lib_init_alloca_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002E) for __rt_lib_init_argv_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001D) for __rt_lib_init_atexit_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000023) for __rt_lib_init_clock_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000034) for __rt_lib_init_cpp_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000032) for __rt_lib_init_exceptions_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000002) for __rt_lib_init_fp_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000021) for __rt_lib_init_fp_trap_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000025) for __rt_lib_init_getenv_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000C) for __rt_lib_init_heap_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000013) for __rt_lib_init_lc_collate_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000015) for __rt_lib_init_lc_ctype_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000017) for __rt_lib_init_lc_monetary_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000019) for __rt_lib_init_lc_numeric_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001B) for __rt_lib_init_lc_time_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000006) for __rt_lib_init_preinit_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000010) for __rt_lib_init_rand_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000004) for __rt_lib_init_relocate_pie_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000035) for __rt_lib_init_return
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001F) for __rt_lib_init_signal_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000027) for __rt_lib_init_stdio_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000E) for __rt_lib_init_user_alloc_1
libspace.o(.text) refers to libspace.o(.bss) for __libspace_start
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1
rtexit.o(.ARM.exidx) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for .ARM.Collect$$rtexit$$00000000
libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$0000001A) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000028) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer
libinit2.o(.ARM.Collect$$libinit$$00000029) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer
rtexit2.o(.ARM.Collect$$rtexit$$00000003) refers to libshutdown.o(.ARM.Collect$$libshutdown$$00000000) for __rt_lib_shutdown
rtexit2.o(.ARM.Collect$$rtexit$$00000004) refers to sys_exit.o(.text) for _sys_exit
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000001) for .ARM.Collect$$rtexit$$00000001
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for .ARM.Collect$$rtexit$$00000003
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for .ARM.Collect$$rtexit$$00000004
argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv
sys_exit.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_exit.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_exit_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_exit_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
_get_argv_nomalloc.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard
_get_argv_nomalloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM
_get_argv_nomalloc.o(.text) refers to sys_command.o(.text) for _sys_command_string
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) for __rt_lib_shutdown_cpp_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) for __rt_lib_shutdown_fp_trap_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) for __rt_lib_shutdown_heap_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) for __rt_lib_shutdown_return
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) for __rt_lib_shutdown_signal_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) for __rt_lib_shutdown_stdio_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) for __rt_lib_shutdown_user_alloc_1
sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_command_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_command_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner
defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit
defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise
rt_raise.o(.text) refers to __raise.o(.text) for __raise
rt_raise.o(.text) refers to sys_exit.o(.text) for _sys_exit
defsig_exit.o(.text) refers to sys_exit.o(.text) for _sys_exit
defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
__raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler
defsig_general.o(.text) refers to sys_wrch.o(.text) for _ttywrch
sys_wrch.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_wrch.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_wrch_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_wrch_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner
defsig_abrt_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_fpe_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_stak_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_pvfn_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_cppl_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_segv_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_other.o(.text) refers to defsig_general.o(.text) for __default_signal_display
==============================================================================
Removing Unused input sections from the image.
Removing principal.o(.text), (0 bytes).
Removing principal.o(.ARM.exidx.text.main), (8 bytes).
Removing principal.o(.ARM.use_no_argv), (4 bytes).
Removing accelerometre.o(.text), (0 bytes).
Removing accelerometre.o(.ARM.exidx.text.initAccelo), (8 bytes).
Removing accelerometre.o(.ARM.exidx.text.RecupAccelo), (8 bytes).
Removing accelerometre.o(.ARM.exidx.text.initLacheur), (8 bytes).
Removing accelerometre.o(.text.LacheVoile), (64 bytes).
Removing accelerometre.o(.ARM.exidx.text.LacheVoile), (8 bytes).
Removing girouette.o(.text), (0 bytes).
Removing girouette.o(.ARM.exidx.text.configEncoder), (8 bytes).
Removing girouette.o(.ARM.exidx.text.angleVent), (8 bytes).
Removing girouette.o(.ARM.exidx.text.vent2voile), (8 bytes).
Removing girouette.o(.ARM.exidx.text.LocaliserZero), (8 bytes).
Removing myuart.o(.text), (0 bytes).
Removing myuart.o(.text.My_USART_Config), (108 bytes).
Removing myuart.o(.ARM.exidx.text.My_USART_Config), (8 bytes).
Removing myuart.o(.text.__NVIC_EnableIRQ), (48 bytes).
Removing myuart.o(.ARM.exidx.text.__NVIC_EnableIRQ), (8 bytes).
Removing myuart.o(.text.__NVIC_SetPriority), (66 bytes).
Removing myuart.o(.ARM.exidx.text.__NVIC_SetPriority), (8 bytes).
Removing myuart.o(.text.USART_Send_Char), (36 bytes).
Removing myuart.o(.ARM.exidx.text.USART_Send_Char), (8 bytes).
Removing myuart.o(.text.USART_Send_String), (40 bytes).
Removing myuart.o(.ARM.exidx.text.USART_Send_String), (8 bytes).
Removing myuart.o(.text.USART_IT_Receive_Enable), (18 bytes).
Removing myuart.o(.ARM.exidx.text.USART_IT_Receive_Enable), (8 bytes).
Removing myuart.o(.text.Init_IT_Receive), (20 bytes).
Removing myuart.o(.ARM.exidx.text.Init_IT_Receive), (8 bytes).
Removing myuart.o(.ARM.exidx.text.USART1_IRQHandler), (8 bytes).
Removing servo.o(.text), (0 bytes).
Removing servo.o(.ARM.exidx.text.Servo_Moteur), (8 bytes).
Removing servo.o(.ARM.exidx.text.initServo), (8 bytes).
Removing drivergpio.o(.text), (0 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Init), (8 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Read), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Set), (24 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Set), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Reset), (28 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Reset), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Toggle), (30 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Toggle), (8 bytes).
Removing horloge.o(.text), (0 bytes).
Removing horloge.o(.ARM.exidx.text.Timer_Init), (8 bytes).
Removing horloge.o(.ARM.exidx.text.TIM2_IRQHandler), (8 bytes).
Removing horloge.o(.text.MyTimer_ActiveIT), (84 bytes).
Removing horloge.o(.ARM.exidx.text.MyTimer_ActiveIT), (8 bytes).
Removing horloge.o(.text.__NVIC_EnableIRQ), (48 bytes).
Removing horloge.o(.ARM.exidx.text.__NVIC_EnableIRQ), (8 bytes).
Removing horloge.o(.text.__NVIC_SetPriority), (66 bytes).
Removing horloge.o(.ARM.exidx.text.__NVIC_SetPriority), (8 bytes).
Removing mygpio.o(.text), (0 bytes).
Removing mygpio.o(.text.initGPIO_Interne), (66 bytes).
Removing mygpio.o(.ARM.exidx.text.initGPIO_Interne), (8 bytes).
Removing mygpio.o(.text.boutonAppuye_Interne), (16 bytes).
Removing mygpio.o(.ARM.exidx.text.boutonAppuye_Interne), (8 bytes).
Removing mygpio.o(.text.allumerDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.allumerDEL_Interne), (8 bytes).
Removing mygpio.o(.text.eteindreDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.eteindreDEL_Interne), (8 bytes).
Removing mygpio.o(.text.commuterDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.commuterDEL_Interne), (8 bytes).
Removing mygpio.o(.text.initGPIO_Externe), (58 bytes).
Removing mygpio.o(.ARM.exidx.text.initGPIO_Externe), (8 bytes).
Removing mygpio.o(.text.boutonAppuye_Externe), (16 bytes).
Removing mygpio.o(.ARM.exidx.text.boutonAppuye_Externe), (8 bytes).
Removing mygpio.o(.text.allumerDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.allumerDEL_Externe), (8 bytes).
Removing mygpio.o(.text.eteindreDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.eteindreDEL_Externe), (8 bytes).
Removing mygpio.o(.text.commuterDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.commuterDEL_Externe), (8 bytes).
Removing mytimer.o(.text), (0 bytes).
Removing mytimer.o(.text.Test), (32 bytes).
Removing mytimer.o(.ARM.exidx.text.Test), (8 bytes).
Removing mytimer.o(.text.ConfigureTimers), (38 bytes).
Removing mytimer.o(.ARM.exidx.text.ConfigureTimers), (8 bytes).
Removing mytimer.o(.text.ConfigureIT), (26 bytes).
Removing mytimer.o(.ARM.exidx.text.ConfigureIT), (8 bytes).
Removing mytimer.o(.text.ConfigurePWM), (18 bytes).
Removing mytimer.o(.ARM.exidx.text.ConfigurePWM), (8 bytes).
Removing mytimer.o(.bss.g_tick_count), (4 bytes).
Removing pwm.o(.text), (0 bytes).
Removing pwm.o(.ARM.exidx.text.MyTimer_PWM), (8 bytes).
Removing pwm.o(.ARM.exidx.text.Set_DutyCycle_PWM), (8 bytes).
Removing timer.o(.text), (0 bytes).
Removing timer.o(.text.MyTimer_Base_Init), (42 bytes).
Removing timer.o(.ARM.exidx.text.MyTimer_Base_Init), (8 bytes).
Removing timer.o(.ARM.exidx.text.EnableTimer), (8 bytes).
Removing i2c.o(.text), (0 bytes).
Removing i2c.o(.text.initI2C), (42 bytes).
Removing i2c.o(.ARM.exidx.text.initI2C), (8 bytes).
Removing system_stm32f10x.o(.text), (0 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SystemInit), (8 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SetSysClock), (8 bytes).
Removing system_stm32f10x.o(.text.SystemCoreClockUpdate), (290 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SystemCoreClockUpdate), (8 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SetSysClockTo72), (8 bytes).
Removing system_stm32f10x.o(.data.SystemCoreClock), (4 bytes).
Removing system_stm32f10x.o(.rodata.AHBPrescTable), (16 bytes).
100 unused section(s) (total 1876 bytes) removed from the image.
==============================================================================
Image Symbol Table
Local Symbols
Symbol Name Value Ov Type Size Object(Section)
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE
../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE
../clib/angel/rt.s 0x00000000 Number 0 rt_raise.o ABSOLUTE
../clib/angel/scatter.s 0x00000000 Number 0 __scatter.o ABSOLUTE
../clib/angel/startup.s 0x00000000 Number 0 __main.o ABSOLUTE
../clib/angel/sys.s 0x00000000 Number 0 sys_stackheap_outer.o ABSOLUTE
../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE
../clib/angel/sys.s 0x00000000 Number 0 use_no_semi.o ABSOLUTE
../clib/angel/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_exit.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_exit_hlt.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_command_hlt.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_wrch.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_wrch_hlt.o ABSOLUTE
../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE
../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE
../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE
../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE
../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE
../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE
../clib/signal.s 0x00000000 Number 0 defsig.o ABSOLUTE
../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE
../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE
../fplib/fpinit_empty.s 0x00000000 Number 0 fpinit_empty.o ABSOLUTE
Accelerometre.c 0x00000000 Number 0 accelerometre.o ABSOLUTE
DriverGPIO.c 0x00000000 Number 0 drivergpio.o ABSOLUTE
Girouette.c 0x00000000 Number 0 girouette.o ABSOLUTE
Horloge.c 0x00000000 Number 0 horloge.o ABSOLUTE
I2C.c 0x00000000 Number 0 i2c.o ABSOLUTE
MYGPIO.c 0x00000000 Number 0 mygpio.o ABSOLUTE
MyTimer.c 0x00000000 Number 0 mytimer.o ABSOLUTE
MyUart.c 0x00000000 Number 0 myuart.o ABSOLUTE
PWM.c 0x00000000 Number 0 pwm.o ABSOLUTE
RTE/Device/STM32F103RB/startup_stm32f10x_md.s 0x00000000 Number 0 startup_stm32f10x_md.o ABSOLUTE
Servo.c 0x00000000 Number 0 servo.o ABSOLUTE
Timer.c 0x00000000 Number 0 timer.o ABSOLUTE
dc.s 0x00000000 Number 0 dc.o ABSOLUTE
principal.c 0x00000000 Number 0 principal.o ABSOLUTE
system_stm32f10x.c 0x00000000 Number 0 system_stm32f10x.o ABSOLUTE
RESET 0x08000000 Section 236 startup_stm32f10x_md.o(RESET)
!!!main 0x080000ec Section 8 __main.o(!!!main)
!!!scatter 0x080000f4 Section 92 __scatter.o(!!!scatter)
!!handler_null 0x08000150 Section 2 __scatter.o(!!handler_null)
!!handler_zi 0x08000154 Section 28 __scatter_zi.o(!!handler_zi)
.ARM.Collect$$libinit$$00000000 0x08000170 Section 2 libinit.o(.ARM.Collect$$libinit$$00000000)
.ARM.Collect$$libinit$$00000002 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000002)
.ARM.Collect$$libinit$$00000004 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004)
.ARM.Collect$$libinit$$00000006 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000006)
.ARM.Collect$$libinit$$0000000C 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C)
.ARM.Collect$$libinit$$0000000E 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E)
.ARM.Collect$$libinit$$00000010 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000010)
.ARM.Collect$$libinit$$00000013 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013)
.ARM.Collect$$libinit$$00000015 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015)
.ARM.Collect$$libinit$$00000017 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017)
.ARM.Collect$$libinit$$00000019 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019)
.ARM.Collect$$libinit$$0000001B 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B)
.ARM.Collect$$libinit$$0000001D 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D)
.ARM.Collect$$libinit$$0000001F 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F)
.ARM.Collect$$libinit$$00000021 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021)
.ARM.Collect$$libinit$$00000023 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023)
.ARM.Collect$$libinit$$00000025 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025)
.ARM.Collect$$libinit$$00000027 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000027)
.ARM.Collect$$libinit$$0000002E 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E)
.ARM.Collect$$libinit$$00000030 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030)
.ARM.Collect$$libinit$$00000032 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032)
.ARM.Collect$$libinit$$00000034 0x08000172 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000034)
.ARM.Collect$$libinit$$00000035 0x08000172 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000035)
.ARM.Collect$$libshutdown$$00000000 0x08000174 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000)
.ARM.Collect$$libshutdown$$00000002 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)
.ARM.Collect$$libshutdown$$00000004 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)
.ARM.Collect$$libshutdown$$00000007 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)
.ARM.Collect$$libshutdown$$0000000A 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)
.ARM.Collect$$libshutdown$$0000000C 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C)
.ARM.Collect$$libshutdown$$0000000F 0x08000176 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)
.ARM.Collect$$libshutdown$$00000010 0x08000176 Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)
.ARM.Collect$$rtentry$$00000000 0x08000178 Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000)
.ARM.Collect$$rtentry$$00000002 0x08000178 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002)
.ARM.Collect$$rtentry$$00000004 0x08000178 Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004)
.ARM.Collect$$rtentry$$00000009 0x0800017e Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009)
.ARM.Collect$$rtentry$$0000000A 0x0800017e Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A)
.ARM.Collect$$rtentry$$0000000C 0x08000182 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C)
.ARM.Collect$$rtentry$$0000000D 0x08000182 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D)
.ARM.Collect$$rtexit$$00000000 0x0800018a Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000)
.ARM.Collect$$rtexit$$00000002 0x0800018c Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002)
.ARM.Collect$$rtexit$$00000003 0x0800018c Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003)
.ARM.Collect$$rtexit$$00000004 0x08000190 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004)
.text 0x08000198 Section 64 startup_stm32f10x_md.o(.text)
.text 0x080001d8 Section 0 heapauxi.o(.text)
.text 0x080001de Section 74 sys_stackheap_outer.o(.text)
.text 0x08000228 Section 0 exit.o(.text)
.text 0x0800023c Section 8 libspace.o(.text)
.text 0x08000244 Section 0 sys_exit.o(.text)
.text 0x08000250 Section 2 use_no_semi.o(.text)
.text 0x08000252 Section 0 indicate_semi.o(.text)
[Anonymous Symbol] 0x08000254 Section 0 timer.o(.text.EnableTimer)
[Anonymous Symbol] 0x080002e8 Section 0 girouette.o(.text.LocaliserZero)
[Anonymous Symbol] 0x08000324 Section 0 drivergpio.o(.text.MyGPIO_Init)
[Anonymous Symbol] 0x080004ec Section 0 drivergpio.o(.text.MyGPIO_Read)
[Anonymous Symbol] 0x08000508 Section 0 pwm.o(.text.MyTimer_PWM)
[Anonymous Symbol] 0x080008fc Section 0 accelerometre.o(.text.RecupAccelo)
[Anonymous Symbol] 0x08000934 Section 0 servo.o(.text.Servo_Moteur)
SetSysClock 0x0800096d Thumb Code 8 system_stm32f10x.o(.text.SetSysClock)
[Anonymous Symbol] 0x0800096c Section 0 system_stm32f10x.o(.text.SetSysClock)
SetSysClockTo72 0x08000975 Thumb Code 290 system_stm32f10x.o(.text.SetSysClockTo72)
[Anonymous Symbol] 0x08000974 Section 0 system_stm32f10x.o(.text.SetSysClockTo72)
[Anonymous Symbol] 0x08000a98 Section 0 pwm.o(.text.Set_DutyCycle_PWM)
[Anonymous Symbol] 0x08000b00 Section 0 system_stm32f10x.o(.text.SystemInit)
[Anonymous Symbol] 0x08000b68 Section 0 horloge.o(.text.TIM2_IRQHandler)
[Anonymous Symbol] 0x08000ba8 Section 0 horloge.o(.text.Timer_Init)
[Anonymous Symbol] 0x08000c70 Section 0 myuart.o(.text.USART1_IRQHandler)
[Anonymous Symbol] 0x08000ca8 Section 0 girouette.o(.text.angleVent)
[Anonymous Symbol] 0x08000ce0 Section 0 girouette.o(.text.configEncoder)
[Anonymous Symbol] 0x08000d7c Section 0 accelerometre.o(.text.initAccelo)
[Anonymous Symbol] 0x08000db0 Section 0 accelerometre.o(.text.initLacheur)
[Anonymous Symbol] 0x08000de0 Section 0 servo.o(.text.initServo)
[Anonymous Symbol] 0x08000e3c Section 0 principal.o(.text.main)
[Anonymous Symbol] 0x08000f58 Section 0 girouette.o(.text.vent2voile)
.bss 0x20000000 Section 96 libspace.o(.bss)
RecupAccelo.Messie 0x20000060 Data 6 accelerometre.o(.bss.RecupAccelo.Messie)
[Anonymous Symbol] 0x20000060 Section 0 accelerometre.o(.bss.RecupAccelo.Messie)
TIM2_Appel 0x20000068 Data 4 horloge.o(.bss.TIM2_Appel)
[Anonymous Symbol] 0x20000068 Section 0 horloge.o(.bss.TIM2_Appel)
Heap_Mem 0x20000098 Data 512 startup_stm32f10x_md.o(HEAP)
HEAP 0x20000098 Section 512 startup_stm32f10x_md.o(HEAP)
Stack_Mem 0x20000298 Data 1024 startup_stm32f10x_md.o(STACK)
STACK 0x20000298 Section 1024 startup_stm32f10x_md.o(STACK)
__initial_sp 0x20000698 Data 0 startup_stm32f10x_md.o(STACK)
Global Symbols
Symbol Name Value Ov Type Size Object(Section)
BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$~IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$ROPI$EBA8$UX$STANDARDLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE
__fp_init_empty 0x00000000 Number 0 fpinit_empty.o ABSOLUTE
__ARM_exceptions_init - Undefined Weak Reference
__alloca_initialize - Undefined Weak Reference
__arm_preinit_ - Undefined Weak Reference
__arm_relocate_pie_ - Undefined Weak Reference
__cpp_initialize__aeabi_ - Undefined Weak Reference
__cxa_finalize - Undefined Weak Reference
__rt_locale - Undefined Weak Reference
__sigvec_lookup - Undefined Weak Reference
_atexit_init - Undefined Weak Reference
_call_atexit_fns - Undefined Weak Reference
_clock_init - Undefined Weak Reference
_fp_trap_init - Undefined Weak Reference
_fp_trap_shutdown - Undefined Weak Reference
_get_lc_collate - Undefined Weak Reference
_get_lc_ctype - Undefined Weak Reference
_get_lc_monetary - Undefined Weak Reference
_get_lc_numeric - Undefined Weak Reference
_get_lc_time - Undefined Weak Reference
_getenv_init - Undefined Weak Reference
_handle_redirection - Undefined Weak Reference
_init_alloc - Undefined Weak Reference
_init_user_alloc - Undefined Weak Reference
_initio - Undefined Weak Reference
_rand_init - Undefined Weak Reference
_signal_finish - Undefined Weak Reference
_signal_init - Undefined Weak Reference
_terminate_alloc - Undefined Weak Reference
_terminate_user_alloc - Undefined Weak Reference
_terminateio - Undefined Weak Reference
__Vectors_Size 0x000000ec Number 0 startup_stm32f10x_md.o ABSOLUTE
__Vectors 0x08000000 Data 4 startup_stm32f10x_md.o(RESET)
__Vectors_End 0x080000ec Data 0 startup_stm32f10x_md.o(RESET)
__main 0x080000ed Thumb Code 8 __main.o(!!!main)
__scatterload 0x080000f5 Thumb Code 0 __scatter.o(!!!scatter)
__scatterload_rt2 0x080000f5 Thumb Code 84 __scatter.o(!!!scatter)
__scatterload_rt2_thumb_only 0x080000f5 Thumb Code 0 __scatter.o(!!!scatter)
__scatterload_loop 0x080000ff Thumb Code 0 __scatter.o(!!!scatter)
__scatterload_null 0x08000151 Thumb Code 2 __scatter.o(!!handler_null)
__scatterload_zeroinit 0x08000155 Thumb Code 28 __scatter_zi.o(!!handler_zi)
__rt_lib_init 0x08000171 Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000)
__rt_lib_init_alloca_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030)
__rt_lib_init_argv_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E)
__rt_lib_init_atexit_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D)
__rt_lib_init_clock_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023)
__rt_lib_init_cpp_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000034)
__rt_lib_init_exceptions_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032)
__rt_lib_init_fp_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000002)
__rt_lib_init_fp_trap_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021)
__rt_lib_init_getenv_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025)
__rt_lib_init_heap_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C)
__rt_lib_init_lc_collate_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013)
__rt_lib_init_lc_ctype_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015)
__rt_lib_init_lc_monetary_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017)
__rt_lib_init_lc_numeric_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019)
__rt_lib_init_lc_time_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B)
__rt_lib_init_preinit_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000006)
__rt_lib_init_rand_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000010)
__rt_lib_init_relocate_pie_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004)
__rt_lib_init_return 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000035)
__rt_lib_init_signal_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F)
__rt_lib_init_stdio_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000027)
__rt_lib_init_user_alloc_1 0x08000173 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E)
__rt_lib_shutdown 0x08000175 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000)
__rt_lib_shutdown_cpp_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)
__rt_lib_shutdown_fp_trap_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)
__rt_lib_shutdown_heap_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)
__rt_lib_shutdown_return 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)
__rt_lib_shutdown_signal_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)
__rt_lib_shutdown_stdio_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)
__rt_lib_shutdown_user_alloc_1 0x08000177 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C)
__rt_entry 0x08000179 Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000)
__rt_entry_presh_1 0x08000179 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002)
__rt_entry_sh 0x08000179 Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004)
__rt_entry_li 0x0800017f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A)
__rt_entry_postsh_1 0x0800017f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009)
__rt_entry_main 0x08000183 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D)
__rt_entry_postli_1 0x08000183 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C)
__rt_exit 0x0800018b Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000)
__rt_exit_ls 0x0800018d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003)
__rt_exit_prels_1 0x0800018d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002)
__rt_exit_exit 0x08000191 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004)
Reset_Handler 0x08000199 Thumb Code 8 startup_stm32f10x_md.o(.text)
NMI_Handler 0x080001a1 Thumb Code 2 startup_stm32f10x_md.o(.text)
HardFault_Handler 0x080001a3 Thumb Code 2 startup_stm32f10x_md.o(.text)
MemManage_Handler 0x080001a5 Thumb Code 2 startup_stm32f10x_md.o(.text)
BusFault_Handler 0x080001a7 Thumb Code 2 startup_stm32f10x_md.o(.text)
UsageFault_Handler 0x080001a9 Thumb Code 2 startup_stm32f10x_md.o(.text)
SVC_Handler 0x080001ab Thumb Code 2 startup_stm32f10x_md.o(.text)
DebugMon_Handler 0x080001ad Thumb Code 2 startup_stm32f10x_md.o(.text)
PendSV_Handler 0x080001af Thumb Code 2 startup_stm32f10x_md.o(.text)
SysTick_Handler 0x080001b1 Thumb Code 2 startup_stm32f10x_md.o(.text)
ADC1_2_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
CAN1_RX1_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
CAN1_SCE_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel1_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel2_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel3_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel4_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel5_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel6_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
DMA1_Channel7_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI0_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI15_10_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI1_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI2_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI3_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI4_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
EXTI9_5_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
FLASH_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
I2C1_ER_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
I2C1_EV_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
I2C2_ER_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
I2C2_EV_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
PVD_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
RCC_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
RTCAlarm_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
RTC_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
SPI1_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
SPI2_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TAMPER_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM1_BRK_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM1_CC_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM1_TRG_COM_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM1_UP_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM3_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
TIM4_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
USART2_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
USART3_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
USBWakeUp_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
USB_HP_CAN1_TX_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
USB_LP_CAN1_RX0_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
WWDG_IRQHandler 0x080001b3 Thumb Code 0 startup_stm32f10x_md.o(.text)
__user_initial_stackheap 0x080001b5 Thumb Code 0 startup_stm32f10x_md.o(.text)
__use_two_region_memory 0x080001d9 Thumb Code 2 heapauxi.o(.text)
__rt_heap_escrow$2region 0x080001db Thumb Code 2 heapauxi.o(.text)
__rt_heap_expand$2region 0x080001dd Thumb Code 2 heapauxi.o(.text)
__user_setup_stackheap 0x080001df Thumb Code 74 sys_stackheap_outer.o(.text)
exit 0x08000229 Thumb Code 18 exit.o(.text)
__user_libspace 0x0800023d Thumb Code 8 libspace.o(.text)
__user_perproc_libspace 0x0800023d Thumb Code 0 libspace.o(.text)
__user_perthread_libspace 0x0800023d Thumb Code 0 libspace.o(.text)
_sys_exit 0x08000245 Thumb Code 8 sys_exit.o(.text)
__I$use$semihosting 0x08000251 Thumb Code 0 use_no_semi.o(.text)
__use_no_semihosting_swi 0x08000251 Thumb Code 2 use_no_semi.o(.text)
__semihosting_library_function 0x08000253 Thumb Code 0 indicate_semi.o(.text)
EnableTimer 0x08000255 Thumb Code 146 timer.o(.text.EnableTimer)
LocaliserZero 0x080002e9 Thumb Code 58 girouette.o(.text.LocaliserZero)
MyGPIO_Init 0x08000325 Thumb Code 454 drivergpio.o(.text.MyGPIO_Init)
MyGPIO_Read 0x080004ed Thumb Code 26 drivergpio.o(.text.MyGPIO_Read)
MyTimer_PWM 0x08000509 Thumb Code 1010 pwm.o(.text.MyTimer_PWM)
RecupAccelo 0x080008fd Thumb Code 56 accelerometre.o(.text.RecupAccelo)
Servo_Moteur 0x08000935 Thumb Code 56 servo.o(.text.Servo_Moteur)
Set_DutyCycle_PWM 0x08000a99 Thumb Code 102 pwm.o(.text.Set_DutyCycle_PWM)
SystemInit 0x08000b01 Thumb Code 102 system_stm32f10x.o(.text.SystemInit)
TIM2_IRQHandler 0x08000b69 Thumb Code 62 horloge.o(.text.TIM2_IRQHandler)
Timer_Init 0x08000ba9 Thumb Code 198 horloge.o(.text.Timer_Init)
USART1_IRQHandler 0x08000c71 Thumb Code 54 myuart.o(.text.USART1_IRQHandler)
angleVent 0x08000ca9 Thumb Code 54 girouette.o(.text.angleVent)
configEncoder 0x08000ce1 Thumb Code 154 girouette.o(.text.configEncoder)
initAccelo 0x08000d7d Thumb Code 50 accelerometre.o(.text.initAccelo)
initLacheur 0x08000db1 Thumb Code 46 accelerometre.o(.text.initLacheur)
initServo 0x08000de1 Thumb Code 92 servo.o(.text.initServo)
main 0x08000e3d Thumb Code 284 principal.o(.text.main)
vent2voile 0x08000f59 Thumb Code 54 girouette.o(.text.vent2voile)
Region$$Table$$Base 0x08000f90 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08000fa0 Number 0 anon$$obj.o(Region$$Table)
__libspace_start 0x20000000 Data 96 libspace.o(.bss)
__temporary_stack_top$libspace 0x20000060 Data 0 libspace.o(.bss)
angleVentVar 0x2000006c Data 4 principal.o(.bss.angleVentVar)
angleVoileVar 0x20000070 Data 4 principal.o(.bss.angleVoileVar)
moy 0x20000074 Data 4 principal.o(.bss.moy)
moyenne 0x20000078 Data 20 principal.o(.bss.moyenne)
pFnc_Receive 0x2000008c Data 4 myuart.o(.bss.pFnc_Receive)
sum 0x20000090 Data 4 principal.o(.bss.sum)
==============================================================================
Memory Map of the image
Image Entry point : 0x08000199
Load Region LR_1 (Base: 0x08000000, Size: 0x00000fa0, Max: 0xffffffff, ABSOLUTE)
Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000fa0, Max: 0xffffffff, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x000000ec Data RO 191 RESET startup_stm32f10x_md.o
0x080000ec 0x080000ec 0x00000008 Code RO 219 * !!!main c_w.l(__main.o)
0x080000f4 0x080000f4 0x0000005c Code RO 384 !!!scatter c_w.l(__scatter.o)
0x08000150 0x08000150 0x00000002 Code RO 385 !!handler_null c_w.l(__scatter.o)
0x08000152 0x08000152 0x00000002 PAD
0x08000154 0x08000154 0x0000001c Code RO 388 !!handler_zi c_w.l(__scatter_zi.o)
0x08000170 0x08000170 0x00000002 Code RO 246 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o)
0x08000172 0x08000172 0x00000000 Code RO 253 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 255 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 257 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 260 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 262 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 264 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 267 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 269 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 271 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 273 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 275 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 277 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 279 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 281 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 283 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 285 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 287 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 291 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 293 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 295 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000000 Code RO 297 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o)
0x08000172 0x08000172 0x00000002 Code RO 298 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o)
0x08000174 0x08000174 0x00000002 Code RO 320 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o)
0x08000176 0x08000176 0x00000000 Code RO 335 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000000 Code RO 337 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000000 Code RO 340 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000000 Code RO 343 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000000 Code RO 345 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000000 Code RO 348 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o)
0x08000176 0x08000176 0x00000002 Code RO 349 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o)
0x08000178 0x08000178 0x00000000 Code RO 221 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o)
0x08000178 0x08000178 0x00000000 Code RO 223 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o)
0x08000178 0x08000178 0x00000006 Code RO 235 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o)
0x0800017e 0x0800017e 0x00000000 Code RO 225 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o)
0x0800017e 0x0800017e 0x00000004 Code RO 226 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o)
0x08000182 0x08000182 0x00000000 Code RO 228 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o)
0x08000182 0x08000182 0x00000008 Code RO 229 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o)
0x0800018a 0x0800018a 0x00000002 Code RO 250 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o)
0x0800018c 0x0800018c 0x00000000 Code RO 300 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o)
0x0800018c 0x0800018c 0x00000004 Code RO 301 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o)
0x08000190 0x08000190 0x00000006 Code RO 302 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o)
0x08000196 0x08000196 0x00000002 PAD
0x08000198 0x08000198 0x00000040 Code RO 192 * .text startup_stm32f10x_md.o
0x080001d8 0x080001d8 0x00000006 Code RO 217 .text c_w.l(heapauxi.o)
0x080001de 0x080001de 0x0000004a Code RO 237 .text c_w.l(sys_stackheap_outer.o)
0x08000228 0x08000228 0x00000012 Code RO 239 .text c_w.l(exit.o)
0x0800023a 0x0800023a 0x00000002 PAD
0x0800023c 0x0800023c 0x00000008 Code RO 247 .text c_w.l(libspace.o)
0x08000244 0x08000244 0x0000000c Code RO 310 .text c_w.l(sys_exit.o)
0x08000250 0x08000250 0x00000002 Code RO 325 .text c_w.l(use_no_semi.o)
0x08000252 0x08000252 0x00000000 Code RO 327 .text c_w.l(indicate_semi.o)
0x08000252 0x08000252 0x00000002 PAD
0x08000254 0x08000254 0x00000092 Code RO 173 .text.EnableTimer timer.o
0x080002e6 0x080002e6 0x00000002 PAD
0x080002e8 0x080002e8 0x0000003a Code RO 38 .text.LocaliserZero girouette.o
0x08000322 0x08000322 0x00000002 PAD
0x08000324 0x08000324 0x000001c6 Code RO 82 .text.MyGPIO_Init drivergpio.o
0x080004ea 0x080004ea 0x00000002 PAD
0x080004ec 0x080004ec 0x0000001a Code RO 84 .text.MyGPIO_Read drivergpio.o
0x08000506 0x08000506 0x00000002 PAD
0x08000508 0x08000508 0x000003f2 Code RO 160 .text.MyTimer_PWM pwm.o
0x080008fa 0x080008fa 0x00000002 PAD
0x080008fc 0x080008fc 0x00000038 Code RO 18 .text.RecupAccelo accelerometre.o
0x08000934 0x08000934 0x00000038 Code RO 71 .text.Servo_Moteur servo.o
0x0800096c 0x0800096c 0x00000008 Code RO 201 .text.SetSysClock system_stm32f10x.o
0x08000974 0x08000974 0x00000122 Code RO 205 .text.SetSysClockTo72 system_stm32f10x.o
0x08000a96 0x08000a96 0x00000002 PAD
0x08000a98 0x08000a98 0x00000066 Code RO 162 .text.Set_DutyCycle_PWM pwm.o
0x08000afe 0x08000afe 0x00000002 PAD
0x08000b00 0x08000b00 0x00000066 Code RO 199 .text.SystemInit system_stm32f10x.o
0x08000b66 0x08000b66 0x00000002 PAD
0x08000b68 0x08000b68 0x0000003e Code RO 101 .text.TIM2_IRQHandler horloge.o
0x08000ba6 0x08000ba6 0x00000002 PAD
0x08000ba8 0x08000ba8 0x000000c6 Code RO 99 .text.Timer_Init horloge.o
0x08000c6e 0x08000c6e 0x00000002 PAD
0x08000c70 0x08000c70 0x00000036 Code RO 61 .text.USART1_IRQHandler myuart.o
0x08000ca6 0x08000ca6 0x00000002 PAD
0x08000ca8 0x08000ca8 0x00000036 Code RO 34 .text.angleVent girouette.o
0x08000cde 0x08000cde 0x00000002 PAD
0x08000ce0 0x08000ce0 0x0000009a Code RO 32 .text.configEncoder girouette.o
0x08000d7a 0x08000d7a 0x00000002 PAD
0x08000d7c 0x08000d7c 0x00000032 Code RO 16 .text.initAccelo accelerometre.o
0x08000dae 0x08000dae 0x00000002 PAD
0x08000db0 0x08000db0 0x0000002e Code RO 20 .text.initLacheur accelerometre.o
0x08000dde 0x08000dde 0x00000002 PAD
0x08000de0 0x08000de0 0x0000005c Code RO 73 .text.initServo servo.o
0x08000e3c 0x08000e3c 0x0000011c Code RO 2 .text.main principal.o
0x08000f58 0x08000f58 0x00000036 Code RO 36 .text.vent2voile girouette.o
0x08000f8e 0x08000f8e 0x00000002 PAD
0x08000f90 0x08000f90 0x00000010 Data RO 383 Region$$Table anon$$obj.o
Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x08000fa0, Size: 0x00000000, Max: 0xffffffff, ABSOLUTE)
**** No section assigned to this execution region ****
Execution Region ER_ZI (Exec base: 0x20000000, Load base: 0x08000fa0, Size: 0x00000698, Max: 0xffffffff, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 - 0x00000060 Zero RW 248 .bss c_w.l(libspace.o)
0x20000060 - 0x00000006 Zero RW 24 .bss.RecupAccelo.Messie accelerometre.o
0x20000066 0x08000fa0 0x00000002 PAD
0x20000068 - 0x00000004 Zero RW 109 .bss.TIM2_Appel horloge.o
0x2000006c - 0x00000004 Zero RW 5 .bss.angleVentVar principal.o
0x20000070 - 0x00000004 Zero RW 6 .bss.angleVoileVar principal.o
0x20000074 - 0x00000004 Zero RW 8 .bss.moy principal.o
0x20000078 - 0x00000014 Zero RW 4 .bss.moyenne principal.o
0x2000008c - 0x00000004 Zero RW 63 .bss.pFnc_Receive myuart.o
0x20000090 - 0x00000004 Zero RW 7 .bss.sum principal.o
0x20000094 0x08000fa0 0x00000004 PAD
0x20000098 - 0x00000200 Zero RW 190 HEAP startup_stm32f10x_md.o
0x20000298 - 0x00000400 Zero RW 189 STACK startup_stm32f10x_md.o
==============================================================================
Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
152 0 0 0 6 2735 accelerometre.o
480 0 0 0 0 2085 drivergpio.o
320 0 0 0 0 2385 girouette.o
260 0 0 0 4 4929 horloge.o
54 0 0 0 4 4856 myuart.o
284 0 0 0 36 2061 principal.o
1112 12 0 0 0 2752 pwm.o
148 0 0 0 0 2081 servo.o
64 26 236 0 1536 852 startup_stm32f10x_md.o
400 0 0 0 0 3008 system_stm32f10x.o
146 0 0 0 0 2141 timer.o
----------------------------------------------------------------------
3452 38 252 0 1592 29885 Object Totals
0 0 16 0 0 0 (incl. Generated)
32 0 0 0 6 0 (incl. Padding)
----------------------------------------------------------------------
Code (inc. data) RO Data RW Data ZI Data Debug Library Member Name
8 0 0 0 0 68 __main.o
0 0 0 0 0 0 __rtentry.o
12 0 0 0 0 0 __rtentry2.o
6 0 0 0 0 0 __rtentry4.o
94 8 0 0 0 0 __scatter.o
28 0 0 0 0 0 __scatter_zi.o
18 0 0 0 0 80 exit.o
6 0 0 0 0 152 heapauxi.o
0 0 0 0 0 0 indicate_semi.o
2 0 0 0 0 0 libinit.o
2 0 0 0 0 0 libinit2.o
2 0 0 0 0 0 libshutdown.o
2 0 0 0 0 0 libshutdown2.o
8 4 0 0 96 68 libspace.o
2 0 0 0 0 0 rtexit.o
10 0 0 0 0 0 rtexit2.o
12 4 0 0 0 68 sys_exit.o
74 0 0 0 0 80 sys_stackheap_outer.o
2 0 0 0 0 68 use_no_semi.o
----------------------------------------------------------------------
296 16 0 0 96 584 Library Totals
8 0 0 0 0 0 (incl. Padding)
----------------------------------------------------------------------
Code (inc. data) RO Data RW Data ZI Data Debug Library Name
288 16 0 0 96 584 c_w.l
----------------------------------------------------------------------
296 16 0 0 96 584 Library Totals
----------------------------------------------------------------------
==============================================================================
Code (inc. data) RO Data RW Data ZI Data Debug
3748 54 252 0 1688 30181 Grand Totals
3748 54 252 0 1688 30181 ELF Image Totals
3748 54 252 0 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 4000 ( 3.91kB)
Total RW Size (RW Data + ZI Data) 1688 ( 1.65kB)
Total ROM Size (Code + RO Data + RW Data) 4000 ( 3.91kB)
==============================================================================

View file

@ -1,329 +0,0 @@
Component: Arm Compiler for Embedded 6.23 Tool: armlink [5f102400]
==============================================================================
Section Cross References
principal.o(.text.pilotage) refers to plateau.o(.text.Update_Motor_PWM) for Update_Motor_PWM
principal.o(.ARM.exidx.text.pilotage) refers to principal.o(.text.pilotage) for [Anonymous Symbol]
principal.o(.text.main) refers to servo.o(.text.initServo) for initServo
principal.o(.text.main) refers to girouette.o(.text.configEncoder) for configEncoder
principal.o(.text.main) refers to plateau.o(.text.initPlato) for initPlato
principal.o(.text.main) refers to myuart.o(.text.My_USART_Config) for My_USART_Config
principal.o(.text.main) refers to myuart.o(.text.USART_IT_Receive_Enable) for USART_IT_Receive_Enable
principal.o(.text.main) refers to principal.o(.text.pilotage) for pilotage
principal.o(.text.main) refers to myuart.o(.text.Init_IT_Receive) for Init_IT_Receive
principal.o(.text.main) refers to principal.o(.rodata.str1.1) for .L.str
principal.o(.text.main) refers to myuart.o(.text.USART_Send_String) for USART_Send_String
principal.o(.text.main) refers to accelerometre.o(.text.initAccelo) for initAccelo
principal.o(.text.main) refers to accelerometre.o(.text.initLacheur) for initLacheur
principal.o(.text.main) refers to principal.o(.bss.moyenne) for moyenne
principal.o(.text.main) refers to girouette.o(.text.LocaliserZero) for LocaliserZero
principal.o(.text.main) refers to girouette.o(.text.angleVent) for angleVent
principal.o(.text.main) refers to principal.o(.bss.angleVentVar) for angleVentVar
principal.o(.text.main) refers to girouette.o(.text.vent2voile) for vent2voile
principal.o(.text.main) refers to principal.o(.bss.angleVoileVar) for angleVoileVar
principal.o(.text.main) refers to servo.o(.text.Servo_Moteur) for Servo_Moteur
principal.o(.text.main) refers to accelerometre.o(.text.RecupAccelo) for RecupAccelo
principal.o(.text.main) refers to principal.o(.bss.sum) for sum
principal.o(.text.main) refers to principal.o(.bss.moy) for moy
principal.o(.text.main) refers to accelerometre.o(.text.LacheVoile) for LacheVoile
principal.o(.ARM.exidx.text.main) refers to principal.o(.text.main) for [Anonymous Symbol]
accelerometre.o(.ARM.exidx.text.initAccelo) refers to accelerometre.o(.text.initAccelo) for [Anonymous Symbol]
accelerometre.o(.text.RecupAccelo) refers to accelerometre.o(.bss.RecupAccelo.Messie) for RecupAccelo.Messie
accelerometre.o(.ARM.exidx.text.RecupAccelo) refers to accelerometre.o(.text.RecupAccelo) for [Anonymous Symbol]
accelerometre.o(.text.initLacheur) refers to horloge.o(.text.Timer_Init) for Timer_Init
accelerometre.o(.ARM.exidx.text.initLacheur) refers to accelerometre.o(.text.initLacheur) for [Anonymous Symbol]
accelerometre.o(.text.LacheVoile) refers to servo.o(.text.Servo_Moteur) for Servo_Moteur
accelerometre.o(.ARM.exidx.text.LacheVoile) refers to accelerometre.o(.text.LacheVoile) for [Anonymous Symbol]
girouette.o(.text.configEncoder) refers to horloge.o(.text.Timer_Init) for Timer_Init
girouette.o(.text.configEncoder) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
girouette.o(.ARM.exidx.text.configEncoder) refers to girouette.o(.text.configEncoder) for [Anonymous Symbol]
girouette.o(.ARM.exidx.text.angleVent) refers to girouette.o(.text.angleVent) for [Anonymous Symbol]
girouette.o(.ARM.exidx.text.vent2voile) refers to girouette.o(.text.vent2voile) for [Anonymous Symbol]
girouette.o(.text.LocaliserZero) refers to drivergpio.o(.text.MyGPIO_Read) for MyGPIO_Read
girouette.o(.ARM.exidx.text.LocaliserZero) refers to girouette.o(.text.LocaliserZero) for [Anonymous Symbol]
myuart.o(.text.My_USART_Config) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
myuart.o(.text.My_USART_Config) refers to myuart.o(.text.__NVIC_EnableIRQ) for __NVIC_EnableIRQ
myuart.o(.text.My_USART_Config) refers to myuart.o(.text.__NVIC_SetPriority) for __NVIC_SetPriority
myuart.o(.ARM.exidx.text.My_USART_Config) refers to myuart.o(.text.My_USART_Config) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.__NVIC_EnableIRQ) refers to myuart.o(.text.__NVIC_EnableIRQ) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.__NVIC_SetPriority) refers to myuart.o(.text.__NVIC_SetPriority) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.USART_Send_Char) refers to myuart.o(.text.USART_Send_Char) for [Anonymous Symbol]
myuart.o(.text.USART_Send_String) refers to myuart.o(.text.USART_Send_Char) for USART_Send_Char
myuart.o(.ARM.exidx.text.USART_Send_String) refers to myuart.o(.text.USART_Send_String) for [Anonymous Symbol]
myuart.o(.ARM.exidx.text.USART_IT_Receive_Enable) refers to myuart.o(.text.USART_IT_Receive_Enable) for [Anonymous Symbol]
myuart.o(.text.Init_IT_Receive) refers to myuart.o(.bss.pFnc_Receive) for pFnc_Receive
myuart.o(.ARM.exidx.text.Init_IT_Receive) refers to myuart.o(.text.Init_IT_Receive) for [Anonymous Symbol]
myuart.o(.text.USART1_IRQHandler) refers to myuart.o(.bss.pFnc_Receive) for pFnc_Receive
myuart.o(.ARM.exidx.text.USART1_IRQHandler) refers to myuart.o(.text.USART1_IRQHandler) for [Anonymous Symbol]
servo.o(.text.Servo_Moteur) refers to pwm.o(.text.Set_DutyCycle_PWM) for Set_DutyCycle_PWM
servo.o(.ARM.exidx.text.Servo_Moteur) refers to servo.o(.text.Servo_Moteur) for [Anonymous Symbol]
servo.o(.text.initServo) refers to horloge.o(.text.Timer_Init) for Timer_Init
servo.o(.text.initServo) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
servo.o(.text.initServo) refers to pwm.o(.text.MyTimer_PWM) for MyTimer_PWM
servo.o(.ARM.exidx.text.initServo) refers to servo.o(.text.initServo) for [Anonymous Symbol]
plateau.o(.text.initPlato) refers to drivergpio.o(.text.MyGPIO_Init) for MyGPIO_Init
plateau.o(.text.initPlato) refers to horloge.o(.text.Timer_Init) for Timer_Init
plateau.o(.text.initPlato) refers to pwm.o(.text.MyTimer_PWM) for MyTimer_PWM
plateau.o(.ARM.exidx.text.initPlato) refers to plateau.o(.text.initPlato) for [Anonymous Symbol]
plateau.o(.text.Update_Motor_PWM) refers to drivergpio.o(.text.MYGPIO_PinOn) for MYGPIO_PinOn
plateau.o(.text.Update_Motor_PWM) refers to drivergpio.o(.text.MYGPIO_PinOff) for MYGPIO_PinOff
plateau.o(.text.Update_Motor_PWM) refers to pwm.o(.text.Set_DutyCycle_PWM) for Set_DutyCycle_PWM
plateau.o(.ARM.exidx.text.Update_Motor_PWM) refers to plateau.o(.text.Update_Motor_PWM) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Init) refers to drivergpio.o(.text.MyGPIO_Init) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Read) refers to drivergpio.o(.text.MyGPIO_Read) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Set) refers to drivergpio.o(.text.MyGPIO_Set) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Reset) refers to drivergpio.o(.text.MyGPIO_Reset) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MYGPIO_PinOn) refers to drivergpio.o(.text.MYGPIO_PinOn) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MYGPIO_PinOff) refers to drivergpio.o(.text.MYGPIO_PinOff) for [Anonymous Symbol]
drivergpio.o(.ARM.exidx.text.MyGPIO_Toggle) refers to drivergpio.o(.text.MyGPIO_Toggle) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.Timer_Init) refers to horloge.o(.text.Timer_Init) for [Anonymous Symbol]
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.bss.TIM2_Appel) for TIM2_Appel
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.text.__NVIC_EnableIRQ) for __NVIC_EnableIRQ
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.text.__NVIC_SetPriority) for __NVIC_SetPriority
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.bss.TIM3_Appel) for TIM3_Appel
horloge.o(.text.MyTimer_ActiveIT) refers to horloge.o(.bss.TIM4_Appel) for TIM4_Appel
horloge.o(.ARM.exidx.text.MyTimer_ActiveIT) refers to horloge.o(.text.MyTimer_ActiveIT) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.__NVIC_EnableIRQ) refers to horloge.o(.text.__NVIC_EnableIRQ) for [Anonymous Symbol]
horloge.o(.ARM.exidx.text.__NVIC_SetPriority) refers to horloge.o(.text.__NVIC_SetPriority) for [Anonymous Symbol]
horloge.o(.text.TIM2_IRQHandler) refers to horloge.o(.bss.TIM2_Appel) for TIM2_Appel
horloge.o(.ARM.exidx.text.TIM2_IRQHandler) refers to horloge.o(.text.TIM2_IRQHandler) for [Anonymous Symbol]
horloge.o(.text.TIM3_IRQHandler) refers to horloge.o(.bss.TIM3_Appel) for TIM3_Appel
horloge.o(.ARM.exidx.text.TIM3_IRQHandler) refers to horloge.o(.text.TIM3_IRQHandler) for [Anonymous Symbol]
horloge.o(.text.TIM4_IRQHandler) refers to horloge.o(.bss.TIM4_Appel) for TIM4_Appel
horloge.o(.ARM.exidx.text.TIM4_IRQHandler) refers to horloge.o(.text.TIM4_IRQHandler) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.initGPIO_Interne) refers to mygpio.o(.text.initGPIO_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.boutonAppuye_Interne) refers to mygpio.o(.text.boutonAppuye_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.allumerDEL_Interne) refers to mygpio.o(.text.allumerDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.eteindreDEL_Interne) refers to mygpio.o(.text.eteindreDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.commuterDEL_Interne) refers to mygpio.o(.text.commuterDEL_Interne) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.initGPIO_Externe) refers to mygpio.o(.text.initGPIO_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.boutonAppuye_Externe) refers to mygpio.o(.text.boutonAppuye_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.allumerDEL_Externe) refers to mygpio.o(.text.allumerDEL_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.eteindreDEL_Externe) refers to mygpio.o(.text.eteindreDEL_Externe) for [Anonymous Symbol]
mygpio.o(.ARM.exidx.text.commuterDEL_Externe) refers to mygpio.o(.text.commuterDEL_Externe) for [Anonymous Symbol]
pwm.o(.ARM.exidx.text.MyTimer_PWM) refers to pwm.o(.text.MyTimer_PWM) for [Anonymous Symbol]
pwm.o(.ARM.exidx.text.Set_DutyCycle_PWM) refers to pwm.o(.text.Set_DutyCycle_PWM) for [Anonymous Symbol]
i2c.o(.ARM.exidx.text.initI2C) refers to i2c.o(.text.initI2C) for [Anonymous Symbol]
startup_stm32f10x_md.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(STACK) for __initial_sp
startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(.text) for Reset_Handler
startup_stm32f10x_md.o(RESET) refers to horloge.o(.text.TIM2_IRQHandler) for TIM2_IRQHandler
startup_stm32f10x_md.o(RESET) refers to horloge.o(.text.TIM3_IRQHandler) for TIM3_IRQHandler
startup_stm32f10x_md.o(RESET) refers to horloge.o(.text.TIM4_IRQHandler) for TIM4_IRQHandler
startup_stm32f10x_md.o(RESET) refers to myuart.o(.text.USART1_IRQHandler) for USART1_IRQHandler
startup_stm32f10x_md.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory
startup_stm32f10x_md.o(.text) refers to system_stm32f10x.o(.text.SystemInit) for SystemInit
startup_stm32f10x_md.o(.text) refers to __main.o(!!!main) for __main
startup_stm32f10x_md.o(.text) refers to startup_stm32f10x_md.o(HEAP) for Heap_Mem
startup_stm32f10x_md.o(.text) refers to startup_stm32f10x_md.o(STACK) for Stack_Mem
system_stm32f10x.o(.text.SystemInit) refers to system_stm32f10x.o(.text.SetSysClock) for SetSysClock
system_stm32f10x.o(.ARM.exidx.text.SystemInit) refers to system_stm32f10x.o(.text.SystemInit) for [Anonymous Symbol]
system_stm32f10x.o(.text.SetSysClock) refers to system_stm32f10x.o(.text.SetSysClockTo72) for SetSysClockTo72
system_stm32f10x.o(.ARM.exidx.text.SetSysClock) refers to system_stm32f10x.o(.text.SetSysClock) for [Anonymous Symbol]
system_stm32f10x.o(.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.data.SystemCoreClock) for SystemCoreClock
system_stm32f10x.o(.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.rodata.AHBPrescTable) for AHBPrescTable
system_stm32f10x.o(.ARM.exidx.text.SystemCoreClockUpdate) refers to system_stm32f10x.o(.text.SystemCoreClockUpdate) for [Anonymous Symbol]
system_stm32f10x.o(.ARM.exidx.text.SetSysClockTo72) refers to system_stm32f10x.o(.text.SetSysClockTo72) for [Anonymous Symbol]
__main.o(!!!main) refers to __rtentry.o(.ARM.Collect$$rtentry$$00000000) for __rt_entry
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for __rt_entry_li
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for __rt_entry_main
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) for __rt_entry_postli_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000009) for __rt_entry_postsh_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000002) for __rt_entry_presh_1
__rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for __rt_entry_sh
__rtentry2.o(.ARM.Collect$$rtentry$$00000008) refers to boardinit2.o(.text) for _platform_post_stackheap_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000A) refers to libinit.o(.ARM.Collect$$libinit$$00000000) for __rt_lib_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000B) refers to boardinit3.o(.text) for _platform_post_lib_init
__rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to principal.o(.text.main) for main
__rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to exit.o(.text) for exit
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000001) for .ARM.Collect$$rtentry$$00000001
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000008) for .ARM.Collect$$rtentry$$00000008
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for .ARM.Collect$$rtentry$$0000000A
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) for .ARM.Collect$$rtentry$$0000000B
__rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for .ARM.Collect$$rtentry$$0000000D
__rtentry4.o(.ARM.Collect$$rtentry$$00000004) refers to sys_stackheap_outer.o(.text) for __user_setup_stackheap
__rtentry4.o(.ARM.exidx) refers to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for .ARM.Collect$$rtentry$$00000004
sys_stackheap_outer.o(.text) refers to libspace.o(.text) for __user_perproc_libspace
sys_stackheap_outer.o(.text) refers to startup_stm32f10x_md.o(.text) for __user_initial_stackheap
exit.o(.text) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for __rt_exit
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000030) for __rt_lib_init_alloca_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002E) for __rt_lib_init_argv_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001D) for __rt_lib_init_atexit_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000023) for __rt_lib_init_clock_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000034) for __rt_lib_init_cpp_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000032) for __rt_lib_init_exceptions_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000002) for __rt_lib_init_fp_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000021) for __rt_lib_init_fp_trap_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000025) for __rt_lib_init_getenv_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000C) for __rt_lib_init_heap_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000013) for __rt_lib_init_lc_collate_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000015) for __rt_lib_init_lc_ctype_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000017) for __rt_lib_init_lc_monetary_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000019) for __rt_lib_init_lc_numeric_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001B) for __rt_lib_init_lc_time_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000006) for __rt_lib_init_preinit_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000010) for __rt_lib_init_rand_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000004) for __rt_lib_init_relocate_pie_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000035) for __rt_lib_init_return
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001F) for __rt_lib_init_signal_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000027) for __rt_lib_init_stdio_1
libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000E) for __rt_lib_init_user_alloc_1
libspace.o(.text) refers to libspace.o(.bss) for __libspace_start
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls
rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls
rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1
rtexit.o(.ARM.exidx) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for .ARM.Collect$$rtexit$$00000000
libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$0000001A) refers to libinit2.o(.ARM.Collect$$libinit$$00000011) for .ARM.Collect$$libinit$$00000011
libinit2.o(.ARM.Collect$$libinit$$00000028) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer
libinit2.o(.ARM.Collect$$libinit$$00000029) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer
rtexit2.o(.ARM.Collect$$rtexit$$00000003) refers to libshutdown.o(.ARM.Collect$$libshutdown$$00000000) for __rt_lib_shutdown
rtexit2.o(.ARM.Collect$$rtexit$$00000004) refers to sys_exit.o(.text) for _sys_exit
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000001) for .ARM.Collect$$rtexit$$00000001
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for .ARM.Collect$$rtexit$$00000003
rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for .ARM.Collect$$rtexit$$00000004
argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv
sys_exit.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_exit.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_exit_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_exit_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
_get_argv_nomalloc.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard
_get_argv_nomalloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM
_get_argv_nomalloc.o(.text) refers to sys_command.o(.text) for _sys_command_string
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) for __rt_lib_shutdown_cpp_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) for __rt_lib_shutdown_fp_trap_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) for __rt_lib_shutdown_heap_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) for __rt_lib_shutdown_return
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) for __rt_lib_shutdown_signal_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) for __rt_lib_shutdown_stdio_1
libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) for __rt_lib_shutdown_user_alloc_1
sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_command_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_command_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner
defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit
defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise
rt_raise.o(.text) refers to __raise.o(.text) for __raise
rt_raise.o(.text) refers to sys_exit.o(.text) for _sys_exit
defsig_exit.o(.text) refers to sys_exit.o(.text) for _sys_exit
defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
__raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler
defsig_general.o(.text) refers to sys_wrch.o(.text) for _ttywrch
sys_wrch.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_wrch.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
sys_wrch_hlt.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting
sys_wrch_hlt.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function
defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner
defsig_abrt_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_fpe_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_stak_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_pvfn_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_cppl_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_segv_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display
defsig_other.o(.text) refers to defsig_general.o(.text) for __default_signal_display
==============================================================================
Removing Unused input sections from the image.
Removing principal.o(.text), (0 bytes).
Removing principal.o(.ARM.exidx.text.pilotage), (8 bytes).
Removing principal.o(.ARM.exidx.text.main), (8 bytes).
Removing principal.o(.ARM.use_no_argv), (4 bytes).
Removing accelerometre.o(.text), (0 bytes).
Removing accelerometre.o(.ARM.exidx.text.initAccelo), (8 bytes).
Removing accelerometre.o(.ARM.exidx.text.RecupAccelo), (8 bytes).
Removing accelerometre.o(.ARM.exidx.text.initLacheur), (8 bytes).
Removing accelerometre.o(.ARM.exidx.text.LacheVoile), (8 bytes).
Removing girouette.o(.text), (0 bytes).
Removing girouette.o(.ARM.exidx.text.configEncoder), (8 bytes).
Removing girouette.o(.ARM.exidx.text.angleVent), (8 bytes).
Removing girouette.o(.ARM.exidx.text.vent2voile), (8 bytes).
Removing girouette.o(.ARM.exidx.text.LocaliserZero), (8 bytes).
Removing myuart.o(.text), (0 bytes).
Removing myuart.o(.ARM.exidx.text.My_USART_Config), (8 bytes).
Removing myuart.o(.ARM.exidx.text.__NVIC_EnableIRQ), (8 bytes).
Removing myuart.o(.ARM.exidx.text.__NVIC_SetPriority), (8 bytes).
Removing myuart.o(.ARM.exidx.text.USART_Send_Char), (8 bytes).
Removing myuart.o(.ARM.exidx.text.USART_Send_String), (8 bytes).
Removing myuart.o(.ARM.exidx.text.USART_IT_Receive_Enable), (8 bytes).
Removing myuart.o(.ARM.exidx.text.Init_IT_Receive), (8 bytes).
Removing myuart.o(.ARM.exidx.text.USART1_IRQHandler), (8 bytes).
Removing servo.o(.text), (0 bytes).
Removing servo.o(.ARM.exidx.text.Servo_Moteur), (8 bytes).
Removing servo.o(.ARM.exidx.text.initServo), (8 bytes).
Removing plateau.o(.text), (0 bytes).
Removing plateau.o(.ARM.exidx.text.initPlato), (8 bytes).
Removing plateau.o(.ARM.exidx.text.Update_Motor_PWM), (8 bytes).
Removing drivergpio.o(.text), (0 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Init), (8 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Read), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Set), (24 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Set), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Reset), (28 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Reset), (8 bytes).
Removing drivergpio.o(.ARM.exidx.text.MYGPIO_PinOn), (8 bytes).
Removing drivergpio.o(.ARM.exidx.text.MYGPIO_PinOff), (8 bytes).
Removing drivergpio.o(.text.MyGPIO_Toggle), (30 bytes).
Removing drivergpio.o(.ARM.exidx.text.MyGPIO_Toggle), (8 bytes).
Removing horloge.o(.text), (0 bytes).
Removing horloge.o(.ARM.exidx.text.Timer_Init), (8 bytes).
Removing horloge.o(.text.MyTimer_ActiveIT), (268 bytes).
Removing horloge.o(.ARM.exidx.text.MyTimer_ActiveIT), (8 bytes).
Removing horloge.o(.text.__NVIC_EnableIRQ), (48 bytes).
Removing horloge.o(.ARM.exidx.text.__NVIC_EnableIRQ), (8 bytes).
Removing horloge.o(.text.__NVIC_SetPriority), (66 bytes).
Removing horloge.o(.ARM.exidx.text.__NVIC_SetPriority), (8 bytes).
Removing horloge.o(.ARM.exidx.text.TIM2_IRQHandler), (8 bytes).
Removing horloge.o(.ARM.exidx.text.TIM3_IRQHandler), (8 bytes).
Removing horloge.o(.ARM.exidx.text.TIM4_IRQHandler), (8 bytes).
Removing mygpio.o(.text), (0 bytes).
Removing mygpio.o(.text.initGPIO_Interne), (66 bytes).
Removing mygpio.o(.ARM.exidx.text.initGPIO_Interne), (8 bytes).
Removing mygpio.o(.text.boutonAppuye_Interne), (16 bytes).
Removing mygpio.o(.ARM.exidx.text.boutonAppuye_Interne), (8 bytes).
Removing mygpio.o(.text.allumerDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.allumerDEL_Interne), (8 bytes).
Removing mygpio.o(.text.eteindreDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.eteindreDEL_Interne), (8 bytes).
Removing mygpio.o(.text.commuterDEL_Interne), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.commuterDEL_Interne), (8 bytes).
Removing mygpio.o(.text.initGPIO_Externe), (58 bytes).
Removing mygpio.o(.ARM.exidx.text.initGPIO_Externe), (8 bytes).
Removing mygpio.o(.text.boutonAppuye_Externe), (16 bytes).
Removing mygpio.o(.ARM.exidx.text.boutonAppuye_Externe), (8 bytes).
Removing mygpio.o(.text.allumerDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.allumerDEL_Externe), (8 bytes).
Removing mygpio.o(.text.eteindreDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.eteindreDEL_Externe), (8 bytes).
Removing mygpio.o(.text.commuterDEL_Externe), (18 bytes).
Removing mygpio.o(.ARM.exidx.text.commuterDEL_Externe), (8 bytes).
Removing pwm.o(.text), (0 bytes).
Removing pwm.o(.ARM.exidx.text.MyTimer_PWM), (8 bytes).
Removing pwm.o(.ARM.exidx.text.Set_DutyCycle_PWM), (8 bytes).
Removing i2c.o(.text), (0 bytes).
Removing i2c.o(.text.initI2C), (42 bytes).
Removing i2c.o(.ARM.exidx.text.initI2C), (8 bytes).
Removing system_stm32f10x.o(.text), (0 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SystemInit), (8 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SetSysClock), (8 bytes).
Removing system_stm32f10x.o(.text.SystemCoreClockUpdate), (290 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SystemCoreClockUpdate), (8 bytes).
Removing system_stm32f10x.o(.ARM.exidx.text.SetSysClockTo72), (8 bytes).
Removing system_stm32f10x.o(.data.SystemCoreClock), (4 bytes).
Removing system_stm32f10x.o(.rodata.AHBPrescTable), (16 bytes).
86 unused section(s) (total 1508 bytes) removed from the image.

View file

@ -1,2 +0,0 @@
[EXTDLL]
Count=0

Binary file not shown.

View file

@ -1,80 +0,0 @@
<html>
<body>
<pre>
<h1>µVision Build Log</h1>
<h2>Tool Versions:</h2>
IDE-Version: µVision V5.43.1.0
Copyright (C) 2025 ARM Ltd and ARM Germany GmbH. All rights reserved.
License Information: Jens Kielland, University, LIC=----
Tool Versions:
Toolchain: MDK-Lite Version: 5.43.0.0
Toolchain Path: C:\users\klinx\AppData\Local\Keil_v5\ARM\ARMCLANG\Bin
C Compiler: ArmClang.exe V6.24
Assembler: Armasm.exe V6.24
Linker/Locator: ArmLink.exe V6.24
Library Manager: ArmAr.exe V6.24
Hex Converter: FromElf.exe V6.24
CPU DLL: SARMCM3.DLL V5.43.0.0
Dialog DLL: DARMSTM.DLL V1.69.1.0
Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.3.1.0
Dialog DLL: TARMSTM.DLL V1.67.1.0
<h2>Project:</h2>
C:\users\klinx\Documents\ecole\4A\µ\BE_VOILIER\ProjetVoilier\ProjetVoilier.uvprojx
Project File Date: 12/15/2025
<h2>Output:</h2>
*** Using Compiler 'V6.24', folder: 'C:\users\klinx\AppData\Local\Keil_v5\ARM\ARMCLANG\Bin'
Rebuild target 'Reel'
compiling principal.c...
compiling Accelerometre.c...
compiling Girouette.c...
compiling MyUart.c...
compiling Servo.c...
compiling DriverGPIO.c...
compiling Horloge.c...
compiling MYGPIO.c...
compiling MyTimer.c...
compiling PWM.c...
compiling Timer.c...
compiling I2C.c...
assembling startup_stm32f10x_md.s...
compiling system_stm32f10x.c...
linking...
Program Size: Code=3748 RO-data=252 RW-data=0 ZI-data=1688
".\Objects\Projet3FISA.axf" - 0 Error(s), 0 Warning(s).
<h2>Software Packages used:</h2>
Package Vendor: ARM
https://www.keil.com/pack/ARM.CMSIS.6.2.0.pack
ARM::CMSIS@6.2.0
CMSIS (Common Microcontroller Software Interface Standard)
* Component: CORE Version: 6.1.1
Package Vendor: Keil
https://www.keil.com/pack/Keil.STM32F1xx_DFP.2.4.1.pack
Keil::STM32F1xx_DFP@2.4.1
STMicroelectronics STM32F1 Series Device Support, Drivers and Examples
* Component: Startup Version: 1.0.0
<h2>Collection of Component include folders:</h2>
./RTE/Device/STM32F103RB
./RTE/_Reel
C:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include
C:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include
<h2>Collection of Component Files used:</h2>
* Component: ARM::CMSIS:CORE@6.1.1
* Component: Keil::Device:Startup@1.0.0
Source file: Device/Source/ARM/startup_stm32f10x_md.s
Source file: Device/Source/system_stm32f10x.c
Include file: RTE_Driver/Config/RTE_Device.h
Source file: Device/Source/ARM/STM32F1xx_OPT.s
Build Time Elapsed: 00:00:27
</pre>
</body>
</html>

View file

@ -1,625 +0,0 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\Objects\Projet3FISA.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\Objects\Projet3FISA.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 6240002: Last Updated: Mon Dec 15 21:13:00 2025
<BR><P>
<H3>Maximum Stack Usage = 76 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
__rt_entry_main &rArr; main &rArr; Servo_Moteur &rArr; Set_DutyCycle_PWM
<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[37]">__user_initial_stackheap</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[1]">NMI_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[1]">NMI_Handler</a><BR>
<LI><a href="#[2]">HardFault_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[2]">HardFault_Handler</a><BR>
<LI><a href="#[3]">MemManage_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[3]">MemManage_Handler</a><BR>
<LI><a href="#[4]">BusFault_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[4]">BusFault_Handler</a><BR>
<LI><a href="#[5]">UsageFault_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[5]">UsageFault_Handler</a><BR>
<LI><a href="#[6]">SVC_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[6]">SVC_Handler</a><BR>
<LI><a href="#[7]">DebugMon_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[7]">DebugMon_Handler</a><BR>
<LI><a href="#[8]">PendSV_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[8]">PendSV_Handler</a><BR>
<LI><a href="#[9]">SysTick_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[9]">SysTick_Handler</a><BR>
<LI><a href="#[1c]">ADC1_2_IRQHandler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[1c]">ADC1_2_IRQHandler</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
<LI><a href="#[1c]">ADC1_2_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[4]">BusFault_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1f]">CAN1_RX1_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[20]">CAN1_SCE_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[15]">DMA1_Channel1_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[16]">DMA1_Channel2_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[17]">DMA1_Channel3_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[18]">DMA1_Channel4_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[19]">DMA1_Channel5_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1a]">DMA1_Channel6_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1b]">DMA1_Channel7_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[7]">DebugMon_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[10]">EXTI0_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[32]">EXTI15_10_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[11]">EXTI1_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[12]">EXTI2_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[13]">EXTI3_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[14]">EXTI4_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[21]">EXTI9_5_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[e]">FLASH_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2]">HardFault_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2a]">I2C1_ER_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[29]">I2C1_EV_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2c]">I2C2_ER_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2b]">I2C2_EV_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[3]">MemManage_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1]">NMI_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[b]">PVD_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[8]">PendSV_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[f]">RCC_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[33]">RTCAlarm_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[d]">RTC_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[0]">Reset_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2d]">SPI1_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2e]">SPI2_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[6]">SVC_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[9]">SysTick_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[35]">SystemInit</a> from system_stm32f10x.o(.text.SystemInit) referenced from startup_stm32f10x_md.o(.text)
<LI><a href="#[c]">TAMPER_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[22]">TIM1_BRK_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[25]">TIM1_CC_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[24]">TIM1_TRG_COM_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[23]">TIM1_UP_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[26]">TIM2_IRQHandler</a> from horloge.o(.text.TIM2_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[27]">TIM3_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[28]">TIM4_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[2f]">USART1_IRQHandler</a> from myuart.o(.text.USART1_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[30]">USART2_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[31]">USART3_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[34]">USBWakeUp_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1d]">USB_HP_CAN1_TX_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[1e]">USB_LP_CAN1_RX0_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[5]">UsageFault_Handler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[a]">WWDG_IRQHandler</a> from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
<LI><a href="#[36]">__main</a> from __main.o(!!!main) referenced from startup_stm32f10x_md.o(.text)
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[36]"></a>__main</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Calls]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
<LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(.text)
</UL>
<P><STRONG><a name="[38]"></a>__scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[36]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main
</UL>
<P><STRONG><a name="[3a]"></a>__scatterload_rt2</STRONG> (Thumb, 84 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>
<P><STRONG><a name="[59]"></a>__scatterload_rt2_thumb_only</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[5a]"></a>__scatterload_loop</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[5b]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, __scatter.o(!!handler_null), UNUSED)
<P><STRONG><a name="[5c]"></a>__scatterload_zeroinit</STRONG> (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[3e]"></a>__rt_lib_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
<BR><BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry_li
</UL>
<P><STRONG><a name="[5d]"></a>__rt_lib_init_alloca_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))
<P><STRONG><a name="[5e]"></a>__rt_lib_init_argv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
<P><STRONG><a name="[5f]"></a>__rt_lib_init_atexit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
<P><STRONG><a name="[60]"></a>__rt_lib_init_clock_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))
<P><STRONG><a name="[61]"></a>__rt_lib_init_cpp_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034))
<P><STRONG><a name="[62]"></a>__rt_lib_init_exceptions_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))
<P><STRONG><a name="[63]"></a>__rt_lib_init_fp_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002))
<P><STRONG><a name="[64]"></a>__rt_lib_init_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
<P><STRONG><a name="[65]"></a>__rt_lib_init_getenv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))
<P><STRONG><a name="[66]"></a>__rt_lib_init_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))
<P><STRONG><a name="[67]"></a>__rt_lib_init_lc_collate_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
<P><STRONG><a name="[68]"></a>__rt_lib_init_lc_ctype_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
<P><STRONG><a name="[69]"></a>__rt_lib_init_lc_monetary_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
<P><STRONG><a name="[6a]"></a>__rt_lib_init_lc_numeric_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
<P><STRONG><a name="[6b]"></a>__rt_lib_init_lc_time_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
<P><STRONG><a name="[6c]"></a>__rt_lib_init_preinit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))
<P><STRONG><a name="[6d]"></a>__rt_lib_init_rand_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010))
<P><STRONG><a name="[6e]"></a>__rt_lib_init_relocate_pie_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))
<P><STRONG><a name="[6f]"></a>__rt_lib_init_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035))
<P><STRONG><a name="[70]"></a>__rt_lib_init_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
<P><STRONG><a name="[71]"></a>__rt_lib_init_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027))
<P><STRONG><a name="[72]"></a>__rt_lib_init_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
<P><STRONG><a name="[43]"></a>__rt_lib_shutdown</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
<BR><BR>[Called By]<UL><LI><a href="#[42]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_exit_ls
</UL>
<P><STRONG><a name="[73]"></a>__rt_lib_shutdown_cpp_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))
<P><STRONG><a name="[74]"></a>__rt_lib_shutdown_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007))
<P><STRONG><a name="[75]"></a>__rt_lib_shutdown_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
<P><STRONG><a name="[76]"></a>__rt_lib_shutdown_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010))
<P><STRONG><a name="[77]"></a>__rt_lib_shutdown_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A))
<P><STRONG><a name="[78]"></a>__rt_lib_shutdown_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004))
<P><STRONG><a name="[79]"></a>__rt_lib_shutdown_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))
<P><STRONG><a name="[39]"></a>__rt_entry</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
<BR><BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload_rt2
<LI><a href="#[36]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main
</UL>
<P><STRONG><a name="[7a]"></a>__rt_entry_presh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))
<P><STRONG><a name="[3b]"></a>__rt_entry_sh</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = __rt_entry_sh &rArr; __user_setup_stackheap
</UL>
<BR>[Calls]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>
<P><STRONG><a name="[3d]"></a>__rt_entry_li</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
<BR><BR>[Calls]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init
</UL>
<P><STRONG><a name="[7b]"></a>__rt_entry_postsh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))
<P><STRONG><a name="[3f]"></a>__rt_entry_main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
<BR><BR>[Stack]<UL><LI>Max Depth = 76 + Unknown Stack Size
<LI>Call Chain = __rt_entry_main &rArr; main &rArr; Servo_Moteur &rArr; Set_DutyCycle_PWM
</UL>
<BR>[Calls]<UL><LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;exit
<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[7c]"></a>__rt_entry_postli_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
<P><STRONG><a name="[47]"></a>__rt_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
<BR><BR>[Called By]<UL><LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;exit
</UL>
<P><STRONG><a name="[42]"></a>__rt_exit_ls</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
<BR><BR>[Calls]<UL><LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_shutdown
</UL>
<P><STRONG><a name="[7d]"></a>__rt_exit_prels_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
<P><STRONG><a name="[44]"></a>__rt_exit_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
<BR><BR>[Calls]<UL><LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_sys_exit
</UL>
<P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1]"></a>NMI_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NMI_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NMI_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2]"></a>HardFault_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HardFault_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HardFault_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[3]"></a>MemManage_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MemManage_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MemManage_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[4]"></a>BusFault_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BusFault_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BusFault_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[5]"></a>UsageFault_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsageFault_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsageFault_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[6]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SVC_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SVC_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[7]"></a>DebugMon_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DebugMon_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DebugMon_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[8]"></a>PendSV_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PendSV_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PendSV_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[9]"></a>SysTick_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
</UL>
<BR>[Called By]<UL><LI><a href="#[9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1c]"></a>ADC1_2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[1c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC1_2_IRQHandler
</UL>
<BR>[Called By]<UL><LI><a href="#[1c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC1_2_IRQHandler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1f]"></a>CAN1_RX1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[20]"></a>CAN1_SCE_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[15]"></a>DMA1_Channel1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[16]"></a>DMA1_Channel2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[17]"></a>DMA1_Channel3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[18]"></a>DMA1_Channel4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[19]"></a>DMA1_Channel5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1a]"></a>DMA1_Channel6_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1b]"></a>DMA1_Channel7_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[10]"></a>EXTI0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[32]"></a>EXTI15_10_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[11]"></a>EXTI1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[12]"></a>EXTI2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[13]"></a>EXTI3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[14]"></a>EXTI4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[21]"></a>EXTI9_5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[e]"></a>FLASH_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2a]"></a>I2C1_ER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[29]"></a>I2C1_EV_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2c]"></a>I2C2_ER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2b]"></a>I2C2_EV_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[b]"></a>PVD_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[f]"></a>RCC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[33]"></a>RTCAlarm_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[d]"></a>RTC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2d]"></a>SPI1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[2e]"></a>SPI2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[c]"></a>TAMPER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[22]"></a>TIM1_BRK_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[25]"></a>TIM1_CC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[24]"></a>TIM1_TRG_COM_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[23]"></a>TIM1_UP_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[27]"></a>TIM3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[28]"></a>TIM4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[30]"></a>USART2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[31]"></a>USART3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[34]"></a>USBWakeUp_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1d]"></a>USB_HP_CAN1_TX_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[1e]"></a>USB_LP_CAN1_RX0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[a]"></a>WWDG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f10x_md.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[37]"></a>__user_initial_stackheap</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, startup_stm32f10x_md.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>
<P><STRONG><a name="[7e]"></a>__use_two_region_memory</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
<P><STRONG><a name="[7f]"></a>__rt_heap_escrow$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
<P><STRONG><a name="[80]"></a>__rt_heap_expand$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
<P><STRONG><a name="[3c]"></a>__user_setup_stackheap</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = __user_setup_stackheap
</UL>
<BR>[Calls]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_perproc_libspace
<LI><a href="#[37]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_initial_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry_sh
</UL>
<P><STRONG><a name="[41]"></a>exit</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, exit.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = exit
</UL>
<BR>[Calls]<UL><LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_exit
</UL>
<BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry_main
</UL>
<P><STRONG><a name="[81]"></a>__user_libspace</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
<P><STRONG><a name="[46]"></a>__user_perproc_libspace</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>
<P><STRONG><a name="[82]"></a>__user_perthread_libspace</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
<P><STRONG><a name="[45]"></a>_sys_exit</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[44]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_exit_exit
</UL>
<P><STRONG><a name="[83]"></a>__I$use$semihosting</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
<P><STRONG><a name="[84]"></a>__use_no_semihosting_swi</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
<P><STRONG><a name="[85]"></a>__semihosting_library_function</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)
<P><STRONG><a name="[4f]"></a>EnableTimer</STRONG> (Thumb, 146 bytes, Stack size 4 bytes, timer.o(.text.EnableTimer))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = EnableTimer
</UL>
<BR>[Called By]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;configEncoder
</UL>
<P><STRONG><a name="[48]"></a>LocaliserZero</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, girouette.o(.text.LocaliserZero))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = LocaliserZero &rArr; MyGPIO_Read
</UL>
<BR>[Calls]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MyGPIO_Read
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[50]"></a>MyGPIO_Init</STRONG> (Thumb, 454 bytes, Stack size 12 bytes, drivergpio.o(.text.MyGPIO_Init))
<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = MyGPIO_Init
</UL>
<BR>[Called By]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;configEncoder
<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initServo
</UL>
<P><STRONG><a name="[49]"></a>MyGPIO_Read</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, drivergpio.o(.text.MyGPIO_Read))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = MyGPIO_Read
</UL>
<BR>[Called By]<UL><LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LocaliserZero
</UL>
<P><STRONG><a name="[54]"></a>MyTimer_PWM</STRONG> (Thumb, 1010 bytes, Stack size 16 bytes, pwm.o(.text.MyTimer_PWM))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = MyTimer_PWM
</UL>
<BR>[Called By]<UL><LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initServo
</UL>
<P><STRONG><a name="[58]"></a>RecupAccelo</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, accelerometre.o(.text.RecupAccelo))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = RecupAccelo
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[4a]"></a>Servo_Moteur</STRONG> (Thumb, 56 bytes, Stack size 24 bytes, servo.o(.text.Servo_Moteur))
<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = Servo_Moteur &rArr; Set_DutyCycle_PWM
</UL>
<BR>[Calls]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Set_DutyCycle_PWM
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[4b]"></a>Set_DutyCycle_PWM</STRONG> (Thumb, 102 bytes, Stack size 20 bytes, pwm.o(.text.Set_DutyCycle_PWM))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = Set_DutyCycle_PWM
</UL>
<BR>[Called By]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Servo_Moteur
</UL>
<P><STRONG><a name="[35]"></a>SystemInit</STRONG> (Thumb, 102 bytes, Stack size 8 bytes, system_stm32f10x.o(.text.SystemInit))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SystemInit &rArr; SetSysClock &rArr; SetSysClockTo72
</UL>
<BR>[Calls]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSysClock
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(.text)
</UL>
<P><STRONG><a name="[26]"></a>TIM2_IRQHandler</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, horloge.o(.text.TIM2_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIM2_IRQHandler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[52]"></a>Timer_Init</STRONG> (Thumb, 198 bytes, Stack size 8 bytes, horloge.o(.text.Timer_Init))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Timer_Init
</UL>
<BR>[Called By]<UL><LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initLacheur
<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initServo
</UL>
<P><STRONG><a name="[2f]"></a>USART1_IRQHandler</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, myuart.o(.text.USART1_IRQHandler))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = USART1_IRQHandler
</UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f10x_md.o(RESET)
</UL>
<P><STRONG><a name="[56]"></a>angleVent</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, girouette.o(.text.angleVent))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = angleVent
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[4e]"></a>configEncoder</STRONG> (Thumb, 154 bytes, Stack size 24 bytes, girouette.o(.text.configEncoder))
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = configEncoder &rArr; MyGPIO_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MyGPIO_Init
<LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;EnableTimer
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[55]"></a>initAccelo</STRONG> (Thumb, 50 bytes, Stack size 4 bytes, accelerometre.o(.text.initAccelo))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = initAccelo
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[51]"></a>initLacheur</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, accelerometre.o(.text.initLacheur))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = initLacheur &rArr; Timer_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Timer_Init
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[53]"></a>initServo</STRONG> (Thumb, 92 bytes, Stack size 16 bytes, servo.o(.text.initServo))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = initServo &rArr; MyTimer_PWM
</UL>
<BR>[Calls]<UL><LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MyTimer_PWM
<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MyGPIO_Init
<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Timer_Init
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[40]"></a>main</STRONG> (Thumb, 284 bytes, Stack size 32 bytes, principal.o(.text.main))
<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = main &rArr; Servo_Moteur &rArr; Set_DutyCycle_PWM
</UL>
<BR>[Calls]<UL><LI><a href="#[58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RecupAccelo
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Servo_Moteur
<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;vent2voile
<LI><a href="#[56]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;angleVent
<LI><a href="#[48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LocaliserZero
<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initLacheur
<LI><a href="#[55]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initAccelo
<LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;configEncoder
<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;initServo
</UL>
<BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry_main
</UL>
<P><STRONG><a name="[57]"></a>vent2voile</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, girouette.o(.text.vent2voile))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = vent2voile
</UL>
<BR>[Called By]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P>
<H3>
Local Symbols
</H3>
<P><STRONG><a name="[4c]"></a>SetSysClock</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, system_stm32f10x.o(.text.SetSysClock))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = SetSysClock &rArr; SetSysClockTo72
</UL>
<BR>[Calls]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSysClockTo72
</UL>
<BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
</UL>
<P><STRONG><a name="[4d]"></a>SetSysClockTo72</STRONG> (Thumb, 290 bytes, Stack size 16 bytes, system_stm32f10x.o(.text.SetSysClockTo72))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = SetSysClockTo72
</UL>
<BR>[Called By]<UL><LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSysClock
</UL>
<P>
<H3>
Undefined Global Symbols
</H3><HR></body></html>

View file

@ -1,18 +0,0 @@
--cpu Cortex-M3
".\objects\principal.o"
".\objects\accelerometre.o"
".\objects\girouette.o"
".\objects\myuart.o"
".\objects\servo.o"
".\objects\drivergpio.o"
".\objects\horloge.o"
".\objects\mygpio.o"
".\objects\mytimer.o"
".\objects\pwm.o"
".\objects\timer.o"
".\objects\i2c.o"
".\objects\startup_stm32f10x_md.o"
".\objects\system_stm32f10x.o"
--ro-base 0x08000000 --entry 0x08000000 --rw-base 0x20000000 --entry Reset_Handler --first __Vectors --strict --summary_stderr --info summarysizes --map --load_addr_map_info --xref --callgraph --symbols
--info sizes --info totals --info unused --info veneers
--list ".\Listings\Projet3FISA.map" -o .\Objects\Projet3FISA.axf

View file

@ -1,77 +0,0 @@
<html>
<body>
<pre>
<h1>µVision Build Log</h1>
<h2>Tool Versions:</h2>
IDE-Version: µVision V5.42.0.0
Copyright (C) 2025 ARM Ltd and ARM Germany GmbH. All rights reserved.
License Information: user user, INSA Toulouse, LIC=----
Tool Versions:
Toolchain: MDK-Lite Version: 5.42.0.0
Toolchain Path: C:\Keil\542a\ARM\ARMCLANG\Bin
C Compiler: ArmClang.exe V6.23
Assembler: Armasm.exe V6.23
Linker/Locator: ArmLink.exe V6.23
Library Manager: ArmAr.exe V6.23
Hex Converter: FromElf.exe V6.23
CPU DLL: SARMCM3.DLL V5.42.0.0
Dialog DLL: DARMSTM.DLL V1.69.1.0
Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.3.0.0
Dialog DLL: TARMSTM.DLL V1.67.1.0
<h2>Project:</h2>
U:\Documents\ProjetVoilier\BE_VOILIER\ProjetVoilier.uvprojx
Project File Date: 12/16/2025
<h2>Output:</h2>
*** Using Compiler 'V6.23', folder: 'C:\Keil\542a\ARM\ARMCLANG\Bin'
Build target 'Simulation'
compiling principal.c...
linking...
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol initRTC (referred from principal.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol getTime (referred from principal.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol MySPI_Init (referred from accelerometre.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol MySPI_Clear_NSS (referred from accelerometre.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol MySPI_Send (referred from accelerometre.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol MySPI_Set_NSS (referred from accelerometre.o).
.\Objects\ProjetVide.axf: Error: L6218E: Undefined symbol MySPI_Read (referred from accelerometre.o).
Not enough information to list image symbols.
Not enough information to list load addresses in the image map.
Finished: 2 information, 0 warning and 7 error messages.
".\Objects\ProjetVide.axf" - 7 Error(s), 0 Warning(s).
<h2>Software Packages used:</h2>
Package Vendor: ARM
https://www.keil.com/pack/ARM.CMSIS.6.2.0.pack
ARM::CMSIS@6.2.0
CMSIS (Common Microcontroller Software Interface Standard)
* Component: CORE Version: 6.1.1
Package Vendor: Keil
https://www.keil.com/pack/Keil.STM32F1xx_DFP.2.4.1.pack
Keil::STM32F1xx_DFP@2.4.1
STMicroelectronics STM32F1 Series Device Support, Drivers and Examples
* Component: Startup Version: 1.0.0
<h2>Collection of Component include folders:</h2>
./RTE/Device/STM32F103RB
./RTE/_Simulation
C:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include
C:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include
<h2>Collection of Component Files used:</h2>
* Component: ARM::CMSIS:CORE@6.1.1
* Component: Keil::Device:Startup@1.0.0
Source file: Device/Source/ARM/STM32F1xx_OPT.s
Source file: Device/Source/system_stm32f10x.c
Include file: RTE_Driver/Config/RTE_Device.h
Source file: Device/Source/ARM/startup_stm32f10x_md.s
Target not created.
Build Time Elapsed: 00:00:02
</pre>
</body>
</html>

View file

@ -1,17 +0,0 @@
--cpu Cortex-M3
".\objects\principal.o"
".\objects\accelerometre.o"
".\objects\girouette.o"
".\objects\myuart.o"
".\objects\servo.o"
".\objects\plateau.o"
".\objects\drivergpio.o"
".\objects\horloge.o"
".\objects\mygpio.o"
".\objects\pwm.o"
".\objects\i2c.o"
".\objects\startup_stm32f10x_md.o"
".\objects\system_stm32f10x.o"
--ro-base 0x08000000 --entry 0x08000000 --rw-base 0x20000000 --entry Reset_Handler --first __Vectors --strict --summary_stderr --info summarysizes --map --load_addr_map_info --xref --callgraph --symbols
--info sizes --info totals --info unused --info veneers
--list ".\Listings\ProjetVide.map" -o .\Objects\ProjetVide.axf

View file

@ -1,99 +0,0 @@
Dependencies for Project 'ProjetVoilier', Target 'Reel': (DO NOT MODIFY !)
CompilerVersion: 6240000::V6.24::ARMCLANG
F (.\Application\principal.c)(0x69406BAB)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/principal.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Horloge.h)(0x69403A1C)
I (Services\Include\Accelerometre.h)(0x69403A1C)
I (Services\Include\Girouette.h)(0x69403A1C)
I (Services\Include\Servo.h)(0x69403A1C)
I (Pilotes\Include\I2C.h)(0x69403A1C)
F (.\Services\Source\Accelerometre.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/accelerometre.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Horloge.h)(0x69403A1C)
I (Pilotes\Include\MySPI.h)(0x69403A1C)
I (Services\Include\Accelerometre.h)(0x69403A1C)
I (Services\Include\Servo.h)(0x69403A1C)
F (.\Services\Source\Girouette.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/girouette.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Timer.h)(0x69403A1C)
I (Pilotes\Include\DriverGPIO.h)(0x69403A1C)
I (Services\Include\Girouette.h)(0x69403A1C)
I (Pilotes\Include\PWM.h)(0x69403A1C)
F (.\Pilotes\Source\MyUart.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/myuart.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\DriverGPIO.h)(0x69403A1C)
I (Pilotes\Include\MyTimer.h)(0x69403A1C)
F (.\Services\Source\Servo.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/servo.o -MMD)
I (Services\Include\Servo.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\DriverGPIO.h)(0x69403A1C)
I (Pilotes\Include\PWM.h)(0x69403A1C)
I (Pilotes\Include\Horloge.h)(0x69403A1C)
F (.\Pilotes\Source\DriverGPIO.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/drivergpio.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\DriverGPIO.h)(0x69403A1C)
F (.\Pilotes\Source\Horloge.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/horloge.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Horloge.h)(0x69403A1C)
F (.\Pilotes\Source\MYGPIO.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/mygpio.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\MYGPIO.h)(0x69403A1C)
F (.\Pilotes\Source\MyTimer.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/mytimer.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Timer.h)(0x69403A1C)
I (Pilotes\Include\MyTimer.h)(0x69403A1C)
I (Pilotes\Include\PWM.h)(0x69403A1C)
I (Pilotes\Include\DriverGPIO.h)(0x69403A1C)
I (Pilotes\Include\Horloge.h)(0x69403A1C)
F (.\Pilotes\Source\PWM.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/pwm.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\PWM.h)(0x69403A1C)
F (.\Pilotes\Source\Timer.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/timer.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\Timer.h)(0x69403A1C)
F (.\Pilotes\Source\I2C.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/i2c.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)
I (Pilotes\Include\I2C.h)(0x69403A1C)
F (RTE/Device/STM32F103RB/RTE_Device.h)(0x69403A1C)()
F (RTE/Device/STM32F103RB/startup_stm32f10x_md.s)(0x69403A1C)(--target=arm-arm-none-eabi -mcpu=cortex-m3 -masm=auto -Wa,armasm,--diag_suppress=A1950W -c -gdwarf-4 -Wa,armasm,--pd,"__EVAL SETA 1" -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Include -I ./Services/Source -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -Wa,armasm,--pd,"__UVISION_VERSION SETA 543" -Wa,armasm,--pd,"STM32F10X_MD SETA 1" -Wa,armasm,--pd,"_RTE_ SETA 1" -o ./objects/startup_stm32f10x_md.o)
F (RTE/Device/STM32F103RB/system_stm32f10x.c)(0x69403A1C)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I . -I ./Pilotes/Include -I ./Services/Include -I./RTE/Device/STM32F103RB -I./RTE/_Reel -IC:/users/klinx/AppData/Local/Arm/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/users/klinx/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="543" -DSTM32F10X_MD -D_RTE_ -o ./objects/system_stm32f10x.o -MMD)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x68F89DC5)
I (RTE\_Reel\RTE_Components.h)(0x69403A1C)
I (C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x68E55F9D)
I (C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x68F89DC5)

View file

@ -1,93 +0,0 @@
Dependencies for Project 'ProjetVoilier', Target 'Simulation': (DO NOT MODIFY !)
CompilerVersion: 6230000::V6.23::ARMCLANG
F (.\Application\principal.c)(0x6941AAEF)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/principal.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
I (Services\Include\Accelerometre.h)(0x69419DE7)
I (Services\Include\Girouette.h)(0x69419DE7)
I (Services\Include\Servo.h)(0x69419DE7)
I (Pilotes\Include\MyUart.h)(0x6941AA24)
I (Pilotes\Include\Plateau.h)(0x6941A967)
I (Pilotes\Include\I2C.h)(0x69419DE6)
I (Pilotes\Include\RTC.h)(0x6941ABAC)
F (.\Services\Source\Accelerometre.c)(0x69419DE7)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/accelerometre.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
I (Pilotes\Include\MySPI.h)(0x69419DE6)
I (Services\Include\Accelerometre.h)(0x69419DE7)
I (Services\Include\Servo.h)(0x69419DE7)
F (.\Services\Source\Girouette.c)(0x6941AB12)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/girouette.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
I (Pilotes\Include\DriverGPIO.h)(0x6941A7A8)
I (Services\Include\Girouette.h)(0x69419DE7)
I (Pilotes\Include\PWM.h)(0x69419DE6)
F (.\Pilotes\Source\MyUart.c)(0x6941A76A)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/myuart.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\DriverGPIO.h)(0x6941A7A8)
F (.\Services\Source\Servo.c)(0x69419DE7)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/servo.o -MMD)
I (Services\Include\Servo.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\DriverGPIO.h)(0x6941A7A8)
I (Pilotes\Include\PWM.h)(0x69419DE6)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
F (\\netapp2\jdreschler\Documents\ProjetVoilier\BE_VOILIER\Pilotes\Source\Plateau.c)(0x6941AB75)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/plateau.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\PWM.h)(0x69419DE6)
I (Pilotes\Include\DriverGPIO.h)(0x6941A7A8)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
F (.\Pilotes\Source\DriverGPIO.c)(0x6941A787)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/drivergpio.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\DriverGPIO.h)(0x6941A7A8)
F (.\Pilotes\Source\Horloge.c)(0x6941ABA0)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/horloge.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\Horloge.h)(0x69419DE6)
F (.\Pilotes\Source\MYGPIO.c)(0x69419DE6)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/mygpio.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\MYGPIO.h)(0x69419DE6)
F (.\Pilotes\Source\PWM.c)(0x69419DE6)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/pwm.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\PWM.h)(0x69419DE6)
F (.\Pilotes\Source\I2C.c)(0x69419DE6)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/i2c.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)
I (Pilotes\Include\I2C.h)(0x69419DE6)
F (RTE/Device/STM32F103RB/RTE_Device.h)(0x69419DE6)()
F (RTE/Device/STM32F103RB/startup_stm32f10x_md.s)(0x69419DE6)(--target=arm-arm-none-eabi -mcpu=cortex-m3 -masm=auto -Wa,armasm,--diag_suppress=A1950W -c -gdwarf-4 -Wa,armasm,--pd,"__EVAL SETA 1" -I ./Pilotes/Source -I ./Pilotes/Include -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -Wa,armasm,--pd,"__UVISION_VERSION SETA 542" -Wa,armasm,--pd,"STM32F10X_MD SETA 1" -Wa,armasm,--pd,"_RTE_ SETA 1" -o ./objects/startup_stm32f10x_md.o)
F (RTE/Device/STM32F103RB/system_stm32f10x.c)(0x69419DE6)(-xc --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -D__EVAL -gdwarf-4 -O0 -ffunction-sections -Wall -Wextra -Wno-packed -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ./Pilotes/Include -I ./Pilotes/Source -I ./Services/Source -I ./Services/Include -I . -I ./Objects -I./RTE/Device/STM32F103RB -I./RTE/_Simulation -IC:/ProgramData/Keil/Packs/ARM/CMSIS/6.2.0/CMSIS/Core/Include -IC:/ProgramData/Keil/Packs/Keil/STM32F1xx_DFP/2.4.1/Device/Include -D__UVISION_VERSION="542" -DSTM32F10X_MD -D_RTE_ -o ./objects/system_stm32f10x.o -MMD)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h)(0x6853B9CE)
I (RTE\_Simulation\RTE_Components.h)(0x69419DE7)
I (C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h)(0x6853B99E)
I (C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h)(0x6853B9CE)

View file

@ -1,7 +0,0 @@
./objects/accelerometre.o: Services\Source\Accelerometre.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Horloge.h Pilotes\Include\MySPI.h \
Services\Include\Accelerometre.h Services\Include\Servo.h

Binary file not shown.

View file

@ -1 +0,0 @@
./objects/adc.o: Pilotes\Source\ADC.c

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/drivergpio.o: Pilotes\Source\DriverGPIO.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\DriverGPIO.h

Binary file not shown.

View file

@ -1,7 +0,0 @@
./objects/girouette.o: Services\Source\Girouette.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Horloge.h Pilotes\Include\DriverGPIO.h \
Services\Include\Girouette.h Pilotes\Include\PWM.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/horloge.o: Pilotes\Source\Horloge.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Horloge.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/i2c.o: Pilotes\Source\I2C.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\I2C.h

Binary file not shown.

View file

@ -1,5 +0,0 @@
./objects/it.o: Pilotes\Source\IT.c Pilotes\Include\IT.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Reel\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/mygpio.o: Pilotes\Source\MYGPIO.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\MYGPIO.h

Binary file not shown.

View file

@ -1,8 +0,0 @@
./objects/mytimer.o: Pilotes\Source\MyTimer.c \
C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Timer.h Pilotes\Include\MyTimer.h \
Pilotes\Include\PWM.h Pilotes\Include\DriverGPIO.h \
Pilotes\Include\Horloge.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/myuart.o: Pilotes\Source\MyUart.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\DriverGPIO.h

Binary file not shown.

View file

@ -1,8 +0,0 @@
./objects/plateau.o: \
\\netapp2\jdreschler\Documents\ProjetVoilier\BE_VOILIER\Pilotes\Source\Plateau.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\PWM.h Pilotes\Include\DriverGPIO.h \
Pilotes\Include\Horloge.h

Binary file not shown.

View file

@ -1,9 +0,0 @@
./objects/principal.o: Application\principal.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Horloge.h Services\Include\Accelerometre.h \
Services\Include\Girouette.h Services\Include\Servo.h \
Pilotes\Include\MyUart.h Pilotes\Include\Plateau.h \
Pilotes\Include\I2C.h Pilotes\Include\RTC.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/pwm.o: Pilotes\Source\PWM.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\PWM.h

Binary file not shown.

View file

@ -1,7 +0,0 @@
./objects/servo.o: Services\Source\Servo.c Services\Include\Servo.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\DriverGPIO.h Pilotes\Include\PWM.h \
Pilotes\Include\Horloge.h

Binary file not shown.

Binary file not shown.

View file

@ -1,5 +0,0 @@
./objects/system_stm32f10x.o: RTE\Device\STM32F103RB\system_stm32f10x.c \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\ProgramData\Keil\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\ProgramData\Keil\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h

Binary file not shown.

View file

@ -1,6 +0,0 @@
./objects/timer.o: Pilotes\Source\Timer.c \
C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\stm32f10x.h \
RTE\_Simulation\RTE_Components.h \
C:\users\klinx\AppData\Local\Arm\Packs\ARM\CMSIS\6.2.0\CMSIS\Core\Include\core_cm3.h \
C:\users\klinx\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\Device\Include\system_stm32f10x.h \
Pilotes\Include\Timer.h

Binary file not shown.

View file

@ -9,50 +9,67 @@
#include "I2C.h"
#include "RTC.h"
//Variables
int angleVentVar;
int angleVoileVar;
uint16_t moyenne[LONGUEUR_MOY];
uint32_t sum;
//uint16_t i;
volatile uint32_t moy; // Volatile pour pouvoir le regarder dans Keil µVision
void pilotage(int commande) {
Update_Motor_PWM(commande,TIM3,3);
};
int main(void) {
// ---- Setup ------
//#define ANGLE_LIMITE 0x0E38
//Variables
int angleVentVar;
int angleVoileVar;
uint16_t * Melding;
volatile uint16_t X;
volatile uint16_t Y;
volatile uint16_t Z;
volatile uint32_t moy;
//volatile uint16_t Angle_lim = 0x1500;
//volatile uint16_t Angle_lim = 0x1E20 - 60*ANGLE;
int main (void) {
// ---- Setup ------
// Servo.c
initServo(TIM4, 3);
// Giroutte.c
configEncoder(TIM2);
// init plateau
initPlato(TIM3, 3);
//init Uart
/*
//Test de lecture ADC
My_USART_Config(USART1, 7500);
initADC();
while(1){
sendinfoADC();
}
*/
// Init moyenne glissante
int i = 0;
uint32_t moyenne[LONGUEUR_MOY];
for (int p = 0; p<LONGUEUR_MOY; p++){moyenne[p]=0xFFFF;}
//init Uart
My_USART_Config(USART1, 7500); //call with baudrate which is one over this value times clock frequency
USART_IT_Receive_Enable(USART1);
Init_IT_Receive(pilotage);
USART_Send_String(USART1,"bonjour bateau\r\n");
// Initialisation des modules
initAccelo();
initLacheur();
//RTC
initRTC();
getTime();
for (int p = 0; p<LONGUEUR_MOY; p++){moyenne[p]=0xFFFF;} // Initialisation du tableau à 0xFFFF, pour ne pas qu'il se déclenche immediatement
RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;
// Init lacheurVoile
initAccelo();
initServo(TIM4, 3);
// Trouver l'index
LocaliserZero();
int i = 0;
// ----- Opération -----
while (1) {
int sum;
while(1){
// Girouette
angleVentVar = angleVent(TIM2); // Récupérer l'angle de girouette
angleVoileVar = vent2voile(angleVentVar); // Transformer l'angle de girouette au l'angle des voiles souhaités
@ -63,5 +80,10 @@ int main(void) {
i++; if (i >= LONGUEUR_MOY) {i = 0;} // Géstion de la position i dans le tableau pour la moyenne glissante
sum = 0; for (int j = 0; j < LONGUEUR_MOY; j++){sum += moyenne[j];} moy = sum / LONGUEUR_MOY; // Calcul de la moyenne glissante
LacheVoile(ANGLE_LIMITE, (uint16_t) moy); // Lache la voile si le bateau dépasse l'angle limite
}
};
LacheVoile(50, (uint16_t)moy);
}
}

View file

@ -0,0 +1,8 @@
#include <stm32f10x.h>
#include <stdint.h>
#define GPIO_ANALOG_INPUT 0
void initADC();
int recupADC(void);
void sendinfoADC();

View file

View file

View file

View file

View file

View file

@ -5,4 +5,4 @@ void My_USART_Config(USART_TypeDef* , uint32_t );
void USART_Send_Char(USART_TypeDef* , char );
void USART_Send_String(USART_TypeDef*, char*);
void USART_IT_Receive_Enable(USART_TypeDef*);
void Init_IT_Receive(void (*Receive_IT_function) (int));
void Init_IT_Receive(void (*Receive_IT_function) (int));

View file

@ -6,4 +6,5 @@
// Config
extern void MyTimer_PWM(TIM_TypeDef * Timer , int Channel);
extern int Set_DutyCycle_PWM(TIM_TypeDef *Timer, int Channel, int DutyC);
int Set_DutyCycle_PWM_Plateau(TIM_TypeDef *Timer, int Channel, int DutyC);
#endif

View file

View file

View file

@ -0,0 +1,56 @@
#include <stm32f10x.h>
#include <ADC.h>
#include <MyUart.h>
#include <stdint.h>
#include <stdio.h>
//Pont diviseur du tension, coeff. = 1/13
//Alors 13V -> 12V*1/13 = 0.92V
//Tension pile donné sur GPIOA.2
void initADC(){
//Initialisation de ADC
RCC->APB2ENR |= (0x1<<10); //Initialisation du clock interne du ADC2
RCC->APB2ENR |= (0x1<<2); //GPIOA clk enable
ADC2->CR2 |= (0x1); // ON/OFF ADC2
//Init de la broche PA2 en mode analog input
GPIOA->CRL &= ~(0x00000F00);
ADC2->CR2 |= (0x1<<20); //External trigger enable
ADC2->CR2 |= (0b111<<17); //SWSTART
ADC2->CR2 |= (0x1<<1); //Continous conversion
ADC2->SQR3 = 2;
//Essai de faire un nouveau Threshold/Seuil
ADC2->CR1 |= (0x1<<23); //Watchdog enable pour mettre un threshold HIGH
ADC2->HTR &= ~(0x0FFF);
//########################MAHOUT AIDEZ NOUS############################æ
//ADC2->HTR |= 0x0475; //Changement du threshold (0.92V/3.3V)*4096
//ADC2->HTR |= 0x0BBB; //Faut demander le prof pour ce HIGH THRESHOLD
ADC2->CR2 |= (0x1); //ON ADC2
}
int recupADC(){
int data;
data = ADC2->DR;
return data;
}
void sendinfoADC(){
int valu = recupADC();
char meld[60];
char meld2[50];
int test = valu*3.3/4096;
test = test*13*100/12;
int tension = (13*valu)/ADC2->HTR;
int p2 = (13*valu)/0x0FFF;
snprintf(meld, sizeof(meld),"Pourcentage de la pile : riktig: %d next %d next %d \r\n", tension, test, p2);
snprintf(meld2, sizeof(meld2),"Tension de la pile : %dV\r\n", tension);
USART_Send_String(USART1, meld2);
}

View file

View file

View file

View file

@ -2,6 +2,7 @@
#include "DriverGPIO.h"
void My_USART_Config(USART_TypeDef* USARTx, uint32_t baudrate) { //QUE POUR USART_CR1_RE
// Configuration PA9 (Tx) en Alternate Function Push-Pull
MyGPIO_Init(GPIOA, 9 , AltOut_Ppull);

View file

@ -0,0 +1,140 @@
#include "stm32f10x.h"
#include "Horloge.h"
#include "DriverGPIO.h"
#include <stdlib.h>
void My_PWM_Channel_Config(TIM_TypeDef* Timer , char channel){
switch (channel) {
case 1:
// Configuration de CC1
Timer->CCMR1 &= ~TIM_CCMR1_CC1S; // Output
Timer->CCMR1 |= TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1; // Mode PWM 1 (0b110)
Timer->CCMR1 |= TIM_CCMR1_OC1PE; // Preload Enable
Timer->CCR1 = 0;
Timer->CCER |= TIM_CCER_CC1E; // Output Enable
break; // <<-- AJOUTER LE BREAK
case 2:
// Configuration de CC2 (vos registres dans le code initial étaient incohérents)
Timer->CCMR1 &= ~TIM_CCMR1_CC2S; // Output
Timer->CCMR1 |= TIM_CCMR1_OC2M_2 | TIM_CCMR1_OC2M_1; // Mode PWM 1 (0b110)
Timer->CCMR1 |= TIM_CCMR1_OC2PE; // Preload Enable
Timer->CCR2 = 0;
Timer->CCER |= TIM_CCER_CC2E; // Output Enable
break;}
Timer->CR1 |= TIM_CR1_ARPE; // Auto-Reload Preload
Timer->BDTR |= TIM_BDTR_MOE; // Main Output Enable (pour les timers avancés TIM1/8)
Timer->EGR |= TIM_EGR_UG;
Timer->CR1 |= TIM_CR1_CEN;
};
void MyTimer_PWM(TIM_TypeDef * Timer , int Channel){
int pwrmd;
#if POWERMODE //Powermode 1
pwrmd = 0b110;
#else
pwrmd = 0b110; //Powermode 2
#endif
if (Channel == 1){
Timer->CCMR1 &= ~(0b111<<4); //On clear les trois bits qui sont de pwm
Timer->CCMR1 |= (pwrmd<<4); //On affecte le powermode au bits de lecture pour le µ-controlleur
Timer->CCMR1 |= TIM_CCMR1_OC1PE; //Update preload, il n'affecte pas le valeur avant que la prochaine cycle
Timer->CCER = TIM_CCER_CC1E; //Enable le pin voulu basculer
}
else if (Channel == 2){
Timer->CCMR1 &= ~(0b111<<12); //Le TIMx_CCMR1 configure deux channels, de bit [6:4] CH1, [14:12] CH2 (OC2M = Output Channel 2 )
Timer->CCMR1 |= (pwrmd<<12);
Timer->CCMR1 |= TIM_CCMR1_OC2PE;
Timer->CCER |= TIM_CCER_CC2E;
}
else if (Channel == 3){
Timer->CCMR1 &= ~(0b111<<4);
Timer->CCMR2 |= (pwrmd<<4);
Timer->CCMR2 |= TIM_CCMR2_OC3PE;
Timer->CCER |= TIM_CCER_CC3E;
}
else if (Channel == 4){
Timer->CCMR1 &= ~(0b111<<12);
Timer->CCMR2 |= (pwrmd<<12);
Timer->CCMR2 |= TIM_CCMR2_OC4PE;
Timer->CCER |= TIM_CCER_CC4E;
}
//En dessous d'ici, on a l'aide du plus gentil chat que je connais
// Enable auto-reload preload -- //Ensures that your initial configuration — PWM mode, duty cycle, period — actually takes effect before the timer starts counting.
Timer->CR1 |= TIM_CR1_ARPE;
// Force update event to load ARR and CCR values immediately
Timer->EGR |= TIM_EGR_UG;
// Start the timer
Timer->CR1 |= TIM_CR1_CEN;
switch (Channel) {
case 1:
if (Timer == TIM1){GPIOA->CRH &=
~(0xF<<0*4); GPIOA->CRH |= (0xA<<0*4); TIM1->BDTR |= 1<<15; }
if (Timer == TIM2){GPIOA->CRL &=
~(0xF<<0*4); GPIOA->CRL |= (0xA<<0*4);}
if (Timer == TIM3){GPIOA->CRL &=
~(0xF<<6*4); GPIOA->CRL |= (0xA<<6*4);}
if (Timer == TIM4){GPIOB->CRL &=
~(0xF<<5*4); GPIOB->CRL |= (0xA<<5*4);}
break;
case 2:
if (Timer == TIM1){GPIOA->CRH &=
~(0xF<<1*4); GPIOA->CRL |= (0xA<<1*4); TIM1->BDTR |= 1<<15;}
if (Timer == TIM2){GPIOA->CRL &=
~(0xF<<1*4); GPIOA->CRL |= (0xA<<1*4);}
if (Timer == TIM3){GPIOA->CRL &=
~(0xF<<7*4); GPIOA->CRL |= (0xA<<7*4);}
if (Timer == TIM4){GPIOB->CRL &=
~(0xF<<7*4); GPIOB->CRL |= (0xA<<7*4);}
break;
case 3:
if (Timer == TIM1){GPIOA->CRH &=
~(0xF<<2*4); GPIOA->CRH |= (0xA<<2*4); TIM1->BDTR |= 1<<15;}
if (Timer == TIM2){GPIOA->CRL &=
~(0xF<<2*4); GPIOA->CRL |= (0xA<<2*4);}
if (Timer == TIM3){GPIOB->CRL &=
~(0xF<<0*4); GPIOB->CRL |= (0xA<<0*4);}
if (Timer == TIM4){GPIOB->CRH &=
~(0xF<<0*4); GPIOB->CRH |= (0xA<<0*4);}
break;
case 4:
if (Timer == TIM1){GPIOA->CRH &=
~(0xF<<3*4); GPIOA->CRH |= (0xA<<3*4); TIM1->BDTR |= 1<<15;}
if (Timer == TIM2){GPIOA->CRL &=
~(0xF<<3*4); GPIOA->CRL |= (0xA<<3*4);}
if (Timer == TIM3){GPIOB->CRL &=
~(0xF<<1*4); GPIOB->CRL |= (0xA<<1*4);}
if (Timer == TIM4){GPIOB->CRH &=
~(0xF<<1*4); GPIOB->CRH |= (0xA<<1*4);}
}
}
int Set_DutyCycle_PWM(TIM_TypeDef *Timer, int Channel, int DutyC){
int CCR_VAL = (Timer->ARR + 1) * DutyC / 100;
switch (Channel){
case 1:
Timer->CCR1 = CCR_VAL;
break;
case 2:
Timer->CCR2 = CCR_VAL;
break;
case 3:
Timer->CCR3 = CCR_VAL;
break;
case 4:
Timer->CCR4 = CCR_VAL;
break;
default:
return -1; // channel invalide
}
Timer->EGR |= TIM_EGR_UG; // update event
return 0;
}

View file

@ -24,12 +24,12 @@ void initPlato(TIM_TypeDef * Timer, int Channel) { // Config du moteur servo
void Update_Motor_PWM(int Consigne, TIM_TypeDef * Timer, int Channel) {
int duty_cycle;
if (Consigne>=0) {
MYGPIO_PinOn(GPIOB, 5);
MyGPIO_Set(GPIOB, 5);
duty_cycle = Consigne;
}
if (Consigne<0){
MYGPIO_PinOff(GPIOB,5);
MyGPIO_Reset(GPIOB,5);
duty_cycle = -Consigne;
}
Set_DutyCycle_PWM(Timer, Channel, duty_cycle);
Set_DutyCycle_PWM_Plateau(Timer, Channel, duty_cycle);
}

203
ProjetVoilier.uvoptx → ProjetInitial/Projet0.uvoptx Normal file → Executable file
View file

@ -75,7 +75,7 @@
<OPTFL>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>0</IsCurrentTarget>
<IsCurrentTarget>1</IsCurrentTarget>
</OPTFL>
<CpuCode>18</CpuCode>
<DebugOpt>
@ -125,7 +125,7 @@
<SetRegEntry>
<Number>0</Number>
<Key>DLGTARM</Key>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=638,234,1284,907,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=1333,301,1754,706,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=638,234,1284,907,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=777,701,1198,1106,0)(121=1276,605,1697,1010,0)(122=1419,197,1840,602,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=87,413,681,1107,0)(132=-1,-1,-1,-1,0)(133=937,506,1531,1200,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
@ -149,14 +149,35 @@
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<MemoryWindow1>
<Mm>
<WatchWindow1>
<Ww>
<count>0</count>
<WinNumber>1</WinNumber>
<SubType>0</SubType>
<ItemText>Angle</ItemText>
<AccSizeX>0</AccSizeX>
</Mm>
</MemoryWindow1>
<ItemText>angleVentVar,0x0A</ItemText>
</Ww>
<Ww>
<count>1</count>
<WinNumber>1</WinNumber>
<ItemText>angleVoileVar,0x0A</ItemText>
</Ww>
<Ww>
<count>2</count>
<WinNumber>1</WinNumber>
<ItemText>moy,0x0A</ItemText>
</Ww>
<Ww>
<count>3</count>
<WinNumber>1</WinNumber>
<ItemText>Val_lim</ItemText>
</Ww>
</WatchWindow1>
<WatchWindow2>
<Ww>
<count>0</count>
<WinNumber>2</WinNumber>
<ItemText>angleVoileVar</ItemText>
</Ww>
</WatchWindow2>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
@ -177,7 +198,7 @@
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aLa>1</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
@ -217,7 +238,7 @@
<CLKADS>8000000</CLKADS>
<OPTTT>
<gFlags>1</gFlags>
<BeepAtEnd>1</BeepAtEnd>
<BeepAtEnd>0</BeepAtEnd>
<RunSim>0</RunSim>
<RunTarget>1</RunTarget>
<RunAbUc>0</RunAbUc>
@ -263,7 +284,7 @@
<OPTFL>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<IsCurrentTarget>1</IsCurrentTarget>
<IsCurrentTarget>0</IsCurrentTarget>
</OPTFL>
<CpuCode>18</CpuCode>
<DebugOpt>
@ -313,7 +334,7 @@
<SetRegEntry>
<Number>0</Number>
<Key>DLGDARM</Key>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=638,234,1284,907,0)(110=1199,192,1419,652,0)(111=1025,230,1245,690,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=835,180,1256,607,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
<Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=638,234,1284,907,0)(110=1085,167,1305,627,0)(111=1025,230,1245,690,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=835,180,1256,607,0)(121=1311,520,1732,947,1)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=1162,203,1756,954,1)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)</Name>
</SetRegEntry>
<SetRegEntry>
<Number>0</Number>
@ -326,7 +347,52 @@
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128 -FS08000000 -FL020000 -FP0($$Device:STM32F103RB$Flash\STM32F10x_128.FLM))</Name>
</SetRegEntry>
</TargetDriverDllRegistry>
<Breakpoint/>
<Breakpoint>
<Bp>
<Number>0</Number>
<Type>0</Type>
<LineNumber>38</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134221140</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>1</BreakIfRCount>
<Filename>U:\git\BE_VOILIER\Application\principal.c</Filename>
<ExecCommand></ExecCommand>
<Expression>\\ProjetVide\../../BE_VOILIER/Application/principal.c\38</Expression>
</Bp>
<Bp>
<Number>1</Number>
<Type>0</Type>
<LineNumber>19</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134221104</Address>
<ByteObject>0</ByteObject>
<HtxType>0</HtxType>
<ManyObjects>0</ManyObjects>
<SizeOfObject>0</SizeOfObject>
<BreakByAccess>0</BreakByAccess>
<BreakIfRCount>1</BreakIfRCount>
<Filename>U:\git\BE_VOILIER\Application\principal.c</Filename>
<ExecCommand></ExecCommand>
<Expression>\\ProjetVide\../../BE_VOILIER/Application/principal.c\19</Expression>
</Bp>
</Breakpoint>
<WatchWindow1>
<Ww>
<count>0</count>
<WinNumber>1</WinNumber>
<ItemText>dutyCycle</ItemText>
</Ww>
<Ww>
<count>1</count>
<WinNumber>1</WinNumber>
<ItemText>CCR_VAL</ItemText>
</Ww>
</WatchWindow1>
<Tracepoint>
<THDelay>0</THDelay>
</Tracepoint>
@ -347,7 +413,7 @@
<AscS3>0</AscS3>
<aSer3>0</aSer3>
<eProf>0</eProf>
<aLa>0</aLa>
<aLa>1</aLa>
<aPa1>0</aPa1>
<AscS4>0</AscS4>
<aSer4>0</aSer4>
@ -369,6 +435,13 @@
<pszMrulep></pszMrulep>
<pSingCmdsp></pSingCmdsp>
<pMultCmdsp></pMultCmdsp>
<LogicAnalyzers>
<Wi>
<IntNumber>0</IntNumber>
<FirstString>((PORTB &amp; 0x00000100) &gt;&gt; 8 &amp; 0x100) &gt;&gt; 8</FirstString>
<SecondString>FF000000000000000000000000000000E0FFEF400100000000000000000000000000000028504F5254422026203078303030303031303029203E3E2038000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000001000000000000000000F03F1300000000000000000000000000000000000000200F0008</SecondString>
</Wi>
</LogicAnalyzers>
<DebugDescription>
<Enable>1</Enable>
<EnableFlashSeq>1</EnableFlashSeq>
@ -412,8 +485,8 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Services\Source\Accelerometre.c</PathWithFileName>
<FilenameWithoutPath>Accelerometre.c</FilenameWithoutPath>
<PathWithFileName>.\src\Servo.c</PathWithFileName>
<FilenameWithoutPath>Servo.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -433,11 +506,11 @@
<GroupNumber>2</GroupNumber>
<FileNumber>4</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\MyUart.c</PathWithFileName>
<FilenameWithoutPath>MyUart.c</FilenameWithoutPath>
<PathWithFileName>.\Services\Source\Accelerometre.c</PathWithFileName>
<FilenameWithoutPath>Accelerometre.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -448,20 +521,8 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Services\Source\Servo.c</PathWithFileName>
<FilenameWithoutPath>Servo.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>2</GroupNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>\\netapp2\jdreschler\Documents\ProjetVoilier\BE_VOILIER\Pilotes\Source\Plateau.c</PathWithFileName>
<FilenameWithoutPath>Plateau.c</FilenameWithoutPath>
<PathWithFileName>.\Pilotes\Source\MyUart.c</PathWithFileName>
<FilenameWithoutPath>MyUart.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -473,6 +534,18 @@
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\src\ADC.c</PathWithFileName>
<FilenameWithoutPath>ADC.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>7</FileNumber>
@ -480,7 +553,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\DriverGPIO.c</PathWithFileName>
<PathWithFileName>.\src\DriverGPIO.c</PathWithFileName>
<FilenameWithoutPath>DriverGPIO.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@ -492,7 +565,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\Horloge.c</PathWithFileName>
<PathWithFileName>.\src\Horloge.c</PathWithFileName>
<FilenameWithoutPath>Horloge.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@ -504,7 +577,7 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\MYGPIO.c</PathWithFileName>
<PathWithFileName>.\src\MYGPIO.c</PathWithFileName>
<FilenameWithoutPath>MYGPIO.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
@ -516,8 +589,8 @@
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\PWM.c</PathWithFileName>
<FilenameWithoutPath>PWM.c</FilenameWithoutPath>
<PathWithFileName>.\src\MyTimer.c</PathWithFileName>
<FilenameWithoutPath>MyTimer.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -525,11 +598,55 @@
<GroupNumber>3</GroupNumber>
<FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\I2C.c</PathWithFileName>
<FilenameWithoutPath>I2C.c</FilenameWithoutPath>
<PathWithFileName>.\src\PWM.c</PathWithFileName>
<FilenameWithoutPath>PWM.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\src\Timer.c</PathWithFileName>
<FilenameWithoutPath>Timer.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\Pilotes\Source\Plateau.c</PathWithFileName>
<FilenameWithoutPath>Plateau.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group>
<Group>
<GroupName>New Group</GroupName>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
<FileNumber>14</FileNumber>
<FileType>4</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\..\BE_VOILIER\Objects\Lib_Com_Periph_2022.lib</PathWithFileName>
<FilenameWithoutPath>Lib_Com_Periph_2022.lib</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
@ -545,7 +662,7 @@
<Group>
<GroupName>::Device</GroupName>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>1</RteFlg>

197
ProjetVoilier.uvprojx → ProjetInitial/Projet0.uvprojx Normal file → Executable file
View file

@ -10,7 +10,7 @@
<TargetName>Reel</TargetName>
<ToolsetNumber>0x4</ToolsetNumber>
<ToolsetName>ARM-ADS</ToolsetName>
<pCCUsed>6240000::V6.24::ARMCLANG</pCCUsed>
<pCCUsed>6230000::V6.23::ARMCLANG</pCCUsed>
<uAC6>1</uAC6>
<TargetOption>
<TargetCommonOption>
@ -49,7 +49,7 @@
<InvalidFlash>1</InvalidFlash>
</TargetStatus>
<OutputDirectory>.\Objects\</OutputDirectory>
<OutputName>Projet3FISA</OutputName>
<OutputName>Projet0</OutputName>
<CreateExecutable>1</CreateExecutable>
<CreateLib>0</CreateLib>
<CreateHexFile>0</CreateHexFile>
@ -190,7 +190,7 @@
<hadIRAM2>0</hadIRAM2>
<hadIROM2>0</hadIROM2>
<StupSel>8</StupSel>
<useUlib>0</useUlib>
<useUlib>1</useUlib>
<EndSel>0</EndSel>
<uLtcg>0</uLtcg>
<nSecure>0</nSecure>
@ -340,7 +340,7 @@
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath>.;.\Pilotes\Include;.\Services\Include</IncludePath>
<IncludePath>.\Include;.\Pilotes\Include;.\Services\Include;.;.\Services\Source;.\Pilotes\Source</IncludePath>
</VariousControls>
</Cads>
<Aads>
@ -358,7 +358,7 @@
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath>.\Pilotes\Include;.\Pilotes\Source;.\Services\Include;.\Services\Source</IncludePath>
<IncludePath></IncludePath>
</VariousControls>
</Aads>
<LDads>
@ -395,59 +395,148 @@
<GroupName>Services</GroupName>
<Files>
<File>
<FileName>Accelerometre.c</FileName>
<FileName>Servo.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Accelerometre.c</FilePath>
<FilePath>.\src\Servo.c</FilePath>
</File>
<File>
<FileName>Girouette.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Girouette.c</FilePath>
</File>
<File>
<FileName>Accelerometre.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Accelerometre.c</FilePath>
</File>
<File>
<FileName>MyUart.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\MyUart.c</FilePath>
</File>
<File>
<FileName>Servo.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Servo.c</FilePath>
</File>
<File>
<FileName>Plateau.c</FileName>
<FileType>1</FileType>
<FilePath>\\netapp2\jdreschler\Documents\ProjetVoilier\BE_VOILIER\Pilotes\Source\Plateau.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>Drivers</GroupName>
<Files>
<File>
<FileName>ADC.c</FileName>
<FileType>1</FileType>
<FilePath>.\src\ADC.c</FilePath>
</File>
<File>
<FileName>DriverGPIO.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\DriverGPIO.c</FilePath>
<FilePath>.\src\DriverGPIO.c</FilePath>
</File>
<File>
<FileName>Horloge.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\Horloge.c</FilePath>
<FilePath>.\src\Horloge.c</FilePath>
</File>
<File>
<FileName>MYGPIO.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\MYGPIO.c</FilePath>
<FilePath>.\src\MYGPIO.c</FilePath>
</File>
<File>
<FileName>MyTimer.c</FileName>
<FileType>1</FileType>
<FilePath>.\src\MyTimer.c</FilePath>
</File>
<File>
<FileName>PWM.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\PWM.c</FilePath>
<FilePath>.\src\PWM.c</FilePath>
</File>
<File>
<FileName>I2C.c</FileName>
<FileName>Timer.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\I2C.c</FilePath>
<FilePath>.\src\Timer.c</FilePath>
</File>
<File>
<FileName>Plateau.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\Plateau.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>New Group</GroupName>
<GroupOption>
<CommonProperty>
<UseCPPCompiler>0</UseCPPCompiler>
<RVCTCodeConst>0</RVCTCodeConst>
<RVCTZI>0</RVCTZI>
<RVCTOtherData>0</RVCTOtherData>
<ModuleSelection>0</ModuleSelection>
<IncludeInBuild>2</IncludeInBuild>
<AlwaysBuild>2</AlwaysBuild>
<GenerateAssemblyFile>2</GenerateAssemblyFile>
<AssembleAssemblyFile>2</AssembleAssemblyFile>
<PublicsOnly>2</PublicsOnly>
<StopOnExitCode>11</StopOnExitCode>
<CustomArgument></CustomArgument>
<IncludeLibraryModules></IncludeLibraryModules>
<ComprImg>1</ComprImg>
</CommonProperty>
<GroupArmAds>
<Cads>
<interw>2</interw>
<Optim>0</Optim>
<oTime>2</oTime>
<SplitLS>2</SplitLS>
<OneElfS>2</OneElfS>
<Strict>2</Strict>
<EnumInt>2</EnumInt>
<PlainCh>2</PlainCh>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<wLevel>0</wLevel>
<uThumb>2</uThumb>
<uSurpInc>2</uSurpInc>
<uC99>2</uC99>
<uGnu>2</uGnu>
<useXO>2</useXO>
<v6Lang>0</v6Lang>
<v6LangP>0</v6LangP>
<vShortEn>2</vShortEn>
<vShortWch>2</vShortWch>
<v6Lto>2</v6Lto>
<v6WtE>2</v6WtE>
<v6Rtti>2</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath></IncludePath>
</VariousControls>
</Cads>
<Aads>
<interw>2</interw>
<Ropi>2</Ropi>
<Rwpi>2</Rwpi>
<thumb>2</thumb>
<SplitLS>2</SplitLS>
<SwStkChk>2</SwStkChk>
<NoWarn>2</NoWarn>
<uSurpInc>2</uSurpInc>
<useXO>2</useXO>
<ClangAsOpt>0</ClangAsOpt>
<VariousControls>
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath>.\Objects</IncludePath>
</VariousControls>
</Aads>
</GroupArmAds>
</GroupOption>
<Files>
<File>
<FileName>Lib_Com_Periph_2022.lib</FileName>
<FileType>4</FileType>
<FilePath>..\..\BE_VOILIER\Objects\Lib_Com_Periph_2022.lib</FilePath>
</File>
</Files>
</Group>
@ -612,7 +701,7 @@
<ldmm>1</ldmm>
<ldXref>1</ldXref>
<BigEnd>0</BigEnd>
<AdsALst>1</AdsALst>
<AdsALst>0</AdsALst>
<AdsACrf>1</AdsACrf>
<AdsANop>0</AdsANop>
<AdsANot>0</AdsANot>
@ -793,7 +882,7 @@
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath>.\Pilotes\Include;.\Pilotes\Source;.\Services\Source;.\Services\Include;.;.\Objects</IncludePath>
<IncludePath>.\Include;.\Pilotes\Include;.\Services\Include;.;.\Services\Source;.\Pilotes\Source</IncludePath>
</VariousControls>
</Cads>
<Aads>
@ -811,7 +900,7 @@
<MiscControls></MiscControls>
<Define></Define>
<Undefine></Undefine>
<IncludePath>.\Pilotes\Source;.\Pilotes\Include;.\Services\Source;.\Services\Include;.;.\Objects</IncludePath>
<IncludePath></IncludePath>
</VariousControls>
</Aads>
<LDads>
@ -848,59 +937,79 @@
<GroupName>Services</GroupName>
<Files>
<File>
<FileName>Accelerometre.c</FileName>
<FileName>Servo.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Accelerometre.c</FilePath>
<FilePath>.\src\Servo.c</FilePath>
</File>
<File>
<FileName>Girouette.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Girouette.c</FilePath>
</File>
<File>
<FileName>Accelerometre.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Accelerometre.c</FilePath>
</File>
<File>
<FileName>MyUart.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\MyUart.c</FilePath>
</File>
<File>
<FileName>Servo.c</FileName>
<FileType>1</FileType>
<FilePath>.\Services\Source\Servo.c</FilePath>
</File>
<File>
<FileName>Plateau.c</FileName>
<FileType>1</FileType>
<FilePath>\\netapp2\jdreschler\Documents\ProjetVoilier\BE_VOILIER\Pilotes\Source\Plateau.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>Drivers</GroupName>
<Files>
<File>
<FileName>ADC.c</FileName>
<FileType>1</FileType>
<FilePath>.\src\ADC.c</FilePath>
</File>
<File>
<FileName>DriverGPIO.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\DriverGPIO.c</FilePath>
<FilePath>.\src\DriverGPIO.c</FilePath>
</File>
<File>
<FileName>Horloge.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\Horloge.c</FilePath>
<FilePath>.\src\Horloge.c</FilePath>
</File>
<File>
<FileName>MYGPIO.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\MYGPIO.c</FilePath>
<FilePath>.\src\MYGPIO.c</FilePath>
</File>
<File>
<FileName>MyTimer.c</FileName>
<FileType>1</FileType>
<FilePath>.\src\MyTimer.c</FilePath>
</File>
<File>
<FileName>PWM.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\PWM.c</FilePath>
<FilePath>.\src\PWM.c</FilePath>
</File>
<File>
<FileName>I2C.c</FileName>
<FileName>Timer.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\I2C.c</FilePath>
<FilePath>.\src\Timer.c</FilePath>
</File>
<File>
<FileName>Plateau.c</FileName>
<FileType>1</FileType>
<FilePath>.\Pilotes\Source\Plateau.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>New Group</GroupName>
<Files>
<File>
<FileName>Lib_Com_Periph_2022.lib</FileName>
<FileType>4</FileType>
<FilePath>..\..\BE_VOILIER\Objects\Lib_Com_Periph_2022.lib</FilePath>
</File>
</Files>
</Group>

View file

@ -163,7 +163,7 @@
uint32_t SystemCoreClock = HSI_VALUE; /*!< System Clock Frequency (Core Clock) */
#endif
__I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9};
static __I uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9};
/**
* @}
*/

View file

@ -2,7 +2,7 @@
* UVISION generated file: DO NOT EDIT!
* Generated by: uVision version 5.42.0.0
*
* Project: 'ProjetVoilier'
* Project: 'Projet0'
* Target: 'Reel'
*/

View file

@ -2,7 +2,7 @@
* UVISION generated file: DO NOT EDIT!
* Generated by: uVision version 5.42.0.0
*
* Project: 'ProjetVoilier'
* Project: 'Projet0'
* Target: 'Simulation'
*/

View file

View file

@ -3,6 +3,7 @@
#include "DriverGPIO.h"
#include "Girouette.h"
#include "PWM.h"
#include "Servo.h"
#include <stdlib.h> // Pour abs()

View file

View file

8
ProjetInitial/include/ADC.h Executable file
View file

@ -0,0 +1,8 @@
#include <stm32f10x.h>
#include <stdint.h>
#define GPIO_ANALOG_INPUT 0
void initADC();
int recupADC(void);
void sendinfoADC();

View file

@ -0,0 +1,17 @@
#ifndef DRIVERGPIO_H_
#define DRIVERGPIO_H_
#include "stm32f10x.h"
#define In_Floating 0x4
#define In_PullDown 0x8
#define In_PullUp 0x8
#define In_Analog 0x0
#define Out_Ppull 0x3
#define Out_OD 0x7
#define AltOut_Ppull 0xB
#define AltOut_OD 0xF
extern void MyGPIO_Init(GPIO_TypeDef * GPIO, char pin, char conf );
extern int MyGPIO_Read(GPIO_TypeDef * GPIO, char GPIO_Pin); // renvoie 0 ou autre chose different de 0
extern void MyGPIO_Set(GPIO_TypeDef * GPIO, char GPIO_Pin);
extern void MyGPIO_Reset(GPIO_TypeDef * GPIO, char GPIO_Pin);
extern void MyGPIO_Toggle(GPIO_TypeDef * GPIO, char GPIO_Pin);
#endif

12
ProjetInitial/include/Horloge.h Executable file
View file

@ -0,0 +1,12 @@
#include <stm32f10x.h>
#define PSC_VAL 624
#define ARR_VAL 0xE0FF
//DUTY CYCLE
#define DUTYC 70 //Chiffre entre 0 et 100, où 100 est 100% duty cycle
#define POWERMODETIMER 1 // 1 vaut powermode 1, 0 vaut powermode 2 (Powermode pour le config de dutycycle)
//Powermode 1 reste sur la bonne polarité: cad. si DUTY_CYCLE vaut 60 alors le signal reste HIGH pour 60% du periode, inverse pour pwmd2
//Timer
void Timer_Init(TIM_TypeDef *Timer, unsigned short Autoreload, unsigned short Prescaler);
void MyTimer_ActiveIT(TIM_TypeDef * Timer, char Prio, void(*Interrupt_fonc)(void));
void TIM2_IRQHandler(void);

38
ProjetInitial/include/MYGPIO.h Executable file
View file

@ -0,0 +1,38 @@
//Definitions
//INTERNE
#define LED_PIN_INTERNE (5) // 5 pour le LED de Arduino
#define BUTTON_GPIO_INTERNE (GPIOA) //GPIOA pour l'Arduion
#define LED_GPIO_INTERNE (GPIOA) //GPIOA pour Arduino
#define BUTTON_PIN_INTERNE (13) //13 pour Arduino
//EXTERNE
#define LED_PIN_EXTERNE (8) // 8 pour la porte PB8
#define BUTTON_GPIO_EXTERNE (GPIOB) //GPIOB pour externe
#define LED_GPIO_EXTERNE (GPIOB) //GPIOB pour Externe
#define BUTTON_PIN_EXTERNE (9) //9 pour bouton poussoir
//STATIQUES
#define GPIO_OUTPUT_PPULL_MODE (2) //Mis en GP output 2MHz en mode PP
#define GPIO_INPUT_PUPD_MODE (8) //Pour mettre à Pull up/down
#define GPIO_INPUT_FLOATING_MODE (4)
//si on est sur l'arduino ou sur le led externe
#define INTERNE 1 // 1 c'est vrai, 0 faux
//FONCTIONS
void initGPIO_Interne(void);
int boutonAppuye_Interne(void);
void allumerDEL_Interne(void);
void eteindreDEL_Interne(void);
void commuterDEL_Interne(void);
void allume_bit_Interne(void);
void initGPIO_Externe(void);
int boutonAppuye_Externe(void);
void allumerDEL_Externe(void);
void eteindreDEL_Externe(void);
void commuterDEL_Externe(void);
void allume_bit_Externe(void);

229
ProjetInitial/include/MyI2C.h Executable file
View file

@ -0,0 +1,229 @@
#ifndef _I2C_
#define _I2C_
#include "stm32f10x.h"
/*************************************************************************************
===================== By Periph team INSA GEI 2022 ===========================
*************************************************************************************/
/*
*************************************************************************************
===================== I2C les IO STM32F103 =================================
*************************************************************************************
Les IO sont pris en charge par la lib, pas besoin de faire les configurations Alt OD.
**I2C1**
SCL PB6
SDA PB7
**I2C2**
SCL PB10
SDA PB11
*************************************************************************************
==================== Fondamentaux I2C ==========================================
*************************************************************************************
- Bus synchrone Low speed (<100kHz) ou high speed (=400kHz), Ici Low speed 100kHz.
- Transfert octet par octet, poids fort en premier, avec aquittement pour chaque octet
- Deux lignes SDA et SCL (horloge) en open drain, repos '1'
- bit "normal" = SDA stable lors du pulse SCL (ie durant l'état haut de SCL, SDA est stable)
- bit Start/Stop/Restart = SDA non stable lorsque SCL vaut '1' (violation règle précédente)
* Start : front descendant de SDA lorsque SCL vaut '1'
* Stop : front montant de SDA lorsque SCL = '1'
* Restart = Start en cours de trame (typiquement pour changer Write/read).
- uC en Mode Master uniquement (c'est notre choix) : c'est le uC qui est maître de l'horloge SCL.
- Le Slave a une @ 7 bits. On ajoute un bit LSB qui est /WR (donc 0 pour écriture, 1 pour lecture)
- Une adresse s'écrit donc |a6 a5 a4 a3 a2 a1 a0 /WR| ce qui donne 8 bits. Elle indique une future
lecture ou écriture.
On parle d'@ 7 bits en regroupant |a6 a5 a4 a3 a2 a1 a0|
On parle d'@ 8 bits en regroupant |a6 a5 a4 a3 a2 a1 a0 /WR| (donc une @ écriture, une @ lecture)
NB : préférer le concept @7bits...c'est plus clair.
- On peut lire ou écrire une ou plusieurs données à la suite. C'est lors de l'envoie de l'adresse Slave
par le Master que le sens à venir pour les datas est indiqué.
- En écriture,
* les Ack sont faits par le slave après chaque octet envoyé par le master (Ack = mise à 0 le bit 9).
- En lecture,
* dès que le l@ slave est transmise (/RW = 1), et le Ack réalisé, le slave positionne le bit 7
du prochain octet à lire sur SDA par anticipation ,
* le master enchaîne ses pulses (9), lors du pulse 9 (le dernier) c'est le master qui acquite.
* Après chaque acquitement, le Slave amorce le prochain octet en positionnant son bit 7 sur SDA
* Après le dernier octet, le Master génère un stop.
* Pour pouvoir générer le stop, le Master doit piloter SDA, or ce n'est pas possible puisque
le Slave positionne le futur bit 7 ... Pour régler ce problème :
lors du dernier transfert, le Master N'acquitte PAS (NACK). Ainsi le Slave ne
propose plus le bit 7 du prochain octet sur SDA et libère SDA. Le Master peut alors clôturer la
communication avec un Stop.
======= Echange typique avec un Slave ================================================================
- Une lecture ou écriture se fait vers un Slave et à partir d'une adresse mémoire donnée (pointeur interne).
Ce pointeur est automatiquement incrémenté dans le slave lors des accès écriture ou lecture.
- Ecriture de N octets , trame complète (@ = adresse slave, pt = valeur de chargement du pointeur interne)
|Start Cond |@6|@5|@4|@3|@2|@1|@0| Wr =0 |Slave ACK|
|pt7|pt6|pt5|pt4|pt3|pt2|pt1|pt0|Slave ACK|
|d7|d6|d5|d4|d3|d2|d1|d0|Slave ACK| (data 1)
.....
|d7|d6|d5|d4|d3|d2|d1|d0|Salve ACK|Stop Cond| (data N)
- Lecture de N octets à partir d'une adresse de pointeur donnée
|Start Cond |@6|@5|@4|@3|@2|@1|@0| Wr =0 |Slave ACK|
|pt7|pt6|pt5|pt4|pt3|pt2|pt1|pt0|Slave ACK|
|ReStart Cond |@6|@5|@4|@3|@2|@1|@0| Wr =1 |Slave ACK| (NB: restart nécessaire pour changer écriture / lecture)
|d7|d6|d5|d4|d3|d2|d1|d0|Master ACK| (data 1)
.....
|d7|d6|d5|d4|d3|d2|d1|d0|Master ACK| (data N-1)
|d7|d6|d5|d4|d3|d2|d1|d0|Master NACK|Stop Cond| (data N)
*************************************************************************************
==================== La lib I2C ==========================================
*************************************************************************************
3 fonctions essentielles :
MyI2C_Init
MyI2C_PutString
MyI2C_GetString
1 fonction spéciale : MyI2C_Get_Error
Les fonctions Put/Get string fonctionnent sur le principe classique décrit précédemment
(Slave@, Pter @, Data...).
La fonction init prend parmi ses paramètres le nom d'une fct callback d'erreur.
En fait, le driver gère en IT les erreurs possibles I2C. La fonction MyI2C_Get_Error permet de
recevoir un code erreur.
Il est conseillé d'utiliser ce callback. Si on tombe dedans, c'est qu'une erreur s'est produite.
Si le code erreur est "inconnu", souvent c'est qu'il y a un soucis à l'adressage slave:
Vérifier alors la connectique physique SDA/SCL ainsi que l'alimentation du slave ou tout simplement
l'@ slave !
==========================================================================================*/
/*=========================================================================================
GESTION ERREURS
========================================================================================= */
typedef enum
{
OK,
BusError, //
AckFail, // Pas,d'ack
TimeOut, // SCL est resté plus de 25ms à l'état bas
UnknownError // IT erreur déclenchée mais pas de flag explicite ...
} MyI2C_Err_Enum;
/**
* @brief Retourne les erreurs I2C
* @param I2Cx: where x can be 1 or 2 to select the I2C peripheral.
* @retval Type d'erreur rencontrée , voir MyI2C_Err_Enum
*/
MyI2C_Err_Enum MyI2C_Get_Error(I2C_TypeDef * I2Cx);
/*=========================================================================================
INITIALISATION I2C
========================================================================================= */
/**
* @brief Initialise l'interface I2C (1 ou 2)
* @param I2Cx: where x can be 1 or 2 to select the I2C peripheral.
* @param char IT_Prio_I2CErr 0 à 15 (utilisé en cas d'erreur, IT courte et non bloquante
* @param *ITErr_function : callback à utiliser pour sortir d'un plantage transmission
* @retval None
* @Example MyI2C_Init(I2C1, 2,My_CallbackErr);
*/
void MyI2C_Init(I2C_TypeDef * I2Cx, char IT_Prio_I2CErr, void (*ITErr_function) (void));
/*=========================================================================================
EMISSION I2C : PutString
========================================================================================= */
// Structure de données pour l'émission ou la réception I2C :
typedef struct
{
char SlaveAdress7bits; // l'adresse I2C du slave device
char * Ptr_Data; // l'adresse du début de tableau char à recevoir/émettre (tableau en RAM uC)
char Nb_Data; // le nbre d'octets à envoyer / recevoir
}
MyI2C_RecSendData_Typedef;
/**
* @brief|Start Cond |@6|@5|@4|@3|@2|@1|@0| Wr =0 |Slave ACK|
|pt7|pt6|pt5|pt4|pt3|pt2|pt1|pt0|Slave ACK|
|d7|d6|d5|d4|d3|d2|d1|d0|Slave ACK| (data 1)
.....
|d7|d6|d5|d4|d3|d2|d1|d0|Salve ACK|Stop Cond| (data N)
* @param I2Cx: where x can be 1 or 2 to select the I2C peripheral.
* @param PteurAdress = adresse de démarrage écriture à l'interieur du slave I2C
* @param DataToSend, adresse de la structure qui contient les informations à transmettre
voir définition MyI2C_RecSendData_Typedef
* @retval None
* @Example MyI2C_PutString(I2C1,0xAA, &MyI2C_SendTimeData);
* Ecrit dans le slave câblé sur I2C1 à partir de l'@ mémoire interne Slave 0xAA
*/
void MyI2C_PutString(I2C_TypeDef * I2Cx, char PteurAdress, MyI2C_RecSendData_Typedef * DataToSend);
/*=========================================================================================
Réception I2C : GetString
========================================================================================= */
/**
* @brief |Start Cond |@6|@5|@4|@3|@2|@1|@0| Wr =0 |Slave ACK|
|pt7|pt6|pt5|pt4|pt3|pt2|pt1|pt0|Slave ACK|
|ReStart Cond |@6|@5|@4|@3|@2|@1|@0| Wr =1 |Slave ACK|
|d7|d6|d5|d4|d3|d2|d1|d0|Master ACK| (data 1)
.....
|d7|d6|d5|d4|d3|d2|d1|d0|Master NACK|Stop Cond| (data N)
* @param I2Cx: where x can be 1 or 2 to select the I2C peripheral.
* @param PteurAdress = adresse de démarrage lecture à l'interieur du slave I2C
* @param DataToSend, adresse de la structure qui contient les informations nécessaires à la
réception des données voir définition MyI2C_RecSendData_Typedef
* @retval None
* @Example MyI2C_GetString(I2C1,0xAA, &MyI2C_RecevievedTimeData);
Lit dans le slave câblé sur I2C1 à partir de l'@ mémoire interne Slave 0xAA
*/
void MyI2C_GetString(I2C_TypeDef * I2Cx, char PteurAdress, MyI2C_RecSendData_Typedef * DataToReceive);
#endif

129
ProjetInitial/include/MySPI.h Executable file
View file

@ -0,0 +1,129 @@
#ifndef INC_MYSPI_H_
#define INC_MYSPI_H_
#include "stm32f10x.h"
/*************************************************************************************
===================== By Periph team INSA GEI 2022 ===========================
*************************************************************************************/
/*
*************************************************************************************
===================== I2C les IO STM32F103 =================================
*************************************************************************************
Les IO sont pris en charge par la lib, pas besoin de faire les configurations
Sur la Nucléo , le SPI1 est perturbé par la LED2 (PA5), mais doit pouvoir subir les front SCK qd même (LED clignote vite..)
le SPI2 n'est pas utilisable car pin non connectées par défaut (sauf à modifier les SB). En fait la Nucléo fait un choix entre SPI1
et SPI2 par soudage jumper (SB).
-> Utiliser SPI1 avec la carte Nucléo
* **IO SPI 1**
SPI1_NSS PA4
SPI1_SCK PA5
SPI1_MISO PA6
SPI1_MOSI PA7
**IO SPI 2**
SPI2_NSS PB12
SPI2_SCK PB13
SPI2_MISO PB14
SPI2_MOSI PB15
*************************************************************************************
==================== Fondamentaux SPI ==========================================
*************************************************************************************
- Bus Synchrone, 4 fils (même si on peut l'utiliser en 3 fils)
- Transfert à l'octet
- Protocole entre un Master (contrôle SCK) et un Slave
- SCK permet de synchroniser les bits de chaque octet. Il se configure par :
* son niveau de repos : ici niveau '1'
* le front actif de synchronisation pour chaque bit : ici front montant (front up durant bit stable)
- /CS ou /NSS active le slave sur l'état bas
- MOSI : Master Out Slave In (donc data circulant du Master vers le Slave, donc écriture dans le Slave)
- MISO : Master In Slave Out (donc data circulant du Slave vers le Master, donc lecture du Slave)
Bien que la lib propose une fonction d'écriture et de lecture :
* une écriture s'accompagne obligatoirement d'une lecture (bidon)
* une lecture s'accompagne obligatoirement d'une écriture (bidon)
La gestion /CS = /NSS se fait "à la main". On peut alors lire toute une série d'octets
en laissant /CS à l'état bas pendant toute la durée de circulation des octets.
*************************************************************************************
==================== La lib SPI ==========================================
*************************************************************************************
fonctions essentielles :
MySPI_Init
MySPI_Send
MySPI_Read
MySPI_Set_NSS
MySPI_Clear_NSS
==========================================================================================*/
/*=========================================================================================
INITIALISATION SPI
========================================================================================= */
/**
* @brief Configure le SPI spécifié : FSCK = 281kHz, Repos SCK = '1', Front actif = up
Gestion /CS logicielle à part, configure les 4 IO
- SCK, MOSI : Out Alt push pull
- MISO : floating input
- /NSS (/CS) : Out push pull
* @param SPI_TypeDef * SPI : SPI1 ou SPI2
*/
void MySPI_Init(SPI_TypeDef * SPI);
/**
* @brief Envoie un octet (/CS non géré, à faire logiciellement)
Plus en détail, émission de l'octet souhaité sur MOSI
Lecture en même temps d'un octet poubelle sur MISO (non exploité)
* @param : char ByteToSend : l'octet à envoyer
*/
void MySPI_Send(char ByteToSend);
/**
* @brief Reçoit un octet (/CS non géré, à faire logiciellement)
Plus en détail, émission d'un octet bidon sur MOSI (0x00)
pour élaborer les 8 fronts sur SCK et donc piloter le slave en lecture
qui répond sur MISO
* @param : none
* @retval : l'octet lu.
*/
char MySPI_Read(void);
/**
* @brief Positionne /CS = /NSS à '1'. A utiliser pour borner les octets à transmettre/recevoir
* @param : none
*/
void MySPI_Set_NSS(void);
/**
* @brief Positionne /CS = /NSS à '0'. A utiliser pour borner les octets à transmettre/recevoir
* @param :none
*/
void MySPI_Clear_NSS(void);
#endif

12
ProjetInitial/include/MyTimer.h Executable file
View file

@ -0,0 +1,12 @@
#include "stm32f10x.h"
//TIMERS start
#define MyTimer_Base_Start(Timer) (Timer->CR1 |= TIM_CR1_CEN)
#define MyTimer_Base_Stop(Timer) (Timer -> CR1 =(0x0))
// IT
extern volatile int g_tick_count; // Declara que a variável existe em outro arquivo
void Test(void);
void ConfigureIT();
// PWM
void ConfigurePWM();
void ConfigureTimers();

10
ProjetInitial/include/PWM.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef PWM_H_
#define PWM_H_
#include <stm32f10x.h>
//Variables
#define POWERMODE 2 // 1 vaut powermode 1, 0 vaut powermode 2 (Powermode pour le config de dutycycle)
// Config
extern void MyTimer_PWM(TIM_TypeDef * Timer , int Channel);
extern int Set_DutyCycle_PWM(TIM_TypeDef *Timer, int Channel, int DutyC);
int Set_DutyCycle_PWM_Plateau(TIM_TypeDef *Timer, int Channel, int DutyC);
#endif

7
ProjetInitial/include/Servo.h Executable file
View file

@ -0,0 +1,7 @@
#ifndef SERVO_H_
#define SERVO_H_
#include <stm32f10x.h>
void Servo_Moteur(int angle, TIM_TypeDef * Timer, int Channel);
extern void initServo(TIM_TypeDef * Timer, int Channel);
#endif // SERVO_H_

8
ProjetInitial/include/Timer.h Executable file
View file

@ -0,0 +1,8 @@
#ifndef TIMER_H_
#define TIMER_H_
#include <stm32f10x.h>
// Config de timer
extern void MyTimer_Base_Init(TIM_TypeDef *Timer , unsigned short ValARR , unsigned short ValPSC );
// Enable timers
void EnableTimer(TIM_TypeDef *Timer);
#endif

0
reel.ini → ProjetInitial/reel.ini Normal file → Executable file
View file

0
simu.ini → ProjetInitial/simu.ini Normal file → Executable file
View file

56
ProjetInitial/src/ADC.c Executable file
View file

@ -0,0 +1,56 @@
#include <stm32f10x.h>
#include <ADC.h>
#include <MyUart.h>
#include <stdint.h>
#include <stdio.h>
//Pont diviseur du tension, coeff. = 1/13
//Alors 13V -> 12V*1/13 = 0.92V
//Tension pile donné sur GPIOA.2
void initADC(){
//Initialisation de ADC
RCC->APB2ENR |= (0x1<<10); //Initialisation du clock interne du ADC2
RCC->APB2ENR |= (0x1<<2); //GPIOA clk enable
ADC2->CR2 |= (0x1); // ON/OFF ADC2
//Init de la broche PA2 en mode analog input
GPIOA->CRL &= ~(0x00000F00);
ADC2->CR2 |= (0x1<<20); //External trigger enable
ADC2->CR2 |= (0b111<<17); //SWSTART
ADC2->CR2 |= (0x1<<1); //Continous conversion
ADC2->SQR3 = 2;
//Essai de faire un nouveau Threshold/Seuil
ADC2->CR1 |= (0x1<<23); //Watchdog enable pour mettre un threshold HIGH
ADC2->HTR &= ~(0x0FFF);
//########################MAHOUT AIDEZ NOUS############################æ
//ADC2->HTR |= 0x0475; //Changement du threshold (0.92V/3.3V)*4096
//ADC2->HTR |= 0x0BBB; //Faut demander le prof pour ce HIGH THRESHOLD
ADC2->CR2 |= (0x1); //ON ADC2
}
int recupADC(){
int data;
data = ADC2->DR;
return data;
}
void sendinfoADC(){
int valu = recupADC();
char meld[60];
char meld2[50];
int test = valu*3.3/4096;
test = test*13*100/12;
int tension = (13*valu)/ADC2->HTR;
int p2 = (13*valu)/0x0FFF;
snprintf(meld, sizeof(meld),"Pourcentage de la pile : riktig: %d next %d next %d \r\n", tension, test, p2);
snprintf(meld2, sizeof(meld2),"Tension de la pile : %dV\r\n", tension);
USART_Send_String(USART1, meld2);
}

187
ProjetInitial/src/Accelerometre.c Executable file
View file

@ -0,0 +1,187 @@
#include <stm32f10x.h>
#include <Horloge.h>
#include <MYGPIO.h>
#include <stdlib.h>
#include <MySPI.h>
#include <stdint.h>
#include <Accelerometre.h>
#include <stdio.h>
#include <Timer.h>
#include <Servo.h>
//Pin GPIOA_9 et GPIOA_10 sont pris par USART
/*
I2C SDA IN/OUT
I2C SCL OUT
*/
//il faut recuperer le data qui sort
/*
SPI1_NSS PA4 - Utilisé
NSS = 0 -> slave active
NSS = 1 -> slave inactive
SPI1_SCK PA5
SPI1_MISO PA6
SPI1_MOSI PA7
TIM3 CH3 PB0
0x32 50 DATAX0 R 00000000 X-Axis Data 0
0x33 51 DATAX1 R 00000000 X-Axis Data 1
0x34 52 DATAY0 R 00000000 Y-Axis Data 0
0x35 53 DATAY1 R 00000000 Y-Axis Data 1
0x36 54 DATAZ0 R 00000000 Z-Axis Data 0
0x37 55 DATAZ1 R 00000000 Z-Axis Data 1
*/
void initAccelo(void)
{
MySPI_Init(SPI1);
// Power_CTL register = 0x2D ? write 0x08 (MEASURE = 1)
MySPI_Clear_NSS();
MySPI_Send(0x31);
MySPI_Send(0b00001101); //Justify met MSB à gauche et b0 et b1 donne resolution en +-2g
MySPI_Set_NSS();
MySPI_Clear_NSS();
MySPI_Send(0x2D & 0x3F); // write address (no read bit!)
MySPI_Send(0x08); // set MEASURE bit
MySPI_Set_NSS();
for (volatile int i = 0; i < 10000; i++); // small delay
}
// send bits, les bits inclus en char envoyés: RW MB A5 A4 A3 A2 A1 A0
//RW: R = 1 et W = 0
//MB à 1 veut measurement et MB à 0 Standby
uint16_t * RecupAccelo(void){ //Renvoie 48 bits en forme des chars
static uint16_t Messias[3];
//On lit X0
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x32); //Lecture de X0 et MB à 1 pour garder les valeurs 0b11110010: (R/W|MB|Adress)
//Faktisk dritsmart det katten gjør, setter MB=1 som sier multiple byte read, så leser den alle 6 bytes samtidig istedenfor en og en
uint16_t X0 = MySPI_Read();
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
//On lit X1
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x33); //Lecture de X1
Messias[0] = X0 | (MySPI_Read() << 8);
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
//On lit Y0
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x34); //Lecture de Y0
uint16_t Y0 = MySPI_Read();
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
//On lit Y1
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x35); //Lecture de Y1
Messias[1] = Y0 | (MySPI_Read() << 8);
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
//On lit Z0
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x36); //Lecture de Z0
uint16_t Z0 = MySPI_Read();
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
//On lit Z1
MySPI_Clear_NSS();//Mettre la broche PA4 à 0
MySPI_Send(0x80|0x00|0x37); //Lecture de Z1
Messias[2] = Z0 | (MySPI_Read() << 8);
MySPI_Set_NSS(); //Mettre la broche PA4 à 1
return Messias;
}
uint16_t * KattRecupAccelo(void) //Beaucoup plus smart
{
static uint16_t Messias[3];
uint8_t buf[6];
// Multi-byte read from 0x32 (X0..Z1)
MySPI_Clear_NSS();
// Send READ + MB + address
MySPI_Send(0x80 | 0x40 | 0x32); // 0xF2
// Read 6 sequential registers
for (int i = 0; i < 6; i++) {
buf[i] = (uint8_t)MySPI_Read();
}
MySPI_Set_NSS();
// Convert little-endian to 16-bit signed values
Messias[0] = (uint16_t)(buf[1] << 8 | buf[0]); // X
Messias[1] = (uint16_t)(buf[3] << 8 | buf[2]); // Y
Messias[2] = (uint16_t)(buf[5] << 8 | buf[4]); // Z
return Messias;
}
void initLacheur(void){
GPIOB->CRH &= ~(0xF << (0 * 4));
GPIOB->CRH |= (0xA << (0 * 4)); //On met GPIOB.8 en mode output 2Mhz, alternate pp
#if OSKAR
EnableTimer(TIM4);
MyTimer_Base_Init(TIM4, 0xFFFF, 22);
#else
Timer_Init(TIM4, 20000 - 1, 71); //Claire m'a aidé
#endif
}
//Recuperer le DATA en X, Z, Y
#if MODEAVANCEE
//volatile uint16_t Angle_lim = 0x1E20 - 60*ANGLE; //#define ANGLE_LIMITE 0x0E38
#else
volatile uint16_t Anngle_lim = 0x1500;
#endif
/*
void LacheVoile(uint16_t voile_moy){
if (voile_moy<=Anngle_lim){// exatement à 40 degrés, on lache le 40%. 0xFF*(40deg/90deg)
//Le PWM du moteur est gère par PB7
MyTimer_PWM(TIM4, 3); //TIM4 CH3 pour PB8
Set_DutyCycle_PWM(TIM4, 3, 5); //On met Duty cycle à 2% et il reste autour de 90 deg
}
}
*/
void LacheVoileNew(){
// exatement à 40 degrés, on lache le 40%. 0xFF*(40deg/90deg)
//Le PWM du moteur est gère par PB7
Servo_Moteur(0, TIM4, 3);
}
void LacheVoileSmart(int AngelLim, uint16_t moyennen){
volatile uint16_t Val_lim = 0x1E20 - 60*AngelLim;
// exatement à 40 degrés, on lache le 40%. 0xFF*(40deg/90deg)
//Le PWM du moteur est gère par PB7
if (moyennen<Val_lim){
Servo_Moteur(0, TIM4, 3);
}
}
//Gestion de l'interruption
/*
void MyTimer_ActiveIT(TIM_TypeDef * Timer, char Prio, void(*Interrupt_fonc)(void)){ //On veut créer une fonction qui envoie un signal au cas où il y a debordement, avec une prioritaire, 0 plus importante 15 moins importante
if (Timer == TIM2){
TIM2_Appel = Interrupt_fonc;
NVIC_EnableIRQ(TIM2_IRQn);
NVIC_SetPriority(TIM2_IRQn, Prio);
TIM2->DIER |= TIM_DIER_UIE; //Le registre DIER(Interrupt Enable Register) est mis au bit Update Interrupt, qui se commute lors d'un overflow
TIM2->CR1 |= TIM_CR1_CEN; //Clock Enable
}
}
*/

Some files were not shown because too many files have changed in this diff Show more