diff --git a/driver/Driver_GPIO.c b/driver/Driver_GPIO.c index 7017943..fdf024b 100644 --- a/driver/Driver_GPIO.c +++ b/driver/Driver_GPIO.c @@ -27,7 +27,7 @@ void MyGPIO_Init ( MyGPIO_Struct_TypeDef * GPIOStructPtr ) /* Reset, and then configuration writing of the selected GPIO Pin */ if(GPIOStructPtr->GPIO_Pin <= 8) { - GPIOStructPtr->GPIO->CRL &= ~0xF<<(4*(GPIOStructPtr->GPIO_Pin)); + GPIOStructPtr->GPIO->CRL &= ~(0xF<<(4*(GPIOStructPtr->GPIO_Pin))); GPIOStructPtr->GPIO->CRL |= (GPIOStructPtr->GPIO_Conf)<<(4*(GPIOStructPtr->GPIO_Pin)); } else diff --git a/driver/Driver_Timer.c b/driver/Driver_Timer.c index b75e1b2..48161dd 100644 --- a/driver/Driver_Timer.c +++ b/driver/Driver_Timer.c @@ -37,41 +37,63 @@ void MyTimer_Stop(MyTimer_Struct_TypeDef * Timer) Timer->Timer->CR1 &= ~TIM_CR1_CEN; } -// Note : PWM Tested on PA0 -void MyTimer_ConfigurePWM(MyTimer_Struct_TypeDef *Timer, uint8_t channel, uint16_t duty_cycle) { +// Note : PWM Tested on PA0 and PA1 +void MyTimer_ConfigurePWM(MyTimer_Struct_TypeDef *Timer, uint16_t duty_cycle) { uint16_t CCR_Value = (duty_cycle * TIM2->ARR) / 100; - // Configurer le Timer en mode PWM - - // Configurer le Channel - if (channel == 1) { + if (Timer->channel == 1) { Timer->Timer->CCMR1 = TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1; Timer->Timer->CCMR1 |= TIM_CCMR1_OC1PE; // activer la précharge du registre de comparaison Timer->Timer->CCER |= TIM_CCER_CC1E; Timer->Timer->CCR1 = CCR_Value; - } else if (channel == 2) { + } else if (Timer->channel == 2) { Timer->Timer->CCMR1 = TIM_CCMR1_OC2M_2 | TIM_CCMR1_OC2M_1; Timer->Timer->CCMR1 |= TIM_CCMR1_OC2PE; // activer la précharge du registre de comparaison Timer->Timer->CCER |= TIM_CCER_CC2E; Timer->Timer->CCR2 = CCR_Value; - } else if (channel == 3) { + } else if (Timer->channel == 3) { Timer->Timer->CCMR2 = TIM_CCMR2_OC3M_2 | TIM_CCMR2_OC3M_1; Timer->Timer->CCMR2 |= TIM_CCMR2_OC3PE; // activer la précharge du registre de comparaison Timer->Timer->CCER |= TIM_CCER_CC3E; Timer->Timer->CCER &= ~TIM_CCER_CC3P; Timer->Timer->CCR3 = CCR_Value; - } else if (channel == 4) { + } else if (Timer->channel == 4) { Timer->Timer->CCMR2 = TIM_CCMR2_OC4M_2 | TIM_CCMR2_OC4M_1; Timer->Timer->CCMR2 |= TIM_CCMR2_OC4PE; // activer la précharge du registre de comparaison Timer->Timer->CCER |= TIM_CCER_CC4E; Timer->Timer->CCR4 = CCR_Value; } +} - - +void MyTimer_SetPWMDutyCycle(MyTimer_Struct_TypeDef *Timer, uint16_t duty_cycle) { + uint16_t CCR_Value = (duty_cycle * TIM2->ARR) / 100; + if (Timer->channel == 1) { + Timer->Timer->CCR1 = CCR_Value; + } else if (Timer->channel == 2) { + Timer->Timer->CCR2 = CCR_Value; + } else if (Timer->channel == 3) { + Timer->Timer->CCER &= ~TIM_CCER_CC3P; + Timer->Timer->CCR3 = CCR_Value; + } else if (Timer->channel == 4) { + Timer->Timer->CCR4 = CCR_Value; + } +} + +// 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->CCMR1 |= TIM_CCMR1_CC1S_0; + Timer->Timer->CCMR1 |= TIM_CCMR1_CC2S_0; + Timer->Timer->CCER &= ~TIM_CCER_CC1P; + Timer->Timer->CCMR1 &= ~(TIM_CCMR1_IC1F_0 | TIM_CCMR1_IC1F_1 | TIM_CCMR1_IC1F_2 | TIM_CCMR1_IC1F_3); + Timer->Timer->CCER &= ~TIM_CCER_CC2P; + Timer->Timer->CCMR1 &= ~(TIM_CCMR1_IC2F_0 | TIM_CCMR1_IC2F_1 | TIM_CCMR1_IC2F_2 | TIM_CCMR1_IC2F_3); + Timer->Timer->SMCR |= TIM_SMCR_SMS_0 | TIM_SMCR_SMS_1; } void Bug (void) diff --git a/driver/Driver_Timer.h b/driver/Driver_Timer.h index 95e4ccd..89a5564 100644 --- a/driver/Driver_Timer.h +++ b/driver/Driver_Timer.h @@ -8,6 +8,7 @@ typedef struct TIM_TypeDef * Timer; unsigned short ARR; unsigned short PSC; + uint8_t channel; // 1 2 3 or 4 } MyTimer_Struct_TypeDef; /** @@ -46,6 +47,10 @@ void MyTimer_ActiveIT (TIM_TypeDef * Timer, char Prio, void (*IT_function)(void) */ void MyTimer_PWM(TIM_TypeDef * Timer, char Channel); -void MyTimer_ConfigurePWM(MyTimer_Struct_TypeDef *Timer, uint8_t pwm_channel, uint16_t duty_cycle); +void MyTimer_ConfigurePWM(MyTimer_Struct_TypeDef *Timer, uint16_t duty_cycle); + +void MyTimer_SetPWMDutyCycle(MyTimer_Struct_TypeDef *Timer, uint16_t duty_cycle); + +void MyTimer_ConfigureEncoder(MyTimer_Struct_TypeDef *Timer); #endif diff --git a/driver/Driver_UART.c b/driver/Driver_UART.c index 915853c..55258a8 100644 --- a/driver/Driver_UART.c +++ b/driver/Driver_UART.c @@ -17,19 +17,21 @@ void MyUART_Init(MyUART_Struct_TypeDef *UART) { UART->UART->CR1 |= USART_CR1_TE | USART_CR1_RE; UART->UART->CR2 &= ~(0x11 << 12); + + USART3->CR1 |= USART_CR1_RXNEIE | USART_CR1_TXEIE; // Active les interruptions de l'UART + __enable_irq();// Active les interruptions globales } 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)); + //while (!(UART->UART->SR & USART_SR_TXE)); // Envoyer la donnée UART->UART->DR = data; - // Attendre que la donnée soit envoyée - while (!(UART->UART->SR & USART_SR_TC)); + USART3->CR1 |= USART_CR1_TXEIE; // Active l'interruption d'envoi de données } uint8_t MyUART_ReceiveByte(MyUART_Struct_TypeDef *UART) { @@ -44,4 +46,14 @@ uint8_t MyUART_ReceiveByte(MyUART_Struct_TypeDef *UART) { // Renvoyer la donnée lue return data; -} \ No newline at end of file +} + +void USART3_IRQHandler(void) { + if (USART3->SR & USART_SR_RXNE) { + + } + + if (USART3->SR & USART_SR_TXE) { + + } +} diff --git a/projet-voilier/Listings/projet-voilier.map b/projet-voilier/Listings/projet-voilier.map index ebe2563..e5d9e2c 100644 --- a/projet-voilier/Listings/projet-voilier.map +++ b/projet-voilier/Listings/projet-voilier.map @@ -5,13 +5,9 @@ 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_gpio.o(.text.MyGPIO_Set) for MyGPIO_Set 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_ConfigurePWM) for MyTimer_ConfigurePWM + 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 driver_uart.o(.text.MyUART_Init) for MyUART_Init - main.o(.text.main) refers to driver_uart.o(.text.MyUART_SendByte) for MyUART_SendByte - main.o(.text.main) refers to driver_uart.o(.text.MyUART_ReceiveByte) for MyUART_ReceiveByte main.o(.ARM.exidx.text.main) refers to main.o(.text.main) 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] @@ -22,6 +18,8 @@ Section Cross References driver_timer.o(.ARM.exidx.text.MyTimer_Start) refers to driver_timer.o(.text.MyTimer_Start) for [Anonymous Symbol] driver_timer.o(.ARM.exidx.text.MyTimer_Stop) refers to driver_timer.o(.text.MyTimer_Stop) for [Anonymous Symbol] driver_timer.o(.ARM.exidx.text.MyTimer_ConfigurePWM) refers to driver_timer.o(.text.MyTimer_ConfigurePWM) for [Anonymous Symbol] + driver_timer.o(.ARM.exidx.text.MyTimer_SetPWMDutyCycle) refers to driver_timer.o(.text.MyTimer_SetPWMDutyCycle) for [Anonymous Symbol] + driver_timer.o(.ARM.exidx.text.MyTimer_ConfigureEncoder) refers to driver_timer.o(.text.MyTimer_ConfigureEncoder) for [Anonymous Symbol] driver_timer.o(.ARM.exidx.text.Bug) refers to driver_timer.o(.text.Bug) for [Anonymous Symbol] driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM2_fx) for TIM2_fx driver_timer.o(.text.MyTimer_ActiveIT) refers to driver_timer.o(.data.TIM4_fx) for TIM4_fx @@ -39,6 +37,7 @@ Section Cross References 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_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] startup_stm32f10x_md.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_md.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_md.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory @@ -47,6 +46,7 @@ Section Cross References startup_stm32f10x_md.o(RESET) refers to driver_timer.o(.text.TIM2_IRQHandler) for TIM2_IRQHandler startup_stm32f10x_md.o(RESET) refers to driver_timer.o(.text.TIM3_IRQHandler) for TIM3_IRQHandler startup_stm32f10x_md.o(RESET) refers to driver_timer.o(.text.TIM4_IRQHandler) for TIM4_IRQHandler + startup_stm32f10x_md.o(RESET) refers to driver_uart.o(.text.USART3_IRQHandler) for USART3_IRQHandler startup_stm32f10x_md.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_md.o(.text) refers to system_stm32f10x.o(.text.SystemInit) for SystemInit startup_stm32f10x_md.o(.text) refers to __main.o(!!!main) for __main @@ -174,6 +174,7 @@ Removing Unused input sections from the image. Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Init), (8 bytes). Removing driver_gpio.o(.text.MyGPIO_Read), (12 bytes). Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Read), (8 bytes). + Removing driver_gpio.o(.text.MyGPIO_Set), (14 bytes). Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Set), (8 bytes). Removing driver_gpio.o(.text.MyGPIO_Reset), (16 bytes). Removing driver_gpio.o(.ARM.exidx.text.MyGPIO_Reset), (8 bytes). @@ -184,7 +185,11 @@ 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). @@ -192,9 +197,13 @@ Removing Unused input sections from the image. Removing driver_timer.o(.ARM.exidx.text.TIM3_IRQHandler), (8 bytes). Removing driver_timer.o(.ARM.exidx.text.TIM4_IRQHandler), (8 bytes). Removing driver_uart.o(.text), (0 bytes). + Removing driver_uart.o(.text.MyUART_Init), (76 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). + Removing driver_uart.o(.ARM.exidx.text.USART3_IRQHandler), (8 bytes). Removing system_stm32f10x.o(.text), (0 bytes). Removing system_stm32f10x.o(.ARM.exidx.text.SystemInit), (8 bytes). Removing system_stm32f10x.o(.text.SystemCoreClockUpdate), (110 bytes). @@ -202,7 +211,7 @@ Removing Unused input sections from the image. Removing system_stm32f10x.o(.data.SystemCoreClock), (4 bytes). Removing system_stm32f10x.o(.rodata.AHBPrescTable), (16 bytes). -34 unused section(s) (total 498 bytes) removed from the image. +43 unused section(s) (total 906 bytes) removed from the image. ============================================================================== @@ -328,18 +337,15 @@ Image Symbol Table .text 0x08000242 Section 0 indicate_semi.o(.text) [Anonymous Symbol] 0x08000244 Section 0 driver_timer.o(.text.Bug) [Anonymous Symbol] 0x08000248 Section 0 driver_gpio.o(.text.MyGPIO_Init) - [Anonymous Symbol] 0x080002e4 Section 0 driver_gpio.o(.text.MyGPIO_Set) - [Anonymous Symbol] 0x080002f4 Section 0 driver_timer.o(.text.MyTimer_Base_Init) - [Anonymous Symbol] 0x08000380 Section 0 driver_timer.o(.text.MyTimer_ConfigurePWM) - [Anonymous Symbol] 0x08000428 Section 0 driver_timer.o(.text.MyTimer_Start) - [Anonymous Symbol] 0x08000434 Section 0 driver_uart.o(.text.MyUART_Init) - [Anonymous Symbol] 0x08000470 Section 0 driver_uart.o(.text.MyUART_ReceiveByte) - [Anonymous Symbol] 0x08000488 Section 0 driver_uart.o(.text.MyUART_SendByte) - [Anonymous Symbol] 0x0800049c Section 0 system_stm32f10x.o(.text.SystemInit) - [Anonymous Symbol] 0x080005ac Section 0 driver_timer.o(.text.TIM2_IRQHandler) - [Anonymous Symbol] 0x080005c8 Section 0 driver_timer.o(.text.TIM3_IRQHandler) - [Anonymous Symbol] 0x080005e4 Section 0 driver_timer.o(.text.TIM4_IRQHandler) - [Anonymous Symbol] 0x08000600 Section 0 main.o(.text.main) + [Anonymous Symbol] 0x080002e4 Section 0 driver_timer.o(.text.MyTimer_Base_Init) + [Anonymous Symbol] 0x08000370 Section 0 driver_timer.o(.text.MyTimer_ConfigureEncoder) + [Anonymous Symbol] 0x080003b8 Section 0 driver_timer.o(.text.MyTimer_Start) + [Anonymous Symbol] 0x080003c4 Section 0 system_stm32f10x.o(.text.SystemInit) + [Anonymous Symbol] 0x080004d4 Section 0 driver_timer.o(.text.TIM2_IRQHandler) + [Anonymous Symbol] 0x080004f0 Section 0 driver_timer.o(.text.TIM3_IRQHandler) + [Anonymous Symbol] 0x0800050c Section 0 driver_timer.o(.text.TIM4_IRQHandler) + [Anonymous Symbol] 0x08000528 Section 0 driver_uart.o(.text.USART3_IRQHandler) + [Anonymous Symbol] 0x08000538 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) @@ -479,7 +485,6 @@ Image Symbol Table TIM1_UP_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) USART1_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) USART2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) - USART3_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) USBWakeUp_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) USB_HP_CAN1_TX_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) USB_LP_CAN1_RX0_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) @@ -499,20 +504,17 @@ Image Symbol Table __semihosting_library_function 0x08000243 Thumb Code 0 indicate_semi.o(.text) Bug 0x08000245 Thumb Code 2 driver_timer.o(.text.Bug) MyGPIO_Init 0x08000249 Thumb Code 140 driver_gpio.o(.text.MyGPIO_Init) - MyGPIO_Set 0x080002e5 Thumb Code 14 driver_gpio.o(.text.MyGPIO_Set) - MyTimer_Base_Init 0x080002f5 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) - MyTimer_ConfigurePWM 0x08000381 Thumb Code 168 driver_timer.o(.text.MyTimer_ConfigurePWM) - MyTimer_Start 0x08000429 Thumb Code 12 driver_timer.o(.text.MyTimer_Start) - MyUART_Init 0x08000435 Thumb Code 58 driver_uart.o(.text.MyUART_Init) - MyUART_ReceiveByte 0x08000471 Thumb Code 24 driver_uart.o(.text.MyUART_ReceiveByte) - MyUART_SendByte 0x08000489 Thumb Code 20 driver_uart.o(.text.MyUART_SendByte) - SystemInit 0x0800049d Thumb Code 272 system_stm32f10x.o(.text.SystemInit) - TIM2_IRQHandler 0x080005ad Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) - TIM3_IRQHandler 0x080005c9 Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) - TIM4_IRQHandler 0x080005e5 Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) - main 0x08000601 Thumb Code 168 main.o(.text.main) - Region$$Table$$Base 0x080006a8 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x080006c8 Number 0 anon$$obj.o(Region$$Table) + MyTimer_Base_Init 0x080002e5 Thumb Code 140 driver_timer.o(.text.MyTimer_Base_Init) + MyTimer_ConfigureEncoder 0x08000371 Thumb Code 70 driver_timer.o(.text.MyTimer_ConfigureEncoder) + MyTimer_Start 0x080003b9 Thumb Code 12 driver_timer.o(.text.MyTimer_Start) + SystemInit 0x080003c5 Thumb Code 272 system_stm32f10x.o(.text.SystemInit) + TIM2_IRQHandler 0x080004d5 Thumb Code 26 driver_timer.o(.text.TIM2_IRQHandler) + TIM3_IRQHandler 0x080004f1 Thumb Code 28 driver_timer.o(.text.TIM3_IRQHandler) + TIM4_IRQHandler 0x0800050d Thumb Code 28 driver_timer.o(.text.TIM4_IRQHandler) + USART3_IRQHandler 0x08000529 Thumb Code 14 driver_uart.o(.text.USART3_IRQHandler) + main 0x08000539 Thumb Code 78 main.o(.text.main) + Region$$Table$$Base 0x08000588 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x080005a8 Number 0 anon$$obj.o(Region$$Table) TIM2_fx 0x20000000 Data 4 driver_timer.o(.data.TIM2_fx) TIM3_fx 0x20000004 Data 4 driver_timer.o(.data.TIM3_fx) TIM4_fx 0x20000008 Data 4 driver_timer.o(.data.TIM4_fx) @@ -527,108 +529,106 @@ Memory Map of the image Image Entry point : 0x08000189 - Load Region LR_1 (Base: 0x08000000, Size: 0x000006d4, Max: 0xffffffff, ABSOLUTE) + Load Region LR_1 (Base: 0x08000000, Size: 0x000005b4, Max: 0xffffffff, ABSOLUTE) - Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000006c8, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RO (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000005a8, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x08000000 0x08000000 0x000000ec Data RO 73 RESET startup_stm32f10x_md.o - 0x080000ec 0x080000ec 0x00000008 Code RO 98 * !!!main c_w.l(__main.o) - 0x080000f4 0x080000f4 0x00000034 Code RO 263 !!!scatter c_w.l(__scatter.o) - 0x08000128 0x08000128 0x0000001a Code RO 265 !!handler_copy c_w.l(__scatter_copy.o) + 0x08000000 0x08000000 0x000000ec Data RO 79 RESET startup_stm32f10x_md.o + 0x080000ec 0x080000ec 0x00000008 Code RO 104 * !!!main c_w.l(__main.o) + 0x080000f4 0x080000f4 0x00000034 Code RO 269 !!!scatter c_w.l(__scatter.o) + 0x08000128 0x08000128 0x0000001a Code RO 271 !!handler_copy c_w.l(__scatter_copy.o) 0x08000142 0x08000142 0x00000002 PAD - 0x08000144 0x08000144 0x0000001c Code RO 267 !!handler_zi c_w.l(__scatter_zi.o) - 0x08000160 0x08000160 0x00000002 Code RO 125 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x08000162 0x08000162 0x00000000 Code RO 132 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 134 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 136 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 139 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 141 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 143 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 146 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 148 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 150 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 152 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 154 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 156 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 158 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 160 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 162 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 164 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 166 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 170 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 172 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 174 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 176 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000002 Code RO 177 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) - 0x08000164 0x08000164 0x00000002 Code RO 199 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x08000166 0x08000166 0x00000000 Code RO 214 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 216 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 219 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 222 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 224 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 227 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000002 Code RO 228 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) - 0x08000168 0x08000168 0x00000000 Code RO 100 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x08000168 0x08000168 0x00000000 Code RO 102 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x08000168 0x08000168 0x00000006 Code RO 114 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x0800016e 0x0800016e 0x00000000 Code RO 104 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x0800016e 0x0800016e 0x00000004 Code RO 105 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000000 Code RO 107 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000008 Code RO 108 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x0800017a 0x0800017a 0x00000002 Code RO 129 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x0800017c 0x0800017c 0x00000000 Code RO 179 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x0800017c 0x0800017c 0x00000004 Code RO 180 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x08000180 0x08000180 0x00000006 Code RO 181 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) + 0x08000144 0x08000144 0x0000001c Code RO 273 !!handler_zi c_w.l(__scatter_zi.o) + 0x08000160 0x08000160 0x00000002 Code RO 131 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) + 0x08000162 0x08000162 0x00000000 Code RO 138 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 140 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 142 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 145 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 147 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 149 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 152 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 154 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 156 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 158 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 160 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 162 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 164 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 166 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 168 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 170 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 172 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 176 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 178 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 180 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 182 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000002 Code RO 183 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) + 0x08000164 0x08000164 0x00000002 Code RO 205 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) + 0x08000166 0x08000166 0x00000000 Code RO 220 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 222 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 225 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 228 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 230 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 233 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000002 Code RO 234 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) + 0x08000168 0x08000168 0x00000000 Code RO 106 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) + 0x08000168 0x08000168 0x00000000 Code RO 108 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) + 0x08000168 0x08000168 0x00000006 Code RO 120 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) + 0x0800016e 0x0800016e 0x00000000 Code RO 110 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) + 0x0800016e 0x0800016e 0x00000004 Code RO 111 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000000 Code RO 113 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000008 Code RO 114 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) + 0x0800017a 0x0800017a 0x00000002 Code RO 135 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) + 0x0800017c 0x0800017c 0x00000000 Code RO 185 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) + 0x0800017c 0x0800017c 0x00000004 Code RO 186 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) + 0x08000180 0x08000180 0x00000006 Code RO 187 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) 0x08000186 0x08000186 0x00000002 PAD - 0x08000188 0x08000188 0x00000040 Code RO 74 * .text startup_stm32f10x_md.o - 0x080001c8 0x080001c8 0x00000006 Code RO 96 .text c_w.l(heapauxi.o) - 0x080001ce 0x080001ce 0x0000004a Code RO 116 .text c_w.l(sys_stackheap_outer.o) - 0x08000218 0x08000218 0x00000012 Code RO 118 .text c_w.l(exit.o) + 0x08000188 0x08000188 0x00000040 Code RO 80 * .text startup_stm32f10x_md.o + 0x080001c8 0x080001c8 0x00000006 Code RO 102 .text c_w.l(heapauxi.o) + 0x080001ce 0x080001ce 0x0000004a Code RO 122 .text c_w.l(sys_stackheap_outer.o) + 0x08000218 0x08000218 0x00000012 Code RO 124 .text c_w.l(exit.o) 0x0800022a 0x0800022a 0x00000002 PAD - 0x0800022c 0x0800022c 0x00000008 Code RO 126 .text c_w.l(libspace.o) - 0x08000234 0x08000234 0x0000000c Code RO 189 .text c_w.l(sys_exit.o) - 0x08000240 0x08000240 0x00000002 Code RO 204 .text c_w.l(use_no_semi.o) - 0x08000242 0x08000242 0x00000000 Code RO 206 .text c_w.l(indicate_semi.o) + 0x0800022c 0x0800022c 0x00000008 Code RO 132 .text c_w.l(libspace.o) + 0x08000234 0x08000234 0x0000000c Code RO 195 .text c_w.l(sys_exit.o) + 0x08000240 0x08000240 0x00000002 Code RO 210 .text c_w.l(use_no_semi.o) + 0x08000242 0x08000242 0x00000000 Code RO 212 .text c_w.l(indicate_semi.o) 0x08000242 0x08000242 0x00000002 PAD - 0x08000244 0x08000244 0x00000002 Code RO 37 .text.Bug driver_timer.o + 0x08000244 0x08000244 0x00000002 Code RO 41 .text.Bug driver_timer.o 0x08000246 0x08000246 0x00000002 PAD 0x08000248 0x08000248 0x0000009c Code RO 11 .text.MyGPIO_Init driver_gpio.o - 0x080002e4 0x080002e4 0x0000000e Code RO 15 .text.MyGPIO_Set driver_gpio.o - 0x080002f2 0x080002f2 0x00000002 PAD - 0x080002f4 0x080002f4 0x0000008c Code RO 29 .text.MyTimer_Base_Init driver_timer.o - 0x08000380 0x08000380 0x000000a8 Code RO 35 .text.MyTimer_ConfigurePWM driver_timer.o - 0x08000428 0x08000428 0x0000000c Code RO 31 .text.MyTimer_Start driver_timer.o - 0x08000434 0x08000434 0x0000003a Code RO 58 .text.MyUART_Init driver_uart.o - 0x0800046e 0x0800046e 0x00000002 PAD - 0x08000470 0x08000470 0x00000018 Code RO 62 .text.MyUART_ReceiveByte driver_uart.o - 0x08000488 0x08000488 0x00000014 Code RO 60 .text.MyUART_SendByte driver_uart.o - 0x0800049c 0x0800049c 0x00000110 Code RO 81 .text.SystemInit system_stm32f10x.o - 0x080005ac 0x080005ac 0x0000001a Code RO 41 .text.TIM2_IRQHandler driver_timer.o - 0x080005c6 0x080005c6 0x00000002 PAD - 0x080005c8 0x080005c8 0x0000001c Code RO 43 .text.TIM3_IRQHandler driver_timer.o - 0x080005e4 0x080005e4 0x0000001c Code RO 45 .text.TIM4_IRQHandler driver_timer.o - 0x08000600 0x08000600 0x000000a8 Code RO 2 .text.main main.o - 0x080006a8 0x080006a8 0x00000020 Data RO 262 Region$$Table anon$$obj.o + 0x080002e4 0x080002e4 0x0000008c Code RO 29 .text.MyTimer_Base_Init driver_timer.o + 0x08000370 0x08000370 0x00000046 Code RO 39 .text.MyTimer_ConfigureEncoder driver_timer.o + 0x080003b6 0x080003b6 0x00000002 PAD + 0x080003b8 0x080003b8 0x0000000c Code RO 31 .text.MyTimer_Start driver_timer.o + 0x080003c4 0x080003c4 0x00000110 Code RO 87 .text.SystemInit system_stm32f10x.o + 0x080004d4 0x080004d4 0x0000001a Code RO 45 .text.TIM2_IRQHandler driver_timer.o + 0x080004ee 0x080004ee 0x00000002 PAD + 0x080004f0 0x080004f0 0x0000001c Code RO 47 .text.TIM3_IRQHandler driver_timer.o + 0x0800050c 0x0800050c 0x0000001c Code RO 49 .text.TIM4_IRQHandler driver_timer.o + 0x08000528 0x08000528 0x0000000e Code RO 68 .text.USART3_IRQHandler driver_uart.o + 0x08000536 0x08000536 0x00000002 PAD + 0x08000538 0x08000538 0x0000004e Code RO 2 .text.main main.o + 0x08000586 0x08000586 0x00000002 PAD + 0x08000588 0x08000588 0x00000020 Data RO 268 Region$$Table anon$$obj.o - Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x080006c8, Size: 0x0000000c, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_RW (Exec base: 0x20000000, Load base: 0x080005a8, Size: 0x0000000c, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x080006c8 0x00000004 Data RW 47 .data.TIM2_fx driver_timer.o - 0x20000004 0x080006cc 0x00000004 Data RW 48 .data.TIM3_fx driver_timer.o - 0x20000008 0x080006d0 0x00000004 Data RW 49 .data.TIM4_fx driver_timer.o + 0x20000000 0x080005a8 0x00000004 Data RW 51 .data.TIM2_fx driver_timer.o + 0x20000004 0x080005ac 0x00000004 Data RW 52 .data.TIM3_fx driver_timer.o + 0x20000008 0x080005b0 0x00000004 Data RW 53 .data.TIM4_fx driver_timer.o - Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x080006d4, Size: 0x00000660, Max: 0xffffffff, ABSOLUTE) + Execution Region ER_ZI (Exec base: 0x20000010, Load base: 0x080005b4, Size: 0x00000660, Max: 0xffffffff, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000010 - 0x00000060 Zero RW 127 .bss c_w.l(libspace.o) - 0x20000070 - 0x00000200 Zero RW 72 HEAP startup_stm32f10x_md.o - 0x20000270 - 0x00000400 Zero RW 71 STACK startup_stm32f10x_md.o + 0x20000010 - 0x00000060 Zero RW 133 .bss c_w.l(libspace.o) + 0x20000070 - 0x00000200 Zero RW 78 HEAP startup_stm32f10x_md.o + 0x20000270 - 0x00000400 Zero RW 77 STACK startup_stm32f10x_md.o ============================================================================== @@ -638,17 +638,17 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 170 16 0 0 0 2108 driver_gpio.o - 404 4 0 12 0 6789 driver_timer.o - 102 0 0 0 0 1970 driver_uart.o - 168 0 0 0 0 2559 main.o + 156 16 0 0 0 2108 driver_gpio.o + 306 0 0 12 0 7375 driver_timer.o + 14 0 0 0 0 2250 driver_uart.o + 78 0 0 0 0 2136 main.o 64 26 236 0 1536 864 startup_stm32f10x_md.o 272 0 0 0 0 2813 system_stm32f10x.o ---------------------------------------------------------------------- - 1188 46 268 12 1536 17103 Object Totals + 900 42 268 12 1536 17546 Object Totals 0 0 32 0 0 0 (incl. Generated) - 8 0 0 0 0 0 (incl. Padding) + 10 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- @@ -695,15 +695,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 1468 62 268 12 1632 17499 Grand Totals - 1468 62 268 12 1632 17499 ELF Image Totals - 1468 62 268 12 0 0 ROM Totals + 1180 58 268 12 1632 17942 Grand Totals + 1180 58 268 12 1632 17942 ELF Image Totals + 1180 58 268 12 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 1736 ( 1.70kB) + Total RO Size (Code + RO Data) 1448 ( 1.41kB) Total RW Size (RW Data + ZI Data) 1644 ( 1.61kB) - Total ROM Size (Code + RO Data + RW Data) 1748 ( 1.71kB) + Total ROM Size (Code + RO Data + RW Data) 1460 ( 1.43kB) ============================================================================== diff --git a/projet-voilier/Objects/driver_gpio.o b/projet-voilier/Objects/driver_gpio.o index 5f720ba..ed751f0 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 bbd875b..b82e9d2 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 f517f64..75cf5b2 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 05cd3e8..d9e2675 100644 --- a/projet-voilier/Objects/main.d +++ b/projet-voilier/Objects/main.d @@ -1,4 +1,3 @@ -<<<<<<< HEAD ./objects/main.o: src\main.c \ C:\Users\robin\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.0\Device\Include\stm32f10x.h \ RTE\_sim\RTE_Components.h \ @@ -10,17 +9,3 @@ 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 -======= -.\objects\main.o: src\main.c -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\stm32f10x.h -.\objects\main.o: .\RTE\_reel\RTE_Components.h -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\core_cm3.h -.\objects\main.o: C:\Keil_v5\ARM\ARMCC\Bin\..\include\stdint.h -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_version.h -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_compiler.h -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\Core\Include\cmsis_armcc.h -.\objects\main.o: C:\Programdata\Keil\Arm\Packs\Keil\STM32F1xx_DFP\2.3.0\Device\Include\system_stm32f10x.h -.\objects\main.o: ..\driver\Driver_GPIO.h -.\objects\main.o: ..\driver\Driver_Timer.h -.\objects\main.o: ..\driver\Driver_ADC.h ->>>>>>> 26e44a6d5ba2eda12f591ccdce71c8c854107110 diff --git a/projet-voilier/Objects/main.o b/projet-voilier/Objects/main.o index 3dc02b9..4d571fe 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 992d864..f61c2e7 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 dbb575e..8ffe164 100644 --- a/projet-voilier/Objects/projet-voilier.build_log.htm +++ b/projet-voilier/Objects/projet-voilier.build_log.htm @@ -22,24 +22,20 @@ Dialog DLL: TARMSTM.DLL V1.67.1.0

