diff --git a/UAV-ControlSystem/Debug/UAV-ControlSystem.bin b/UAV-ControlSystem/Debug/UAV-ControlSystem.bin index 9516067..c085200 100644 Binary files a/UAV-ControlSystem/Debug/UAV-ControlSystem.bin and b/UAV-ControlSystem/Debug/UAV-ControlSystem.bin differ diff --git a/UAV-ControlSystem/Debug/objects.list b/UAV-ControlSystem/Debug/objects.list index c16be5a..d89c6b1 100644 --- a/UAV-ControlSystem/Debug/objects.list +++ b/UAV-ControlSystem/Debug/objects.list @@ -1,5 +1,4 @@ "src/drivers/adc.o" -"src/drivers/dma.o" "src/main.o" "src/stm32f4xx_it.o" "src/syscalls.o" diff --git a/UAV-ControlSystem/Debug/output.map b/UAV-ControlSystem/Debug/output.map index 065cdac..673fe40 100644 --- a/UAV-ControlSystem/Debug/output.map +++ b/UAV-ControlSystem/Debug/output.map @@ -9,7 +9,7 @@ C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\lib C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) (HAL_NVIC_SetPriorityGrouping) C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - src/drivers/dma.o (HAL_DMA_Init) + src/drivers/adc.o (HAL_DMA_Init) C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) src/drivers/adc.o (HAL_GPIO_Init) C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) @@ -36,15 +36,10 @@ c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201 Allocating common symbols Common symbol size file -g_DmaHandle 0x58 src/drivers/dma.o +channels_added 0x40 src/drivers/adc.o +g_DmaHandle 0x58 src/drivers/adc.o uwTick 0x4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) -g_ADC2 0x4 src/main.o -sConfig 0x10 src/drivers/adc.o -adc_testinput_handle - 0x48 src/main.o g_AdcHandle 0x48 src/drivers/adc.o -adc_test2input_handle - 0x48 src/main.o Discarded input sections @@ -147,191 +142,12 @@ Discarded input sections .group 0x00000000 0x8 src/drivers/adc.o .group 0x00000000 0x8 src/drivers/adc.o .group 0x00000000 0x8 src/drivers/adc.o + .group 0x00000000 0x8 src/drivers/adc.o + .group 0x00000000 0x8 src/drivers/adc.o + .group 0x00000000 0x8 src/drivers/adc.o + .group 0x00000000 0x8 src/drivers/adc.o .text 0x00000000 0x0 src/drivers/adc.o .data 0x00000000 0x0 src/drivers/adc.o - .text.adc_read_int - 0x00000000 0x30 src/drivers/adc.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .group 0x00000000 0x8 src/drivers/dma.o - .text 0x00000000 0x0 src/drivers/dma.o - .data 0x00000000 0x0 src/drivers/dma.o - .bss 0x00000000 0x0 src/drivers/dma.o - .text.configureDMA - 0x00000000 0xb4 src/drivers/dma.o - .debug_macro 0x00000000 0x8a4 src/drivers/dma.o - .debug_macro 0x00000000 0x28 src/drivers/dma.o - .debug_macro 0x00000000 0x28 src/drivers/dma.o - .debug_macro 0x00000000 0x22 src/drivers/dma.o - .debug_macro 0x00000000 0x44 src/drivers/dma.o - .debug_macro 0x00000000 0xfd src/drivers/dma.o - .debug_macro 0x00000000 0x22 src/drivers/dma.o - .debug_macro 0x00000000 0x1df src/drivers/dma.o - .debug_macro 0x00000000 0x35 src/drivers/dma.o - .debug_macro 0x00000000 0x50 src/drivers/dma.o - .debug_macro 0x00000000 0xe66 src/drivers/dma.o - .debug_macro 0x00000000 0x891e src/drivers/dma.o - .debug_macro 0x00000000 0x43 src/drivers/dma.o - .debug_macro 0x00000000 0x24b src/drivers/dma.o - .debug_macro 0x00000000 0x33a6 src/drivers/dma.o - .debug_macro 0x00000000 0x58 src/drivers/dma.o - .debug_macro 0x00000000 0x35 src/drivers/dma.o - .debug_macro 0x00000000 0x9c src/drivers/dma.o - .debug_macro 0x00000000 0x16 src/drivers/dma.o - .debug_macro 0x00000000 0x97 src/drivers/dma.o - .debug_macro 0x00000000 0x329 src/drivers/dma.o - .debug_macro 0x00000000 0xfd src/drivers/dma.o - .debug_macro 0x00000000 0x10 src/drivers/dma.o - .debug_macro 0x00000000 0x52 src/drivers/dma.o - .debug_macro 0x00000000 0x16 src/drivers/dma.o - .debug_macro 0x00000000 0x43 src/drivers/dma.o - .debug_macro 0x00000000 0x187 src/drivers/dma.o - .debug_macro 0x00000000 0x10 src/drivers/dma.o - .debug_macro 0x00000000 0x22 src/drivers/dma.o - .debug_macro 0x00000000 0x3a src/drivers/dma.o - .debug_macro 0x00000000 0x10 src/drivers/dma.o - .debug_macro 0x00000000 0x40 src/drivers/dma.o - .debug_macro 0x00000000 0x65 src/drivers/dma.o - .debug_macro 0x00000000 0x16 src/drivers/dma.o - .debug_macro 0x00000000 0x197 src/drivers/dma.o - .debug_macro 0x00000000 0x57 src/drivers/dma.o - .debug_macro 0x00000000 0x8a0 src/drivers/dma.o - .debug_macro 0x00000000 0x9da src/drivers/dma.o - .debug_macro 0x00000000 0x11e src/drivers/dma.o - .debug_macro 0x00000000 0x130 src/drivers/dma.o - .debug_macro 0x00000000 0x27 src/drivers/dma.o - .debug_macro 0x00000000 0x272 src/drivers/dma.o - .debug_macro 0x00000000 0x5f src/drivers/dma.o - .debug_macro 0x00000000 0x23a src/drivers/dma.o - .debug_macro 0x00000000 0x391 src/drivers/dma.o - .debug_macro 0x00000000 0x16f src/drivers/dma.o - .debug_macro 0x00000000 0xf9 src/drivers/dma.o - .debug_macro 0x00000000 0x36e src/drivers/dma.o - .debug_macro 0x00000000 0x23 src/drivers/dma.o - .debug_macro 0x00000000 0xe6 src/drivers/dma.o - .debug_macro 0x00000000 0xa1 src/drivers/dma.o - .debug_macro 0x00000000 0x3c src/drivers/dma.o - .debug_macro 0x00000000 0x13a src/drivers/dma.o - .debug_macro 0x00000000 0x21e src/drivers/dma.o - .debug_macro 0x00000000 0x2e src/drivers/dma.o - .debug_macro 0x00000000 0x512 src/drivers/dma.o - .debug_macro 0x00000000 0x88 src/drivers/dma.o - .debug_macro 0x00000000 0xd5 src/drivers/dma.o - .debug_macro 0x00000000 0x183 src/drivers/dma.o - .debug_macro 0x00000000 0x1a7 src/drivers/dma.o - .debug_macro 0x00000000 0xa5 src/drivers/dma.o - .debug_macro 0x00000000 0x18b src/drivers/dma.o - .debug_macro 0x00000000 0x24 src/drivers/dma.o - .debug_macro 0x00000000 0x35 src/drivers/dma.o - .debug_macro 0x00000000 0x97 src/drivers/dma.o - .debug_macro 0x00000000 0x11e src/drivers/dma.o - .debug_macro 0x00000000 0x7f src/drivers/dma.o - .debug_macro 0x00000000 0x89 src/drivers/dma.o - .debug_macro 0x00000000 0x7e src/drivers/dma.o - .debug_macro 0x00000000 0x31a src/drivers/dma.o - .debug_macro 0x00000000 0x409 src/drivers/dma.o - .debug_macro 0x00000000 0xe4 src/drivers/dma.o - .debug_macro 0x00000000 0x48d src/drivers/dma.o - .debug_macro 0x00000000 0x22b src/drivers/dma.o - .debug_macro 0x00000000 0x202 src/drivers/dma.o - .debug_macro 0x00000000 0x6d9 src/drivers/dma.o - .debug_macro 0x00000000 0x5b src/drivers/dma.o - .debug_macro 0x00000000 0x14d src/drivers/dma.o - .debug_macro 0x00000000 0x287 src/drivers/dma.o - .debug_macro 0x00000000 0x225 src/drivers/dma.o - .debug_macro 0x00000000 0x1b5 src/drivers/dma.o - .debug_macro 0x00000000 0x2db src/drivers/dma.o - .debug_macro 0x00000000 0x94 src/drivers/dma.o - .debug_macro 0x00000000 0x1df src/drivers/dma.o - .debug_macro 0x00000000 0x115 src/drivers/dma.o - .debug_macro 0x00000000 0x6e src/drivers/dma.o - .debug_macro 0x00000000 0x125 src/drivers/dma.o - .debug_macro 0x00000000 0x16 src/drivers/dma.o .group 0x00000000 0x8 src/main.o .group 0x00000000 0x8 src/main.o .group 0x00000000 0x8 src/main.o @@ -512,8 +328,8 @@ Discarded input sections .debug_macro 0x00000000 0x115 src/main.o .debug_macro 0x00000000 0x6e src/main.o .debug_macro 0x00000000 0x125 src/main.o - .debug_macro 0x00000000 0x16 src/main.o - COMMON 0x00000000 0x94 src/main.o + .debug_macro 0x00000000 0x10 src/main.o + .debug_macro 0x00000000 0x35 src/main.o .group 0x00000000 0x8 src/stm32f4xx_it.o .group 0x00000000 0x8 src/stm32f4xx_it.o .group 0x00000000 0x8 src/stm32f4xx_it.o @@ -988,6 +804,8 @@ Discarded input sections .text 0x00000000 0x0 src/utilities.o .data 0x00000000 0x0 src/utilities.o .bss 0x00000000 0x0 src/utilities.o + .text.accumulate + 0x00000000 0x40 src/utilities.o .debug_macro 0x00000000 0x8a4 src/utilities.o .debug_macro 0x00000000 0x22 src/utilities.o .debug_macro 0x00000000 0x44 src/utilities.o @@ -2491,7 +2309,6 @@ LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7. LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu/crt0.o LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libm.a LOAD src/drivers/adc.o -LOAD src/drivers/dma.o LOAD src/main.o LOAD src/stm32f4xx_it.o LOAD src/syscalls.o @@ -2516,249 +2333,252 @@ LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7. 0x08000000 g_pfnVectors 0x08000188 . = ALIGN (0x4) -.text 0x08000188 0x1e50 +.text 0x08000188 0x1f00 0x08000188 . = ALIGN (0x4) *(.text) .text 0x08000188 0xa4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o *(.text*) - .text.adc_configure - 0x0800022c 0x70 src/drivers/adc.o - 0x0800022c adc_configure - .text.adc_pin_add - 0x0800029c 0xe4 src/drivers/adc.o - 0x0800029c adc_pin_add - .text.adc_start - 0x08000380 0x24 src/drivers/adc.o - 0x08000380 adc_start - .text.main 0x080003a4 0xe4 src/main.o - 0x080003a4 main + .text.adc_read + 0x0800022c 0x74 src/drivers/adc.o + 0x0800022c adc_read .text.HAL_ADC_MspInit - 0x08000488 0xfc src/main.o - 0x08000488 HAL_ADC_MspInit + 0x080002a0 0xfc src/drivers/adc.o + 0x080002a0 HAL_ADC_MspInit + .text.adc_configure + 0x0800039c 0xac src/drivers/adc.o + 0x0800039c adc_configure + .text.adc_pin_add + 0x08000448 0x34 src/drivers/adc.o + 0x08000448 adc_pin_add + .text.adc_pin_conf + 0x0800047c 0xe8 src/drivers/adc.o + 0x0800047c adc_pin_conf + .text.adc_start + 0x08000564 0x34 src/drivers/adc.o + 0x08000564 adc_start + .text.main 0x08000598 0xdc src/main.o + 0x08000598 main .text.SystemClock_Config - 0x08000584 0xc0 src/main.o + 0x08000674 0xc0 src/main.o .text.SysTick_Handler - 0x08000644 0x10 src/stm32f4xx_it.o - 0x08000644 SysTick_Handler + 0x08000734 0x10 src/stm32f4xx_it.o + 0x08000734 SysTick_Handler .text.SystemInit - 0x08000654 0x6c src/system_stm32f4xx.o - 0x08000654 SystemInit - .text.accumulate - 0x080006c0 0x40 src/utilities.o - 0x080006c0 accumulate + 0x08000744 0x6c src/system_stm32f4xx.o + 0x08000744 SystemInit .text.Error_Handler - 0x08000700 0x8 src/utilities.o - 0x08000700 Error_Handler + 0x080007b0 0x8 src/utilities.o + 0x080007b0 Error_Handler .text.Reset_Handler - 0x08000708 0x48 startup/startup_stm32.o - 0x08000708 Reset_Handler + 0x080007b8 0x48 startup/startup_stm32.o + 0x080007b8 Reset_Handler .text.Default_Handler - 0x08000750 0x2 startup/startup_stm32.o - 0x08000750 DebugMon_Handler - 0x08000750 HardFault_Handler - 0x08000750 PendSV_Handler - 0x08000750 NMI_Handler - 0x08000750 UsageFault_Handler - 0x08000750 Default_Handler - 0x08000750 MemManage_Handler - 0x08000750 SVC_Handler - 0x08000750 BusFault_Handler - *fill* 0x08000752 0x2 + 0x08000800 0x2 startup/startup_stm32.o + 0x08000800 DebugMon_Handler + 0x08000800 HardFault_Handler + 0x08000800 PendSV_Handler + 0x08000800 NMI_Handler + 0x08000800 UsageFault_Handler + 0x08000800 Default_Handler + 0x08000800 MemManage_Handler + 0x08000800 SVC_Handler + 0x08000800 BusFault_Handler + *fill* 0x08000802 0x2 .text.HAL_Init - 0x08000754 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x08000754 HAL_Init + 0x08000804 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x08000804 HAL_Init .text.HAL_MspInit - 0x0800078c 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x0800078c HAL_MspInit + 0x0800083c 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x0800083c HAL_MspInit .text.HAL_InitTick - 0x0800079c 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x0800079c HAL_InitTick + 0x0800084c 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x0800084c HAL_InitTick .text.HAL_IncTick - 0x080007d4 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x080007d4 HAL_IncTick + 0x08000884 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x08000884 HAL_IncTick .text.HAL_GetTick - 0x080007f0 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x080007f0 HAL_GetTick + 0x080008a0 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x080008a0 HAL_GetTick .text.HAL_GetREVID - 0x08000808 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x08000808 HAL_GetREVID + 0x080008b8 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x080008b8 HAL_GetREVID .text.HAL_ADC_Init - 0x08000820 0x88 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x08000820 HAL_ADC_Init + 0x080008d0 0x88 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x080008d0 HAL_ADC_Init .text.HAL_ADC_Start_DMA - 0x080008a8 0x1a0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x080008a8 HAL_ADC_Start_DMA + 0x08000958 0x1a0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000958 HAL_ADC_Start_DMA .text.HAL_ADC_ConvCpltCallback - 0x08000a48 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x08000a48 HAL_ADC_ConvCpltCallback + 0x08000af8 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000af8 HAL_ADC_ConvCpltCallback .text.HAL_ADC_ConvHalfCpltCallback - 0x08000a5c 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x08000a5c HAL_ADC_ConvHalfCpltCallback + 0x08000b0c 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000b0c HAL_ADC_ConvHalfCpltCallback .text.HAL_ADC_ErrorCallback - 0x08000a70 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x08000a70 HAL_ADC_ErrorCallback + 0x08000b20 0x14 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000b20 HAL_ADC_ErrorCallback .text.HAL_ADC_ConfigChannel - 0x08000a84 0x234 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - 0x08000a84 HAL_ADC_ConfigChannel + 0x08000b34 0x234 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000b34 HAL_ADC_ConfigChannel .text.ADC_Init - 0x08000cb8 0x204 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000d68 0x204 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .text.ADC_DMAConvCplt - 0x08000ebc 0xa8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08000f6c 0xa8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .text.ADC_DMAHalfConvCplt - 0x08000f64 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08001014 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .text.ADC_DMAError - 0x08000f80 0x30 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x08001030 0x30 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .text.NVIC_SetPriorityGrouping - 0x08000fb0 0x48 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x08001060 0x48 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .text.NVIC_GetPriorityGrouping - 0x08000ff8 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x080010a8 0x1c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .text.NVIC_SetPriority - 0x08001014 0x54 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x080010c4 0x54 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .text.NVIC_EncodePriority - 0x08001068 0x64 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x08001118 0x64 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .text.SysTick_Config - 0x080010cc 0x44 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x0800117c 0x44 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .text.HAL_NVIC_SetPriorityGrouping - 0x08001110 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - 0x08001110 HAL_NVIC_SetPriorityGrouping + 0x080011c0 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x080011c0 HAL_NVIC_SetPriorityGrouping .text.HAL_NVIC_SetPriority - 0x08001128 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - 0x08001128 HAL_NVIC_SetPriority + 0x080011d8 0x38 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x080011d8 HAL_NVIC_SetPriority .text.HAL_SYSTICK_Config - 0x08001160 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - 0x08001160 HAL_SYSTICK_Config + 0x08001210 0x18 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x08001210 HAL_SYSTICK_Config .text.HAL_SYSTICK_IRQHandler - 0x08001178 0xc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - 0x08001178 HAL_SYSTICK_IRQHandler + 0x08001228 0xc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x08001228 HAL_SYSTICK_IRQHandler .text.HAL_SYSTICK_Callback - 0x08001184 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - 0x08001184 HAL_SYSTICK_Callback + 0x08001234 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x08001234 HAL_SYSTICK_Callback .text.HAL_DMA_Init - 0x08001194 0xd8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - 0x08001194 HAL_DMA_Init + 0x08001244 0xd8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x08001244 HAL_DMA_Init .text.HAL_DMA_Start_IT - 0x0800126c 0x84 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - 0x0800126c HAL_DMA_Start_IT + 0x0800131c 0x84 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x0800131c HAL_DMA_Start_IT .text.DMA_SetConfig - 0x080012f0 0x5c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x080013a0 0x5c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) .text.DMA_CalcBaseAndBitshift - 0x0800134c 0x6c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x080013fc 0x6c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) .text.HAL_GPIO_Init - 0x080013b8 0x344 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - 0x080013b8 HAL_GPIO_Init + 0x08001468 0x344 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + 0x08001468 HAL_GPIO_Init .text.HAL_GPIO_WritePin - 0x080016fc 0x34 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - 0x080016fc HAL_GPIO_WritePin + 0x080017ac 0x34 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + 0x080017ac HAL_GPIO_WritePin .text.HAL_RCC_OscConfig - 0x08001730 0x424 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) - 0x08001730 HAL_RCC_OscConfig + 0x080017e0 0x424 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x080017e0 HAL_RCC_OscConfig .text.HAL_RCC_ClockConfig - 0x08001b54 0x1e4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) - 0x08001b54 HAL_RCC_ClockConfig + 0x08001c04 0x1e4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x08001c04 HAL_RCC_ClockConfig .text.HAL_RCC_GetSysClockFreq - 0x08001d38 0xfc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) - 0x08001d38 HAL_RCC_GetSysClockFreq + 0x08001de8 0xfc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x08001de8 HAL_RCC_GetSysClockFreq .text.HAL_RCC_GetHCLKFreq - 0x08001e34 0x50 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) - 0x08001e34 HAL_RCC_GetHCLKFreq + 0x08001ee4 0x50 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x08001ee4 HAL_RCC_GetHCLKFreq .text.__libc_init_array - 0x08001e84 0x50 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-init.o) - 0x08001e84 __libc_init_array + 0x08001f34 0x50 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-init.o) + 0x08001f34 __libc_init_array .text.startup.register_fini - 0x08001ed4 0x14 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) - .text.atexit 0x08001ee8 0xc c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-atexit.o) - 0x08001ee8 atexit + 0x08001f84 0x14 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) + .text.atexit 0x08001f98 0xc c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-atexit.o) + 0x08001f98 atexit .text.__libc_fini_array - 0x08001ef4 0x28 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-fini.o) - 0x08001ef4 __libc_fini_array + 0x08001fa4 0x28 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-fini.o) + 0x08001fa4 __libc_fini_array .text.__register_exitproc - 0x08001f1c 0xa4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__atexit.o) - 0x08001f1c __register_exitproc + 0x08001fcc 0xa4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__atexit.o) + 0x08001fcc __register_exitproc *(.glue_7) - .glue_7 0x08001fc0 0x0 linker stubs + .glue_7 0x08002070 0x0 linker stubs *(.glue_7t) - .glue_7t 0x08001fc0 0x0 linker stubs + .glue_7t 0x08002070 0x0 linker stubs *(.eh_frame) - .eh_frame 0x08001fc0 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o + .eh_frame 0x08002070 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o *(.init) - .init 0x08001fc0 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crti.o - 0x08001fc0 _init - .init 0x08001fc4 0x8 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o + .init 0x08002070 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crti.o + 0x08002070 _init + .init 0x08002074 0x8 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o *(.fini) - .fini 0x08001fcc 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crti.o - 0x08001fcc _fini - .fini 0x08001fd0 0x8 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o - 0x08001fd8 . = ALIGN (0x4) - 0x08001fd8 _etext = . + .fini 0x0800207c 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crti.o + 0x0800207c _fini + .fini 0x08002080 0x8 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o + 0x08002088 . = ALIGN (0x4) + 0x08002088 _etext = . -.vfp11_veneer 0x08001fd8 0x0 - .vfp11_veneer 0x08001fd8 0x0 linker stubs +.vfp11_veneer 0x08002088 0x0 + .vfp11_veneer 0x08002088 0x0 linker stubs -.v4_bx 0x08001fd8 0x0 - .v4_bx 0x08001fd8 0x0 linker stubs +.v4_bx 0x08002088 0x0 + .v4_bx 0x08002088 0x0 linker stubs -.iplt 0x08001fd8 0x0 - .iplt 0x08001fd8 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o +.iplt 0x08002088 0x0 + .iplt 0x08002088 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o -.rodata 0x08001fd8 0x20 - 0x08001fd8 . = ALIGN (0x4) +.rodata 0x08002088 0x20 + 0x08002088 . = ALIGN (0x4) *(.rodata) - .rodata 0x08001fd8 0x8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .rodata 0x08001fe0 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) - 0x08001fe0 APBAHBPrescTable + .rodata 0x08002088 0x8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .rodata 0x08002090 0x10 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x08002090 APBAHBPrescTable *(.rodata*) .rodata.str1.4 - 0x08001ff0 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) + 0x080020a0 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) 0x2 (size before relaxing) .rodata._global_impure_ptr - 0x08001ff4 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) - 0x08001ff4 _global_impure_ptr - 0x08001ff8 . = ALIGN (0x4) + 0x080020a4 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) + 0x080020a4 _global_impure_ptr + 0x080020a8 . = ALIGN (0x4) -.rel.dyn 0x08001ff8 0x0 - .rel.iplt 0x08001ff8 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o +.rel.dyn 0x080020a8 0x0 + .rel.iplt 0x080020a8 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o -.ARM.extab 0x08001ff8 0x0 - 0x08001ff8 . = ALIGN (0x4) +.ARM.extab 0x080020a8 0x0 + 0x080020a8 . = ALIGN (0x4) *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x08001ff8 . = ALIGN (0x4) + 0x080020a8 . = ALIGN (0x4) -.ARM 0x08001ff8 0x0 - 0x08001ff8 . = ALIGN (0x4) - 0x08001ff8 __exidx_start = . +.ARM 0x080020a8 0x0 + 0x080020a8 . = ALIGN (0x4) + 0x080020a8 __exidx_start = . *(.ARM.exidx*) - 0x08001ff8 __exidx_end = . - 0x08001ff8 . = ALIGN (0x4) + 0x080020a8 __exidx_end = . + 0x080020a8 . = ALIGN (0x4) -.preinit_array 0x08001ff8 0x0 - 0x08001ff8 . = ALIGN (0x4) - 0x08001ff8 PROVIDE (__preinit_array_start, .) +.preinit_array 0x080020a8 0x0 + 0x080020a8 . = ALIGN (0x4) + 0x080020a8 PROVIDE (__preinit_array_start, .) *(.preinit_array*) - 0x08001ff8 PROVIDE (__preinit_array_end, .) - 0x08001ff8 . = ALIGN (0x4) + 0x080020a8 PROVIDE (__preinit_array_end, .) + 0x080020a8 . = ALIGN (0x4) -.init_array 0x08001ff8 0x8 - 0x08001ff8 . = ALIGN (0x4) - 0x08001ff8 PROVIDE (__init_array_start, .) +.init_array 0x080020a8 0x8 + 0x080020a8 . = ALIGN (0x4) + 0x080020a8 PROVIDE (__init_array_start, .) *(SORT(.init_array.*)) .init_array.00000 - 0x08001ff8 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) + 0x080020a8 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) *(.init_array*) - .init_array 0x08001ffc 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o - 0x08002000 PROVIDE (__init_array_end, .) - 0x08002000 . = ALIGN (0x4) + .init_array 0x080020ac 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o + 0x080020b0 PROVIDE (__init_array_end, .) + 0x080020b0 . = ALIGN (0x4) -.fini_array 0x08002000 0x4 - 0x08002000 . = ALIGN (0x4) - 0x08002000 PROVIDE (__fini_array_start, .) +.fini_array 0x080020b0 0x4 + 0x080020b0 . = ALIGN (0x4) + 0x080020b0 PROVIDE (__fini_array_start, .) *(SORT(.fini_array.*)) *(.fini_array*) - .fini_array 0x08002000 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o - 0x08002004 PROVIDE (__fini_array_end, .) - 0x08002004 . = ALIGN (0x4) - 0x08002004 _sidata = LOADADDR (.data) + .fini_array 0x080020b0 0x4 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o + 0x080020b4 PROVIDE (__fini_array_end, .) + 0x080020b4 . = ALIGN (0x4) + 0x080020b4 _sidata = LOADADDR (.data) -.data 0x20000000 0x430 load address 0x08002004 +.data 0x20000000 0x430 load address 0x080020b4 0x20000000 . = ALIGN (0x4) 0x20000000 _sdata = . *(.data) @@ -2771,52 +2591,51 @@ LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7. 0x20000430 . = ALIGN (0x4) 0x20000430 _edata = . -.jcr 0x20000430 0x0 load address 0x08002434 +.jcr 0x20000430 0x0 load address 0x080024e4 .jcr 0x20000430 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o .tm_clone_table - 0x20000430 0x0 load address 0x08002434 + 0x20000430 0x0 load address 0x080024e4 .tm_clone_table 0x20000430 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o .tm_clone_table 0x20000430 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtend.o -.igot.plt 0x20000430 0x0 load address 0x08002434 +.igot.plt 0x20000430 0x0 load address 0x080024e4 .igot.plt 0x20000430 0x0 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o 0x20000430 . = ALIGN (0x4) -.bss 0x20000430 0x100 load address 0x08002434 +.bss 0x20000430 0x3c4 load address 0x080024e4 0x20000430 _sbss = . 0x20000430 __bss_start__ = _sbss *(.bss) .bss 0x20000430 0x1c c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtbegin.o - .bss 0x2000044c 0x30 src/drivers/adc.o + .bss 0x2000044c 0x2c4 src/drivers/adc.o 0x2000044c g_ADCBuffer - 0x20000470 g_MeasurementNumber - 0x20000474 adc_rank - 0x20000478 g_ADCValue + 0x200006cc channel_counter + 0x200006d0 channel_ranks *(.bss*) *(COMMON) - COMMON 0x2000047c 0x58 src/drivers/adc.o - 0x2000047c sConfig - 0x2000048c g_AdcHandle - COMMON 0x200004d4 0x58 src/drivers/dma.o - 0x200004d4 g_DmaHandle - COMMON 0x2000052c 0x4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - 0x2000052c uwTick - 0x20000530 . = ALIGN (0x4) - 0x20000530 _ebss = . - 0x20000530 __bss_end__ = _ebss + COMMON 0x20000710 0xe0 src/drivers/adc.o + 0x20000710 channels_added + 0x20000750 g_DmaHandle + 0x200007a8 g_AdcHandle + COMMON 0x200007f0 0x4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x200007f0 uwTick + 0x200007f4 . = ALIGN (0x4) + 0x200007f4 _ebss = . + 0x200007f4 __bss_end__ = _ebss ._user_heap_stack - 0x20000530 0x400 load address 0x08002434 - 0x20000530 . = ALIGN (0x8) - 0x20000530 PROVIDE (end, .) + 0x200007f4 0x404 load address 0x080024e4 + 0x200007f8 . = ALIGN (0x8) + *fill* 0x200007f4 0x4 + 0x200007f8 PROVIDE (end, .) [!provide] PROVIDE (_end, .) - 0x20000530 . = (. + _Min_Heap_Size) - 0x20000930 . = (. + _Min_Stack_Size) - *fill* 0x20000530 0x400 - 0x20000930 . = ALIGN (0x8) + 0x200007f8 . = (. + _Min_Heap_Size) + 0x20000bf8 . = (. + _Min_Stack_Size) + *fill* 0x200007f8 0x400 + 0x20000bf8 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -2833,270 +2652,261 @@ LOAD c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7. .ARM.attributes 0x00000056 0x39 src/drivers/adc.o .ARM.attributes - 0x0000008f 0x39 src/drivers/dma.o + 0x0000008f 0x39 src/main.o .ARM.attributes - 0x000000c8 0x39 src/main.o + 0x000000c8 0x39 src/stm32f4xx_it.o .ARM.attributes - 0x00000101 0x39 src/stm32f4xx_it.o + 0x00000101 0x39 src/system_stm32f4xx.o .ARM.attributes - 0x0000013a 0x39 src/system_stm32f4xx.o + 0x0000013a 0x39 src/utilities.o .ARM.attributes - 0x00000173 0x39 src/utilities.o + 0x00000173 0x25 startup/startup_stm32.o .ARM.attributes - 0x000001ac 0x25 startup/startup_stm32.o + 0x00000198 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) .ARM.attributes - 0x000001d1 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x000001d1 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .ARM.attributes - 0x0000020a 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x0000020a 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .ARM.attributes - 0x00000243 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x00000243 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) .ARM.attributes - 0x0000027c 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x0000027c 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) .ARM.attributes - 0x000002b5 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + 0x000002b5 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) .ARM.attributes - 0x000002ee 0x39 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x000002ee 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) .ARM.attributes - 0x00000327 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-impure.o) + 0x00000322 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-init.o) .ARM.attributes - 0x0000035b 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-init.o) + 0x00000356 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) .ARM.attributes - 0x0000038f 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__call_atexit.o) + 0x0000038a 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-atexit.o) .ARM.attributes - 0x000003c3 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-atexit.o) + 0x000003be 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-fini.o) .ARM.attributes - 0x000003f7 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-fini.o) + 0x000003f2 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__atexit.o) .ARM.attributes - 0x0000042b 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-__atexit.o) + 0x00000426 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtend.o .ARM.attributes - 0x0000045f 0x34 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtend.o - .ARM.attributes - 0x00000493 0x22 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o + 0x0000045a 0x22 c:/ac6/systemworkbench/plugins/fr.ac6.mcu.externaltools.arm-none.win32_1.7.0.201602121829/tools/compiler/bin/../lib/gcc/arm-none-eabi/5.2.1/armv7e-m/fpu/crtn.o OUTPUT(UAV-ControlSystem.elf elf32-littlearm) -.debug_info 0x00000000 0x5f02 - .debug_info 0x00000000 0x809 src/drivers/adc.o - .debug_info 0x00000809 0x94b src/drivers/dma.o - .debug_info 0x00001154 0xbf1 src/main.o - .debug_info 0x00001d45 0xbd src/stm32f4xx_it.o - .debug_info 0x00001e02 0x4ab src/system_stm32f4xx.o - .debug_info 0x000022ad 0xf7 src/utilities.o - .debug_info 0x000023a4 0x8c startup/startup_stm32.o - .debug_info 0x00002430 0x837 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_info 0x00002c67 0xc63 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - .debug_info 0x000038ca 0xcf9 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - .debug_info 0x000045c3 0x708 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .debug_info 0x00004ccb 0x70f C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_info 0x000053da 0xb28 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) +.debug_info 0x00000000 0x52e0 + .debug_info 0x00000000 0xaa1 src/drivers/adc.o + .debug_info 0x00000aa1 0x682 src/main.o + .debug_info 0x00001123 0xbd src/stm32f4xx_it.o + .debug_info 0x000011e0 0x4ab src/system_stm32f4xx.o + .debug_info 0x0000168b 0xf7 src/utilities.o + .debug_info 0x00001782 0x8c startup/startup_stm32.o + .debug_info 0x0000180e 0x837 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_info 0x00002045 0xc63 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_info 0x00002ca8 0xcf9 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_info 0x000039a1 0x708 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_info 0x000040a9 0x70f C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_info 0x000047b8 0xb28 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_abbrev 0x00000000 0x142f - .debug_abbrev 0x00000000 0x198 src/drivers/adc.o - .debug_abbrev 0x00000198 0x169 src/drivers/dma.o - .debug_abbrev 0x00000301 0x1bf src/main.o - .debug_abbrev 0x000004c0 0x6a src/stm32f4xx_it.o - .debug_abbrev 0x0000052a 0x104 src/system_stm32f4xx.o - .debug_abbrev 0x0000062e 0xad src/utilities.o - .debug_abbrev 0x000006db 0x12 startup/startup_stm32.o - .debug_abbrev 0x000006ed 0x1fe C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_abbrev 0x000008eb 0x227 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - .debug_abbrev 0x00000b12 0x2cc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - .debug_abbrev 0x00000dde 0x209 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .debug_abbrev 0x00000fe7 0x1af C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_abbrev 0x00001196 0x299 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) +.debug_abbrev 0x00000000 0x1292 + .debug_abbrev 0x00000000 0x1de src/drivers/adc.o + .debug_abbrev 0x000001de 0x145 src/main.o + .debug_abbrev 0x00000323 0x6a src/stm32f4xx_it.o + .debug_abbrev 0x0000038d 0x104 src/system_stm32f4xx.o + .debug_abbrev 0x00000491 0xad src/utilities.o + .debug_abbrev 0x0000053e 0x12 startup/startup_stm32.o + .debug_abbrev 0x00000550 0x1fe C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_abbrev 0x0000074e 0x227 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_abbrev 0x00000975 0x2cc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_abbrev 0x00000c41 0x209 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_abbrev 0x00000e4a 0x1af C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_abbrev 0x00000ff9 0x299 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_aranges 0x00000000 0x520 +.debug_aranges 0x00000000 0x508 .debug_aranges - 0x00000000 0x38 src/drivers/adc.o + 0x00000000 0x48 src/drivers/adc.o .debug_aranges - 0x00000038 0x20 src/drivers/dma.o + 0x00000048 0x28 src/main.o .debug_aranges - 0x00000058 0x30 src/main.o + 0x00000070 0x20 src/stm32f4xx_it.o .debug_aranges - 0x00000088 0x20 src/stm32f4xx_it.o + 0x00000090 0x28 src/system_stm32f4xx.o .debug_aranges - 0x000000a8 0x28 src/system_stm32f4xx.o + 0x000000b8 0x28 src/utilities.o .debug_aranges - 0x000000d0 0x28 src/utilities.o + 0x000000e0 0x28 startup/startup_stm32.o .debug_aranges - 0x000000f8 0x28 startup/startup_stm32.o + 0x00000108 0xc0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) .debug_aranges - 0x00000120 0xc0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + 0x000001c8 0xe8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) .debug_aranges - 0x000001e0 0xe8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + 0x000002b0 0x108 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) .debug_aranges - 0x000002c8 0x108 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + 0x000003b8 0x70 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) .debug_aranges - 0x000003d0 0x70 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + 0x00000428 0x58 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) .debug_aranges - 0x00000440 0x58 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_aranges - 0x00000498 0x88 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + 0x00000480 0x88 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_ranges 0x00000000 0x458 - .debug_ranges 0x00000000 0x28 src/drivers/adc.o - .debug_ranges 0x00000028 0x10 src/drivers/dma.o - .debug_ranges 0x00000038 0x20 src/main.o - .debug_ranges 0x00000058 0x10 src/stm32f4xx_it.o - .debug_ranges 0x00000068 0x18 src/system_stm32f4xx.o - .debug_ranges 0x00000080 0x18 src/utilities.o - .debug_ranges 0x00000098 0x20 startup/startup_stm32.o - .debug_ranges 0x000000b8 0xb0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_ranges 0x00000168 0xd8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - .debug_ranges 0x00000240 0xf8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - .debug_ranges 0x00000338 0x60 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .debug_ranges 0x00000398 0x48 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_ranges 0x000003e0 0x78 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) +.debug_ranges 0x00000000 0x450 + .debug_ranges 0x00000000 0x38 src/drivers/adc.o + .debug_ranges 0x00000038 0x18 src/main.o + .debug_ranges 0x00000050 0x10 src/stm32f4xx_it.o + .debug_ranges 0x00000060 0x18 src/system_stm32f4xx.o + .debug_ranges 0x00000078 0x18 src/utilities.o + .debug_ranges 0x00000090 0x20 startup/startup_stm32.o + .debug_ranges 0x000000b0 0xb0 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_ranges 0x00000160 0xd8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_ranges 0x00000238 0xf8 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_ranges 0x00000330 0x60 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_ranges 0x00000390 0x48 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_ranges 0x000003d8 0x78 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_macro 0x00000000 0x1806a - .debug_macro 0x00000000 0x483 src/drivers/adc.o - .debug_macro 0x00000483 0x8a4 src/drivers/adc.o - .debug_macro 0x00000d27 0x28 src/drivers/adc.o - .debug_macro 0x00000d4f 0x28 src/drivers/adc.o - .debug_macro 0x00000d77 0x22 src/drivers/adc.o - .debug_macro 0x00000d99 0x44 src/drivers/adc.o - .debug_macro 0x00000ddd 0xfd src/drivers/adc.o - .debug_macro 0x00000eda 0x22 src/drivers/adc.o - .debug_macro 0x00000efc 0x1df src/drivers/adc.o - .debug_macro 0x000010db 0x35 src/drivers/adc.o - .debug_macro 0x00001110 0x50 src/drivers/adc.o - .debug_macro 0x00001160 0xe66 src/drivers/adc.o - .debug_macro 0x00001fc6 0x891e src/drivers/adc.o - .debug_macro 0x0000a8e4 0x43 src/drivers/adc.o - .debug_macro 0x0000a927 0x24b src/drivers/adc.o - .debug_macro 0x0000ab72 0x33a6 src/drivers/adc.o - .debug_macro 0x0000df18 0x58 src/drivers/adc.o - .debug_macro 0x0000df70 0x35 src/drivers/adc.o - .debug_macro 0x0000dfa5 0x9c src/drivers/adc.o - .debug_macro 0x0000e041 0x16 src/drivers/adc.o - .debug_macro 0x0000e057 0x97 src/drivers/adc.o - .debug_macro 0x0000e0ee 0x329 src/drivers/adc.o - .debug_macro 0x0000e417 0xfd src/drivers/adc.o - .debug_macro 0x0000e514 0x10 src/drivers/adc.o - .debug_macro 0x0000e524 0x52 src/drivers/adc.o - .debug_macro 0x0000e576 0x16 src/drivers/adc.o - .debug_macro 0x0000e58c 0x43 src/drivers/adc.o - .debug_macro 0x0000e5cf 0x187 src/drivers/adc.o - .debug_macro 0x0000e756 0x10 src/drivers/adc.o - .debug_macro 0x0000e766 0x22 src/drivers/adc.o - .debug_macro 0x0000e788 0x3a src/drivers/adc.o - .debug_macro 0x0000e7c2 0x10 src/drivers/adc.o - .debug_macro 0x0000e7d2 0x40 src/drivers/adc.o - .debug_macro 0x0000e812 0x65 src/drivers/adc.o - .debug_macro 0x0000e877 0x16 src/drivers/adc.o - .debug_macro 0x0000e88d 0x197 src/drivers/adc.o - .debug_macro 0x0000ea24 0x57 src/drivers/adc.o - .debug_macro 0x0000ea7b 0x8a0 src/drivers/adc.o - .debug_macro 0x0000f31b 0x9da src/drivers/adc.o - .debug_macro 0x0000fcf5 0x11e src/drivers/adc.o - .debug_macro 0x0000fe13 0x130 src/drivers/adc.o - .debug_macro 0x0000ff43 0x27 src/drivers/adc.o - .debug_macro 0x0000ff6a 0x272 src/drivers/adc.o - .debug_macro 0x000101dc 0x5f src/drivers/adc.o - .debug_macro 0x0001023b 0x23a src/drivers/adc.o - .debug_macro 0x00010475 0x391 src/drivers/adc.o - .debug_macro 0x00010806 0x16f src/drivers/adc.o - .debug_macro 0x00010975 0xf9 src/drivers/adc.o - .debug_macro 0x00010a6e 0x36e src/drivers/adc.o - .debug_macro 0x00010ddc 0x23 src/drivers/adc.o - .debug_macro 0x00010dff 0xe6 src/drivers/adc.o - .debug_macro 0x00010ee5 0xa1 src/drivers/adc.o - .debug_macro 0x00010f86 0x3c src/drivers/adc.o - .debug_macro 0x00010fc2 0x13a src/drivers/adc.o - .debug_macro 0x000110fc 0x21e src/drivers/adc.o - .debug_macro 0x0001131a 0x2e src/drivers/adc.o - .debug_macro 0x00011348 0x512 src/drivers/adc.o - .debug_macro 0x0001185a 0x88 src/drivers/adc.o - .debug_macro 0x000118e2 0xd5 src/drivers/adc.o - .debug_macro 0x000119b7 0x183 src/drivers/adc.o - .debug_macro 0x00011b3a 0x1a7 src/drivers/adc.o - .debug_macro 0x00011ce1 0xa5 src/drivers/adc.o - .debug_macro 0x00011d86 0x18b src/drivers/adc.o - .debug_macro 0x00011f11 0x24 src/drivers/adc.o - .debug_macro 0x00011f35 0x35 src/drivers/adc.o - .debug_macro 0x00011f6a 0x97 src/drivers/adc.o - .debug_macro 0x00012001 0x11e src/drivers/adc.o - .debug_macro 0x0001211f 0x7f src/drivers/adc.o - .debug_macro 0x0001219e 0x89 src/drivers/adc.o - .debug_macro 0x00012227 0x7e src/drivers/adc.o - .debug_macro 0x000122a5 0x31a src/drivers/adc.o - .debug_macro 0x000125bf 0x409 src/drivers/adc.o - .debug_macro 0x000129c8 0xe4 src/drivers/adc.o - .debug_macro 0x00012aac 0x48d src/drivers/adc.o - .debug_macro 0x00012f39 0x22b src/drivers/adc.o - .debug_macro 0x00013164 0x202 src/drivers/adc.o - .debug_macro 0x00013366 0x6d9 src/drivers/adc.o - .debug_macro 0x00013a3f 0x5b src/drivers/adc.o - .debug_macro 0x00013a9a 0x14d src/drivers/adc.o - .debug_macro 0x00013be7 0x287 src/drivers/adc.o - .debug_macro 0x00013e6e 0x225 src/drivers/adc.o - .debug_macro 0x00014093 0x1b5 src/drivers/adc.o - .debug_macro 0x00014248 0x2db src/drivers/adc.o - .debug_macro 0x00014523 0x94 src/drivers/adc.o - .debug_macro 0x000145b7 0x1df src/drivers/adc.o - .debug_macro 0x00014796 0x115 src/drivers/adc.o - .debug_macro 0x000148ab 0x6e src/drivers/adc.o - .debug_macro 0x00014919 0x125 src/drivers/adc.o - .debug_macro 0x00014a3e 0x16 src/drivers/adc.o - .debug_macro 0x00014a54 0x473 src/drivers/dma.o - .debug_macro 0x00014ec7 0x4a4 src/main.o - .debug_macro 0x0001536b 0x16 src/main.o - .debug_macro 0x00015381 0x35 src/main.o - .debug_macro 0x000153b6 0x466 src/stm32f4xx_it.o - .debug_macro 0x0001581c 0x462 src/system_stm32f4xx.o - .debug_macro 0x00015c7e 0x68 src/utilities.o - .debug_macro 0x00015ce6 0x4aa C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_macro 0x00016190 0x8a4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_macro 0x00016a34 0x45d C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - .debug_macro 0x00016e91 0x45c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - .debug_macro 0x000172ed 0x463 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .debug_macro 0x00017750 0x494 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_macro 0x00017be4 0x486 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) +.debug_macro 0x00000000 0x17c70 + .debug_macro 0x00000000 0x4b7 src/drivers/adc.o + .debug_macro 0x000004b7 0x8a4 src/drivers/adc.o + .debug_macro 0x00000d5b 0x28 src/drivers/adc.o + .debug_macro 0x00000d83 0x28 src/drivers/adc.o + .debug_macro 0x00000dab 0x22 src/drivers/adc.o + .debug_macro 0x00000dcd 0x44 src/drivers/adc.o + .debug_macro 0x00000e11 0xfd src/drivers/adc.o + .debug_macro 0x00000f0e 0x22 src/drivers/adc.o + .debug_macro 0x00000f30 0x1df src/drivers/adc.o + .debug_macro 0x0000110f 0x35 src/drivers/adc.o + .debug_macro 0x00001144 0x50 src/drivers/adc.o + .debug_macro 0x00001194 0xe66 src/drivers/adc.o + .debug_macro 0x00001ffa 0x891e src/drivers/adc.o + .debug_macro 0x0000a918 0x43 src/drivers/adc.o + .debug_macro 0x0000a95b 0x24b src/drivers/adc.o + .debug_macro 0x0000aba6 0x33a6 src/drivers/adc.o + .debug_macro 0x0000df4c 0x58 src/drivers/adc.o + .debug_macro 0x0000dfa4 0x35 src/drivers/adc.o + .debug_macro 0x0000dfd9 0x9c src/drivers/adc.o + .debug_macro 0x0000e075 0x16 src/drivers/adc.o + .debug_macro 0x0000e08b 0x97 src/drivers/adc.o + .debug_macro 0x0000e122 0x329 src/drivers/adc.o + .debug_macro 0x0000e44b 0xfd src/drivers/adc.o + .debug_macro 0x0000e548 0x10 src/drivers/adc.o + .debug_macro 0x0000e558 0x52 src/drivers/adc.o + .debug_macro 0x0000e5aa 0x16 src/drivers/adc.o + .debug_macro 0x0000e5c0 0x43 src/drivers/adc.o + .debug_macro 0x0000e603 0x187 src/drivers/adc.o + .debug_macro 0x0000e78a 0x10 src/drivers/adc.o + .debug_macro 0x0000e79a 0x22 src/drivers/adc.o + .debug_macro 0x0000e7bc 0x3a src/drivers/adc.o + .debug_macro 0x0000e7f6 0x10 src/drivers/adc.o + .debug_macro 0x0000e806 0x40 src/drivers/adc.o + .debug_macro 0x0000e846 0x65 src/drivers/adc.o + .debug_macro 0x0000e8ab 0x16 src/drivers/adc.o + .debug_macro 0x0000e8c1 0x197 src/drivers/adc.o + .debug_macro 0x0000ea58 0x57 src/drivers/adc.o + .debug_macro 0x0000eaaf 0x8a0 src/drivers/adc.o + .debug_macro 0x0000f34f 0x9da src/drivers/adc.o + .debug_macro 0x0000fd29 0x11e src/drivers/adc.o + .debug_macro 0x0000fe47 0x130 src/drivers/adc.o + .debug_macro 0x0000ff77 0x27 src/drivers/adc.o + .debug_macro 0x0000ff9e 0x272 src/drivers/adc.o + .debug_macro 0x00010210 0x5f src/drivers/adc.o + .debug_macro 0x0001026f 0x23a src/drivers/adc.o + .debug_macro 0x000104a9 0x391 src/drivers/adc.o + .debug_macro 0x0001083a 0x16f src/drivers/adc.o + .debug_macro 0x000109a9 0xf9 src/drivers/adc.o + .debug_macro 0x00010aa2 0x36e src/drivers/adc.o + .debug_macro 0x00010e10 0x23 src/drivers/adc.o + .debug_macro 0x00010e33 0xe6 src/drivers/adc.o + .debug_macro 0x00010f19 0xa1 src/drivers/adc.o + .debug_macro 0x00010fba 0x3c src/drivers/adc.o + .debug_macro 0x00010ff6 0x13a src/drivers/adc.o + .debug_macro 0x00011130 0x21e src/drivers/adc.o + .debug_macro 0x0001134e 0x2e src/drivers/adc.o + .debug_macro 0x0001137c 0x512 src/drivers/adc.o + .debug_macro 0x0001188e 0x88 src/drivers/adc.o + .debug_macro 0x00011916 0xd5 src/drivers/adc.o + .debug_macro 0x000119eb 0x183 src/drivers/adc.o + .debug_macro 0x00011b6e 0x1a7 src/drivers/adc.o + .debug_macro 0x00011d15 0xa5 src/drivers/adc.o + .debug_macro 0x00011dba 0x18b src/drivers/adc.o + .debug_macro 0x00011f45 0x24 src/drivers/adc.o + .debug_macro 0x00011f69 0x35 src/drivers/adc.o + .debug_macro 0x00011f9e 0x97 src/drivers/adc.o + .debug_macro 0x00012035 0x11e src/drivers/adc.o + .debug_macro 0x00012153 0x7f src/drivers/adc.o + .debug_macro 0x000121d2 0x89 src/drivers/adc.o + .debug_macro 0x0001225b 0x7e src/drivers/adc.o + .debug_macro 0x000122d9 0x31a src/drivers/adc.o + .debug_macro 0x000125f3 0x409 src/drivers/adc.o + .debug_macro 0x000129fc 0xe4 src/drivers/adc.o + .debug_macro 0x00012ae0 0x48d src/drivers/adc.o + .debug_macro 0x00012f6d 0x22b src/drivers/adc.o + .debug_macro 0x00013198 0x202 src/drivers/adc.o + .debug_macro 0x0001339a 0x6d9 src/drivers/adc.o + .debug_macro 0x00013a73 0x5b src/drivers/adc.o + .debug_macro 0x00013ace 0x14d src/drivers/adc.o + .debug_macro 0x00013c1b 0x287 src/drivers/adc.o + .debug_macro 0x00013ea2 0x225 src/drivers/adc.o + .debug_macro 0x000140c7 0x1b5 src/drivers/adc.o + .debug_macro 0x0001427c 0x2db src/drivers/adc.o + .debug_macro 0x00014557 0x94 src/drivers/adc.o + .debug_macro 0x000145eb 0x1df src/drivers/adc.o + .debug_macro 0x000147ca 0x115 src/drivers/adc.o + .debug_macro 0x000148df 0x6e src/drivers/adc.o + .debug_macro 0x0001494d 0x125 src/drivers/adc.o + .debug_macro 0x00014a72 0x10 src/drivers/adc.o + .debug_macro 0x00014a82 0x16 src/drivers/adc.o + .debug_macro 0x00014a98 0x35 src/drivers/adc.o + .debug_macro 0x00014acd 0x16 src/drivers/adc.o + .debug_macro 0x00014ae3 0x29 src/drivers/adc.o + .debug_macro 0x00014b0c 0x49a src/main.o + .debug_macro 0x00014fa6 0x16 src/main.o + .debug_macro 0x00014fbc 0x466 src/stm32f4xx_it.o + .debug_macro 0x00015422 0x462 src/system_stm32f4xx.o + .debug_macro 0x00015884 0x68 src/utilities.o + .debug_macro 0x000158ec 0x4aa C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_macro 0x00015d96 0x8a4 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_macro 0x0001663a 0x45d C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_macro 0x00016a97 0x45c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_macro 0x00016ef3 0x463 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_macro 0x00017356 0x494 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_macro 0x000177ea 0x486 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_line 0x00000000 0x8c3d - .debug_line 0x00000000 0xbe4 src/drivers/adc.o - .debug_line 0x00000be4 0xb6c src/drivers/dma.o - .debug_line 0x00001750 0xc15 src/main.o - .debug_line 0x00002365 0xafe src/stm32f4xx_it.o - .debug_line 0x00002e63 0xad3 src/system_stm32f4xx.o - .debug_line 0x00003936 0x340 src/utilities.o - .debug_line 0x00003c76 0x79 startup/startup_stm32.o - .debug_line 0x00003cef 0xc4a C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) - .debug_line 0x00004939 0xec3 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) - .debug_line 0x000057fc 0xd7b C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) - .debug_line 0x00006577 0xc91 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) - .debug_line 0x00007208 0xc9a C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) - .debug_line 0x00007ea2 0xd9b C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) +.debug_line 0x00000000 0x8122 + .debug_line 0x00000000 0xc60 src/drivers/adc.o + .debug_line 0x00000c60 0xbea src/main.o + .debug_line 0x0000184a 0xafe src/stm32f4xx_it.o + .debug_line 0x00002348 0xad3 src/system_stm32f4xx.o + .debug_line 0x00002e1b 0x340 src/utilities.o + .debug_line 0x0000315b 0x79 startup/startup_stm32.o + .debug_line 0x000031d4 0xc4a C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_line 0x00003e1e 0xec3 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_line 0x00004ce1 0xd7b C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_line 0x00005a5c 0xc91 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_line 0x000066ed 0xc9a C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_line 0x00007387 0xd9b C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) -.debug_str 0x00000000 0x9734f - .debug_str 0x00000000 0x95913 src/drivers/adc.o - 0x95c4e (size before relaxing) - .debug_str 0x00095913 0x5fa src/drivers/dma.o - 0x96087 (size before relaxing) - .debug_str 0x00095f0d 0x1f2 src/main.o - 0x95e59 (size before relaxing) - .debug_str 0x000960ff 0x26 src/stm32f4xx_it.o +.debug_str 0x00000000 0x973c5 + .debug_str 0x00000000 0x95ae8 src/drivers/adc.o + 0x95e2b (size before relaxing) + .debug_str 0x00095ae8 0x1cf src/main.o + 0x959ac (size before relaxing) + .debug_str 0x00095cb7 0x26 src/stm32f4xx_it.o 0x95630 (size before relaxing) - .debug_str 0x00096125 0xcf src/system_stm32f4xx.o + .debug_str 0x00095cdd 0xcf src/system_stm32f4xx.o 0x957f7 (size before relaxing) - .debug_str 0x000961f4 0x33 src/utilities.o + .debug_str 0x00095dac 0x33 src/utilities.o 0x321c (size before relaxing) - .debug_str 0x00096227 0x4cc C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) + .debug_str 0x00095ddf 0x98a C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal.o) 0x96179 (size before relaxing) - .debug_str 0x000966f3 0x29c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) + .debug_str 0x00096769 0x29c C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_adc.o) 0x95dd2 (size before relaxing) - .debug_str 0x0009698f 0x354 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) + .debug_str 0x00096a05 0x354 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_cortex.o) 0x9602d (size before relaxing) - .debug_str 0x00096ce3 0x1b2 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) + .debug_str 0x00096d59 0x1b2 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_dma.o) 0x95ae4 (size before relaxing) - .debug_str 0x00096e95 0x255 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) + .debug_str 0x00096f0b 0x255 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_gpio.o) 0x95a73 (size before relaxing) - .debug_str 0x000970ea 0x265 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) + .debug_str 0x00097160 0x265 C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) 0x95bea (size before relaxing) .comment 0x00000000 0x6e .comment 0x00000000 0x6e src/drivers/adc.o 0x6f (size before relaxing) - .comment 0x0000006e 0x6f src/drivers/dma.o .comment 0x0000006e 0x6f src/main.o .comment 0x0000006e 0x6f src/stm32f4xx_it.o .comment 0x0000006e 0x6f src/system_stm32f4xx.o @@ -3109,9 +2919,8 @@ OUTPUT(UAV-ControlSystem.elf elf32-littlearm) .comment 0x0000006e 0x6f C:\Users\Philip\Documents\GitHub\UAV-Control-System\revolution_hal_lib\Debug\librevolution_hal_lib.a(stm32f4xx_hal_rcc.o) .debug_frame 0x00000000 0x1320 - .debug_frame 0x00000000 0x90 src/drivers/adc.o - .debug_frame 0x00000090 0x34 src/drivers/dma.o - .debug_frame 0x000000c4 0x78 src/main.o + .debug_frame 0x00000000 0xe8 src/drivers/adc.o + .debug_frame 0x000000e8 0x54 src/main.o .debug_frame 0x0000013c 0x2c src/stm32f4xx_it.o .debug_frame 0x00000168 0x58 src/system_stm32f4xx.o .debug_frame 0x000001c0 0x50 src/utilities.o diff --git a/UAV-ControlSystem/inc/drivers/adc.h b/UAV-ControlSystem/inc/drivers/adc.h index 44a2520..918b5d5 100644 --- a/UAV-ControlSystem/inc/drivers/adc.h +++ b/UAV-ControlSystem/inc/drivers/adc.h @@ -6,6 +6,7 @@ */ /********************************************************************** * NAME: adc.h * + * AUTHOR: Philip Johansson * * PURPOSE: Set up and read from ADC * * INFORMATION: * * How to use this driver is explained in page 107 of HAL driver * @@ -28,50 +29,29 @@ #include "stm32f4xx.h" + /*********************************************************************** -* BRIEF: * -* INFORMATION: * +* BRIEF: Configuration of ADC * +* INFORMATION: Also initializes * ***********************************************************************/ void adc_configure(); - /*********************************************************************** -* BRIEF: * -* INFORMATION: * +* BRIEF: Add the wanted channels to a list * +* INFORMATION: Not initialized here but later * ***********************************************************************/ void adc_pin_add(uint32_t adc_channel); /*********************************************************************** -* BRIEF: * -* INFORMATION: * +* BRIEF: Read ADC channel * +* INFORMATION: Returns a mean value from "ADB_BUFFER_LENGTH" samples. * +***********************************************************************/ +uint32_t adc_read(uint32_t adc_channel); + +/*********************************************************************** +* BRIEF: When ADC is configured this function starts the DMA sampling * +* INFORMATION: Third arg is size. When its full it starts over. * ***********************************************************************/ void adc_start(); - -/*********************************************************************** -* BRIEF: * -* INFORMATION: * -***********************************************************************/ -uint32_t adc_read_int(); - -/*********************************************************************** -* BRIEF: * -* INFORMATION: * -***********************************************************************/ -//void HAL_ADC_ConvCpltCallback(); - -/*********************************************************************** -* BRIEF: * -* INFORMATION: * -***********************************************************************/ -//void D**MA2_Stream4_IRQHandler(); - -/*********************************************************************** -* BRIEF: * -* INFORMATION: * -***********************************************************************/ -void ADC_IRQHandler(); - - - #endif /* DRIVERS_ADC_H_ */ diff --git a/UAV-ControlSystem/inc/drivers/dma.h b/UAV-ControlSystem/inc/drivers/dma.h deleted file mode 100644 index 1600ca9..0000000 --- a/UAV-ControlSystem/inc/drivers/dma.h +++ /dev/null @@ -1,16 +0,0 @@ -/* - * dma.h - * - * Created on: 16 sep. 2016 - * Author: Philip - */ - -#ifndef DRIVERS_DMA_H_ -#define DRIVERS_DMA_H_ - -#include "stm32f4xx.h" -#include "system_variables.h" - -void configureDMA(); - -#endif /* DRIVERS_DMA_H_ */ diff --git a/UAV-ControlSystem/inc/system_variables.h b/UAV-ControlSystem/inc/system_variables.h index 6958b66..48e4968 100644 --- a/UAV-ControlSystem/inc/system_variables.h +++ b/UAV-ControlSystem/inc/system_variables.h @@ -1,43 +1,32 @@ /* - * system_variables.h - * - * Created on: 15 sep. 2016 - * Author: Philip - */ + /********************************************************************** + * NAME: adc.h * + * AUTHOR: Philip Johansson * + * PURPOSE: Set up and read from ADC * + * INFORMATION: * + * Here we gather common variables for the system as a whole * + * * + * GLOBAL VARIABLES: * + * Variable Type Description * + * -------- ---- ----------- * + * * + **********************************************************************/ #ifndef SYSTEM_VARIABLES_H_ #define SYSTEM_VARIABLES_H_ -#define ADC_STATE_POLL AS_DMA #define ADC_STATE #include "stm32f4xx.h" -enum ADC_STATES { AS_POLL, AS_IRQ, AS_DMA }; - -/* A buffer for the ADC to write with DMA */ -enum{ ADC_BUFFER_LENGTH = 9 }; -extern volatile uint32_t g_ADCBuffer[ADC_BUFFER_LENGTH]; - -/* Defining boolean - false = 0, true = 1 */ -enum BOOLEAN { false,true }; - -/* Counter of ADC readings */ -extern int g_MeasurementNumber; - -/* ADC Rank - For each IO we increment the rank?? */ -extern int adc_rank; - -/* Last ADC reading (when polling) */ -extern __IO uint32_t g_ADCValue; - -/* ADC handler - OBS: Tried to use this as a pointer but it did not work */ -extern ADC_HandleTypeDef g_AdcHandle; -/* DMA handler */ -extern DMA_HandleTypeDef g_DmaHandle; + + + + + #endif /* SYSTEM_VARIABLES_H_ */ diff --git a/UAV-ControlSystem/inc/utilities.h b/UAV-ControlSystem/inc/utilities.h index 2d8402d..35d18a0 100644 --- a/UAV-ControlSystem/inc/utilities.h +++ b/UAV-ControlSystem/inc/utilities.h @@ -4,6 +4,18 @@ * Created on: 16 sep. 2016 * Author: Philip */ + /********************************************************************** + * NAME: utilities.c * + * AUTHOR: Philip Johansson * + * PURPOSE: Set up and read from ADC * + * INFORMATION: * + * Here we gather usable functions by the whole system * + * * + * GLOBAL VARIABLES: * + * Variable Type Description * + * -------- ---- ----------- * + * * + **********************************************************************/ #ifndef UTILITIES_H_ #define UTILITIES_H_ @@ -11,7 +23,17 @@ #include #include "stm32f4xx_it.h" +/*********************************************************************** +* BRIEF: Sums elements of array until index of second arg * +* INFORMATION: Returns the sum * +***********************************************************************/ uint32_t accumulate(uint32_t list[], int length); + +/*********************************************************************** +* BRIEF: A function that can be called on exceptions * +* INFORMATION: If an exception happens its easier to find it in an * +* infinite loop * +***********************************************************************/ void Error_Handler(void); #endif /* UTILITIES_H_ */ diff --git a/UAV-ControlSystem/src/drivers/adc.c b/UAV-ControlSystem/src/drivers/adc.c index 4a1a9a0..4509f14 100644 --- a/UAV-ControlSystem/src/drivers/adc.c +++ b/UAV-ControlSystem/src/drivers/adc.c @@ -1,30 +1,122 @@ /* * ADC.c - * - * Created on: 13 sep. 2016 - * Author: Philip - */ + /********************************************************************** + * NAME: adc.c * + * AUTHOR: Philip Johansson * + * PURPOSE: Set up and read from ADC * + * INFORMATION: * + * How to use this driver is explained in page 107 of HAL driver * + * Enable the ADC clock * + * Enable the GPIO clock for the pin wanted * + * Configure the GPIO pin as analog input * + * Configure the ADC speed (prescaler/sampling time) * + * Enable continuous measurement mode * + * * + * Read more at: www.visualgdb.com/tutorials/arm/stm32/adc/ * + * * + * GLOBAL VARIABLES: * + * Variable Type Description * + * -------- ---- ----------- * + * * + **********************************************************************/ #include "drivers/adc.h" #include "system_variables.h" #include "utilities.h" +#include +/* A buffer for the ADC to write with DMA */ +enum{ ADC_BUFFER_LENGTH = 10 }; // TODO: Make this define instead of enum +uint32_t g_ADCBuffer[160] = {0}; // We allocate more than needed. Gives 10 readings on 16ch +/* Handler for the ADC */ ADC_HandleTypeDef g_AdcHandle; -volatile uint32_t g_ADCBuffer[ADC_BUFFER_LENGTH] = {0}; -int g_MeasurementNumber = 0; -int adc_rank = 0; -__IO uint32_t g_ADCValue = 0; -ADC_ChannelConfTypeDef sConfig; +/* DMA handler */ +DMA_HandleTypeDef g_DmaHandle; +/* Stores a list (in order) of the channels added + * OBS: Index/size defined by channel_counter */ +uint32_t channels_added[16]; +/* Increments when new ADC input is added */ +int channel_counter = 0; + +/* Stores the rank of every channel */ +uint32_t channel_ranks[16] = {0}; + + + +void adc_pin_conf(uint32_t adc_channel, int adc_rank); + + +/*********************************************************************** +* BRIEF: Read ADC channel * +* INFORMATION: Returns a mean value from "ADB_BUFFER_LENGTH" samples. * +***********************************************************************/ +uint32_t adc_read(uint32_t adc_channel) +{ + int rank = channel_ranks[adc_channel]; + int sum = 0; + for (int i = rank - 1; i < ADC_BUFFER_LENGTH * channel_counter; i += channel_counter ) + sum += g_ADCBuffer[i]; + + return (sum/ADC_BUFFER_LENGTH); +} + + +/*********************************************************************** +* BRIEF: DMA configuration * +* INFORMATION: Is triggered automatically, enables clocks * +***********************************************************************/ +void HAL_ADC_MspInit(ADC_HandleTypeDef * hadc) +{ + + //static DMA_HandleTypeDef g_DmaHandle; + + // Enable DMA, ADC and related GPIO ports clock + __DMA2_CLK_ENABLE(); + __ADC1_CLK_ENABLE(); + __GPIOA_CLK_ENABLE(); + __GPIOC_CLK_ENABLE(); + + // DMA2 Stream4 channel1 (physically mapped to ADC1) configuration + g_DmaHandle.Instance = DMA2_Stream4; + g_DmaHandle.Init.Channel = DMA_CHANNEL_0; + g_DmaHandle.Init.Direction = DMA_PERIPH_TO_MEMORY; + g_DmaHandle.Init.PeriphInc = DMA_PINC_DISABLE; + g_DmaHandle.Init.MemInc = DMA_MINC_ENABLE; + g_DmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD; + g_DmaHandle.Init.MemDataAlignment = DMA_MDATAALIGN_WORD; + g_DmaHandle.Init.Mode = DMA_CIRCULAR; + g_DmaHandle.Init.Priority = DMA_PRIORITY_HIGH; + g_DmaHandle.Init.FIFOMode = DMA_FIFOMODE_DISABLE; + g_DmaHandle.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_HALFFULL; + g_DmaHandle.Init.MemBurst = DMA_MBURST_SINGLE; + g_DmaHandle.Init.PeriphBurst = DMA_PBURST_SINGLE; + HAL_DMA_Init(&g_DmaHandle); + + // Associate the initialized DMA handle to the the ADC handle + //__HAL_LINKDMA(adc_handler, DMA_Handle, g_DmaHandle); + __HAL_LINKDMA(&g_AdcHandle, DMA_Handle, g_DmaHandle); + + /* These are for interrupt which we are not using for ADC/DMA */ + //NVIC configuration for DMA transfer complete interrupt + //HAL_NVIC_SetPriority(DMA2_Stream4_IRQn, 15, 15); + //HAL_NVIC_EnableIRQ(DMA2_Stream4_IRQn); +} + + +/*********************************************************************** +* BRIEF: Configuration of ADC * +* INFORMATION: Also initializes * +***********************************************************************/ void adc_configure() { -// -// __ADC1_CLK_ENABLE(); -// -// HAL_NVIC_SetPriority(ADC_IRQn, 0,0); -// HAL_NVIC_EnableIRQ(ADC_IRQn); + /* Not using the IRQs but here is how they can be declared */ + // __ADC1_CLK_ENABLE(); + // + // HAL_NVIC_SetPriority(ADC_IRQn, 0,0); + // HAL_NVIC_EnableIRQ(ADC_IRQn); g_AdcHandle.Instance = ADC1; g_AdcHandle.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV8; @@ -36,17 +128,34 @@ void adc_configure() g_AdcHandle.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; //ADC_EXTERNALTRIGCONV_T1_CC1; g_AdcHandle.Init.ExternalTrigConv = ADC_EXTERNALTRIGCONVEDGE_NONE; g_AdcHandle.Init.DataAlign = ADC_DATAALIGN_RIGHT; - g_AdcHandle.Init.NbrOfConversion = 3; //adc_rank; + g_AdcHandle.Init.NbrOfConversion = channel_counter; //adc_rank; g_AdcHandle.Init.DMAContinuousRequests = ENABLE;//DISABLE; g_AdcHandle.Init.EOCSelection = EOC_SINGLE_CONV; if (HAL_ADC_Init(&g_AdcHandle) != HAL_OK) Error_Handler(); + for (int i = 0; i < channel_counter; i++) + adc_pin_conf(channels_added[i], i + 1); } +/*********************************************************************** +* BRIEF: Add the wanted channels to a list * +* INFORMATION: Not initialized here but later * +***********************************************************************/ void adc_pin_add(uint32_t adc_channel) { + channels_added[channel_counter] = adc_channel; + channel_counter++; +} + +/*********************************************************************** +* BRIEF: Configures the ADC channel and ads it to the handler * +* INFORMATION: Each added channel gets an incrementing rank * +***********************************************************************/ +void adc_pin_conf(uint32_t adc_channel, int adc_rank) +{ + /* Variable used to initialize the GPIO */ GPIO_InitTypeDef gpioInit; /* Variable to assign the IO to its Port ex PA, PB etc */ @@ -93,79 +202,30 @@ void adc_pin_add(uint32_t adc_channel) gpioInit.Pull = GPIO_NOPULL; HAL_GPIO_Init(gpio_port,&gpioInit); - - ADC_ChannelConfTypeDef adc_channel_conf; - - - adc_channel_conf.Channel = adc_channel; // ex ADC_CHANNEL_12 - adc_rank++; adc_channel_conf.Rank = (uint32_t)adc_rank; adc_channel_conf.SamplingTime = ADC_SAMPLETIME_480CYCLES; adc_channel_conf.Offset = 0; + channel_ranks[adc_channel] = (uint32_t)adc_rank; + if (HAL_ADC_ConfigChannel(&g_AdcHandle, &adc_channel_conf) != HAL_OK) - { - //asm("bkpt 255"); Error_Handler(); - } - - - } + +/*********************************************************************** +* BRIEF: When ADC is configured this function starts the DMA sampling * +* INFORMATION: Third arg is size. When its full it starts over. * +***********************************************************************/ void adc_start() { - if (ADC_STATE_POLL == AS_POLL) - /* Polling */ - HAL_ADC_Start(&g_AdcHandle); - if (ADC_STATE_POLL == AS_IRQ) - /* Interrupt case */ - //g_AdcHandle.DMA_Handle->XferCpltCallback = &HAL_ADC_ConvCpltCallback; - HAL_ADC_Start_IT(&g_AdcHandle); - if (ADC_STATE_POLL == AS_DMA) - /* DMA case */ - //if (HAL_ADC_Start_DMA(&g_AdcHandle, g_ADCBuffer, ADC_BUFFER_LENGTH) != HAL_OK) - if (HAL_ADC_Start_DMA(&g_AdcHandle, (uint32_t*)&g_ADCBuffer, ADC_BUFFER_LENGTH) != HAL_OK) - { - Error_Handler(); - } -} - -uint32_t adc_read_int() -{ - uint32_t value = 0; - if (HAL_ADC_PollForConversion(&g_AdcHandle, 100) == HAL_OK) - { - value = HAL_ADC_GetValue(&g_AdcHandle); - } - return value; + if (HAL_ADC_Start_DMA(&g_AdcHandle, (uint32_t*)&g_ADCBuffer, channel_counter * ADC_BUFFER_LENGTH) != HAL_OK) + Error_Handler(); } -//void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef * AdcHandle) -//{ -// /* Interrupt case */ -// //g_ADCValue = HAL_ADC_GetValue(AdcHandle); -// -// -// /* DMA case */ -// /* -// g_ADCValue = accumulate(*g_ADCBuffer, ADC_BUFFER_LENGTH) / ADC_BUFFER_LENGTH; -// g_MeasurementNumber += ADC_BUFFER_LENGTH; -// */ -// -// -// // Test to see if this functions is ran at all -// //g_ADCValue = 2; -// -// int hej = g_ADCValue; -//} - - - - diff --git a/UAV-ControlSystem/src/drivers/dma.c b/UAV-ControlSystem/src/drivers/dma.c deleted file mode 100644 index bfc134c..0000000 --- a/UAV-ControlSystem/src/drivers/dma.c +++ /dev/null @@ -1,41 +0,0 @@ -/* - * dma.c - * - * Created on: 16 sep. 2016 - * Author: Philip - */ - -#include "drivers/dma.h" -#include "stm32_hal_legacy.h" - -DMA_HandleTypeDef g_DmaHandle; - -void configureDMA() -{ - //__DMA2_CLK_ENABLE(); - __HAL_RCC_DMA2_CLK_ENABLE(); - - g_DmaHandle.Instance = DMA2_Stream4; - - g_DmaHandle.Init.Channel = DMA_CHANNEL_0; - g_DmaHandle.Init.Direction = DMA_PERIPH_TO_MEMORY; - g_DmaHandle.Init.PeriphInc = DMA_PINC_DISABLE; - g_DmaHandle.Init.MemInc = DMA_MINC_ENABLE; - g_DmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD; - g_DmaHandle.Init.MemDataAlignment = DMA_MDATAALIGN_WORD; - g_DmaHandle.Init.Mode = DMA_CIRCULAR; - g_DmaHandle.Init.Priority = DMA_PRIORITY_HIGH; - g_DmaHandle.Init.FIFOMode = DMA_FIFOMODE_DISABLE; - g_DmaHandle.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_HALFFULL; - g_DmaHandle.Init.MemBurst = DMA_MBURST_SINGLE; - g_DmaHandle.Init.PeriphBurst = DMA_PBURST_SINGLE; - - HAL_DMA_Init(&g_DmaHandle); - - __HAL_LINKDMA(&g_AdcHandle, DMA_Handle, g_DmaHandle); - -// HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_0);) - HAL_NVIC_SetPriority(DMA2_Stream4_IRQn,0,0); - HAL_NVIC_EnableIRQ(DMA2_Stream4_IRQn); -} - diff --git a/UAV-ControlSystem/src/main.c b/UAV-ControlSystem/src/main.c index 76a5d32..e9b440d 100644 --- a/UAV-ControlSystem/src/main.c +++ b/UAV-ControlSystem/src/main.c @@ -13,23 +13,16 @@ #include "drivers/adc.h" #include "stm32f4xx.h" #include "system_variables.h" -#include "drivers/dma.h" #include "utilities.h" #include -/* Private function prototypes -----------------------------------------------*/ + static void SystemClock_Config(void); -static void SystemClock_Config_Lennart(void); -ADC_HandleTypeDef adc_testinput_handle; // For example battery voltage -ADC_HandleTypeDef adc_test2input_handle; -uint32_t g_ADC2; -int g_MeasurementNumber; - int main(void) { @@ -44,12 +37,15 @@ int main(void) /* Configure the system clock to 100 MHz */ SystemClock_Config(); - adc_configure(); - adc_pin_add(ADC_CHANNEL_0); adc_pin_add(ADC_CHANNEL_1); adc_pin_add(ADC_CHANNEL_12); + + adc_configure(); + + + __GPIOB_CLK_ENABLE(); GPIO_InitTypeDef gpinit; @@ -66,8 +62,12 @@ int main(void) { i++; - g_ADCValue = accumulate(g_ADCBuffer,ADC_BUFFER_LENGTH) / ADC_BUFFER_LENGTH; + //g_ADCValue = accumulate(g_ADCBuffer,ADC_BUFFER_LENGTH) / ADC_BUFFER_LENGTH; //HAL_Delay(100); + int g_ADCValue = adc_read(ADC_CHANNEL_0); + int g_ADCValue1 = adc_read(ADC_CHANNEL_1); + int g_ADCValue12 = adc_read(ADC_CHANNEL_12); + int offTime = g_ADCValue; int onTime = 4096 - offTime; HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5,GPIO_PIN_SET); @@ -86,59 +86,11 @@ int main(void) for(;;); } -HAL_ADC_MspInit(ADC_HandleTypeDef * hadc) -{ - - //static DMA_HandleTypeDef g_DmaHandle; - - // Enable DMA, ADC and related GPIO ports clock - __DMA2_CLK_ENABLE(); - __ADC1_CLK_ENABLE(); - __GPIOA_CLK_ENABLE(); - __GPIOC_CLK_ENABLE(); - - // DMA2 Stream4 channel1 (physically mapped to ADC1) configuration - g_DmaHandle.Instance = DMA2_Stream4; - g_DmaHandle.Init.Channel = DMA_CHANNEL_0; - g_DmaHandle.Init.Direction = DMA_PERIPH_TO_MEMORY; - g_DmaHandle.Init.PeriphInc = DMA_PINC_DISABLE; - g_DmaHandle.Init.MemInc = DMA_MINC_ENABLE; - g_DmaHandle.Init.PeriphDataAlignment = DMA_PDATAALIGN_WORD; - g_DmaHandle.Init.MemDataAlignment = DMA_MDATAALIGN_WORD; - g_DmaHandle.Init.Mode = DMA_CIRCULAR; - g_DmaHandle.Init.Priority = DMA_PRIORITY_HIGH; - g_DmaHandle.Init.FIFOMode = DMA_FIFOMODE_DISABLE; - g_DmaHandle.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_HALFFULL; - g_DmaHandle.Init.MemBurst = DMA_MBURST_SINGLE; - g_DmaHandle.Init.PeriphBurst = DMA_PBURST_SINGLE; - HAL_DMA_Init(&g_DmaHandle); - - // Associate the initialized DMA handle to the the ADC handle - //__HAL_LINKDMA(adc_handler, DMA_Handle, g_DmaHandle); - __HAL_LINKDMA(&g_AdcHandle, DMA_Handle, g_DmaHandle); - - // NVIC configuration for DMA transfer complete interrupt - //HAL_NVIC_SetPriority(DMA2_Stream4_IRQn, 15, 15); - //HAL_NVIC_EnableIRQ(DMA2_Stream4_IRQn); -} - -//void DMA2_Stream4_IRQHandler(void) -//{ -// //HAL_DMA_IRQHandler(g_AdcHandle.DMA_Handle); -// HAL_DMA_IRQHandler(&g_DmaHandle); -//} -// -//void ADC_IRQHandler() -//{ -// HAL_ADC_IRQHandler(&g_AdcHandle); -//} -// -//void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef * AdcHandle) -//{ -// int i = 2; -//} - +/*********************************************************************** +* BRIEF: Starts the system clock * +* INFORMATION: In the current version it works with ADC and DMA * +***********************************************************************/ static void SystemClock_Config(void) { RCC_ClkInitTypeDef RCC_ClkInitStruct; @@ -177,10 +129,3 @@ static void SystemClock_Config(void) } - -/** - * @brief This function is executed in case of error occurrence. - * @param None - * @retval None - */ - diff --git a/UAV-ControlSystem/src/utilities.c b/UAV-ControlSystem/src/utilities.c index f04d223..a125951 100644 --- a/UAV-ControlSystem/src/utilities.c +++ b/UAV-ControlSystem/src/utilities.c @@ -1,11 +1,24 @@ /* * utilities.c - * - * Created on: 16 sep. 2016 - * Author: Philip - */ + /********************************************************************** + * NAME: utilities.c * + * AUTHOR: Philip Johansson * + * PURPOSE: Set up and read from ADC * + * INFORMATION: * + * Here we gather usable functions by the whole system * + * * + * GLOBAL VARIABLES: * + * Variable Type Description * + * -------- ---- ----------- * + * * + **********************************************************************/ + #include "utilities.h" +/*********************************************************************** +* BRIEF: Sums elements of array until index of second arg * +* INFORMATION: Returns the sum * +***********************************************************************/ uint32_t accumulate(uint32_t * list, int length) { int value = 0; @@ -16,6 +29,11 @@ uint32_t accumulate(uint32_t * list, int length) return value; } +/*********************************************************************** +* BRIEF: A function that can be called on exceptions * +* INFORMATION: If an exception happens its easier to find it in an * +* infinite loop * +***********************************************************************/ void Error_Handler(void) { while(1)