diff --git a/.vscode/settings.json b/.vscode/settings.json index 3ae6aae..f68b429 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,6 @@ { "files.associations": { - "driver_uart.h": "c" + "driver_uart.h": "c", + "app_girouette.h": "c" } } \ No newline at end of file diff --git a/README.md b/README.md index b05c744..f2b3811 100644 --- a/README.md +++ b/README.md @@ -1,2 +1 @@ # Projet-Voilier-3 - diff --git a/driver/Driver_GPIO.c b/driver/Driver_GPIO.c index a2721fc..fd83c4e 100644 --- a/driver/Driver_GPIO.c +++ b/driver/Driver_GPIO.c @@ -32,7 +32,7 @@ void MyGPIO_Init ( MyGPIO_Struct_TypeDef * GPIOStructPtr ) } else { - GPIOStructPtr->GPIO->CRH &= ~0xF<<(4*((GPIOStructPtr->GPIO_Pin)%8)); + GPIOStructPtr->GPIO->CRH &= ~(0xF<<(4*((GPIOStructPtr->GPIO_Pin)%8))); GPIOStructPtr->GPIO->CRH |= (GPIOStructPtr->GPIO_Conf)<<(4*((GPIOStructPtr->GPIO_Pin)%8)); } diff --git a/driver/Driver_Timer.c b/driver/Driver_Timer.c index 20343b0..a1fb4cb 100644 --- a/driver/Driver_Timer.c +++ b/driver/Driver_Timer.c @@ -85,7 +85,7 @@ void MyTimer_SetPWMDutyCycle(MyTimer_Struct_TypeDef *Timer, uint16_t duty_cycle) // Utiliser le TIM4 void MyTimer_ConfigureEncoder(MyTimer_Struct_TypeDef *Timer) { Timer->Timer->PSC = 0; // Configurer le prescaler à 0 (pour diviser l'horloge de base de 72 MHz par 1) - Timer->Timer->ARR = 359; // Configurer la valeur maximale du compteur (pour éviter les problèmes de débordement) + Timer->Timer->ARR = 1440; // Configurer la valeur maximale du compteur (pour éviter les problèmes de débordement) Timer->Timer->CCMR1 |= TIM_CCMR1_CC1S_0; Timer->Timer->CCMR1 |= TIM_CCMR1_CC2S_0; @@ -149,6 +149,12 @@ void MyTimer_ActiveIT (TIM_TypeDef * Timer, char Prio, void (*IT_function)(void) } } +uint16_t TIM_GetCounter(TIM_TypeDef * Timer) +{ + // Lit la valeur actuelle du compteur CNT du timer TIMx + return Timer->CNT; +} + void TIM2_IRQHandler (void) { TIM2->SR &= ~TIM_SR_UIF; diff --git a/driver/Driver_UART.c b/driver/Driver_UART.c index 55258a8..74e5c81 100644 --- a/driver/Driver_UART.c +++ b/driver/Driver_UART.c @@ -2,7 +2,14 @@ void MyUART_Init(MyUART_Struct_TypeDef *UART) { // Active l'horloge du périphérique UART - RCC->APB1ENR |= RCC_APB1ENR_USART3EN; + + if (UART->UART == USART1) { + RCC->APB2ENR |= RCC_APB2ENR_USART1EN; + } else if (UART->UART == USART2) { + RCC->APB1ENR |= RCC_APB1ENR_USART2EN; + } else if (UART->UART == USART3) { + RCC->APB1ENR |= RCC_APB1ENR_USART3EN; + } // Active l'UART pour permettre la transmission/réception de données UART->UART->CR1 |= USART_CR1_UE; @@ -25,13 +32,19 @@ void MyUART_Init(MyUART_Struct_TypeDef *UART) { } void MyUART_SendByte(MyUART_Struct_TypeDef *UART, uint8_t data) { - // Attendre que le registre de données soit prêt à être envoyé - //while (!(UART->UART->SR & USART_SR_TXE)); - // Envoyer la donnée UART->UART->DR = data; - USART3->CR1 |= USART_CR1_TXEIE; // Active l'interruption d'envoi de données + // Attendre que la transmission soit terminée + while ((UART->UART->SR & USART_SR_TC) == 0); +} + +void MyUART_SendString(MyUART_Struct_TypeDef *UART, const char *str) { + // Envoyer chaque caractère de la chaîne + while (*str != '\0') { + MyUART_SendByte(UART, *str); + str++; + } } uint8_t MyUART_ReceiveByte(MyUART_Struct_TypeDef *UART) { @@ -57,3 +70,4 @@ void USART3_IRQHandler(void) { } } + diff --git a/driver/Driver_UART.h b/driver/Driver_UART.h index 90342ee..2eec718 100644 --- a/driver/Driver_UART.h +++ b/driver/Driver_UART.h @@ -11,5 +11,6 @@ typedef struct { void MyUART_Init(MyUART_Struct_TypeDef *UART); void MyUART_SendByte(MyUART_Struct_TypeDef *UART, uint8_t data); uint8_t MyUART_ReceiveByte(MyUART_Struct_TypeDef *UART); +void MyUART_SendString(MyUART_Struct_TypeDef *UART, const char *str); #endif diff --git a/projet-voilier/Listings/projet-voilier.map b/projet-voilier/Listings/projet-voilier.map index 45f2434..6f85bbc 100644 --- a/projet-voilier/Listings/projet-voilier.map +++ b/projet-voilier/Listings/projet-voilier.map @@ -6,10 +6,17 @@ Section Cross References main.o(.text.main) refers to driver_gpio.o(.text.MyGPIO_Init) for MyGPIO_Init main.o(.text.main) refers to driver_uart.o(.text.MyUART_Init) for MyUART_Init - main.o(.text.main) refers to driver_timer.o(.text.MyTimer_Base_Init) for MyTimer_Base_Init - main.o(.text.main) refers to driver_timer.o(.text.MyTimer_ConfigureEncoder) for MyTimer_ConfigureEncoder - main.o(.text.main) refers to driver_timer.o(.text.MyTimer_Start) for MyTimer_Start + main.o(.text.main) refers to app_girouette.o(.text.App_Girouette_Init) for App_Girouette_Init + main.o(.text.main) refers to app_girouette.o(.text.App_Girouette_GetDirection) for App_Girouette_GetDirection + main.o(.text.main) refers to driver_uart.o(.text.MyUART_SendByte) for MyUART_SendByte main.o(.ARM.exidx.text.main) refers to main.o(.text.main) for [Anonymous Symbol] + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_Base_Init) for MyTimer_Base_Init + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_ConfigureEncoder) for MyTimer_ConfigureEncoder + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_Start) for MyTimer_Start + app_girouette.o(.text.App_Girouette_Init) refers to driver_gpio.o(.text.MyGPIO_Init) for MyGPIO_Init + app_girouette.o(.ARM.exidx.text.App_Girouette_Init) refers to app_girouette.o(.text.App_Girouette_Init) for [Anonymous Symbol] + app_girouette.o(.text.App_Girouette_GetDirection) refers to driver_timer.o(.text.TIM_GetCounter) for TIM_GetCounter + app_girouette.o(.ARM.exidx.text.App_Girouette_GetDirection) refers to app_girouette.o(.text.App_Girouette_GetDirection) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Init) refers to driver_gpio.o(.text.MyGPIO_Init) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Read) refers to driver_gpio.o(.text.MyGPIO_Read) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Set) refers to driver_gpio.o(.text.MyGPIO_Set) for [Anonymous Symbol] @@ -26,6 +33,7 @@ Section Cross References driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM4_fx) for TIM4_fx driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM3_fx) for TIM3_fx driver_timer.o(.ARM.exidx.text.MyTimer_ActiveIT) refers to driver_timer.o(.text.MyTimer_ActiveIT) for [Anonymous Symbol] + driver_timer.o(.ARM.exidx.text.TIM_GetCounter) refers to driver_timer.o(.text.TIM_GetCounter) for [Anonymous Symbol] driver_timer.o(.text.TIM2_IRQHandler) refers to driver_timer.o(.data.TIM2_fx) for TIM2_fx driver_timer.o(.ARM.exidx.text.TIM2_IRQHandler) refers to driver_timer.o(.text.TIM2_IRQHandler) for [Anonymous Symbol] driver_timer.o(.text.TIM3_IRQHandler) refers to driver_timer.o(.data.TIM3_fx) for TIM3_fx @@ -183,6 +191,9 @@ Removing Unused input sections from the image. Removing main.o(.text), (0 bytes). Removing main.o(.ARM.exidx.text.main), (8 bytes). Removing main.o(.ARM.use_no_argv), (4 bytes). + Removing app_girouette.o(.text), (0 bytes). + Removing app_girouette.o(.ARM.exidx.text.App_Girouette_Init), (8 bytes). + Removing app_girouette.o(.ARM.exidx.text.App_Girouette_GetDirection), (8 bytes). Removing driver_gpio.o(.text), (0 bytes). Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Init), (8 bytes). Removing driver_gpio.o(.text.MyGPIO_Read), (12 bytes). @@ -206,6 +217,7 @@ Removing Unused input sections from the image. Removing driver_timer.o(.ARM.exidx.text.Bug), (8 bytes). Removing driver_timer.o(.text.MyTimer_ActiveIT), (150 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_ActiveIT), (8 bytes). + Removing driver_timer.o(.ARM.exidx.text.TIM_GetCounter), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM2_IRQHandler), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM3_IRQHandler), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM4_IRQHandler), (8 bytes). @@ -214,7 +226,6 @@ Removing Unused input sections from the image. Removing driver_timer.o(.ARM.exidx.text.EXTI3_IRQHandler), (8 bytes). Removing driver_uart.o(.text), (0 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_Init), (8 bytes). - Removing driver_uart.o(.text.MyUART_SendByte), (22 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_SendByte), (8 bytes). Removing driver_uart.o(.text.MyUART_ReceiveByte), (24 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_ReceiveByte), (8 bytes). @@ -235,7 +246,7 @@ Removing Unused input sections from the image. Removing system_stm32f10x.o(.data.SystemCoreClock), (4 bytes). Removing system_stm32f10x.o(.rodata.AHBPrescTable), (16 bytes). -54 unused section(s) (total 1084 bytes) removed from the image. +57 unused section(s) (total 1086 bytes) removed from the image. ============================================================================== @@ -297,6 +308,7 @@ Image Symbol Table ../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 + App_girouette.c 0x00000000 Number 0 app_girouette.o ABSOLUTE Driver_ADC.c 0x00000000 Number 0 driver_adc.o ABSOLUTE Driver_GPIO.c 0x00000000 Number 0 driver_gpio.o ABSOLUTE Driver_Timer.c 0x00000000 Number 0 driver_timer.o ABSOLUTE @@ -361,20 +373,24 @@ Image Symbol Table .text 0x08000240 Section 2 use_no_semi.o(.text) .text 0x08000242 Section 0 indicate_semi.o(.text) [Anonymous Symbol] 0x08000244 Section 0 driver_adc.o(.text.ADC1_2_IRQHandler) - [Anonymous Symbol] 0x08000260 Section 0 driver_timer.o(.text.Bug) - [Anonymous Symbol] 0x08000264 Section 0 driver_timer.o(.text.EXTI3_IRQHandler) - [Anonymous Symbol] 0x08000268 Section 0 driver_gpio.o(.text.MyGPIO_Init) - [Anonymous Symbol] 0x08000304 Section 0 driver_timer.o(.text.MyTimer_Base_Init) - [Anonymous Symbol] 0x08000390 Section 0 driver_timer.o(.text.MyTimer_ConfigureEncoder) - [Anonymous Symbol] 0x08000438 Section 0 driver_timer.o(.text.MyTimer_Start) - [Anonymous Symbol] 0x08000444 Section 0 driver_uart.o(.text.MyUART_Init) - [Anonymous Symbol] 0x08000490 Section 0 system_stm32f10x.o(.text.SystemInit) - [Anonymous Symbol] 0x080005a0 Section 0 driver_timer.o(.text.TIM2_IRQHandler) - [Anonymous Symbol] 0x080005bc Section 0 driver_timer.o(.text.TIM3_IRQHandler) - [Anonymous Symbol] 0x080005d8 Section 0 driver_timer.o(.text.TIM4_IRQHandler) - [Anonymous Symbol] 0x080005f4 Section 0 driver_uart.o(.text.USART3_IRQHandler) - [Anonymous Symbol] 0x08000604 Section 0 driver_adc.o(.text.erreur) - [Anonymous Symbol] 0x08000608 Section 0 main.o(.text.main) + [Anonymous Symbol] 0x08000260 Section 0 app_girouette.o(.text.App_Girouette_GetDirection) + [Anonymous Symbol] 0x0800027c Section 0 app_girouette.o(.text.App_Girouette_Init) + [Anonymous Symbol] 0x080002cc Section 0 driver_timer.o(.text.Bug) + [Anonymous Symbol] 0x080002d0 Section 0 driver_timer.o(.text.EXTI3_IRQHandler) + [Anonymous Symbol] 0x080002d4 Section 0 driver_gpio.o(.text.MyGPIO_Init) + [Anonymous Symbol] 0x08000370 Section 0 driver_timer.o(.text.MyTimer_Base_Init) + [Anonymous Symbol] 0x080003fc Section 0 driver_timer.o(.text.MyTimer_ConfigureEncoder) + [Anonymous Symbol] 0x080004a4 Section 0 driver_timer.o(.text.MyTimer_Start) + [Anonymous Symbol] 0x080004b0 Section 0 driver_uart.o(.text.MyUART_Init) + [Anonymous Symbol] 0x080004fc Section 0 driver_uart.o(.text.MyUART_SendByte) + [Anonymous Symbol] 0x08000514 Section 0 system_stm32f10x.o(.text.SystemInit) + [Anonymous Symbol] 0x08000624 Section 0 driver_timer.o(.text.TIM2_IRQHandler) + [Anonymous Symbol] 0x08000640 Section 0 driver_timer.o(.text.TIM3_IRQHandler) + [Anonymous Symbol] 0x0800065c Section 0 driver_timer.o(.text.TIM4_IRQHandler) + [Anonymous Symbol] 0x08000678 Section 0 driver_timer.o(.text.TIM_GetCounter) + [Anonymous Symbol] 0x0800067c Section 0 driver_uart.o(.text.USART3_IRQHandler) + [Anonymous Symbol] 0x0800068c Section 0 driver_adc.o(.text.erreur) + [Anonymous Symbol] 0x08000690 Section 0 main.o(.text.main) .bss 0x20000010 Section 96 libspace.o(.bss) Heap_Mem 0x20000070 Data 512 startup_stm32f10x_md.o(HEAP) HEAP 0x20000070 Section 512 startup_stm32f10x_md.o(HEAP) @@ -530,22 +546,26 @@ Image Symbol Table __use_no_semihosting_swi 0x08000241 Thumb Code 2 use_no_semi.o(.text) __semihosting_library_function 0x08000243 Thumb Code 0 indicate_semi.o(.text) ADC1_2_IRQHandler 0x08000245 Thumb Code 28 driver_adc.o(.text.ADC1_2_IRQHandler) - Bug 0x08000261 Thumb Code 2 driver_timer.o(.text.Bug) - EXTI3_IRQHandler 0x08000265 Thumb Code 2 driver_timer.o(.text.EXTI3_IRQHandler) - MyGPIO_Init 0x08000269 Thumb Code 140 driver_gpio.o(.text.MyGPIO_Init) - MyTimer_Base_Init 0x08000305 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) - MyTimer_ConfigureEncoder 0x08000391 Thumb Code 168 driver_timer.o(.text.MyTimer_ConfigureEncoder) - MyTimer_Start 0x08000439 Thumb Code 12 driver_timer.o(.text.MyTimer_Start) - MyUART_Init 0x08000445 Thumb Code 76 driver_uart.o(.text.MyUART_Init) - SystemInit 0x08000491 Thumb Code 272 system_stm32f10x.o(.text.SystemInit) - TIM2_IRQHandler 0x080005a1 Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) - TIM3_IRQHandler 0x080005bd Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) - TIM4_IRQHandler 0x080005d9 Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) - USART3_IRQHandler 0x080005f5 Thumb Code 14 driver_uart.o(.text.USART3_IRQHandler) - erreur 0x08000605 Thumb Code 2 driver_adc.o(.text.erreur) - main 0x08000609 Thumb Code 126 main.o(.text.main) - Region$$Table$$Base 0x08000688 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x080006a8 Number 0 anon$$obj.o(Region$$Table) + App_Girouette_GetDirection 0x08000261 Thumb Code 26 app_girouette.o(.text.App_Girouette_GetDirection) + App_Girouette_Init 0x0800027d Thumb Code 80 app_girouette.o(.text.App_Girouette_Init) + Bug 0x080002cd Thumb Code 2 driver_timer.o(.text.Bug) + EXTI3_IRQHandler 0x080002d1 Thumb Code 2 driver_timer.o(.text.EXTI3_IRQHandler) + MyGPIO_Init 0x080002d5 Thumb Code 140 driver_gpio.o(.text.MyGPIO_Init) + MyTimer_Base_Init 0x08000371 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) + MyTimer_ConfigureEncoder 0x080003fd Thumb Code 168 driver_timer.o(.text.MyTimer_ConfigureEncoder) + MyTimer_Start 0x080004a5 Thumb Code 12 driver_timer.o(.text.MyTimer_Start) + MyUART_Init 0x080004b1 Thumb Code 76 driver_uart.o(.text.MyUART_Init) + MyUART_SendByte 0x080004fd Thumb Code 22 driver_uart.o(.text.MyUART_SendByte) + SystemInit 0x08000515 Thumb Code 272 system_stm32f10x.o(.text.SystemInit) + TIM2_IRQHandler 0x08000625 Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) + TIM3_IRQHandler 0x08000641 Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) + TIM4_IRQHandler 0x0800065d Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) + TIM_GetCounter 0x08000679 Thumb Code 4 driver_timer.o(.text.TIM_GetCounter) + USART3_IRQHandler 0x0800067d Thumb Code 14 driver_uart.o(.text.USART3_IRQHandler) + erreur 0x0800068d Thumb Code 2 driver_adc.o(.text.erreur) + main 0x08000691 Thumb Code 82 main.o(.text.main) + Region$$Table$$Base 0x080006e4 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x08000704 Number 0 anon$$obj.o(Region$$Table) ADC1_2_fx 0x20000000 Data 4 driver_adc.o(.data.ADC1_2_fx) TIM2_fx 0x20000004 Data 4 driver_timer.o(.data.TIM2_fx) TIM3_fx 0x20000008 Data 4 driver_timer.o(.data.TIM3_fx) @@ -561,112 +581,118 @@ Memory Map of the image Image Entry point : 0x08000189 - Load Region LR_1 (Base: 0x08000000, Size: 0x000006b8, Max: 0xffffffff, ABSOLUTE) + Load Region LR_1 (Base: 0x08000000, Size: 0x00000714, Max: 0xffffffff, ABSOLUTE) - Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000006a8, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000704, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x08000000 0x08000000 0x000000ec Data RO 102 RESET startup_stm32f10x_md.o - 0x080000ec 0x080000ec 0x00000008 Code RO 127 * !!!main c_w.l(__main.o) - 0x080000f4 0x080000f4 0x00000034 Code RO 292 !!!scatter c_w.l(__scatter.o) - 0x08000128 0x08000128 0x0000001a Code RO 294 !!handler_copy c_w.l(__scatter_copy.o) + 0x08000000 0x08000000 0x000000ec Data RO 116 RESET startup_stm32f10x_md.o + 0x080000ec 0x080000ec 0x00000008 Code RO 141 * !!!main c_w.l(__main.o) + 0x080000f4 0x080000f4 0x00000034 Code RO 306 !!!scatter c_w.l(__scatter.o) + 0x08000128 0x08000128 0x0000001a Code RO 308 !!handler_copy c_w.l(__scatter_copy.o) 0x08000142 0x08000142 0x00000002 PAD - 0x08000144 0x08000144 0x0000001c Code RO 296 !!handler_zi c_w.l(__scatter_zi.o) - 0x08000160 0x08000160 0x00000002 Code RO 154 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x08000162 0x08000162 0x00000000 Code RO 161 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 163 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 165 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 168 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 170 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 172 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 175 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 177 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 179 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 181 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 183 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 185 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 187 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 189 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 191 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 193 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 195 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 199 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 201 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 203 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 205 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000002 Code RO 206 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) - 0x08000164 0x08000164 0x00000002 Code RO 228 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x08000166 0x08000166 0x00000000 Code RO 243 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 245 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 248 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 251 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 253 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 256 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000002 Code RO 257 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) - 0x08000168 0x08000168 0x00000000 Code RO 129 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x08000168 0x08000168 0x00000000 Code RO 131 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x08000168 0x08000168 0x00000006 Code RO 143 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x0800016e 0x0800016e 0x00000000 Code RO 133 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x0800016e 0x0800016e 0x00000004 Code RO 134 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000000 Code RO 136 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000008 Code RO 137 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x0800017a 0x0800017a 0x00000002 Code RO 158 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x0800017c 0x0800017c 0x00000000 Code RO 208 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x0800017c 0x0800017c 0x00000004 Code RO 209 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x08000180 0x08000180 0x00000006 Code RO 210 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) + 0x08000144 0x08000144 0x0000001c Code RO 310 !!handler_zi c_w.l(__scatter_zi.o) + 0x08000160 0x08000160 0x00000002 Code RO 168 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) + 0x08000162 0x08000162 0x00000000 Code RO 175 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 177 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 179 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 182 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 184 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 186 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 189 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 191 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 193 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 195 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 197 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 199 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 201 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 203 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 205 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 207 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 209 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 213 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 215 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 217 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 219 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000002 Code RO 220 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) + 0x08000164 0x08000164 0x00000002 Code RO 242 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) + 0x08000166 0x08000166 0x00000000 Code RO 257 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 259 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 262 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 265 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 267 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 270 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000002 Code RO 271 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) + 0x08000168 0x08000168 0x00000000 Code RO 143 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) + 0x08000168 0x08000168 0x00000000 Code RO 145 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) + 0x08000168 0x08000168 0x00000006 Code RO 157 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) + 0x0800016e 0x0800016e 0x00000000 Code RO 147 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) + 0x0800016e 0x0800016e 0x00000004 Code RO 148 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000000 Code RO 150 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000008 Code RO 151 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) + 0x0800017a 0x0800017a 0x00000002 Code RO 172 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) + 0x0800017c 0x0800017c 0x00000000 Code RO 222 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) + 0x0800017c 0x0800017c 0x00000004 Code RO 223 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) + 0x08000180 0x08000180 0x00000006 Code RO 224 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) 0x08000186 0x08000186 0x00000002 PAD - 0x08000188 0x08000188 0x00000040 Code RO 103 * .text startup_stm32f10x_md.o - 0x080001c8 0x080001c8 0x00000006 Code RO 125 .text c_w.l(heapauxi.o) - 0x080001ce 0x080001ce 0x0000004a Code RO 145 .text c_w.l(sys_stackheap_outer.o) - 0x08000218 0x08000218 0x00000012 Code RO 147 .text c_w.l(exit.o) + 0x08000188 0x08000188 0x00000040 Code RO 117 * .text startup_stm32f10x_md.o + 0x080001c8 0x080001c8 0x00000006 Code RO 139 .text c_w.l(heapauxi.o) + 0x080001ce 0x080001ce 0x0000004a Code RO 159 .text c_w.l(sys_stackheap_outer.o) + 0x08000218 0x08000218 0x00000012 Code RO 161 .text c_w.l(exit.o) 0x0800022a 0x0800022a 0x00000002 PAD - 0x0800022c 0x0800022c 0x00000008 Code RO 155 .text c_w.l(libspace.o) - 0x08000234 0x08000234 0x0000000c Code RO 218 .text c_w.l(sys_exit.o) - 0x08000240 0x08000240 0x00000002 Code RO 233 .text c_w.l(use_no_semi.o) - 0x08000242 0x08000242 0x00000000 Code RO 235 .text c_w.l(indicate_semi.o) + 0x0800022c 0x0800022c 0x00000008 Code RO 169 .text c_w.l(libspace.o) + 0x08000234 0x08000234 0x0000000c Code RO 232 .text c_w.l(sys_exit.o) + 0x08000240 0x08000240 0x00000002 Code RO 247 .text c_w.l(use_no_semi.o) + 0x08000242 0x08000242 0x00000000 Code RO 249 .text c_w.l(indicate_semi.o) 0x08000242 0x08000242 0x00000002 PAD - 0x08000244 0x08000244 0x0000001c Code RO 90 .text.ADC1_2_IRQHandler driver_adc.o - 0x08000260 0x08000260 0x00000002 Code RO 41 .text.Bug driver_timer.o - 0x08000262 0x08000262 0x00000002 PAD - 0x08000264 0x08000264 0x00000002 Code RO 53 .text.EXTI3_IRQHandler driver_timer.o - 0x08000266 0x08000266 0x00000002 PAD - 0x08000268 0x08000268 0x0000009c Code RO 11 .text.MyGPIO_Init driver_gpio.o - 0x08000304 0x08000304 0x0000008c Code RO 29 .text.MyTimer_Base_Init driver_timer.o - 0x08000390 0x08000390 0x000000a8 Code RO 39 .text.MyTimer_ConfigureEncoder driver_timer.o - 0x08000438 0x08000438 0x0000000c Code RO 31 .text.MyTimer_Start driver_timer.o - 0x08000444 0x08000444 0x0000004c Code RO 66 .text.MyUART_Init driver_uart.o - 0x08000490 0x08000490 0x00000110 Code RO 110 .text.SystemInit system_stm32f10x.o - 0x080005a0 0x080005a0 0x0000001a Code RO 45 .text.TIM2_IRQHandler driver_timer.o - 0x080005ba 0x080005ba 0x00000002 PAD - 0x080005bc 0x080005bc 0x0000001c Code RO 47 .text.TIM3_IRQHandler driver_timer.o - 0x080005d8 0x080005d8 0x0000001c Code RO 49 .text.TIM4_IRQHandler driver_timer.o - 0x080005f4 0x080005f4 0x0000000e Code RO 72 .text.USART3_IRQHandler driver_uart.o - 0x08000602 0x08000602 0x00000002 PAD - 0x08000604 0x08000604 0x00000002 Code RO 82 .text.erreur driver_adc.o - 0x08000606 0x08000606 0x00000002 PAD - 0x08000608 0x08000608 0x0000007e Code RO 2 .text.main main.o - 0x08000686 0x08000686 0x00000002 PAD - 0x08000688 0x08000688 0x00000020 Data RO 291 Region$$Table anon$$obj.o + 0x08000244 0x08000244 0x0000001c Code RO 104 .text.ADC1_2_IRQHandler driver_adc.o + 0x08000260 0x08000260 0x0000001a Code RO 13 .text.App_Girouette_GetDirection app_girouette.o + 0x0800027a 0x0800027a 0x00000002 PAD + 0x0800027c 0x0800027c 0x00000050 Code RO 11 .text.App_Girouette_Init app_girouette.o + 0x080002cc 0x080002cc 0x00000002 Code RO 53 .text.Bug driver_timer.o + 0x080002ce 0x080002ce 0x00000002 PAD + 0x080002d0 0x080002d0 0x00000002 Code RO 67 .text.EXTI3_IRQHandler driver_timer.o + 0x080002d2 0x080002d2 0x00000002 PAD + 0x080002d4 0x080002d4 0x0000009c Code RO 23 .text.MyGPIO_Init driver_gpio.o + 0x08000370 0x08000370 0x0000008c Code RO 41 .text.MyTimer_Base_Init driver_timer.o + 0x080003fc 0x080003fc 0x000000a8 Code RO 51 .text.MyTimer_ConfigureEncoder driver_timer.o + 0x080004a4 0x080004a4 0x0000000c Code RO 43 .text.MyTimer_Start driver_timer.o + 0x080004b0 0x080004b0 0x0000004c Code RO 80 .text.MyUART_Init driver_uart.o + 0x080004fc 0x080004fc 0x00000016 Code RO 82 .text.MyUART_SendByte driver_uart.o + 0x08000512 0x08000512 0x00000002 PAD + 0x08000514 0x08000514 0x00000110 Code RO 124 .text.SystemInit system_stm32f10x.o + 0x08000624 0x08000624 0x0000001a Code RO 59 .text.TIM2_IRQHandler driver_timer.o + 0x0800063e 0x0800063e 0x00000002 PAD + 0x08000640 0x08000640 0x0000001c Code RO 61 .text.TIM3_IRQHandler driver_timer.o + 0x0800065c 0x0800065c 0x0000001c Code RO 63 .text.TIM4_IRQHandler driver_timer.o + 0x08000678 0x08000678 0x00000004 Code RO 57 .text.TIM_GetCounter driver_timer.o + 0x0800067c 0x0800067c 0x0000000e Code RO 86 .text.USART3_IRQHandler driver_uart.o + 0x0800068a 0x0800068a 0x00000002 PAD + 0x0800068c 0x0800068c 0x00000002 Code RO 96 .text.erreur driver_adc.o + 0x0800068e 0x0800068e 0x00000002 PAD + 0x08000690 0x08000690 0x00000052 Code RO 2 .text.main main.o + 0x080006e2 0x080006e2 0x00000002 PAD + 0x080006e4 0x080006e4 0x00000020 Data RO 305 Region$$Table anon$$obj.o - Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x080006a8, Size: 0x00000010, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x08000704, Size: 0x00000010, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x080006a8 0x00000004 Data RW 92 .data.ADC1_2_fx driver_adc.o - 0x20000004 0x080006ac 0x00000004 Data RW 55 .data.TIM2_fx driver_timer.o - 0x20000008 0x080006b0 0x00000004 Data RW 56 .data.TIM3_fx driver_timer.o - 0x2000000c 0x080006b4 0x00000004 Data RW 57 .data.TIM4_fx driver_timer.o + 0x20000000 0x08000704 0x00000004 Data RW 106 .data.ADC1_2_fx driver_adc.o + 0x20000004 0x08000708 0x00000004 Data RW 69 .data.TIM2_fx driver_timer.o + 0x20000008 0x0800070c 0x00000004 Data RW 70 .data.TIM3_fx driver_timer.o + 0x2000000c 0x08000710 0x00000004 Data RW 71 .data.TIM4_fx driver_timer.o - Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x080006b8, Size: 0x00000660, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x08000714, Size: 0x00000660, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000010 - 0x00000060 Zero RW 156 .bss c_w.l(libspace.o) - 0x20000070 - 0x00000200 Zero RW 101 HEAP startup_stm32f10x_md.o - 0x20000270 - 0x00000400 Zero RW 100 STACK startup_stm32f10x_md.o + 0x20000010 - 0x00000060 Zero RW 170 .bss c_w.l(libspace.o) + 0x20000070 - 0x00000200 Zero RW 115 HEAP startup_stm32f10x_md.o + 0x20000270 - 0x00000400 Zero RW 114 STACK startup_stm32f10x_md.o ============================================================================== @@ -676,18 +702,19 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name + 106 0 0 0 0 2427 app_girouette.o 30 0 0 4 0 4524 driver_adc.o 156 16 0 0 0 2108 driver_gpio.o - 406 0 0 12 0 8028 driver_timer.o - 90 0 0 0 0 2250 driver_uart.o - 126 0 0 0 0 2548 main.o + 410 0 0 12 0 8169 driver_timer.o + 112 0 0 0 0 2250 driver_uart.o + 82 0 0 0 0 1572 main.o 64 26 236 0 1536 864 startup_stm32f10x_md.o 272 0 0 0 0 2813 system_stm32f10x.o ---------------------------------------------------------------------- - 1156 42 268 16 1536 23135 Object Totals + 1248 42 268 16 1536 24727 Object Totals 0 0 32 0 0 0 (incl. Generated) - 12 0 0 0 0 0 (incl. Padding) + 16 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- @@ -734,15 +761,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 1436 58 268 16 1632 23511 Grand Totals - 1436 58 268 16 1632 23511 ELF Image Totals - 1436 58 268 16 0 0 ROM Totals + 1528 58 268 16 1632 25083 Grand Totals + 1528 58 268 16 1632 25083 ELF Image Totals + 1528 58 268 16 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 1704 ( 1.66kB) + Total RO Size (Code + RO Data) 1796 ( 1.75kB) Total RW Size (RW Data + ZI Data) 1648 ( 1.61kB) - Total ROM Size (Code + RO Data + RW Data) 1720 ( 1.68kB) + Total ROM Size (Code + RO Data + RW Data) 1812 ( 1.77kB) ============================================================================== diff --git a/projet-voilier/Listings/projet-voilier_reel.map b/projet-voilier/Listings/projet-voilier_reel.map index 59b9885..b5847ed 100644 --- a/projet-voilier/Listings/projet-voilier_reel.map +++ b/projet-voilier/Listings/projet-voilier_reel.map @@ -5,11 +5,28 @@ Component: Arm Compiler for Embedded 6.19 Tool: armlink [5e73cb00] Section Cross References main.o(.text.main) refers to driver_gpio.o(.text.MyGPIO_Init) for MyGPIO_Init - main.o(.text.main) refers to driver_uart.o(.text.MyUART_Init) for MyUART_Init main.o(.text.main) refers to driver_timer.o(.text.MyTimer_Base_Init) for MyTimer_Base_Init - main.o(.text.main) refers to driver_timer.o(.text.MyTimer_ConfigureEncoder) for MyTimer_ConfigureEncoder + main.o(.text.main) refers to driver_timer.o(.text.MyTimer_ConfigurePWM) for MyTimer_ConfigurePWM main.o(.text.main) refers to driver_timer.o(.text.MyTimer_Start) for MyTimer_Start + main.o(.text.main) refers to driver_uart.o(.text.MyUART_Init) for MyUART_Init + main.o(.text.main) refers to app_girouette.o(.text.App_Girouette_Init) for App_Girouette_Init + main.o(.text.main) refers to driver_timer.o(.text.MyTimer_SetPWMDutyCycle) for MyTimer_SetPWMDutyCycle + main.o(.text.main) refers to dfltui.o(.text) for __aeabi_ui2d + main.o(.text.main) refers to printfa.o(i.__0sprintf) for __2sprintf + main.o(.text.main) refers to driver_uart.o(.text.MyUART_SendString) for MyUART_SendString + main.o(.text.main) refers to driver_uart.o(.text.MyUART_SendByte) for MyUART_SendByte + main.o(.text.main) refers to app_girouette.o(.text.App_Girouette_GetDirection) for App_Girouette_GetDirection main.o(.ARM.exidx.text.main) refers to main.o(.text.main) for [Anonymous Symbol] + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_Base_Init) for MyTimer_Base_Init + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_ConfigureEncoder) for MyTimer_ConfigureEncoder + app_girouette.o(.text.App_Girouette_Init) refers to driver_timer.o(.text.MyTimer_Start) for MyTimer_Start + app_girouette.o(.text.App_Girouette_Init) refers to driver_gpio.o(.text.MyGPIO_Init) for MyGPIO_Init + app_girouette.o(.ARM.exidx.text.App_Girouette_Init) refers to app_girouette.o(.text.App_Girouette_Init) for [Anonymous Symbol] + app_girouette.o(.text.App_Girouette_GetDirection) refers to driver_timer.o(.text.TIM_GetCounter) for TIM_GetCounter + app_girouette.o(.text.App_Girouette_GetDirection) refers to dflti.o(.text) for __aeabi_i2d + app_girouette.o(.text.App_Girouette_GetDirection) refers to dmul.o(.text) for __aeabi_dmul + app_girouette.o(.text.App_Girouette_GetDirection) refers to dfixi.o(.text) for __aeabi_d2iz + app_girouette.o(.ARM.exidx.text.App_Girouette_GetDirection) refers to app_girouette.o(.text.App_Girouette_GetDirection) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Init) refers to driver_gpio.o(.text.MyGPIO_Init) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Read) refers to driver_gpio.o(.text.MyGPIO_Read) for [Anonymous Symbol] driver_gpio.o(.ARM.exidx.text.MyGPIO_Set) refers to driver_gpio.o(.text.MyGPIO_Set) for [Anonymous Symbol] @@ -26,6 +43,7 @@ Section Cross References driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM4_fx) for TIM4_fx driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM3_fx) for TIM3_fx driver_timer.o(.ARM.exidx.text.MyTimer_ActiveIT) refers to driver_timer.o(.text.MyTimer_ActiveIT) for [Anonymous Symbol] + driver_timer.o(.ARM.exidx.text.TIM_GetCounter) refers to driver_timer.o(.text.TIM_GetCounter) for [Anonymous Symbol] driver_timer.o(.text.TIM2_IRQHandler) refers to driver_timer.o(.data.TIM2_fx) for TIM2_fx driver_timer.o(.ARM.exidx.text.TIM2_IRQHandler) refers to driver_timer.o(.text.TIM2_IRQHandler) for [Anonymous Symbol] driver_timer.o(.text.TIM3_IRQHandler) refers to driver_timer.o(.data.TIM3_fx) for TIM3_fx @@ -39,6 +57,7 @@ Section Cross References driver_timer.o(.data.TIM4_fx) refers to driver_timer.o(.text.Bug) for Bug driver_uart.o(.ARM.exidx.text.MyUART_Init) refers to driver_uart.o(.text.MyUART_Init) for [Anonymous Symbol] driver_uart.o(.ARM.exidx.text.MyUART_SendByte) refers to driver_uart.o(.text.MyUART_SendByte) for [Anonymous Symbol] + driver_uart.o(.ARM.exidx.text.MyUART_SendString) refers to driver_uart.o(.text.MyUART_SendString) for [Anonymous Symbol] driver_uart.o(.ARM.exidx.text.MyUART_ReceiveByte) refers to driver_uart.o(.text.MyUART_ReceiveByte) for [Anonymous Symbol] driver_uart.o(.ARM.exidx.text.USART3_IRQHandler) refers to driver_uart.o(.text.USART3_IRQHandler) for [Anonymous Symbol] driver_adc.o(.ARM.exidx.text.erreur) refers to driver_adc.o(.text.erreur) for [Anonymous Symbol] @@ -70,6 +89,250 @@ Section Cross References entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry9a.o(.ARM.Collect$$$$0000000B) for _main_init entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry5.o(.ARM.Collect$$$$00000004) for _main_scatterload entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry2.o(.ARM.Collect$$$$00000001) for _main_stk + printfb.o(i.__0fprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0fprintf$bare) refers to fputc.o(i.fputc) for fputc + printfb.o(i.__0printf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0printf$bare) refers to fputc.o(i.fputc) for fputc + printfb.o(i.__0printf$bare) refers to stdout.o(.data) for __stdout + printfb.o(i.__0snprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0snprintf$bare) refers to printfb.o(i._snputc) for _snputc + printfb.o(i.__0sprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0sprintf$bare) refers to printfb.o(i._sputc) for _sputc + printfb.o(i.__0vfprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0vfprintf$bare) refers to fputc.o(i.fputc) for fputc + printfb.o(i.__0vprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0vprintf$bare) refers to fputc.o(i.fputc) for fputc + printfb.o(i.__0vprintf$bare) refers to stdout.o(.data) for __stdout + printfb.o(i.__0vsnprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0vsnprintf$bare) refers to printfb.o(i._snputc) for _snputc + printfb.o(i.__0vsprintf$bare) refers to printfb.o(i._printf_core) for _printf_core + printfb.o(i.__0vsprintf$bare) refers to printfb.o(i._sputc) for _sputc + printf0.o(i.__0fprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0fprintf$0) refers to fputc.o(i.fputc) for fputc + printf0.o(i.__0printf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0printf$0) refers to fputc.o(i.fputc) for fputc + printf0.o(i.__0printf$0) refers to stdout.o(.data) for __stdout + printf0.o(i.__0snprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0snprintf$0) refers to printf0.o(i._snputc) for _snputc + printf0.o(i.__0sprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0sprintf$0) refers to printf0.o(i._sputc) for _sputc + printf0.o(i.__0vfprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0vfprintf$0) refers to fputc.o(i.fputc) for fputc + printf0.o(i.__0vprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0vprintf$0) refers to fputc.o(i.fputc) for fputc + printf0.o(i.__0vprintf$0) refers to stdout.o(.data) for __stdout + printf0.o(i.__0vsnprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0vsnprintf$0) refers to printf0.o(i._snputc) for _snputc + printf0.o(i.__0vsprintf$0) refers to printf0.o(i._printf_core) for _printf_core + printf0.o(i.__0vsprintf$0) refers to printf0.o(i._sputc) for _sputc + printf1.o(i.__0fprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0fprintf$1) refers to fputc.o(i.fputc) for fputc + printf1.o(i.__0printf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0printf$1) refers to fputc.o(i.fputc) for fputc + printf1.o(i.__0printf$1) refers to stdout.o(.data) for __stdout + printf1.o(i.__0snprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0snprintf$1) refers to printf1.o(i._snputc) for _snputc + printf1.o(i.__0sprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0sprintf$1) refers to printf1.o(i._sputc) for _sputc + printf1.o(i.__0vfprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0vfprintf$1) refers to fputc.o(i.fputc) for fputc + printf1.o(i.__0vprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0vprintf$1) refers to fputc.o(i.fputc) for fputc + printf1.o(i.__0vprintf$1) refers to stdout.o(.data) for __stdout + printf1.o(i.__0vsnprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0vsnprintf$1) refers to printf1.o(i._snputc) for _snputc + printf1.o(i.__0vsprintf$1) refers to printf1.o(i._printf_core) for _printf_core + printf1.o(i.__0vsprintf$1) refers to printf1.o(i._sputc) for _sputc + printf1.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod + printf2.o(i.__0fprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0fprintf$2) refers to fputc.o(i.fputc) for fputc + printf2.o(i.__0printf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0printf$2) refers to fputc.o(i.fputc) for fputc + printf2.o(i.__0printf$2) refers to stdout.o(.data) for __stdout + printf2.o(i.__0snprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0snprintf$2) refers to printf2.o(i._snputc) for _snputc + printf2.o(i.__0sprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0sprintf$2) refers to printf2.o(i._sputc) for _sputc + printf2.o(i.__0vfprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0vfprintf$2) refers to fputc.o(i.fputc) for fputc + printf2.o(i.__0vprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0vprintf$2) refers to fputc.o(i.fputc) for fputc + printf2.o(i.__0vprintf$2) refers to stdout.o(.data) for __stdout + printf2.o(i.__0vsnprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0vsnprintf$2) refers to printf2.o(i._snputc) for _snputc + printf2.o(i.__0vsprintf$2) refers to printf2.o(i._printf_core) for _printf_core + printf2.o(i.__0vsprintf$2) refers to printf2.o(i._sputc) for _sputc + printf3.o(i.__0fprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0fprintf$3) refers to fputc.o(i.fputc) for fputc + printf3.o(i.__0printf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0printf$3) refers to fputc.o(i.fputc) for fputc + printf3.o(i.__0printf$3) refers to stdout.o(.data) for __stdout + printf3.o(i.__0snprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0snprintf$3) refers to printf3.o(i._snputc) for _snputc + printf3.o(i.__0sprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0sprintf$3) refers to printf3.o(i._sputc) for _sputc + printf3.o(i.__0vfprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0vfprintf$3) refers to fputc.o(i.fputc) for fputc + printf3.o(i.__0vprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0vprintf$3) refers to fputc.o(i.fputc) for fputc + printf3.o(i.__0vprintf$3) refers to stdout.o(.data) for __stdout + printf3.o(i.__0vsnprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0vsnprintf$3) refers to printf3.o(i._snputc) for _snputc + printf3.o(i.__0vsprintf$3) refers to printf3.o(i._printf_core) for _printf_core + printf3.o(i.__0vsprintf$3) refers to printf3.o(i._sputc) for _sputc + printf3.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod + printf4.o(i.__0fprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0fprintf$4) refers to fputc.o(i.fputc) for fputc + printf4.o(i.__0printf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0printf$4) refers to fputc.o(i.fputc) for fputc + printf4.o(i.__0printf$4) refers to stdout.o(.data) for __stdout + printf4.o(i.__0snprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0snprintf$4) refers to printf4.o(i._snputc) for _snputc + printf4.o(i.__0sprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0sprintf$4) refers to printf4.o(i._sputc) for _sputc + printf4.o(i.__0vfprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0vfprintf$4) refers to fputc.o(i.fputc) for fputc + printf4.o(i.__0vprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0vprintf$4) refers to fputc.o(i.fputc) for fputc + printf4.o(i.__0vprintf$4) refers to stdout.o(.data) for __stdout + printf4.o(i.__0vsnprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0vsnprintf$4) refers to printf4.o(i._snputc) for _snputc + printf4.o(i.__0vsprintf$4) refers to printf4.o(i._printf_core) for _printf_core + printf4.o(i.__0vsprintf$4) refers to printf4.o(i._sputc) for _sputc + printf4.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod + printf5.o(i.__0fprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0fprintf$5) refers to fputc.o(i.fputc) for fputc + printf5.o(i.__0printf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0printf$5) refers to fputc.o(i.fputc) for fputc + printf5.o(i.__0printf$5) refers to stdout.o(.data) for __stdout + printf5.o(i.__0snprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0snprintf$5) refers to printf5.o(i._snputc) for _snputc + printf5.o(i.__0sprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0sprintf$5) refers to printf5.o(i._sputc) for _sputc + printf5.o(i.__0vfprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0vfprintf$5) refers to fputc.o(i.fputc) for fputc + printf5.o(i.__0vprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0vprintf$5) refers to fputc.o(i.fputc) for fputc + printf5.o(i.__0vprintf$5) refers to stdout.o(.data) for __stdout + printf5.o(i.__0vsnprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0vsnprintf$5) refers to printf5.o(i._snputc) for _snputc + printf5.o(i.__0vsprintf$5) refers to printf5.o(i._printf_core) for _printf_core + printf5.o(i.__0vsprintf$5) refers to printf5.o(i._sputc) for _sputc + printf5.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod + printf6.o(i.__0fprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0fprintf$6) refers to fputc.o(i.fputc) for fputc + printf6.o(i.__0printf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0printf$6) refers to fputc.o(i.fputc) for fputc + printf6.o(i.__0printf$6) refers to stdout.o(.data) for __stdout + printf6.o(i.__0snprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0snprintf$6) refers to printf6.o(i._snputc) for _snputc + printf6.o(i.__0sprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0sprintf$6) refers to printf6.o(i._sputc) for _sputc + printf6.o(i.__0vfprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0vfprintf$6) refers to fputc.o(i.fputc) for fputc + printf6.o(i.__0vprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0vprintf$6) refers to fputc.o(i.fputc) for fputc + printf6.o(i.__0vprintf$6) refers to stdout.o(.data) for __stdout + printf6.o(i.__0vsnprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0vsnprintf$6) refers to printf6.o(i._snputc) for _snputc + printf6.o(i.__0vsprintf$6) refers to printf6.o(i._printf_core) for _printf_core + printf6.o(i.__0vsprintf$6) refers to printf6.o(i._sputc) for _sputc + printf6.o(i._printf_core) refers to printf6.o(i._printf_pre_padding) for _printf_pre_padding + printf6.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod + printf6.o(i._printf_core) refers to printf6.o(i._printf_post_padding) for _printf_post_padding + printf7.o(i.__0fprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0fprintf$7) refers to fputc.o(i.fputc) for fputc + printf7.o(i.__0printf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0printf$7) refers to fputc.o(i.fputc) for fputc + printf7.o(i.__0printf$7) refers to stdout.o(.data) for __stdout + printf7.o(i.__0snprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0snprintf$7) refers to printf7.o(i._snputc) for _snputc + printf7.o(i.__0sprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0sprintf$7) refers to printf7.o(i._sputc) for _sputc + printf7.o(i.__0vfprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0vfprintf$7) refers to fputc.o(i.fputc) for fputc + printf7.o(i.__0vprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0vprintf$7) refers to fputc.o(i.fputc) for fputc + printf7.o(i.__0vprintf$7) refers to stdout.o(.data) for __stdout + printf7.o(i.__0vsnprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0vsnprintf$7) refers to printf7.o(i._snputc) for _snputc + printf7.o(i.__0vsprintf$7) refers to printf7.o(i._printf_core) for _printf_core + printf7.o(i.__0vsprintf$7) refers to printf7.o(i._sputc) for _sputc + printf7.o(i._printf_core) refers to printf7.o(i._printf_pre_padding) for _printf_pre_padding + printf7.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod + printf7.o(i._printf_core) refers to printf7.o(i._printf_post_padding) for _printf_post_padding + printf8.o(i.__0fprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0fprintf$8) refers to fputc.o(i.fputc) for fputc + printf8.o(i.__0printf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0printf$8) refers to fputc.o(i.fputc) for fputc + printf8.o(i.__0printf$8) refers to stdout.o(.data) for __stdout + printf8.o(i.__0snprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0snprintf$8) refers to printf8.o(i._snputc) for _snputc + printf8.o(i.__0sprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0sprintf$8) refers to printf8.o(i._sputc) for _sputc + printf8.o(i.__0vfprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0vfprintf$8) refers to fputc.o(i.fputc) for fputc + printf8.o(i.__0vprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0vprintf$8) refers to fputc.o(i.fputc) for fputc + printf8.o(i.__0vprintf$8) refers to stdout.o(.data) for __stdout + printf8.o(i.__0vsnprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0vsnprintf$8) refers to printf8.o(i._snputc) for _snputc + printf8.o(i.__0vsprintf$8) refers to printf8.o(i._printf_core) for _printf_core + printf8.o(i.__0vsprintf$8) refers to printf8.o(i._sputc) for _sputc + printf8.o(i._printf_core) refers to printf8.o(i._printf_pre_padding) for _printf_pre_padding + printf8.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod + printf8.o(i._printf_core) refers to printf8.o(i._printf_post_padding) for _printf_post_padding + printfa.o(i.__0fprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0fprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0fprintf) refers to fputc.o(i.fputc) for fputc + printfa.o(i.__0printf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0printf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0printf) refers to fputc.o(i.fputc) for fputc + printfa.o(i.__0printf) refers to stdout.o(.data) for __stdout + printfa.o(i.__0snprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0snprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0snprintf) refers to printfa.o(i._snputc) for _snputc + printfa.o(i.__0sprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0sprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0sprintf) refers to printfa.o(i._sputc) for _sputc + printfa.o(i.__0vfprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0vfprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0vfprintf) refers to fputc.o(i.fputc) for fputc + printfa.o(i.__0vprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0vprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0vprintf) refers to fputc.o(i.fputc) for fputc + printfa.o(i.__0vprintf) refers to stdout.o(.data) for __stdout + printfa.o(i.__0vsnprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0vsnprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0vsnprintf) refers to printfa.o(i._snputc) for _snputc + printfa.o(i.__0vsprintf) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i.__0vsprintf) refers to printfa.o(i._printf_core) for _printf_core + printfa.o(i.__0vsprintf) refers to printfa.o(i._sputc) for _sputc + printfa.o(i._fp_digits) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i._fp_digits) refers to dmul.o(.text) for __aeabi_dmul + printfa.o(i._fp_digits) refers to ddiv.o(.text) for __aeabi_ddiv + printfa.o(i._fp_digits) refers to cdrcmple.o(.text) for __aeabi_cdrcmple + printfa.o(i._fp_digits) refers to dadd.o(.text) for __aeabi_dadd + printfa.o(i._fp_digits) refers to dfixul.o(.text) for __aeabi_d2ulz + printfa.o(i._fp_digits) refers to uldiv.o(.text) for __aeabi_uldivmod + printfa.o(i._printf_core) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i._printf_core) refers to printfa.o(i._printf_pre_padding) for _printf_pre_padding + printfa.o(i._printf_core) refers to uldiv.o(.text) for __aeabi_uldivmod + printfa.o(i._printf_core) refers to printfa.o(i._printf_post_padding) for _printf_post_padding + printfa.o(i._printf_core) refers to printfa.o(i._fp_digits) for _fp_digits + printfa.o(i._printf_core) refers to uidiv.o(.text) for __aeabi_uidivmod + printfa.o(i._printf_post_padding) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i._printf_pre_padding) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i._snputc) refers (Special) to iusefp.o(.text) for __I$use$fp + printfa.o(i._sputc) refers (Special) to iusefp.o(.text) for __I$use$fp + dmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dmul.o(.text) refers to depilogue.o(.text) for _double_epilogue + dflti.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dflti.o(.text) refers to depilogue.o(.text) for _double_epilogue + dfltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dfltui.o(.text) refers to depilogue.o(.text) for _double_epilogue + dfixi.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dfixi.o(.text) refers to llushr.o(.text) for __aeabi_llsr entry2.o(.ARM.Collect$$$$00000001) refers to entry2.o(.ARM.Collect$$$$00002712) for __lit__00000000 entry2.o(.ARM.Collect$$$$00002712) refers to startup_stm32f10x_md.o(STACK) for __initial_sp entry2.o(__vectab_stack_and_reset_area) refers to startup_stm32f10x_md.o(STACK) for __initial_sp @@ -77,6 +340,25 @@ Section Cross References entry5.o(.ARM.Collect$$$$00000004) refers to init.o(.text) for __scatterload entry9a.o(.ARM.Collect$$$$0000000B) refers to main.o(.text.main) for main entry9b.o(.ARM.Collect$$$$0000000C) refers to main.o(.text.main) for main + fputc.o(i.fputc) refers (Special) to iusesemip.o(.text) for __I$use$semihosting$fputc + fputc.o(i.fputc) refers (Special) to semi.o(.text) for __semihosting_library_function + fputc_h.o(i._fputc$hlt) refers (Special) to iusesemip.o(.text) for __I$use$semihosting$fputc + fputc_h.o(i._fputc$hlt) refers (Special) to semi.o(.text) for __semihosting_library_function + uldiv.o(.text) refers to llushr.o(.text) for __aeabi_llsr + uldiv.o(.text) refers to llshl.o(.text) for __aeabi_llsl + depilogue.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + depilogue.o(.text) refers to llshl.o(.text) for __aeabi_llsl + depilogue.o(.text) refers to llushr.o(.text) for __aeabi_llsr + dadd.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dadd.o(.text) refers to llshl.o(.text) for __aeabi_llsl + dadd.o(.text) refers to llsshr.o(.text) for __aeabi_lasr + dadd.o(.text) refers to depilogue.o(.text) for _double_epilogue + ddiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + ddiv.o(.text) refers to depilogue.o(.text) for _double_round + dfixul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dfixul.o(.text) refers to llushr.o(.text) for __aeabi_llsr + dfixul.o(.text) refers to llshl.o(.text) for __aeabi_llsl + cdrcmple.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp init.o(.text) refers to entry5.o(.ARM.Collect$$$$00000004) for __main_after_scatterload @@ -87,6 +369,9 @@ Removing Unused input sections from the image. Removing main.o(.text), (0 bytes). Removing main.o(.ARM.exidx.text.main), (8 bytes). Removing main.o(.ARM.use_no_argv), (4 bytes). + Removing app_girouette.o(.text), (0 bytes). + Removing app_girouette.o(.ARM.exidx.text.App_Girouette_Init), (8 bytes). + Removing app_girouette.o(.ARM.exidx.text.App_Girouette_GetDirection), (8 bytes). Removing driver_gpio.o(.text), (0 bytes). Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Init), (8 bytes). Removing driver_gpio.o(.text.MyGPIO_Read), (12 bytes). @@ -102,14 +387,13 @@ Removing Unused input sections from the image. Removing driver_timer.o(.ARM.exidx.text.MyTimer_Start), (8 bytes). Removing driver_timer.o(.text.MyTimer_Stop), (12 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_Stop), (8 bytes). - Removing driver_timer.o(.text.MyTimer_ConfigurePWM), (166 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_ConfigurePWM), (8 bytes). - Removing driver_timer.o(.text.MyTimer_SetPWMDutyCycle), (82 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_SetPWMDutyCycle), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_ConfigureEncoder), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.Bug), (8 bytes). Removing driver_timer.o(.text.MyTimer_ActiveIT), (150 bytes). Removing driver_timer.o(.ARM.exidx.text.MyTimer_ActiveIT), (8 bytes). + Removing driver_timer.o(.ARM.exidx.text.TIM_GetCounter), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM2_IRQHandler), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM3_IRQHandler), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM4_IRQHandler), (8 bytes). @@ -118,8 +402,8 @@ Removing Unused input sections from the image. Removing driver_timer.o(.ARM.exidx.text.EXTI3_IRQHandler), (8 bytes). Removing driver_uart.o(.text), (0 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_Init), (8 bytes). - Removing driver_uart.o(.text.MyUART_SendByte), (22 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_SendByte), (8 bytes). + Removing driver_uart.o(.ARM.exidx.text.MyUART_SendString), (8 bytes). Removing driver_uart.o(.text.MyUART_ReceiveByte), (24 bytes). Removing driver_uart.o(.ARM.exidx.text.MyUART_ReceiveByte), (8 bytes). Removing driver_uart.o(.ARM.exidx.text.USART3_IRQHandler), (8 bytes). @@ -140,7 +424,7 @@ Removing Unused input sections from the image. Removing system_stm32f10x.o(.data.SystemCoreClock), (4 bytes). Removing system_stm32f10x.o(.rodata.AHBPrescTable), (16 bytes). -55 unused section(s) (total 1596 bytes) removed from the image. +57 unused section(s) (total 1358 bytes) removed from the image. ============================================================================== @@ -150,6 +434,9 @@ Image Symbol Table Symbol Name Value Ov Type Size Object(Section) + ../clib/division.s 0x00000000 Number 0 aeabi_sdiv.o ABSOLUTE + ../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE + ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE @@ -163,11 +450,42 @@ Image Symbol Table ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE + ../clib/microlib/printf/stubs.s 0x00000000 Number 0 printfstubs.o ABSOLUTE + ../clib/microlib/stdio/fputc.c 0x00000000 Number 0 fputc.o ABSOLUTE + ../clib/microlib/stdio/fputc.c 0x00000000 Number 0 fputc_h.o ABSOLUTE + ../clib/microlib/stdio/semi.s 0x00000000 Number 0 semi.o ABSOLUTE + ../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE + ../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE + ../clib/microlib/stubs.s 0x00000000 Number 0 iusesemip.o ABSOLUTE + ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE + ../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE + ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixi.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixul.o ABSOLUTE + ../fplib/microlib/fpflt.c 0x00000000 Number 0 dflti.o ABSOLUTE + ../fplib/microlib/fpflt.c 0x00000000 Number 0 dfltui.o ABSOLUTE + ../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE + App_girouette.c 0x00000000 Number 0 app_girouette.o ABSOLUTE Driver_ADC.c 0x00000000 Number 0 driver_adc.o ABSOLUTE Driver_GPIO.c 0x00000000 Number 0 driver_gpio.o ABSOLUTE Driver_Timer.c 0x00000000 Number 0 driver_timer.o ABSOLUTE Driver_UART.c 0x00000000 Number 0 driver_uart.o ABSOLUTE RTE/Device/STM32F103RB/startup_stm32f10x_md.s 0x00000000 Number 0 startup_stm32f10x_md.o ABSOLUTE + cdrcmple.s 0x00000000 Number 0 cdrcmple.o ABSOLUTE dc.s 0x00000000 Number 0 dc.o ABSOLUTE handlers.s 0x00000000 Number 0 handlers.o ABSOLUTE init.s 0x00000000 Number 0 init.o ABSOLUTE @@ -185,32 +503,106 @@ Image Symbol Table .ARM.Collect$$$$0000000F 0x080000fc Section 0 entry11a.o(.ARM.Collect$$$$0000000F) .ARM.Collect$$$$00002712 0x080000fc Section 4 entry2.o(.ARM.Collect$$$$00002712) .text 0x08000100 Section 36 startup_stm32f10x_md.o(.text) - .text 0x08000124 Section 36 init.o(.text) - [Anonymous Symbol] 0x08000148 Section 0 driver_adc.o(.text.ADC1_2_IRQHandler) - [Anonymous Symbol] 0x08000164 Section 0 driver_timer.o(.text.Bug) - [Anonymous Symbol] 0x08000168 Section 0 driver_timer.o(.text.EXTI3_IRQHandler) - [Anonymous Symbol] 0x0800016c Section 0 driver_gpio.o(.text.MyGPIO_Init) - [Anonymous Symbol] 0x08000208 Section 0 driver_timer.o(.text.MyTimer_Base_Init) - [Anonymous Symbol] 0x08000294 Section 0 driver_timer.o(.text.MyTimer_ConfigureEncoder) - [Anonymous Symbol] 0x0800033c Section 0 driver_timer.o(.text.MyTimer_Start) - [Anonymous Symbol] 0x08000348 Section 0 driver_uart.o(.text.MyUART_Init) - [Anonymous Symbol] 0x08000394 Section 0 system_stm32f10x.o(.text.SystemInit) - [Anonymous Symbol] 0x080004a4 Section 0 driver_timer.o(.text.TIM2_IRQHandler) - [Anonymous Symbol] 0x080004c0 Section 0 driver_timer.o(.text.TIM3_IRQHandler) - [Anonymous Symbol] 0x080004dc Section 0 driver_timer.o(.text.TIM4_IRQHandler) - [Anonymous Symbol] 0x080004f8 Section 0 driver_uart.o(.text.USART3_IRQHandler) - [Anonymous Symbol] 0x08000508 Section 0 driver_adc.o(.text.erreur) - [Anonymous Symbol] 0x0800050c Section 0 main.o(.text.main) - i.__scatterload_copy 0x0800058a Section 14 handlers.o(i.__scatterload_copy) - i.__scatterload_null 0x08000598 Section 2 handlers.o(i.__scatterload_null) - i.__scatterload_zeroinit 0x0800059a Section 14 handlers.o(i.__scatterload_zeroinit) + .text 0x08000124 Section 0 dmul.o(.text) + .text 0x08000208 Section 0 dflti.o(.text) + .text 0x0800022a Section 0 dfltui.o(.text) + .text 0x08000244 Section 0 dfixi.o(.text) + .text 0x08000282 Section 0 uidiv.o(.text) + .text 0x080002ae Section 0 uldiv.o(.text) + .text 0x08000310 Section 0 llushr.o(.text) + .text 0x08000330 Section 0 iusefp.o(.text) + .text 0x08000330 Section 0 depilogue.o(.text) + .text 0x080003ea Section 0 dadd.o(.text) + .text 0x08000538 Section 0 ddiv.o(.text) + .text 0x08000616 Section 0 dfixul.o(.text) + .text 0x08000648 Section 48 cdrcmple.o(.text) + .text 0x08000678 Section 36 init.o(.text) + .text 0x0800069c Section 0 llshl.o(.text) + .text 0x080006ba Section 0 llsshr.o(.text) + [Anonymous Symbol] 0x080006e0 Section 0 driver_adc.o(.text.ADC1_2_IRQHandler) + [Anonymous Symbol] 0x080006fc Section 0 app_girouette.o(.text.App_Girouette_GetDirection) + [Anonymous Symbol] 0x08000728 Section 0 app_girouette.o(.text.App_Girouette_Init) + [Anonymous Symbol] 0x08000778 Section 0 driver_timer.o(.text.Bug) + [Anonymous Symbol] 0x0800077c Section 0 driver_timer.o(.text.EXTI3_IRQHandler) + [Anonymous Symbol] 0x08000780 Section 0 driver_gpio.o(.text.MyGPIO_Init) + [Anonymous Symbol] 0x08000820 Section 0 driver_timer.o(.text.MyTimer_Base_Init) + [Anonymous Symbol] 0x080008ac Section 0 driver_timer.o(.text.MyTimer_ConfigureEncoder) + [Anonymous Symbol] 0x08000954 Section 0 driver_timer.o(.text.MyTimer_ConfigurePWM) + [Anonymous Symbol] 0x080009fc Section 0 driver_timer.o(.text.MyTimer_SetPWMDutyCycle) + [Anonymous Symbol] 0x08000a50 Section 0 driver_timer.o(.text.MyTimer_Start) + [Anonymous Symbol] 0x08000a5c Section 0 driver_uart.o(.text.MyUART_Init) + [Anonymous Symbol] 0x08000af4 Section 0 driver_uart.o(.text.MyUART_SendByte) + [Anonymous Symbol] 0x08000b00 Section 0 driver_uart.o(.text.MyUART_SendString) + [Anonymous Symbol] 0x08000b20 Section 0 system_stm32f10x.o(.text.SystemInit) + [Anonymous Symbol] 0x08000c30 Section 0 driver_timer.o(.text.TIM2_IRQHandler) + [Anonymous Symbol] 0x08000c4c Section 0 driver_timer.o(.text.TIM3_IRQHandler) + [Anonymous Symbol] 0x08000c68 Section 0 driver_timer.o(.text.TIM4_IRQHandler) + [Anonymous Symbol] 0x08000c84 Section 0 driver_timer.o(.text.TIM_GetCounter) + [Anonymous Symbol] 0x08000c88 Section 0 driver_uart.o(.text.USART3_IRQHandler) + [Anonymous Symbol] 0x08000c98 Section 0 driver_adc.o(.text.erreur) + [Anonymous Symbol] 0x08000c9c Section 0 main.o(.text.main) + i.__0sprintf 0x08000db8 Section 0 printfa.o(i.__0sprintf) + i.__scatterload_copy 0x08000de0 Section 14 handlers.o(i.__scatterload_copy) + i.__scatterload_null 0x08000dee Section 2 handlers.o(i.__scatterload_null) + i.__scatterload_zeroinit 0x08000df0 Section 14 handlers.o(i.__scatterload_zeroinit) + _fp_digits 0x08000e01 Thumb Code 366 printfa.o(i._fp_digits) + i._fp_digits 0x08000e00 Section 0 printfa.o(i._fp_digits) + _printf_core 0x08000f85 Thumb Code 1744 printfa.o(i._printf_core) + i._printf_core 0x08000f84 Section 0 printfa.o(i._printf_core) + _printf_post_padding 0x08001661 Thumb Code 36 printfa.o(i._printf_post_padding) + i._printf_post_padding 0x08001660 Section 0 printfa.o(i._printf_post_padding) + _printf_pre_padding 0x08001685 Thumb Code 46 printfa.o(i._printf_pre_padding) + i._printf_pre_padding 0x08001684 Section 0 printfa.o(i._printf_pre_padding) + _sputc 0x080016b3 Thumb Code 10 printfa.o(i._sputc) + i._sputc 0x080016b2 Section 0 printfa.o(i._sputc) STACK 0x20000010 Section 1024 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$OTIME$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE + BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$~IW$USESV6$~STKCKD$USESV7$~SHL$OTIME$ROPI$EBA8$MICROLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE + _printf_a 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_c 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_charcount 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_d 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_e 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_f 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_flags 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_fp_dec 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_fp_hex 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_g 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_i 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_int_dec 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_l 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_lc 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_ll 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_lld 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_lli 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_llo 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_llu 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_llx 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_longlong_dec 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_longlong_hex 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_longlong_oct 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_ls 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_mbtowc 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_n 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_o 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_p 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_percent 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_pre_padding 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_return_value 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_s 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_sizespec 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_str 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_truncate_signed 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_truncate_unsigned 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_u 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_wc 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_wctomb 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_widthprec 0x00000000 Number 0 printfstubs.o ABSOLUTE + _printf_x 0x00000000 Number 0 printfstubs.o ABSOLUTE __cpp_initialize__aeabi_ - Undefined Weak Reference __cxa_finalize - Undefined Weak Reference __decompress - Undefined Weak Reference @@ -275,28 +667,62 @@ Image Symbol Table USB_HP_CAN1_TX_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f10x_md.o(.text) USB_LP_CAN1_RX0_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f10x_md.o(.text) WWDG_IRQHandler 0x0800011b Thumb Code 0 startup_stm32f10x_md.o(.text) - __scatterload 0x08000125 Thumb Code 28 init.o(.text) - __scatterload_rt2 0x08000125 Thumb Code 0 init.o(.text) - ADC1_2_IRQHandler 0x08000149 Thumb Code 28 driver_adc.o(.text.ADC1_2_IRQHandler) - Bug 0x08000165 Thumb Code 2 driver_timer.o(.text.Bug) - EXTI3_IRQHandler 0x08000169 Thumb Code 2 driver_timer.o(.text.EXTI3_IRQHandler) - MyGPIO_Init 0x0800016d Thumb Code 140 driver_gpio.o(.text.MyGPIO_Init) - MyTimer_Base_Init 0x08000209 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) - MyTimer_ConfigureEncoder 0x08000295 Thumb Code 168 driver_timer.o(.text.MyTimer_ConfigureEncoder) - MyTimer_Start 0x0800033d Thumb Code 12 driver_timer.o(.text.MyTimer_Start) - MyUART_Init 0x08000349 Thumb Code 76 driver_uart.o(.text.MyUART_Init) - SystemInit 0x08000395 Thumb Code 272 system_stm32f10x.o(.text.SystemInit) - TIM2_IRQHandler 0x080004a5 Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) - TIM3_IRQHandler 0x080004c1 Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) - TIM4_IRQHandler 0x080004dd Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) - USART3_IRQHandler 0x080004f9 Thumb Code 14 driver_uart.o(.text.USART3_IRQHandler) - erreur 0x08000509 Thumb Code 2 driver_adc.o(.text.erreur) - main 0x0800050d Thumb Code 126 main.o(.text.main) - __scatterload_copy 0x0800058b Thumb Code 14 handlers.o(i.__scatterload_copy) - __scatterload_null 0x08000599 Thumb Code 2 handlers.o(i.__scatterload_null) - __scatterload_zeroinit 0x0800059b Thumb Code 14 handlers.o(i.__scatterload_zeroinit) - Region$$Table$$Base 0x080005a8 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x080005c8 Number 0 anon$$obj.o(Region$$Table) + __aeabi_dmul 0x08000125 Thumb Code 228 dmul.o(.text) + __aeabi_i2d 0x08000209 Thumb Code 34 dflti.o(.text) + __aeabi_ui2d 0x0800022b Thumb Code 26 dfltui.o(.text) + __aeabi_d2iz 0x08000245 Thumb Code 62 dfixi.o(.text) + __aeabi_uidiv 0x08000283 Thumb Code 0 uidiv.o(.text) + __aeabi_uidivmod 0x08000283 Thumb Code 44 uidiv.o(.text) + __aeabi_uldivmod 0x080002af Thumb Code 98 uldiv.o(.text) + __aeabi_llsr 0x08000311 Thumb Code 32 llushr.o(.text) + _ll_ushift_r 0x08000311 Thumb Code 0 llushr.o(.text) + __I$use$fp 0x08000331 Thumb Code 0 iusefp.o(.text) + _double_round 0x08000331 Thumb Code 30 depilogue.o(.text) + _double_epilogue 0x0800034f Thumb Code 156 depilogue.o(.text) + __aeabi_dadd 0x080003eb Thumb Code 322 dadd.o(.text) + __aeabi_dsub 0x0800052d Thumb Code 6 dadd.o(.text) + __aeabi_drsub 0x08000533 Thumb Code 6 dadd.o(.text) + __aeabi_ddiv 0x08000539 Thumb Code 222 ddiv.o(.text) + __aeabi_d2ulz 0x08000617 Thumb Code 48 dfixul.o(.text) + __aeabi_cdrcmple 0x08000649 Thumb Code 48 cdrcmple.o(.text) + __scatterload 0x08000679 Thumb Code 28 init.o(.text) + __scatterload_rt2 0x08000679 Thumb Code 0 init.o(.text) + __aeabi_llsl 0x0800069d Thumb Code 30 llshl.o(.text) + _ll_shift_l 0x0800069d Thumb Code 0 llshl.o(.text) + __aeabi_lasr 0x080006bb Thumb Code 36 llsshr.o(.text) + _ll_sshift_r 0x080006bb Thumb Code 0 llsshr.o(.text) + ADC1_2_IRQHandler 0x080006e1 Thumb Code 28 driver_adc.o(.text.ADC1_2_IRQHandler) + App_Girouette_GetDirection 0x080006fd Thumb Code 42 app_girouette.o(.text.App_Girouette_GetDirection) + App_Girouette_Init 0x08000729 Thumb Code 80 app_girouette.o(.text.App_Girouette_Init) + Bug 0x08000779 Thumb Code 2 driver_timer.o(.text.Bug) + EXTI3_IRQHandler 0x0800077d Thumb Code 2 driver_timer.o(.text.EXTI3_IRQHandler) + MyGPIO_Init 0x08000781 Thumb Code 144 driver_gpio.o(.text.MyGPIO_Init) + MyTimer_Base_Init 0x08000821 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) + MyTimer_ConfigureEncoder 0x080008ad Thumb Code 168 driver_timer.o(.text.MyTimer_ConfigureEncoder) + MyTimer_ConfigurePWM 0x08000955 Thumb Code 166 driver_timer.o(.text.MyTimer_ConfigurePWM) + MyTimer_SetPWMDutyCycle 0x080009fd Thumb Code 82 driver_timer.o(.text.MyTimer_SetPWMDutyCycle) + MyTimer_Start 0x08000a51 Thumb Code 12 driver_timer.o(.text.MyTimer_Start) + MyUART_Init 0x08000a5d Thumb Code 152 driver_uart.o(.text.MyUART_Init) + MyUART_SendByte 0x08000af5 Thumb Code 12 driver_uart.o(.text.MyUART_SendByte) + MyUART_SendString 0x08000b01 Thumb Code 32 driver_uart.o(.text.MyUART_SendString) + SystemInit 0x08000b21 Thumb Code 272 system_stm32f10x.o(.text.SystemInit) + TIM2_IRQHandler 0x08000c31 Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) + TIM3_IRQHandler 0x08000c4d Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) + TIM4_IRQHandler 0x08000c69 Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) + TIM_GetCounter 0x08000c85 Thumb Code 4 driver_timer.o(.text.TIM_GetCounter) + USART3_IRQHandler 0x08000c89 Thumb Code 14 driver_uart.o(.text.USART3_IRQHandler) + erreur 0x08000c99 Thumb Code 2 driver_adc.o(.text.erreur) + main 0x08000c9d Thumb Code 272 main.o(.text.main) + __0sprintf 0x08000db9 Thumb Code 34 printfa.o(i.__0sprintf) + __1sprintf 0x08000db9 Thumb Code 0 printfa.o(i.__0sprintf) + __2sprintf 0x08000db9 Thumb Code 0 printfa.o(i.__0sprintf) + __c89sprintf 0x08000db9 Thumb Code 0 printfa.o(i.__0sprintf) + sprintf 0x08000db9 Thumb Code 0 printfa.o(i.__0sprintf) + __scatterload_copy 0x08000de1 Thumb Code 14 handlers.o(i.__scatterload_copy) + __scatterload_null 0x08000def Thumb Code 2 handlers.o(i.__scatterload_null) + __scatterload_zeroinit 0x08000df1 Thumb Code 14 handlers.o(i.__scatterload_zeroinit) + Region$$Table$$Base 0x080016bc Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x080016dc Number 0 anon$$obj.o(Region$$Table) ADC1_2_fx 0x20000000 Data 4 driver_adc.o(.data.ADC1_2_fx) TIM2_fx 0x20000004 Data 4 driver_timer.o(.data.TIM2_fx) TIM3_fx 0x20000008 Data 4 driver_timer.o(.data.TIM3_fx) @@ -311,65 +737,99 @@ Memory Map of the image Image Entry point : 0x08000101 - Load Region LR_1 (Base: 0x08000000, Size: 0x000005d8, Max: 0xffffffff, ABSOLUTE) + Load Region LR_1 (Base: 0x08000000, Size: 0x000016ec, Max: 0xffffffff, ABSOLUTE) - Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000005c8, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000016dc, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x08000000 0x08000000 0x000000ec Data RO 102 RESET startup_stm32f10x_md.o - 0x080000ec 0x080000ec 0x00000000 Code RO 123 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) - 0x080000ec 0x080000ec 0x00000004 Code RO 126 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) - 0x080000f0 0x080000f0 0x00000004 Code RO 129 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) - 0x080000f4 0x080000f4 0x00000000 Code RO 131 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o) - 0x080000f4 0x080000f4 0x00000000 Code RO 133 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o) - 0x080000f4 0x080000f4 0x00000008 Code RO 134 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o) - 0x080000fc 0x080000fc 0x00000000 Code RO 136 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o) - 0x080000fc 0x080000fc 0x00000000 Code RO 138 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o) - 0x080000fc 0x080000fc 0x00000004 Code RO 127 .ARM.Collect$$$$00002712 mc_w.l(entry2.o) - 0x08000100 0x08000100 0x00000024 Code RO 103 * .text startup_stm32f10x_md.o - 0x08000124 0x08000124 0x00000024 Code RO 140 .text mc_w.l(init.o) - 0x08000148 0x08000148 0x0000001c Code RO 90 .text.ADC1_2_IRQHandler driver_adc.o - 0x08000164 0x08000164 0x00000002 Code RO 41 .text.Bug driver_timer.o - 0x08000166 0x08000166 0x00000002 PAD - 0x08000168 0x08000168 0x00000002 Code RO 53 .text.EXTI3_IRQHandler driver_timer.o - 0x0800016a 0x0800016a 0x00000002 PAD - 0x0800016c 0x0800016c 0x0000009c Code RO 11 .text.MyGPIO_Init driver_gpio.o - 0x08000208 0x08000208 0x0000008c Code RO 29 .text.MyTimer_Base_Init driver_timer.o - 0x08000294 0x08000294 0x000000a8 Code RO 39 .text.MyTimer_ConfigureEncoder driver_timer.o - 0x0800033c 0x0800033c 0x0000000c Code RO 31 .text.MyTimer_Start driver_timer.o - 0x08000348 0x08000348 0x0000004c Code RO 66 .text.MyUART_Init driver_uart.o - 0x08000394 0x08000394 0x00000110 Code RO 110 .text.SystemInit system_stm32f10x.o - 0x080004a4 0x080004a4 0x0000001a Code RO 45 .text.TIM2_IRQHandler driver_timer.o - 0x080004be 0x080004be 0x00000002 PAD - 0x080004c0 0x080004c0 0x0000001c Code RO 47 .text.TIM3_IRQHandler driver_timer.o - 0x080004dc 0x080004dc 0x0000001c Code RO 49 .text.TIM4_IRQHandler driver_timer.o - 0x080004f8 0x080004f8 0x0000000e Code RO 72 .text.USART3_IRQHandler driver_uart.o - 0x08000506 0x08000506 0x00000002 PAD - 0x08000508 0x08000508 0x00000002 Code RO 82 .text.erreur driver_adc.o - 0x0800050a 0x0800050a 0x00000002 PAD - 0x0800050c 0x0800050c 0x0000007e Code RO 2 .text.main main.o - 0x0800058a 0x0800058a 0x0000000e Code RO 144 i.__scatterload_copy mc_w.l(handlers.o) - 0x08000598 0x08000598 0x00000002 Code RO 145 i.__scatterload_null mc_w.l(handlers.o) - 0x0800059a 0x0800059a 0x0000000e Code RO 146 i.__scatterload_zeroinit mc_w.l(handlers.o) - 0x080005a8 0x080005a8 0x00000020 Data RO 143 Region$$Table anon$$obj.o + 0x08000000 0x08000000 0x000000ec Data RO 119 RESET startup_stm32f10x_md.o + 0x080000ec 0x080000ec 0x00000000 Code RO 140 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) + 0x080000ec 0x080000ec 0x00000004 Code RO 412 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) + 0x080000f0 0x080000f0 0x00000004 Code RO 415 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) + 0x080000f4 0x080000f4 0x00000000 Code RO 417 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o) + 0x080000f4 0x080000f4 0x00000000 Code RO 419 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o) + 0x080000f4 0x080000f4 0x00000008 Code RO 420 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o) + 0x080000fc 0x080000fc 0x00000000 Code RO 422 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o) + 0x080000fc 0x080000fc 0x00000000 Code RO 424 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o) + 0x080000fc 0x080000fc 0x00000004 Code RO 413 .ARM.Collect$$$$00002712 mc_w.l(entry2.o) + 0x08000100 0x08000100 0x00000024 Code RO 120 * .text startup_stm32f10x_md.o + 0x08000124 0x08000124 0x000000e4 Code RO 404 .text mf_w.l(dmul.o) + 0x08000208 0x08000208 0x00000022 Code RO 406 .text mf_w.l(dflti.o) + 0x0800022a 0x0800022a 0x0000001a Code RO 408 .text mf_w.l(dfltui.o) + 0x08000244 0x08000244 0x0000003e Code RO 410 .text mf_w.l(dfixi.o) + 0x08000282 0x08000282 0x0000002c Code RO 440 .text mc_w.l(uidiv.o) + 0x080002ae 0x080002ae 0x00000062 Code RO 442 .text mc_w.l(uldiv.o) + 0x08000310 0x08000310 0x00000020 Code RO 444 .text mc_w.l(llushr.o) + 0x08000330 0x08000330 0x00000000 Code RO 446 .text mc_w.l(iusefp.o) + 0x08000330 0x08000330 0x000000ba Code RO 447 .text mf_w.l(depilogue.o) + 0x080003ea 0x080003ea 0x0000014e Code RO 449 .text mf_w.l(dadd.o) + 0x08000538 0x08000538 0x000000de Code RO 451 .text mf_w.l(ddiv.o) + 0x08000616 0x08000616 0x00000030 Code RO 453 .text mf_w.l(dfixul.o) + 0x08000646 0x08000646 0x00000002 PAD + 0x08000648 0x08000648 0x00000030 Code RO 455 .text mf_w.l(cdrcmple.o) + 0x08000678 0x08000678 0x00000024 Code RO 457 .text mc_w.l(init.o) + 0x0800069c 0x0800069c 0x0000001e Code RO 460 .text mc_w.l(llshl.o) + 0x080006ba 0x080006ba 0x00000024 Code RO 462 .text mc_w.l(llsshr.o) + 0x080006de 0x080006de 0x00000002 PAD + 0x080006e0 0x080006e0 0x0000001c Code RO 107 .text.ADC1_2_IRQHandler driver_adc.o + 0x080006fc 0x080006fc 0x0000002a Code RO 14 .text.App_Girouette_GetDirection app_girouette.o + 0x08000726 0x08000726 0x00000002 PAD + 0x08000728 0x08000728 0x00000050 Code RO 12 .text.App_Girouette_Init app_girouette.o + 0x08000778 0x08000778 0x00000002 Code RO 54 .text.Bug driver_timer.o + 0x0800077a 0x0800077a 0x00000002 PAD + 0x0800077c 0x0800077c 0x00000002 Code RO 68 .text.EXTI3_IRQHandler driver_timer.o + 0x0800077e 0x0800077e 0x00000002 PAD + 0x08000780 0x08000780 0x000000a0 Code RO 24 .text.MyGPIO_Init driver_gpio.o + 0x08000820 0x08000820 0x0000008c Code RO 42 .text.MyTimer_Base_Init driver_timer.o + 0x080008ac 0x080008ac 0x000000a8 Code RO 52 .text.MyTimer_ConfigureEncoder driver_timer.o + 0x08000954 0x08000954 0x000000a6 Code RO 48 .text.MyTimer_ConfigurePWM driver_timer.o + 0x080009fa 0x080009fa 0x00000002 PAD + 0x080009fc 0x080009fc 0x00000052 Code RO 50 .text.MyTimer_SetPWMDutyCycle driver_timer.o + 0x08000a4e 0x08000a4e 0x00000002 PAD + 0x08000a50 0x08000a50 0x0000000c Code RO 44 .text.MyTimer_Start driver_timer.o + 0x08000a5c 0x08000a5c 0x00000098 Code RO 81 .text.MyUART_Init driver_uart.o + 0x08000af4 0x08000af4 0x0000000c Code RO 83 .text.MyUART_SendByte driver_uart.o + 0x08000b00 0x08000b00 0x00000020 Code RO 85 .text.MyUART_SendString driver_uart.o + 0x08000b20 0x08000b20 0x00000110 Code RO 127 .text.SystemInit system_stm32f10x.o + 0x08000c30 0x08000c30 0x0000001a Code RO 60 .text.TIM2_IRQHandler driver_timer.o + 0x08000c4a 0x08000c4a 0x00000002 PAD + 0x08000c4c 0x08000c4c 0x0000001c Code RO 62 .text.TIM3_IRQHandler driver_timer.o + 0x08000c68 0x08000c68 0x0000001c Code RO 64 .text.TIM4_IRQHandler driver_timer.o + 0x08000c84 0x08000c84 0x00000004 Code RO 58 .text.TIM_GetCounter driver_timer.o + 0x08000c88 0x08000c88 0x0000000e Code RO 89 .text.USART3_IRQHandler driver_uart.o + 0x08000c96 0x08000c96 0x00000002 PAD + 0x08000c98 0x08000c98 0x00000002 Code RO 99 .text.erreur driver_adc.o + 0x08000c9a 0x08000c9a 0x00000002 PAD + 0x08000c9c 0x08000c9c 0x0000011c Code RO 2 .text.main main.o + 0x08000db8 0x08000db8 0x00000028 Code RO 378 i.__0sprintf mc_w.l(printfa.o) + 0x08000de0 0x08000de0 0x0000000e Code RO 467 i.__scatterload_copy mc_w.l(handlers.o) + 0x08000dee 0x08000dee 0x00000002 Code RO 468 i.__scatterload_null mc_w.l(handlers.o) + 0x08000df0 0x08000df0 0x0000000e Code RO 469 i.__scatterload_zeroinit mc_w.l(handlers.o) + 0x08000dfe 0x08000dfe 0x00000002 PAD + 0x08000e00 0x08000e00 0x00000184 Code RO 383 i._fp_digits mc_w.l(printfa.o) + 0x08000f84 0x08000f84 0x000006dc Code RO 384 i._printf_core mc_w.l(printfa.o) + 0x08001660 0x08001660 0x00000024 Code RO 385 i._printf_post_padding mc_w.l(printfa.o) + 0x08001684 0x08001684 0x0000002e Code RO 386 i._printf_pre_padding mc_w.l(printfa.o) + 0x080016b2 0x080016b2 0x0000000a Code RO 388 i._sputc mc_w.l(printfa.o) + 0x080016bc 0x080016bc 0x00000020 Data RO 466 Region$$Table anon$$obj.o - Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x080005c8, Size: 0x00000010, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x080016dc, Size: 0x00000010, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x080005c8 0x00000004 Data RW 92 .data.ADC1_2_fx driver_adc.o - 0x20000004 0x080005cc 0x00000004 Data RW 55 .data.TIM2_fx driver_timer.o - 0x20000008 0x080005d0 0x00000004 Data RW 56 .data.TIM3_fx driver_timer.o - 0x2000000c 0x080005d4 0x00000004 Data RW 57 .data.TIM4_fx driver_timer.o + 0x20000000 0x080016dc 0x00000004 Data RW 109 .data.ADC1_2_fx driver_adc.o + 0x20000004 0x080016e0 0x00000004 Data RW 70 .data.TIM2_fx driver_timer.o + 0x20000008 0x080016e4 0x00000004 Data RW 71 .data.TIM3_fx driver_timer.o + 0x2000000c 0x080016e8 0x00000004 Data RW 72 .data.TIM4_fx driver_timer.o - Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x080005d8, Size: 0x00000400, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x080016ec, Size: 0x00000400, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000010 - 0x00000400 Zero RW 100 STACK startup_stm32f10x_md.o + 0x20000010 - 0x00000400 Zero RW 117 STACK startup_stm32f10x_md.o ============================================================================== @@ -379,18 +839,19 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name + 122 0 0 0 0 2505 app_girouette.o 30 0 0 4 0 4524 driver_adc.o - 156 16 0 0 0 2108 driver_gpio.o - 406 0 0 12 0 8028 driver_timer.o - 90 0 0 0 0 2250 driver_uart.o - 126 0 0 0 0 2547 main.o + 160 16 0 0 0 2108 driver_gpio.o + 658 8 0 12 0 8169 driver_timer.o + 210 0 0 0 0 2680 driver_uart.o + 284 12 0 0 0 2853 main.o 36 8 236 0 1024 860 startup_stm32f10x_md.o 272 0 0 0 0 2813 system_stm32f10x.o ---------------------------------------------------------------------- - 1126 24 268 16 1024 23130 Object Totals + 1788 44 268 16 1024 26512 Object Totals 0 0 32 0 0 0 (incl. Generated) - 10 0 0 0 0 0 (incl. Padding) + 16 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- @@ -406,19 +867,36 @@ Image component sizes 8 4 0 0 0 0 entry9a.o 30 0 0 0 0 0 handlers.o 36 8 0 0 0 68 init.o + 0 0 0 0 0 0 iusefp.o + 30 0 0 0 0 68 llshl.o + 36 0 0 0 0 68 llsshr.o + 32 0 0 0 0 68 llushr.o + 2276 86 0 0 0 520 printfa.o + 44 0 0 0 0 80 uidiv.o + 98 0 0 0 0 92 uldiv.o + 48 0 0 0 0 68 cdrcmple.o + 334 0 0 0 0 148 dadd.o + 222 0 0 0 0 100 ddiv.o + 186 0 0 0 0 176 depilogue.o + 62 0 0 0 0 80 dfixi.o + 48 0 0 0 0 68 dfixul.o + 34 0 0 0 0 76 dflti.o + 26 0 0 0 0 76 dfltui.o + 228 0 0 0 0 96 dmul.o ---------------------------------------------------------------------- - 86 16 0 0 0 68 Library Totals - 0 0 0 0 0 0 (incl. Padding) + 3796 102 0 0 0 1852 Library Totals + 6 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Name - 86 16 0 0 0 68 mc_w.l + 2602 102 0 0 0 964 mc_w.l + 1188 0 0 0 0 888 mf_w.l ---------------------------------------------------------------------- - 86 16 0 0 0 68 Library Totals + 3796 102 0 0 0 1852 Library Totals ---------------------------------------------------------------------- @@ -427,15 +905,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 1212 40 268 16 1024 23250 Grand Totals - 1212 40 268 16 1024 23250 ELF Image Totals - 1212 40 268 16 0 0 ROM Totals + 5584 146 268 16 1024 27408 Grand Totals + 5584 146 268 16 1024 27408 ELF Image Totals + 5584 146 268 16 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 1480 ( 1.45kB) + Total RO Size (Code + RO Data) 5852 ( 5.71kB) Total RW Size (RW Data + ZI Data) 1040 ( 1.02kB) - Total ROM Size (Code + RO Data + RW Data) 1496 ( 1.46kB) + Total ROM Size (Code + RO Data + RW Data) 5868 ( 5.73kB) ============================================================================== diff --git a/projet-voilier/Objects/driver_gpio.o b/projet-voilier/Objects/driver_gpio.o index ed751f0..5f86cf2 100644 Binary files a/projet-voilier/Objects/driver_gpio.o and b/projet-voilier/Objects/driver_gpio.o differ diff --git a/projet-voilier/Objects/driver_timer.o b/projet-voilier/Objects/driver_timer.o index ef8e31b..ffc628f 100644 Binary files a/projet-voilier/Objects/driver_timer.o and b/projet-voilier/Objects/driver_timer.o differ diff --git a/projet-voilier/Objects/driver_uart.o b/projet-voilier/Objects/driver_uart.o index 75cf5b2..5a844ef 100644 Binary files a/projet-voilier/Objects/driver_uart.o and b/projet-voilier/Objects/driver_uart.o differ diff --git a/projet-voilier/Objects/main.d b/projet-voilier/Objects/main.d index 7734bee..cde1ccf 100644 --- a/projet-voilier/Objects/main.d +++ b/projet-voilier/Objects/main.d @@ -8,4 +8,4 @@ C:\Users\robin\AppData\Local\Arm\Packs\ARM\CMSIS\5.9.0\CMSIS\Core\Include\cmsis_armclang.h \ C:\Users\robin\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.0\Device\Include\system_stm32f10x.h \ ..\driver\Driver_GPIO.h ..\driver\Driver_Timer.h \ - ..\driver\Driver_UART.h + ..\driver\Driver_UART.h src\App_girouette.h diff --git a/projet-voilier/Objects/main.o b/projet-voilier/Objects/main.o index be53699..5dc4d13 100644 Binary files a/projet-voilier/Objects/main.o and b/projet-voilier/Objects/main.o differ diff --git a/projet-voilier/Objects/projet-voilier.axf b/projet-voilier/Objects/projet-voilier.axf index 988f783..f2e7da6 100644 Binary files a/projet-voilier/Objects/projet-voilier.axf and b/projet-voilier/Objects/projet-voilier.axf differ diff --git a/projet-voilier/Objects/projet-voilier.build_log.htm b/projet-voilier/Objects/projet-voilier.build_log.htm index 12a119b..2e886f4 100644 --- a/projet-voilier/Objects/projet-voilier.build_log.htm +++ b/projet-voilier/Objects/projet-voilier.build_log.htm @@ -22,20 +22,21 @@ Dialog DLL: TARMSTM.DLL V1.67.1.0
#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Tue Apr 11 09:10:04 2023
+
#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Tue Apr 11 10:57:51 2023
-
__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) +
__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) -
__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) +
__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
[Calls]
__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED) +
__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
__rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
[Called By]
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030)) +
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030)) -
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E)) +
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E)) -
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D)) +
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D)) -
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023)) +
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023)) -
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034)) +
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034)) -
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032)) +
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032)) -
__rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002)) +
__rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002)) -
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021)) +
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021)) -
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025)) +
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025)) -
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C)) +
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C)) -
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013)) +
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013)) -
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015)) +
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015)) -
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017)) +
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017)) -
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019)) +
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019)) -
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B)) +
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B)) -
__rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006)) +
__rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006)) -
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010)) +
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010)) -
__rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004)) +
__rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004)) -
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035)) +
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035)) -
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F)) +
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F)) -
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027)) +
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027)) -
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E)) +
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
__rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
[Called By]
__rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)) +
__rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)) -
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)) +
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)) -
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)) +
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)) -
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)) +
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)) -
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)) +
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)) -
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)) +
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)) -
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C)) +
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))
__rt_entry (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]
__rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002)) +
__rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))
__rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
[Stack]
__rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009)) +
__rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))
__rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
-
[Stack]
__rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C)) +
__rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
__rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
[Called By]
__rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002)) +
__rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
__rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
[Calls]
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) -
__rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +
__rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) -
__rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +
__rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
[Stack]
__user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED) +
__user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
[Called By]
__user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED) +
__user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
_sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
[Called By]
__I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) +
__I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) -
__use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) +
__use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) -
__semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED) +
__semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)
ADC1_2_IRQHandler (Thumb, 28 bytes, Stack size 0 bytes, driver_adc.o(.text.ADC1_2_IRQHandler))
[Address Reference Count : 1]
App_Girouette_GetDirection (Thumb, 26 bytes, Stack size 8 bytes, app_girouette.o(.text.App_Girouette_GetDirection))
+
[Stack]
App_Girouette_Init (Thumb, 80 bytes, Stack size 48 bytes, app_girouette.o(.text.App_Girouette_Init))
+
[Stack]
Bug (Thumb, 2 bytes, Stack size 0 bytes, driver_timer.o(.text.Bug))
[Calls]
EXTI3_IRQHandler (Thumb, 2 bytes, Stack size 0 bytes, driver_timer.o(.text.EXTI3_IRQHandler))
[Address Reference Count : 1]
MyGPIO_Init (Thumb, 140 bytes, Stack size 8 bytes, driver_gpio.o(.text.MyGPIO_Init)) +
MyGPIO_Init (Thumb, 140 bytes, Stack size 8 bytes, driver_gpio.o(.text.MyGPIO_Init))
[Stack]
MyTimer_Base_Init (Thumb, 140 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_Base_Init)) +
MyTimer_Base_Init (Thumb, 140 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_Base_Init))
+
[Called By]
MyTimer_ConfigureEncoder (Thumb, 168 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_ConfigureEncoder))
+
[Called By]
MyTimer_Start (Thumb, 12 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_Start))
+
[Called By]
MyUART_Init (Thumb, 76 bytes, Stack size 0 bytes, driver_uart.o(.text.MyUART_Init))
[Called By]
MyTimer_ConfigureEncoder (Thumb, 168 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_ConfigureEncoder))
-
[Called By]
MyTimer_Start (Thumb, 12 bytes, Stack size 0 bytes, driver_timer.o(.text.MyTimer_Start))
-
[Called By]
MyUART_Init (Thumb, 76 bytes, Stack size 0 bytes, driver_uart.o(.text.MyUART_Init)) +
MyUART_SendByte (Thumb, 22 bytes, Stack size 0 bytes, driver_uart.o(.text.MyUART_SendByte))
[Called By]
TIM4_IRQHandler (Thumb, 28 bytes, Stack size 0 bytes, driver_timer.o(.text.TIM4_IRQHandler))
[Address Reference Count : 1]
TIM_GetCounter (Thumb, 4 bytes, Stack size 0 bytes, driver_timer.o(.text.TIM_GetCounter))
+
[Called By]
USART3_IRQHandler (Thumb, 14 bytes, Stack size 0 bytes, driver_uart.o(.text.USART3_IRQHandler))
[Address Reference Count : 1]
main (Thumb, 126 bytes, Stack size 48 bytes, main.o(.text.main))
-
[Stack]
main (Thumb, 82 bytes, Stack size 16 bytes, main.o(.text.main))
+
[Stack]