Project:

C:\Users\robin\OneDrive\Documents\Dev\Projet-Voilier-3\projet-voilier\projet-voilier.uvprojx -Project File Date: 03/27/2023 +Project File Date: 04/01/2023

Output:

*** Using Compiler 'V6.19', folder: 'C:\Keil_v5\ARM\ARMCLANG\Bin' Rebuild target 'sim' assembling startup_stm32f10x_md.s... -compiling Driver_UART.c... -compiling Driver_GPIO.c... -src/main.c(51): warning: GCC does not allow variable declarations in for loop initializers before C99 [-Wgcc-compat] - for (int i = 0; i < 100000000; i++); - ^ -1 warning generated. compiling main.c... +compiling Driver_UART.c... compiling system_stm32f10x.c... +compiling Driver_GPIO.c... compiling Driver_Timer.c... linking... -Program Size: Code=1468 RO-data=268 RW-data=12 ZI-data=1632 -".\Objects\projet-voilier.axf" - 0 Error(s), 1 Warning(s). +Program Size: Code=1180 RO-data=268 RW-data=12 ZI-data=1632 +".\Objects\projet-voilier.axf" - 0 Error(s), 0 Warning(s).

Software Packages used:

@@ -66,11 +62,11 @@ Package Vendor: Keil * Component: ARM::CMSIS:CORE:5.6.0 * Component: Keil::Device:Startup:1.0.0 - Source file: Device/Source/ARM/startup_stm32f10x_md.s Include file: RTE_Driver/Config/RTE_Device.h Source file: Device/Source/system_stm32f10x.c Source file: Device/Source/ARM/STM32F1xx_OPT.s -Build Time Elapsed: 00:00:01 + Source file: Device/Source/ARM/startup_stm32f10x_md.s +Build Time Elapsed: 00:00:00 diff --git a/projet-voilier/Objects/projet-voilier.htm b/projet-voilier/Objects/projet-voilier.htm index 2c822d5..4ab9e62 100644 --- a/projet-voilier/Objects/projet-voilier.htm +++ b/projet-voilier/Objects/projet-voilier.htm @@ -3,9 +3,9 @@ Static Call Graph - [.\Objects\projet-voilier.axf]

Static Call Graph for image .\Objects\projet-voilier.axf


-

#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Fri Mar 31 11:59:13 2023 +

#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Fri Apr 7 14:19:38 2023

-

Maximum Stack Usage = 48 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

+

Maximum Stack Usage = 40 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ MyGPIO_Init

@@ -85,7 +85,7 @@ Function Pointers

  • TIM4_IRQHandler from driver_timer.o(.text.TIM4_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  • USART1_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  • USART2_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET) -
  • USART3_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET) +
  • USART3_IRQHandler from driver_uart.o(.text.USART3_IRQHandler) referenced from startup_stm32f10x_md.o(RESET)
  • USBWakeUp_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  • USB_HP_CAN1_TX_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET)
  • USB_LP_CAN1_RX0_IRQHandler from startup_stm32f10x_md.o(.text) referenced from startup_stm32f10x_md.o(RESET) @@ -111,9 +111,9 @@ Global Symbols

    [Calls] -

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