diff --git a/.gdb_history b/.gdb_history index c928f3d..fb08147 100644 --- a/.gdb_history +++ b/.gdb_history @@ -67,3 +67,37 @@ r q q q +q +q +b 392 +r +s +s +c +p huart1_rxc +s +s +s +c +q +q +q +b 392 +r +c +c +del +b main() +b 124 +r +n +q +b 392 +r +p huart1_rxc +c +p huart1_rxc +p huart1_rxc +c +p huart1_rxc +q diff --git a/Core/Inc/main.h b/Core/Inc/main.h index 0308667..af122ca 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -67,6 +67,8 @@ void setPWM(TIM_HandleTypeDef *timer, uint32_t channel, uint8_t dc_percent); #define m1_dir_GPIO_Port GPIOA #define m2_dir_Pin GPIO_PIN_5 #define m2_dir_GPIO_Port GPIOA +#define USART1_DE_Pin GPIO_PIN_12 +#define USART1_DE_GPIO_Port GPIOA #define SWDIO_Pin GPIO_PIN_13 #define SWDIO_GPIO_Port GPIOA #define SWCLK_Pin GPIO_PIN_14 diff --git a/Core/Src/main.c b/Core/Src/main.c index 63fe6eb..8d1a5c9 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -372,7 +372,6 @@ static void MX_GPIO_Init(void) /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); - __HAL_RCC_GPIOB_CLK_ENABLE(); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOA, m1_dir_Pin | m2_dir_Pin, GPIO_PIN_RESET); @@ -390,12 +389,16 @@ void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { if (huart == &huart1) { - HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + huart2_rxc = huart1_rxc; + + HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 500); HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); } else if (huart == &huart2) { - HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + HAL_UART_Transmit(&huart1, &huart2_rxc, 1, 100); HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); } } diff --git a/Core/Src/stm32l4xx_hal_msp.c b/Core/Src/stm32l4xx_hal_msp.c index b93302d..1b930b5 100644 --- a/Core/Src/stm32l4xx_hal_msp.c +++ b/Core/Src/stm32l4xx_hal_msp.c @@ -227,18 +227,18 @@ void HAL_UART_MspInit(UART_HandleTypeDef* huart) /* Peripheral clock enable */ __HAL_RCC_USART1_CLK_ENABLE(); - __HAL_RCC_GPIOB_CLK_ENABLE(); + __HAL_RCC_GPIOA_CLK_ENABLE(); /**USART1 GPIO Configuration - PB3 (JTDO-TRACESWO) ------> USART1_DE - PB6 ------> USART1_TX - PB7 ------> USART1_RX + PA9 ------> USART1_TX + PA10 ------> USART1_RX + PA12 ------> USART1_DE */ - GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_6|GPIO_PIN_7; + GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10|USART1_DE_Pin; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Alternate = GPIO_AF7_USART1; - HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); /* USART1 interrupt Init */ HAL_NVIC_SetPriority(USART1_IRQn, 0, 0); @@ -311,11 +311,11 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* huart) __HAL_RCC_USART1_CLK_DISABLE(); /**USART1 GPIO Configuration - PB3 (JTDO-TRACESWO) ------> USART1_DE - PB6 ------> USART1_TX - PB7 ------> USART1_RX + PA9 ------> USART1_TX + PA10 ------> USART1_RX + PA12 ------> USART1_DE */ - HAL_GPIO_DeInit(GPIOB, GPIO_PIN_3|GPIO_PIN_6|GPIO_PIN_7); + HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10|USART1_DE_Pin); /* USART1 interrupt DeInit */ HAL_NVIC_DisableIRQ(USART1_IRQn); diff --git a/Makefile b/Makefile index e564bd8..fcddc25 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ ########################################################################################################################## -# File automatically-generated by tool: [projectgenerator] version: [3.16.0] date: [Thu Apr 07 18:39:18 CDT 2022] +# File automatically-generated by tool: [projectgenerator] version: [3.16.0] date: [Fri Apr 08 15:05:50 CDT 2022] ########################################################################################################################## # ------------------------------------------------ diff --git a/compile_commands.json b/compile_commands.json index 951eb57..f835378 100644 --- a/compile_commands.json +++ b/compile_commands.json @@ -25,14 +25,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_pwr_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_pwr_ex.lst", + "-MFbuild/stm32l4xx_hal_dma.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_dma.lst", "-o", - "build/stm32l4xx_hal_pwr_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr_ex.c" + "build/stm32l4xx_hal_dma.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr_ex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c" }, { "arguments": [ @@ -60,14 +60,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_cortex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_cortex.lst", + "-MFbuild/stm32l4xx_hal_gpio.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_gpio.lst", "-o", - "build/stm32l4xx_hal_cortex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cortex.c" + "build/stm32l4xx_hal_gpio.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cortex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c" }, { "arguments": [ @@ -95,14 +95,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_tim_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_tim_ex.lst", + "-MFbuild/stm32l4xx_hal.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal.lst", "-o", - "build/stm32l4xx_hal_tim_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim_ex.c" + "build/stm32l4xx_hal.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim_ex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal.c" }, { "arguments": [ @@ -130,14 +130,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_dma.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_dma.lst", + "-MFbuild/stm32l4xx_it.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_it.lst", "-o", - "build/stm32l4xx_hal_dma.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c" + "build/stm32l4xx_it.o", + "Core/Src/stm32l4xx_it.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c" + "file": "Core/Src/stm32l4xx_it.c" }, { "arguments": [ @@ -165,14 +165,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_i2c_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_i2c_ex.lst", + "-MFbuild/stm32l4xx_hal_rcc.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_rcc.lst", "-o", - "build/stm32l4xx_hal_i2c_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c_ex.c" + "build/stm32l4xx_hal_rcc.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c_ex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc.c" }, { "arguments": [ @@ -200,14 +200,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_uart.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_uart.lst", + "-MFbuild/stm32l4xx_hal_tim.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_tim.lst", "-o", - "build/stm32l4xx_hal_uart.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c" + "build/stm32l4xx_hal_tim.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim.c" }, { "arguments": [ @@ -235,14 +235,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/system_stm32l4xx.d", - "-Wa,-a,-ad,-alms=build/system_stm32l4xx.lst", + "-MFbuild/putil.d", + "-Wa,-a,-ad,-alms=build/putil.lst", "-o", - "build/system_stm32l4xx.o", - "Core/Src/system_stm32l4xx.c" + "build/putil.o", + "shared/util/putil.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Core/Src/system_stm32l4xx.c" + "file": "shared/util/putil.c" }, { "arguments": [ @@ -270,14 +270,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_flash_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash_ex.lst", + "-MFbuild/system_stm32l4xx.d", + "-Wa,-a,-ad,-alms=build/system_stm32l4xx.lst", "-o", - "build/stm32l4xx_hal_flash_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c" + "build/system_stm32l4xx.o", + "Core/Src/system_stm32l4xx.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c" + "file": "Core/Src/system_stm32l4xx.c" }, { "arguments": [ @@ -305,14 +305,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_i2c.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_i2c.lst", + "-MFbuild/motor_controller.d", + "-Wa,-a,-ad,-alms=build/motor_controller.lst", "-o", - "build/stm32l4xx_hal_i2c.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c" + "build/motor_controller.o", + "shared/devices/motor_controller.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c" + "file": "shared/devices/motor_controller.c" }, { "arguments": [ @@ -340,14 +340,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/main.d", - "-Wa,-a,-ad,-alms=build/main.lst", + "-MFbuild/stm32l4xx_hal_uart_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_uart_ex.lst", "-o", - "build/main.o", - "Core/Src/main.c" + "build/stm32l4xx_hal_uart_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Core/Src/main.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart_ex.c" }, { "arguments": [ @@ -375,14 +375,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/putil.d", - "-Wa,-a,-ad,-alms=build/putil.lst", + "-MFbuild/stm32l4xx_hal_pwr_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_pwr_ex.lst", "-o", - "build/putil.o", - "shared/util/putil.c" + "build/stm32l4xx_hal_pwr_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "shared/util/putil.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr_ex.c" }, { "arguments": [ @@ -410,14 +410,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_flash.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash.lst", + "-MFbuild/stm32l4xx_hal_i2c_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_i2c_ex.lst", "-o", - "build/stm32l4xx_hal_flash.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash.c" + "build/stm32l4xx_hal_i2c_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c_ex.c" }, { "arguments": [ @@ -445,14 +445,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_rcc.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_rcc.lst", + "-MFbuild/stm32l4xx_hal_flash.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash.lst", "-o", - "build/stm32l4xx_hal_rcc.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc.c" + "build/stm32l4xx_hal_flash.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash.c" }, { "arguments": [ @@ -480,14 +480,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_msp.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_msp.lst", + "-MFbuild/stm32l4xx_hal_flash_ramfunc.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash_ramfunc.lst", "-o", - "build/stm32l4xx_hal_msp.o", - "Core/Src/stm32l4xx_hal_msp.c" + "build/stm32l4xx_hal_flash_ramfunc.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Core/Src/stm32l4xx_hal_msp.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c" }, { "arguments": [ @@ -515,14 +515,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_uart_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_uart_ex.lst", + "-MFbuild/stm32l4xx_hal_dma_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_dma_ex.lst", "-o", - "build/stm32l4xx_hal_uart_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart_ex.c" + "build/stm32l4xx_hal_dma_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart_ex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c" }, { "arguments": [ @@ -550,14 +550,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_rcc_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_rcc_ex.lst", + "-MFbuild/main.d", + "-Wa,-a,-ad,-alms=build/main.lst", "-o", - "build/stm32l4xx_hal_rcc_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc_ex.c" + "build/main.o", + "Core/Src/main.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc_ex.c" + "file": "Core/Src/main.c" }, { "arguments": [ @@ -585,14 +585,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_flash_ramfunc.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash_ramfunc.lst", + "-MFbuild/stm32l4xx_hal_cortex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_cortex.lst", "-o", - "build/stm32l4xx_hal_flash_ramfunc.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c" + "build/stm32l4xx_hal_cortex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cortex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cortex.c" }, { "arguments": [ @@ -620,14 +620,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_it.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_it.lst", + "-MFbuild/stm32l4xx_hal_flash_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_flash_ex.lst", "-o", - "build/stm32l4xx_it.o", - "Core/Src/stm32l4xx_it.c" + "build/stm32l4xx_hal_flash_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Core/Src/stm32l4xx_it.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c" }, { "arguments": [ @@ -655,14 +655,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/motor_controller.d", - "-Wa,-a,-ad,-alms=build/motor_controller.lst", + "-MFbuild/stm32l4xx_hal_rcc_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_rcc_ex.lst", "-o", - "build/motor_controller.o", - "shared/devices/motor_controller.c" + "build/stm32l4xx_hal_rcc_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "shared/devices/motor_controller.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc_ex.c" }, { "arguments": [ @@ -725,21 +725,19 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_dma_ex.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_dma_ex.lst", + "-MFbuild/stm32l4xx_hal_i2c.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_i2c.lst", "-o", - "build/stm32l4xx_hal_dma_ex.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c" + "build/stm32l4xx_hal_i2c.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c" }, { "arguments": [ "arm-none-eabi-gcc", "-c", - "-x", - "assembler-with-cpp", "-mcpu=cortex-m4", "-mthumb", "-mfpu=fpv4-sp-d16", @@ -762,13 +760,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/startup_stm32l432xx.d", + "-MFbuild/stm32l4xx_hal_msp.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_msp.lst", "-o", - "build/startup_stm32l432xx.o", - "startup_stm32l432xx.s" + "build/stm32l4xx_hal_msp.o", + "Core/Src/stm32l4xx_hal_msp.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "startup_stm32l432xx.s" + "file": "Core/Src/stm32l4xx_hal_msp.c" }, { "arguments": [ @@ -809,6 +808,8 @@ "arguments": [ "arm-none-eabi-gcc", "-c", + "-x", + "assembler-with-cpp", "-mcpu=cortex-m4", "-mthumb", "-mfpu=fpv4-sp-d16", @@ -831,14 +832,13 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_tim.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_tim.lst", + "-MFbuild/startup_stm32l432xx.d", "-o", - "build/stm32l4xx_hal_tim.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim.c" + "build/startup_stm32l432xx.o", + "startup_stm32l432xx.s" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim.c" + "file": "startup_stm32l432xx.s" }, { "arguments": [ @@ -866,14 +866,14 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal_gpio.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_gpio.lst", + "-MFbuild/stm32l4xx_hal_uart.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_uart.lst", "-o", - "build/stm32l4xx_hal_gpio.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c" + "build/stm32l4xx_hal_uart.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c" }, { "arguments": [ @@ -901,13 +901,13 @@ "-g3", "-gdwarf-2", "-D_DEBUG", - "-MFbuild/stm32l4xx_hal.d", - "-Wa,-a,-ad,-alms=build/stm32l4xx_hal.lst", + "-MFbuild/stm32l4xx_hal_tim_ex.d", + "-Wa,-a,-ad,-alms=build/stm32l4xx_hal_tim_ex.lst", "-o", - "build/stm32l4xx_hal.o", - "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal.c" + "build/stm32l4xx_hal_tim_ex.o", + "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim_ex.c" ], "directory": "/storage/Shared/Projects/Penguinator/motor_controller", - "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal.c" + "file": "Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim_ex.c" } ] \ No newline at end of file diff --git a/gdb.txt b/gdb.txt index d7a14a2..0ac5c9b 100644 --- a/gdb.txt +++ b/gdb.txt @@ -6195,3 +6195,2825 @@ A debugging session is active. Quit anyway? (y or n) [answered Y; input not from terminal] [Inferior 1 (Remote target) detached] +warning: No executable has been specified and target does not support +determining executable automatically. Try using the "file" command. +0x080015d2 in ?? () +### Assembly ################################################################## + 0x080015d2 ? cmp r3, #0 + 0x080015d4 ? beq.n 0x80015ce + 0x080015d6 ? ldr r3, [pc, #64] ; (0x8001618) + 0x080015d8 ? movs r2, #0 + 0x080015da ? strb r2, [r3, #0] + 0x080015dc ? adds r3, r4, #1 + 0x080015de ? ldr r1, [pc, #60] ; (0x800161c) + 0x080015e0 ? smull r2, r1, r1, r3 + 0x080015e4 ? add r1, r3 + 0x080015e6 ? asrs r2, r3, #31 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000000f r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800201d faultmask 0x00 + r7 0x00000000 pc 0x080015d2 control 0x04 +### Source #################################################################### +### Stack ##################################################################### +[0] from 0x080015d2 +[1] from 0x0800201c +### Threads ################################################################### +[1] id 0 from 0x080015d2 +### Variables ################################################################# +############################################################################### +generic_push.gdb:7: Error in sourced command file: +No executable file specified. +Use the "file" or "exec-file" command. +Detaching from program: , Remote target +[Inferior 1 (Remote target) detached] +warning: No executable has been specified and target does not support +determining executable automatically. Try using the "file" command. +0x080015d2 in ?? () +### Assembly ################################################################## + 0x080015d2 ? cmp r3, #0 + 0x080015d4 ? beq.n 0x80015ce + 0x080015d6 ? ldr r3, [pc, #64] ; (0x8001618) + 0x080015d8 ? movs r2, #0 + 0x080015da ? strb r2, [r3, #0] + 0x080015dc ? adds r3, r4, #1 + 0x080015de ? ldr r1, [pc, #60] ; (0x800161c) + 0x080015e0 ? smull r2, r1, r1, r3 + 0x080015e4 ? add r1, r3 + 0x080015e6 ? asrs r2, r3, #31 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000000f r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800201d faultmask 0x00 + r7 0x00000000 pc 0x080015d2 control 0x04 +### Source #################################################################### +### Stack ##################################################################### +[0] from 0x080015d2 +[1] from 0x0800201c +### Threads ################################################################### +[1] id 0 from 0x080015d2 +### Variables ################################################################# +############################################################################### +generic_push.gdb:7: Error in sourced command file: +No executable file specified. +Use the "file" or "exec-file" command. +Detaching from program: , Remote target +[Inferior 1 (Remote target) detached] +0x080015d2 in main () at Core/Src/main.c:125 +125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); +### Assembly ################################################################## + 0x080015c6 main+110 ldr r0, [pc, #76] ; (0x8001614 ) + 0x080015c8 main+112 bl 0x8003f78 + 0x080015cc main+116 movs r4, #0 + 0x080015ce main+118 ldr r3, [pc, #72] ; (0x8001618 ) + 0x080015d0 main+120 ldrb r3, [r3, #0] + 0x080015d2 main+122 cmp r3, #0 + 0x080015d4 main+124 beq.n 0x80015ce + 0x080015d6 main+126 ldr r3, [pc, #64] ; (0x8001618 ) + 0x080015d8 main+128 movs r2, #0 + 0x080015da main+130 strb r2, [r3, #0] +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000000f r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800201d faultmask 0x00 + r7 0x00000000 pc 0x080015d2 control 0x04 +### Source #################################################################### + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { +### Stack ##################################################################### +[0] from 0x080015d2 in main+122 at Core/Src/main.c:125 +### Threads ################################################################### +[1] id 0 from 0x080015d2 in main+122 at Core/Src/main.c:125 +### Variables ################################################################# +loc motor_degrees = +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015de in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 + 0x080015e4 main+140 strb r2, [r3, #0] + 0x080015e6 main+142 adds r3, r4, #1 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000001c r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015de control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015de in main+134 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015de in main+134 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 28 +############################################################################### +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +target halted due to debug-request, current mode: Thread +xPSR: 0x01000000 pc: 0x080041b0 msp: 0x20010000 +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Breakpoint 1 at 0x800127e: file Core/Src/main.c, line 392. +Note: automatically using hardware breakpoints for read-only addresses. +Starting program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf +### Output/messages ########################################################### + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:392 +392 if (huart == &huart1) +### Assembly ################################################################## +~ +~ +~ +~ + 0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} +!0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 +### Breakpoints ############################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 1 time +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x20000a60 r8 0x00000000 xPSR 0x81000035 + r1 0x00000000 r9 0x00000000 fpscr 0x00000010 + r2 0x40013808 r10 0x00000000 msp 0x2000ff48 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x20000a60 r12 0x00001000 primask 0x00 + r5 0x00004001 sp 0x2000ff48 basepri 0x00 + r6 0x00000000 lr 0x0800385b faultmask 0x00 + r7 0x00000000 pc 0x0800127e control 0x00 +### Source #################################################################### + 382 GPIO_InitStruct.Pin = m1_dir_Pin | m2_dir_Pin; + 383 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { +!392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } +### Stack ##################################################################### +[0] from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x08003534 in HAL_UART_IRQHandler+108 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2347 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x08003f48 in UART_Start_Receive_IT+152 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:3685 +[6] from 0x08003fcc in HAL_UART_Receive_IT+68 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1440 +[7] from 0x080015d6 in main+126 at Core/Src/main.c:125 +### Threads ################################################################### +[1] id 0 from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +### Variables ################################################################# +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +############################################################################### +### Output/messages ##################################################################################################################### +halted: PC: 0x08001280 +halted: PC: 0x08001282 +halted: PC: 0x0800128c +394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); +### Assembly ############################################################################################################################ + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 + 0x08001288 HAL_UART_RxCpltCallback+12 beq.n 0x80012a6 + 0x0800128a HAL_UART_RxCpltCallback+14 pop {r3, r4, r5, pc} + 0x0800128c HAL_UART_RxCpltCallback+16 ldr r4, [pc, #60] ; (0x80012cc ) + 0x0800128e HAL_UART_RxCpltCallback+18 movs r3, #100 ; 0x64 + 0x08001290 HAL_UART_RxCpltCallback+20 movs r2, #1 + 0x08001292 HAL_UART_RxCpltCallback+22 mov r1, r4 + 0x08001294 HAL_UART_RxCpltCallback+24 ldr r0, [pc, #48] ; (0x80012c8 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 1 time +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x61000035 primask 0x00 + r1 0x00000000 r5 0x00004001 r9 0x00000000 sp 0x2000ff48 fpscr 0x00000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x0800385b msp 0x2000ff48 faultmask 0x00 + r3 0x20000a60 r7 0x00000000 r11 0x00000000 pc 0x0800128c psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { +!392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } + 402 } + 403 +### Stack ############################################################################################################################### +[0] from 0x0800128c in HAL_UART_RxCpltCallback+16 at Core/Src/main.c:394 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x08003534 in HAL_UART_IRQHandler+108 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2347 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x08003f48 in UART_Start_Receive_IT+152 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:3685 +[6] from 0x08003fcc in HAL_UART_Receive_IT+68 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1440 +[7] from 0x080015d6 in main+126 at Core/Src/main.c:125 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800128c in HAL_UART_RxCpltCallback+16 at Core/Src/main.c:394 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +### Output/messages ##################################################################################################################### +halted: PC: 0x0800128e +halted: PC: 0x08001290 +halted: PC: 0x08001292 +halted: PC: 0x08001294 +halted: PC: 0x08001296 +halted: PC: 0x08003d06 +HAL_UART_Transmit (huart=huart@entry=0x20000ae8 , pData=pData@entry=0x20000ae4 "", Size=Size@entry=1, Timeout=Timeout@entry=100) at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +1150 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ + 0x08003d06 HAL_UART_Transmit+0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 0x08003d0a HAL_UART_Transmit+4 sub sp, #8 + 0x08003d0c HAL_UART_Transmit+6 mov r6, r3 + 0x08003d0e HAL_UART_Transmit+8 ldr r3, [r0, #120] ; 0x78 + 0x08003d10 HAL_UART_Transmit+10 cmp r3, #32 +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 1 time +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000ae8 r4 0x20000ae4 r8 0x00000000 r12 0x00001000 xPSR 0x21000035 primask 0x00 + r1 0x20000ae4 r5 0x00004001 r9 0x00000000 sp 0x2000ff48 fpscr 0x00000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x0800129b msp 0x2000ff48 faultmask 0x00 + r3 0x00000064 r7 0x00000000 r11 0x00000000 pc 0x08003d06 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 1140 * data to the TXFIFO. Write operations to the TDR register are performed + 1141 * when TXFNF flag is set. From hardware perspective, TXFNF flag and + 1142 * TXE are mapped on the same bit-field. + 1143 * @param huart UART handle. + 1144 * @param pData Pointer to data buffer (u8 or u16 data elements). + 1145 * @param Size Amount of data elements (u8 or u16) to be sent. + 1146 * @param Timeout Timeout duration. + 1147 * @retval HAL status + 1148 */ + 1149 HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, const uint8_t *pData, uint16_t Size, uint32_t Timeout) + 1150 { + 1151 const uint8_t *pdata8bits; + 1152 const uint16_t *pdata16bits; + 1153 uint32_t tickstart; + 1154 + 1155 /* Check that a Tx process is not already ongoing */ + 1156 if (huart->gState == HAL_UART_STATE_READY) + 1157 { + 1158 if ((pData == NULL) || (Size == 0U)) + 1159 { +### Stack ############################################################################################################################### +[0] from 0x08003d06 in HAL_UART_Transmit+0 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +[1] from 0x0800129a in HAL_UART_RxCpltCallback+30 at Core/Src/main.c:394 +[2] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[3] from 0x08003534 in HAL_UART_IRQHandler+108 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2347 +[4] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[5] from 0xffffffe9 +[6] from 0x08003f48 in UART_Start_Receive_IT+152 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:3685 +[7] from 0x08003fcc in HAL_UART_Receive_IT+68 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1440 +[8] from 0x080015d6 in main+126 at Core/Src/main.c:125 +### Threads ############################################################################################################################# +[1] id 0 from 0x08003d06 in HAL_UART_Transmit+0 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +### Variables ########################################################################################################################### +arg huart = 0x20000ae8 : {Instance = 0x40004400,Init = {BaudRate = 115200,WordLength = 0,StopBi…, pData = 0x20000ae4 "": 0 '\000', Size = 1, Timeout = 100 +loc pdata8bits = , pdata16bits = , tickstart = +######################################################################################################################################### +Continuing. +### Output/messages ##################################################################################################################### + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:392 +392 if (huart == &huart1) +### Assembly ############################################################################################################################ +~ +~ +~ +~ + 0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} +!0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff58 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x0800385b msp 0x2000ff58 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x0800127e psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 382 GPIO_InitStruct.Pin = m1_dir_Pin | m2_dir_Pin; + 383 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { +!392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } +### Stack ############################################################################################################################### +[0] from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +$1 = 0 '\000' +### Output/messages ##################################################################################################################### +halted: PC: 0x08001280 +halted: PC: 0x08001282 +halted: PC: 0x0800128c +394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); +### Assembly ############################################################################################################################ + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 + 0x08001288 HAL_UART_RxCpltCallback+12 beq.n 0x80012a6 + 0x0800128a HAL_UART_RxCpltCallback+14 pop {r3, r4, r5, pc} + 0x0800128c HAL_UART_RxCpltCallback+16 ldr r4, [pc, #60] ; (0x80012cc ) + 0x0800128e HAL_UART_RxCpltCallback+18 movs r3, #100 ; 0x64 + 0x08001290 HAL_UART_RxCpltCallback+20 movs r2, #1 + 0x08001292 HAL_UART_RxCpltCallback+22 mov r1, r4 + 0x08001294 HAL_UART_RxCpltCallback+24 ldr r0, [pc, #48] ; (0x80012c8 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$0 = 0 '\000' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x61000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff58 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x0800385b msp 0x2000ff58 faultmask 0x00 + r3 0x20000a60 r7 0x00000000 r11 0x00000000 pc 0x0800128c psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { +!392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } + 402 } + 403 +### Stack ############################################################################################################################### +[0] from 0x0800128c in HAL_UART_RxCpltCallback+16 at Core/Src/main.c:394 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800128c in HAL_UART_RxCpltCallback+16 at Core/Src/main.c:394 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +### Output/messages ##################################################################################################################### +halted: PC: 0x0800128e +halted: PC: 0x08001290 +halted: PC: 0x08001292 +halted: PC: 0x08001294 +halted: PC: 0x08001296 +halted: PC: 0x08003d06 +HAL_UART_Transmit (huart=huart@entry=0x20000ae8 , pData=pData@entry=0x20000ae4 "", Size=Size@entry=1, Timeout=Timeout@entry=100) at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +1150 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ + 0x08003d06 HAL_UART_Transmit+0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 0x08003d0a HAL_UART_Transmit+4 sub sp, #8 + 0x08003d0c HAL_UART_Transmit+6 mov r6, r3 + 0x08003d0e HAL_UART_Transmit+8 ldr r3, [r0, #120] ; 0x78 + 0x08003d10 HAL_UART_Transmit+10 cmp r3, #32 +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$0 = 0 '\000' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000ae8 r4 0x20000ae4 r8 0x00000000 r12 0x00001000 xPSR 0x21000035 primask 0x00 + r1 0x20000ae4 r5 0x00000002 r9 0x00000000 sp 0x2000ff58 fpscr 0x20000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x0800129b msp 0x2000ff58 faultmask 0x00 + r3 0x00000064 r7 0x00000000 r11 0x00000000 pc 0x08003d06 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 1140 * data to the TXFIFO. Write operations to the TDR register are performed + 1141 * when TXFNF flag is set. From hardware perspective, TXFNF flag and + 1142 * TXE are mapped on the same bit-field. + 1143 * @param huart UART handle. + 1144 * @param pData Pointer to data buffer (u8 or u16 data elements). + 1145 * @param Size Amount of data elements (u8 or u16) to be sent. + 1146 * @param Timeout Timeout duration. + 1147 * @retval HAL status + 1148 */ + 1149 HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, const uint8_t *pData, uint16_t Size, uint32_t Timeout) + 1150 { + 1151 const uint8_t *pdata8bits; + 1152 const uint16_t *pdata16bits; + 1153 uint32_t tickstart; + 1154 + 1155 /* Check that a Tx process is not already ongoing */ + 1156 if (huart->gState == HAL_UART_STATE_READY) + 1157 { + 1158 if ((pData == NULL) || (Size == 0U)) + 1159 { +### Stack ############################################################################################################################### +[0] from 0x08003d06 in HAL_UART_Transmit+0 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +[1] from 0x0800129a in HAL_UART_RxCpltCallback+30 at Core/Src/main.c:394 +[2] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[3] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[4] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[5] from 0xffffffe9 +[6] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08003d06 in HAL_UART_Transmit+0 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1150 +### Variables ########################################################################################################################### +arg huart = 0x20000ae8 : {Instance = 0x40004400,Init = {BaudRate = 115200,WordLength = 0,StopBi…, pData = 0x20000ae4 "": 0 '\000', Size = 1, Timeout = 100 +loc pdata8bits = , pdata16bits = , tickstart = +######################################################################################################################################### +### Output/messages ##################################################################################################################### +halted: PC: 0x08003d0a +halted: PC: 0x08003d0c +halted: PC: 0x08003d0e +1156 if (huart->gState == HAL_UART_STATE_READY) +### Assembly ############################################################################################################################ +~ +~ + 0x08003d06 HAL_UART_Transmit+0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 0x08003d0a HAL_UART_Transmit+4 sub sp, #8 + 0x08003d0c HAL_UART_Transmit+6 mov r6, r3 + 0x08003d0e HAL_UART_Transmit+8 ldr r3, [r0, #120] ; 0x78 + 0x08003d10 HAL_UART_Transmit+10 cmp r3, #32 + 0x08003d12 HAL_UART_Transmit+12 bne.n 0x8003dc2 + 0x08003d14 HAL_UART_Transmit+14 mov r4, r0 + 0x08003d16 HAL_UART_Transmit+16 mov r5, r1 +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$0 = 0 '\000' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000ae8 r4 0x20000ae4 r8 0x00000000 r12 0x00001000 xPSR 0x21000035 primask 0x00 + r1 0x20000ae4 r5 0x00000002 r9 0x00000000 sp 0x2000ff38 fpscr 0x20000010 basepri 0x00 + r2 0x00000001 r6 0x00000064 r10 0x00000000 lr 0x0800129b msp 0x2000ff38 faultmask 0x00 + r3 0x00000064 r7 0x00000000 r11 0x00000000 pc 0x08003d0e psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 1146 * @param Timeout Timeout duration. + 1147 * @retval HAL status + 1148 */ + 1149 HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, const uint8_t *pData, uint16_t Size, uint32_t Timeout) + 1150 { + 1151 const uint8_t *pdata8bits; + 1152 const uint16_t *pdata16bits; + 1153 uint32_t tickstart; + 1154 + 1155 /* Check that a Tx process is not already ongoing */ + 1156 if (huart->gState == HAL_UART_STATE_READY) + 1157 { + 1158 if ((pData == NULL) || (Size == 0U)) + 1159 { + 1160 return HAL_ERROR; + 1161 } + 1162 + 1163 __HAL_LOCK(huart); + 1164 + 1165 huart->ErrorCode = HAL_UART_ERROR_NONE; +### Stack ############################################################################################################################### +[0] from 0x08003d0e in HAL_UART_Transmit+8 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1156 +[1] from 0x0800129a in HAL_UART_RxCpltCallback+30 at Core/Src/main.c:394 +[2] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[3] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[4] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[5] from 0xffffffe9 +[6] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08003d0e in HAL_UART_Transmit+8 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1156 +### Variables ########################################################################################################################### +arg huart = 0x20000ae8 : {Instance = 0x40004400,Init = {BaudRate = 115200,WordLength = 0,StopBi…, pData = 0x20000ae4 "": 0 '\000', Size = 1, Timeout = 100 +loc pdata8bits = , pdata16bits = , tickstart = +######################################################################################################################################### +Continuing. +### Output/messages ##################################################################################################################### + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:392 +392 if (huart == &huart1) +### Assembly ############################################################################################################################ +~ +~ +~ +~ + 0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} +!0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127e in Core/Src/main.c:392 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 3 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$0 = 0 '\000' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff58 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x0800385b msp 0x2000ff58 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x0800127e psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 382 GPIO_InitStruct.Pin = m1_dir_Pin | m2_dir_Pin; + 383 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { +!392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } +### Stack ############################################################################################################################### +[0] from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +Detaching from program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf, Remote target +[Inferior 1 (Remote target) detached] +HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:392 +392 if (huart == &huart1) +### Assembly ############################################################################################################################ +~ +~ +~ +~ + 0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) + 0x08001286 HAL_UART_RxCpltCallback+10 cmp r0, r3 +### Breakpoints ######################################################################################################################### +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff58 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x0800385b msp 0x2000ff58 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x0800127e psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 382 GPIO_InitStruct.Pin = m1_dir_Pin | m2_dir_Pin; + 383 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 384 GPIO_InitStruct.Pull = GPIO_NOPULL; + 385 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 386 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { + 392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } + 397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } +### Stack ############################################################################################################################### +[0] from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +[1] from 0x0800385a in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035de in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800127e in HAL_UART_RxCpltCallback+2 at Core/Src/main.c:392 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015da in main () at Core/Src/main.c:133 +warning: Source file is more recent than executable. +133 if (b_timer_struck) +### Assembly ############################################################################################################################ + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 +### Breakpoints ######################################################################################################################### +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x00000000 r4 0x00000111 r8 0x00000000 r12 0x00001000 xPSR 0x61000000 primask 0x00 + r1 0x00000000 r5 0x20000ae8 r9 0x00000000 sp 0x2000fff0 fpscr 0x20000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x0800202d msp 0x2000fff0 faultmask 0x00 + r3 0x200009c4 r7 0x00000000 r11 0x00000000 pc 0x080015da psp 0x00000000 control 0x04 +### Source ############################################################################################################################## + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ############################################################################################################################### +[0] from 0x080015da in main+130 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x080015da in main+130 at Core/Src/main.c:133 +### Variables ########################################################################################################################### +loc motor_degrees = 273 +######################################################################################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015cc main+116 movs r2, #1 + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x000000bd r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015d8 control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 189 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015cc main+116 movs r2, #1 + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000054 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015d8 control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015d8 in main+128 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 84 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +Reset_Handler () at startup_stm32l432xx.s:62 +62 ldr sp, =_estack /* Set stack pointer */ +### Assembly ################################################################## + 0x080041b0 ? movs r0, r0 + 0x080041b2 ? movs r0, r0 + 0x080041b4 ? movs r0, r0 + 0x080041b6 ? movs r0, r0 + 0x080041b8 ? movs r0, r0 + 0x080041ba ? movs r0, r0 + 0x080041bc ? movs r0, r0 + 0x080041be ? movs r0, r0 + 0x080041c0 ? movs r0, r0 + 0x080041c2 ? movs r0, r0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x01000000 + r1 0x00000000 r9 0x00000000 fpscr 0x00000000 + r2 0x00000000 r10 0x00000000 msp 0x20010000 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000000 r12 0x00000000 primask 0x00 + r5 0x00000000 sp 0x20010000 basepri 0x00 + r6 0x00000000 lr 0xffffffff faultmask 0x00 + r7 0x00000000 pc 0x080041b0 control 0x00 +### Source #################################################################### + 52 * necessary set is performed, after which the application + 53 * supplied main() routine is called. + 54 * @param None + 55 * @retval : None + 56 */ + 57 + 58 .section .text.Reset_Handler + 59 .weak Reset_Handler + 60 .type Reset_Handler, %function + 61 Reset_Handler: + 62 ldr sp, =_estack /* Set stack pointer */ + 63 + 64 /* Call the clock system initialization function.*/ + 65 bl SystemInit + 66 + 67 /* Copy the data segment initializers from flash to SRAM */ + 68 ldr r0, =_sdata + 69 ldr r1, =_edata + 70 ldr r2, =_sidata + 71 movs r3, #0 +### Stack ##################################################################### +[0] from 0x080041b0 in Reset_Handler at startup_stm32l432xx.s:62 +### Threads ################################################################### +[1] id 0 from 0x080041b0 in Reset_Handler at startup_stm32l432xx.s:62 +### Variables ################################################################# +############################################################################### +generic_push.gdb:7: Error in sourced command file: +Error erasing flash with vFlashErase packet +Quit +Quit +Quit +Detaching from program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf, Remote target +Remote connection closed +0x080015da in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x00000125 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015da control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015da in main+130 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015da in main+130 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 293 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015da in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x0000015f r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015da control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015da in main+130 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015da in main+130 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 351 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015dc in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 + 0x080015e4 main+140 strb r2, [r3, #0] +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000007a r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015dc control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015dc in main+132 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 122 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015de in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 + 0x080015e4 main+140 strb r2, [r3, #0] + 0x080015e6 main+142 adds r3, r4, #1 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000023 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015de control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015de in main+134 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015de in main+134 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 35 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015da in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x000000da r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015da control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 0); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015da in main+130 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015da in main+130 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 218 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015da in main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015ce main+118 ldr r1, [pc, #80] ; (0x8001620 ) + 0x080015d0 main+120 ldr r0, [pc, #80] ; (0x8001624 ) + 0x080015d2 main+122 bl 0x8003f88 + 0x080015d6 main+126 movs r4, #0 + 0x080015d8 main+128 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+130 ldrb r3, [r3, #0] + 0x080015dc main+132 cmp r3, #0 + 0x080015de main+134 beq.n 0x80015d8 + 0x080015e0 main+136 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+138 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x000000c3 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015da control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015da in main+130 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015da in main+130 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 195 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015de in main () at Core/Src/main.c:136 +136 b_timer_struck = false; +### Assembly ################################################################## + 0x080015d2 main+126 bl 0x8003f88 + 0x080015d6 main+130 movs r4, #0 + 0x080015d8 main+132 ldr r3, [pc, #76] ; (0x8001628 ) + 0x080015da main+134 ldrb r3, [r3, #0] + 0x080015dc main+136 cmp r3, #0 + 0x080015de main+138 beq.n 0x80015d8 + 0x080015e0 main+140 ldr r3, [pc, #68] ; (0x8001628 ) + 0x080015e2 main+142 movs r2, #0 + 0x080015e4 main+144 strb r2, [r3, #0] + 0x080015e6 main+146 adds r3, r4, #1 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000021 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015de control 0x04 +### Source #################################################################### + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ + 143 } + 144 /* USER CODE END 3 */ + 145 } +### Stack ##################################################################### +[0] from 0x080015de in main+138 at Core/Src/main.c:136 +### Threads ################################################################### +[1] id 0 from 0x080015de in main+138 at Core/Src/main.c:136 +### Variables ################################################################# +loc motor_degrees = 33 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa848 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa08 +Loading section .ARM, size 0x8 lma 0x800b050 +Loading section .init_array, size 0x8 lma 0x800b058 +Loading section .fini_array, size 0x8 lma 0x800b060 +Loading section .data, size 0x9a8 lma 0x800b068 +Start address 0x08004128, load size 47584 +Transfer rate: 30 KB/sec, 5287 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015d6 in main () at Core/Src/main.c:125 +125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); +### Assembly ################################################################## + 0x080015ca main+114 ldr r1, [pc, #80] ; (0x800161c ) + 0x080015cc main+116 ldr r0, [pc, #80] ; (0x8001620 ) + 0x080015ce main+118 bl 0x8003f84 + 0x080015d2 main+122 movs r4, #0 + 0x080015d4 main+124 ldr r3, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+126 ldrb r3, [r3, #0] + 0x080015d8 main+128 cmp r3, #0 + 0x080015da main+130 beq.n 0x80015d4 + 0x080015dc main+132 ldr r3, [pc, #68] ; (0x8001624 ) + 0x080015de main+134 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x0000004c r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002029 faultmask 0x00 + r7 0x00000000 pc 0x080015d6 control 0x04 +### Source #################################################################### + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { +### Stack ##################################################################### +[0] from 0x080015d6 in main+126 at Core/Src/main.c:125 +### Threads ################################################################### +[1] id 0 from 0x080015d6 in main+126 at Core/Src/main.c:125 +### Variables ################################################################# +loc motor_degrees = +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8f8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aab8 +Loading section .ARM, size 0x8 lma 0x800b100 +Loading section .init_array, size 0x8 lma 0x800b108 +Loading section .fini_array, size 0x8 lma 0x800b110 +Loading section .data, size 0x9a8 lma 0x800b118 +Start address 0x080041d8, load size 47760 +Transfer rate: 30 KB/sec, 5306 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d0 main+120 movs r2, #1 + 0x080015d2 main+122 ldr r1, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+124 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+126 bl 0x8003fb4 + 0x080015da main+130 movs r4, #0 + 0x080015dc main+132 ldr r3, [pc, #72] ; (0x8001628 ) + 0x080015de main+134 ldrb r3, [r3, #0] + 0x080015e0 main+136 cmp r3, #0 + 0x080015e2 main+138 beq.n 0x80015dc + 0x080015e4 main+140 ldr r3, [pc, #64] ; (0x8001628 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000043 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002059 faultmask 0x00 + r7 0x00000000 pc 0x080015dc control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015dc in main+132 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 67 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8f8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aab8 +Loading section .ARM, size 0x8 lma 0x800b100 +Loading section .init_array, size 0x8 lma 0x800b108 +Loading section .fini_array, size 0x8 lma 0x800b110 +Loading section .data, size 0x9a8 lma 0x800b118 +Start address 0x080041d8, load size 47760 +Transfer rate: 30 KB/sec, 5306 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d0 main+120 movs r2, #1 + 0x080015d2 main+122 ldr r1, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+124 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+126 bl 0x8003fb4 + 0x080015da main+130 movs r4, #0 + 0x080015dc main+132 ldr r3, [pc, #72] ; (0x8001628 ) + 0x080015de main+134 ldrb r3, [r3, #0] + 0x080015e0 main+136 cmp r3, #0 + 0x080015e2 main+138 beq.n 0x80015dc + 0x080015e4 main+140 ldr r3, [pc, #64] ; (0x8001628 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000008d r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002059 faultmask 0x00 + r7 0x00000000 pc 0x080015dc control 0x04 +### Source #################################################################### + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ################################################################### +[1] id 0 from 0x080015dc in main+132 at Core/Src/main.c:133 +### Variables ################################################################# +loc motor_degrees = 141 +############################################################################### +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +target halted due to debug-request, current mode: Thread +xPSR: 0x01000000 pc: 0x080041d8 msp: 0x20010000 +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8f8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aab8 +Loading section .ARM, size 0x8 lma 0x800b100 +Loading section .init_array, size 0x8 lma 0x800b108 +Loading section .fini_array, size 0x8 lma 0x800b110 +Loading section .data, size 0x9a8 lma 0x800b118 +Start address 0x080041d8, load size 47760 +Transfer rate: 30 KB/sec, 5306 bytes/write. +Breakpoint 1 at 0x800127c: file Core/Src/main.c, line 397. +Note: automatically using hardware breakpoints for read-only addresses. +Starting program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf +### Output/messages ########################################################### + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:397 +397 { +### Assembly ################################################################## +~ +~ +~ +~ +~ +!0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) +### Breakpoints ############################################################### +[1] break at 0x0800127c in Core/Src/main.c:397 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 1 time +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x20000a60 r8 0x00000000 xPSR 0x81000035 + r1 0x00000000 r9 0x00000000 fpscr 0x00000010 + r2 0x40013808 r10 0x00000000 msp 0x2000ff58 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x20000a60 r12 0x00001000 primask 0x00 + r5 0x00004001 sp 0x2000ff58 basepri 0x00 + r6 0x00000000 lr 0x08003887 faultmask 0x00 + r7 0x00000000 pc 0x0800127c control 0x00 +### Source #################################################################### + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { + 392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } +!397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } + 402 } + 403 + 404 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) + 405 { + 406 sys_time += 1; +### Stack ##################################################################### +[0] from 0x0800127c in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:397 +[1] from 0x08003886 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x08003560 in HAL_UART_IRQHandler+108 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2347 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x08003f74 in UART_Start_Receive_IT+152 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:3685 +[6] from 0x08003ff8 in HAL_UART_Receive_IT+68 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:1440 +[7] from 0x080015da in main+130 at Core/Src/main.c:125 +### Threads ################################################################### +[1] id 0 from 0x0800127c in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:397 +### Variables ################################################################# +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +############################################################################### +Continuing. +### Output/messages ##################################################################################################################### +halted: PC: 0x0800127e + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:397 +397 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ +!0x0800127c HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800127e HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012c4 ) + 0x08001280 HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x08001282 HAL_UART_RxCpltCallback+6 beq.n 0x800128c + 0x08001284 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012c8 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127c in Core/Src/main.c:397 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff68 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x08003887 msp 0x2000ff68 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x0800127c psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 387 } + 388 + 389 /* USER CODE BEGIN 4 */ + 390 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 391 { + 392 if (huart == &huart1) + 393 { + 394 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 395 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 396 } +!397 else if (huart == &huart2) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 401 } + 402 } + 403 + 404 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) + 405 { + 406 sys_time += 1; +### Stack ############################################################################################################################### +[0] from 0x0800127c in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:397 +[1] from 0x08003886 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x0800360a in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x08001650 in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015de in main+134 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x0800127c in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:397 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +Continuing. +### Output/messages ##################################################################################################################### +halted: PC: 0x0800127e + +Program received signal SIGINT, Interrupt. +main () at Core/Src/main.c:133 +133 if (b_timer_struck) +### Assembly ############################################################################################################################ + 0x080015d0 main+120 movs r2, #1 + 0x080015d2 main+122 ldr r1, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+124 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+126 bl 0x8003fb4 + 0x080015da main+130 movs r4, #0 + 0x080015dc main+132 ldr r3, [pc, #72] ; (0x8001628 ) + 0x080015de main+134 ldrb r3, [r3, #0] + 0x080015e0 main+136 cmp r3, #0 + 0x080015e2 main+138 beq.n 0x80015dc + 0x080015e4 main+140 ldr r3, [pc, #64] ; (0x8001628 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x0800127c in Core/Src/main.c:397 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x00000000 r4 0x00000039 r8 0x00000000 r12 0x00001000 xPSR 0x61000000 primask 0x00 + r1 0x00000000 r5 0x20000ae8 r9 0x00000000 sp 0x2000fff0 fpscr 0x20000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x08002059 msp 0x2000fff0 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x080015dc psp 0x00000000 control 0x04 +### Source ############################################################################################################################## + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ +### Stack ############################################################################################################################### +[0] from 0x080015dc in main+132 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x080015dc in main+132 at Core/Src/main.c:133 +### Variables ########################################################################################################################### +loc motor_degrees = 57 +######################################################################################################################################### +Function "main()" not defined. +Quit +Quit +Breakpoint 2 at 0x80015c2: file Core/Src/main.c, line 124. +Starting program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf +### Output/messages ##################################################################################################################### + +Breakpoint 2, main () at Core/Src/main.c:124 +124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); +### Assembly ############################################################################################################################ + 0x080015b4 main+92 ldr r1, [pc, #96] ; (0x8001618 ) + 0x080015b6 main+94 mov r0, r5 + 0x080015b8 main+96 bl 0x8003fb4 + 0x080015bc main+100 ldr r0, [pc, #92] ; (0x800161c ) + 0x080015be main+102 bl 0x8001aac +!0x080015c2 main+106 movs r2, #1 + 0x080015c4 main+108 mov.w r1, #4096 ; 0x1000 + 0x080015c8 main+112 mov.w r0, #1207959552 ; 0x48000000 + 0x080015cc main+116 bl 0x800323c + 0x080015d0 main+120 movs r2, #1 +### Breakpoints ######################################################################################################################### +[2] break at 0x080015c2 in Core/Src/main.c:124 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:124 hit 1 time +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x00000000 r4 0x200009c8 r8 0x00000000 r12 0x00001000 xPSR 0x41000000 primask 0x00 + r1 0x00000000 r5 0x20000ae8 r9 0x00000000 sp 0x2000fff0 fpscr 0x00000010 basepri 0x00 + r2 0x00000081 r6 0x00000000 r10 0x00000000 lr 0x080015c3 msp 0x2000fff0 faultmask 0x00 + r3 0x40001000 r7 0x00000000 r11 0x00000000 pc 0x080015c2 psp 0x00000000 control 0x04 +### Source ############################################################################################################################## + 114 setPWM(&htim2, TIM_CHANNEL_2, 50); + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 +!124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) +### Stack ############################################################################################################################### +[0] from 0x080015c2 in main+106 at Core/Src/main.c:124 +### Threads ############################################################################################################################# +[1] id 0 from 0x080015c2 in main+106 at Core/Src/main.c:124 +### Variables ########################################################################################################################### +loc motor_degrees = +######################################################################################################################################### +### Output/messages ##################################################################################################################### +halted: PC: 0x080015c4 +halted: PC: 0x080015c8 +halted: PC: 0x080015cc +halted: PC: 0x0800323c +125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); +### Assembly ############################################################################################################################ + 0x080015be main+102 bl 0x8001aac +!0x080015c2 main+106 movs r2, #1 + 0x080015c4 main+108 mov.w r1, #4096 ; 0x1000 + 0x080015c8 main+112 mov.w r0, #1207959552 ; 0x48000000 + 0x080015cc main+116 bl 0x800323c + 0x080015d0 main+120 movs r2, #1 + 0x080015d2 main+122 ldr r1, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+124 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+126 bl 0x8003fb4 + 0x080015da main+130 movs r4, #0 +### Breakpoints ######################################################################################################################### +[2] break at 0x080015c2 in Core/Src/main.c:124 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:124 hit 1 time +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x48000000 r4 0x200009c8 r8 0x00000000 r12 0x00001000 xPSR 0x01000000 primask 0x00 + r1 0x00001000 r5 0x20000ae8 r9 0x00000000 sp 0x2000fff0 fpscr 0x00000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x080015d1 msp 0x2000fff0 faultmask 0x00 + r3 0x40001000 r7 0x00000000 r11 0x00000000 pc 0x080015d0 psp 0x00000000 control 0x04 +### Source ############################################################################################################################## + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 +!124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { +### Stack ############################################################################################################################### +[0] from 0x080015d0 in main+120 at Core/Src/main.c:125 +### Threads ############################################################################################################################# +[1] id 0 from 0x080015d0 in main+120 at Core/Src/main.c:125 +### Variables ########################################################################################################################### +loc motor_degrees = +######################################################################################################################################### +Detaching from program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf, Remote target +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:136 +136 b_timer_struck = false; +### Assembly ############################################################################################################################ + 0x080015be main+122 bl 0x8001aac + 0x080015c2 main+126 movs r2, #1 + 0x080015c4 main+128 mov.w r1, #4096 ; 0x1000 + 0x080015c8 main+132 mov.w r0, #1207959552 ; 0x48000000 + 0x080015cc main+136 bl 0x800323c + 0x080015d0 main+140 movs r2, #1 + 0x080015d2 main+142 ldr r1, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+144 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d6 main+146 bl 0x8003fb4 + 0x080015da main+150 movs r4, #0 +### Breakpoints ######################################################################################################################### +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x48000000 r4 0x200009c8 r8 0x00000000 r12 0x00001000 xPSR 0x01000000 primask 0x00 + r1 0x00001000 r5 0x20000ae8 r9 0x00000000 sp 0x2000fff0 fpscr 0x00000010 basepri 0x00 + r2 0x00000001 r6 0x00000000 r10 0x00000000 lr 0x080015d1 msp 0x2000fff0 faultmask 0x00 + r3 0x40001000 r7 0x00000000 r11 0x00000000 pc 0x080015d0 psp 0x00000000 control 0x04 +### Source ############################################################################################################################## + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { + 135 // PDEBUG("%d\n", sys_time); + 136 b_timer_struck = false; + 137 motor_degrees = (motor_degrees + 1) % 360; + 138 mc_service(motor_degrees, 50); + 139 } + 140 /* USER CODE END WHILE */ + 141 + 142 /* USER CODE BEGIN 3 */ + 143 } + 144 /* USER CODE END 3 */ + 145 } +### Stack ############################################################################################################################### +[0] from 0x080015d0 in main+140 at Core/Src/main.c:136 +### Threads ############################################################################################################################# +[1] id 0 from 0x080015d0 in main+140 at Core/Src/main.c:136 +### Variables ########################################################################################################################### +loc motor_degrees = 2504 +######################################################################################################################################### +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +target halted due to debug-request, current mode: Thread +xPSR: 0x01000000 pc: 0x080041d8 msp: 0x20010000 +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8b8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa78 +Loading section .ARM, size 0x8 lma 0x800b0c0 +Loading section .init_array, size 0x8 lma 0x800b0c8 +Loading section .fini_array, size 0x8 lma 0x800b0d0 +Loading section .data, size 0x9a8 lma 0x800b0d8 +Start address 0x08004198, load size 47696 +Transfer rate: 30 KB/sec, 5299 bytes/write. +Breakpoint 1 at 0x8001268: file Core/Src/main.c, line 396. +Note: automatically using hardware breakpoints for read-only addresses. +Starting program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf +### Output/messages ##################################################################################################################### + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:396 +396 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ +!0x08001268 HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800126a HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012b0 ) + 0x0800126c HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x0800126e HAL_UART_RxCpltCallback+6 beq.n 0x8001278 + 0x08001270 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012b4 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x08001268 in Core/Src/main.c:396 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 1 time +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000004 r9 0x00000000 sp 0x2000ff68 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x08003847 msp 0x2000ff68 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x08001268 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 386 GPIO_InitStruct.Pin = m1_dir_Pin|m2_dir_Pin; + 387 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 388 GPIO_InitStruct.Pull = GPIO_NOPULL; + 389 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 390 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 391 + 392 } + 393 + 394 /* USER CODE BEGIN 4 */ + 395 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) +!396 { + 397 if (huart == &huart1) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 401 } + 402 else if (huart == &huart2) + 403 { + 404 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 405 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); +### Stack ############################################################################################################################### +[0] from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +[1] from 0x08003846 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035ca in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x0800163c in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015ce in main+138 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +$1 = 32 ' ' +Continuing. +### Output/messages ##################################################################################################################### +halted: PC: 0x0800126a + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:396 +396 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ +!0x08001268 HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800126a HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012b0 ) + 0x0800126c HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x0800126e HAL_UART_RxCpltCallback+6 beq.n 0x8001278 + 0x08001270 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012b4 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x08001268 in Core/Src/main.c:396 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 2 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$0 = 32 ' ' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff68 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x08003847 msp 0x2000ff68 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x08001268 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 386 GPIO_InitStruct.Pin = m1_dir_Pin|m2_dir_Pin; + 387 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 388 GPIO_InitStruct.Pull = GPIO_NOPULL; + 389 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 390 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 391 + 392 } + 393 + 394 /* USER CODE BEGIN 4 */ + 395 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) +!396 { + 397 if (huart == &huart1) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 401 } + 402 else if (huart == &huart2) + 403 { + 404 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 405 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); +### Stack ############################################################################################################################### +[0] from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +[1] from 0x08003846 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035ca in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x0800163c in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015ce in main+138 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +$2 = 184 '\270' +$3 = 184 '\270' +Continuing. +### Output/messages ##################################################################################################################### +halted: PC: 0x0800126a + +Breakpoint 1, HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:396 +396 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ +!0x08001268 HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800126a HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012b0 ) + 0x0800126c HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x0800126e HAL_UART_RxCpltCallback+6 beq.n 0x8001278 + 0x08001270 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012b4 ) +### Breakpoints ######################################################################################################################### +[1] break at 0x08001268 in Core/Src/main.c:396 for /storage/Shared/Projects/Penguinator/motor_controller/Core/Src/main.c:392 hit 3 times +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +$$2 = 32 ' ' +$$1 = 184 '\270' +$$0 = 184 '\270' +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff68 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x08003847 msp 0x2000ff68 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x08001268 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 386 GPIO_InitStruct.Pin = m1_dir_Pin|m2_dir_Pin; + 387 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 388 GPIO_InitStruct.Pull = GPIO_NOPULL; + 389 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 390 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 391 + 392 } + 393 + 394 /* USER CODE BEGIN 4 */ + 395 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) +!396 { + 397 if (huart == &huart1) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 401 } + 402 else if (huart == &huart2) + 403 { + 404 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 405 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); +### Stack ############################################################################################################################### +[0] from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +[1] from 0x08003846 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035ca in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x0800163c in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015ce in main+138 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +$4 = 52 '4' +Quit +Detaching from program: /storage/Shared/Projects/Penguinator/motor_controller/build/motor_controller.elf, Remote target +[Inferior 1 (Remote target) detached] +HAL_UART_RxCpltCallback (huart=0x20000a60 ) at Core/Src/main.c:396 +396 { +### Assembly ############################################################################################################################ +~ +~ +~ +~ +~ + 0x08001268 HAL_UART_RxCpltCallback+0 push {r3, r4, r5, lr} + 0x0800126a HAL_UART_RxCpltCallback+2 ldr r3, [pc, #68] ; (0x80012b0 ) + 0x0800126c HAL_UART_RxCpltCallback+4 cmp r0, r3 + 0x0800126e HAL_UART_RxCpltCallback+6 beq.n 0x8001278 + 0x08001270 HAL_UART_RxCpltCallback+8 ldr r3, [pc, #64] ; (0x80012b4 ) +### Breakpoints ######################################################################################################################### +### Expressions ######################################################################################################################### +### History ############################################################################################################################# +### Memory ############################################################################################################################## +### Registers ########################################################################################################################### + r0 0x20000a60 r4 0x20000a60 r8 0x00000000 r12 0x00001000 xPSR 0x81000035 primask 0x00 + r1 0x00000000 r5 0x00000002 r9 0x00000000 sp 0x2000ff68 fpscr 0x20000010 basepri 0x00 + r2 0x40013808 r6 0x00000000 r10 0x00000000 lr 0x08003847 msp 0x2000ff68 faultmask 0x00 + r3 0x00000000 r7 0x00000000 r11 0x00000000 pc 0x08001268 psp 0x00000000 control 0x00 +### Source ############################################################################################################################## + 386 GPIO_InitStruct.Pin = m1_dir_Pin|m2_dir_Pin; + 387 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + 388 GPIO_InitStruct.Pull = GPIO_NOPULL; + 389 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 390 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 391 + 392 } + 393 + 394 /* USER CODE BEGIN 4 */ + 395 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) + 396 { + 397 if (huart == &huart1) + 398 { + 399 HAL_UART_Transmit(&huart2, &huart1_rxc, 1, 100); + 400 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 401 } + 402 else if (huart == &huart2) + 403 { + 404 HAL_UART_Transmit(&huart2, &huart2_rxc, 1, 100); + 405 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); +### Stack ############################################################################################################################### +[0] from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +[1] from 0x08003846 in UART_RxISR_8BIT+174 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:4433 +[2] from 0x080035ca in HAL_UART_IRQHandler+278 at Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c:2427 +[3] from 0x0800163c in USART1_IRQHandler+8 at Core/Src/stm32l4xx_it.c:211 +[4] from 0xffffffe9 +[5] from 0x080015ce in main+138 at Core/Src/main.c:133 +### Threads ############################################################################################################################# +[1] id 0 from 0x08001268 in HAL_UART_RxCpltCallback+0 at Core/Src/main.c:396 +### Variables ########################################################################################################################### +arg huart = 0x20000a60 : {Instance = 0x40013800,Init = {BaudRate = 115200,WordLength = 0,StopBi… +######################################################################################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8b8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa78 +Loading section .ARM, size 0x8 lma 0x800b0c0 +Loading section .init_array, size 0x8 lma 0x800b0c8 +Loading section .fini_array, size 0x8 lma 0x800b0d0 +Loading section .data, size 0x9a8 lma 0x800b0d8 +Start address 0x08004198, load size 47696 +Transfer rate: 30 KB/sec, 5299 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015c8 in main () at Core/Src/main.c:125 +125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); +### Assembly ################################################################## + 0x080015bc main+116 movs r2, #1 + 0x080015be main+118 ldr r1, [pc, #76] ; (0x800160c ) + 0x080015c0 main+120 ldr r0, [pc, #76] ; (0x8001610 ) + 0x080015c2 main+122 bl 0x8003f74 + 0x080015c6 main+126 movs r4, #0 + 0x080015c8 main+128 ldr r3, [pc, #72] ; (0x8001614 ) + 0x080015ca main+130 ldrb r3, [r3, #0] + 0x080015cc main+132 cmp r3, #0 + 0x080015ce main+134 beq.n 0x80015c8 + 0x080015d0 main+136 ldr r3, [pc, #64] ; (0x8001614 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000137 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002019 faultmask 0x00 + r7 0x00000000 pc 0x080015c8 control 0x04 +### Source #################################################################### + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_GPIO_WritePin(USART1_DE_GPIO_Port, USART1_DE_Pin, 1); + 125 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 126 uint16_t motor_degrees = 0; + 127 /* USER CODE END 2 */ + 128 + 129 /* Infinite loop */ + 130 /* USER CODE BEGIN WHILE */ + 131 while (1) + 132 { + 133 if (b_timer_struck) + 134 { +### Stack ##################################################################### +[0] from 0x080015c8 in main+128 at Core/Src/main.c:125 +### Threads ################################################################### +[1] id 0 from 0x080015c8 in main+128 at Core/Src/main.c:125 +### Variables ################################################################# +loc motor_degrees = +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa9e8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aba8 +Loading section .ARM, size 0x8 lma 0x800b1f0 +Loading section .init_array, size 0x8 lma 0x800b1f8 +Loading section .fini_array, size 0x8 lma 0x800b200 +Loading section .data, size 0x9a8 lma 0x800b208 +Start address 0x080042c8, load size 48000 +Transfer rate: 30 KB/sec, 5333 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015d0 in main () at Core/Src/main.c:136 +136 motor_degrees = (motor_degrees + 1) % 360; +### Assembly ################################################################## + 0x080015c4 main+124 ldr r0, [pc, #76] ; (0x8001614 ) + 0x080015c6 main+126 bl 0x80040a4 + 0x080015ca main+130 movs r4, #0 + 0x080015cc main+132 ldr r3, [pc, #72] ; (0x8001618 ) + 0x080015ce main+134 ldrb r3, [r3, #0] + 0x080015d0 main+136 cmp r3, #0 + 0x080015d2 main+138 beq.n 0x80015cc + 0x080015d4 main+140 ldr r3, [pc, #64] ; (0x8001618 ) + 0x080015d6 main+142 movs r2, #0 + 0x080015d8 main+144 strb r2, [r3, #0] +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000096 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800201d faultmask 0x00 + r7 0x00000000 pc 0x080015d0 control 0x04 +### Source #################################################################### + 126 /* USER CODE END 2 */ + 127 + 128 /* Infinite loop */ + 129 /* USER CODE BEGIN WHILE */ + 130 while (1) + 131 { + 132 if (b_timer_struck) + 133 { + 134 // PDEBUG("%d\n", sys_time); + 135 b_timer_struck = false; + 136 motor_degrees = (motor_degrees + 1) % 360; + 137 mc_service(motor_degrees, 50); + 138 } + 139 /* USER CODE END WHILE */ + 140 + 141 /* USER CODE BEGIN 3 */ + 142 } + 143 /* USER CODE END 3 */ + 144 } + 145 +### Stack ##################################################################### +[0] from 0x080015d0 in main+136 at Core/Src/main.c:136 +### Threads ################################################################### +[1] id 0 from 0x080015d0 in main+136 at Core/Src/main.c:136 +### Variables ################################################################# +loc motor_degrees = 150 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa9d8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800ab98 +Loading section .ARM, size 0x8 lma 0x800b1e0 +Loading section .init_array, size 0x8 lma 0x800b1e8 +Loading section .fini_array, size 0x8 lma 0x800b1f0 +Loading section .data, size 0x9a8 lma 0x800b1f8 +Start address 0x080042b8, load size 47984 +Transfer rate: 30 KB/sec, 5331 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015c0 in main () at Core/Src/main.c:121 +121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); +### Assembly ################################################################## + 0x080015b4 main+80 ldr r1, [pc, #72] ; (0x8001600 ) + 0x080015b6 main+82 ldr r0, [pc, #76] ; (0x8001604 ) + 0x080015b8 main+84 bl 0x8004094 + 0x080015bc main+88 movs r4, #0 + 0x080015be main+90 ldr r3, [pc, #72] ; (0x8001608 ) + 0x080015c0 main+92 ldrb r3, [r3, #0] + 0x080015c2 main+94 cmp r3, #0 + 0x080015c4 main+96 beq.n 0x80015be + 0x080015c6 main+98 ldr r3, [pc, #64] ; (0x8001608 ) + 0x080015c8 main+100 movs r2, #0 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x200009c4 r11 0x00000000 psp 0x00000000 + r4 0x000000a6 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800200d faultmask 0x00 + r7 0x00000000 pc 0x080015c0 control 0x04 +### Source #################################################################### + 111 + 112 // HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_2); + 113 // HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_4); + 114 setPWM(&htim2, TIM_CHANNEL_2, 50); + 115 setPWM(&htim2, TIM_CHANNEL_4, 25); + 116 + 117 HAL_GPIO_WritePin(m1_dir_GPIO_Port, m1_dir_Pin, 1); + 118 HAL_GPIO_WritePin(m2_dir_GPIO_Port, m2_dir_Pin, 1); + 119 + 120 mc_init(&htim2); + 121 HAL_UART_Receive_IT(&huart2, &huart2_rxc, 1); + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 125 uint16_t motor_degrees = 0; + 126 /* USER CODE END 2 */ + 127 + 128 /* Infinite loop */ + 129 /* USER CODE BEGIN WHILE */ + 130 while (1) +### Stack ##################################################################### +[0] from 0x080015c0 in main+92 at Core/Src/main.c:121 +### Threads ################################################################### +[1] id 0 from 0x080015c0 in main+92 at Core/Src/main.c:121 +### Variables ################################################################# +loc motor_degrees = +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa9f8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800abb8 +Loading section .ARM, size 0x8 lma 0x800b200 +Loading section .init_array, size 0x8 lma 0x800b208 +Loading section .fini_array, size 0x8 lma 0x800b210 +Loading section .data, size 0x9a8 lma 0x800b218 +Start address 0x080042d8, load size 48016 +Transfer rate: 30 KB/sec, 5335 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +main () at Core/Src/main.c:132 +132 if (b_timer_struck) +### Assembly ################################################################## + 0x080015ce main+106 movs r2, #1 + 0x080015d0 main+108 ldr r1, [pc, #72] ; (0x800161c ) + 0x080015d2 main+110 ldr r0, [pc, #76] ; (0x8001620 ) + 0x080015d4 main+112 bl 0x80040b0 + 0x080015d8 main+116 movs r4, #0 + 0x080015da main+118 ldr r3, [pc, #72] ; (0x8001624 ) + 0x080015dc main+120 ldrb r3, [r3, #0] + 0x080015de main+122 cmp r3, #0 + 0x080015e0 main+124 beq.n 0x80015da + 0x080015e2 main+126 ldr r3, [pc, #64] ; (0x8001624 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x0000000e r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002029 faultmask 0x00 + r7 0x00000000 pc 0x080015da control 0x04 +### Source #################################################################### + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 125 uint16_t motor_degrees = 0; + 126 /* USER CODE END 2 */ + 127 + 128 /* Infinite loop */ + 129 /* USER CODE BEGIN WHILE */ + 130 while (1) + 131 { + 132 if (b_timer_struck) + 133 { + 134 // PDEBUG("%d\n", sys_time); + 135 b_timer_struck = false; + 136 motor_degrees = (motor_degrees + 1) % 360; + 137 mc_service(motor_degrees, 50); + 138 } + 139 /* USER CODE END WHILE */ + 140 + 141 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015da in main+118 at Core/Src/main.c:132 +### Threads ################################################################### +[1] id 0 from 0x080015da in main+118 at Core/Src/main.c:132 +### Variables ################################################################# +loc motor_degrees = 14 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8c8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa88 +Loading section .ARM, size 0x8 lma 0x800b0d0 +Loading section .init_array, size 0x8 lma 0x800b0d8 +Loading section .fini_array, size 0x8 lma 0x800b0e0 +Loading section .data, size 0x9a8 lma 0x800b0e8 +Start address 0x080041a8, load size 47712 +Transfer rate: 30 KB/sec, 5301 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015e0 in main () at Core/Src/main.c:132 +132 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d4 main+108 bl 0x8003f84 + 0x080015d8 main+112 movs r4, #0 + 0x080015da main+114 ldr r3, [pc, #72] ; (0x8001624 ) + 0x080015dc main+116 ldrb r3, [r3, #0] + 0x080015de main+118 cmp r3, #0 + 0x080015e0 main+120 beq.n 0x80015da + 0x080015e2 main+122 ldr r3, [pc, #64] ; (0x8001624 ) + 0x080015e4 main+124 movs r2, #0 + 0x080015e6 main+126 strb r2, [r3, #0] + 0x080015e8 main+128 adds r3, r4, #1 +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x80000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x000000df r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x08002029 faultmask 0x00 + r7 0x00000000 pc 0x080015e0 control 0x04 +### Source #################################################################### + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 125 uint16_t motor_degrees = 0; + 126 /* USER CODE END 2 */ + 127 + 128 /* Infinite loop */ + 129 /* USER CODE BEGIN WHILE */ + 130 while (1) + 131 { + 132 if (b_timer_struck) + 133 { + 134 // PDEBUG("%d\n", sys_time); + 135 b_timer_struck = false; + 136 motor_degrees = (motor_degrees + 1) % 360; + 137 mc_service(motor_degrees, 50); + 138 } + 139 /* USER CODE END WHILE */ + 140 + 141 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015e0 in main+120 at Core/Src/main.c:132 +### Threads ################################################################### +[1] id 0 from 0x080015e0 in main+120 at Core/Src/main.c:132 +### Variables ################################################################# +loc motor_degrees = 223 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8d0 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa90 +Loading section .ARM, size 0x8 lma 0x800b0d8 +Loading section .init_array, size 0x8 lma 0x800b0e0 +Loading section .fini_array, size 0x8 lma 0x800b0e8 +Loading section .data, size 0x9a8 lma 0x800b0f0 +Start address 0x080041b0, load size 47720 +Transfer rate: 30 KB/sec, 5302 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] +0x080015de in main () at Core/Src/main.c:132 +132 if (b_timer_struck) +### Assembly ################################################################## + 0x080015d2 main+110 movs r2, #1 + 0x080015d4 main+112 ldr r1, [pc, #72] ; (0x8001620 ) + 0x080015d6 main+114 ldr r0, [pc, #76] ; (0x8001624 ) + 0x080015d8 main+116 bl 0x8003f88 + 0x080015dc main+120 movs r4, #0 + 0x080015de main+122 ldr r3, [pc, #72] ; (0x8001628 ) + 0x080015e0 main+124 ldrb r3, [r3, #0] + 0x080015e2 main+126 cmp r3, #0 + 0x080015e4 main+128 beq.n 0x80015de + 0x080015e6 main+130 ldr r3, [pc, #64] ; (0x8001628 ) +### Breakpoints ############################################################### +### Expressions ############################################################### +### History ################################################################### +### Memory #################################################################### +### Registers ################################################################# + r0 0x00000000 r8 0x00000000 xPSR 0x61000000 + r1 0x00000000 r9 0x00000000 fpscr 0x20000010 + r2 0x00000001 r10 0x00000000 msp 0x2000fff0 + r3 0x00000000 r11 0x00000000 psp 0x00000000 + r4 0x00000122 r12 0x00001000 primask 0x00 + r5 0x20000ae8 sp 0x2000fff0 basepri 0x00 + r6 0x00000000 lr 0x0800202d faultmask 0x00 + r7 0x00000000 pc 0x080015de control 0x04 +### Source #################################################################### + 122 HAL_TIM_Base_Start_IT(&htim6); + 123 + 124 HAL_UART_Receive_IT(&huart1, &huart1_rxc, 1); + 125 uint16_t motor_degrees = 0; + 126 /* USER CODE END 2 */ + 127 + 128 /* Infinite loop */ + 129 /* USER CODE BEGIN WHILE */ + 130 while (1) + 131 { + 132 if (b_timer_struck) + 133 { + 134 // PDEBUG("%d\n", sys_time); + 135 b_timer_struck = false; + 136 motor_degrees = (motor_degrees + 1) % 360; + 137 mc_service(motor_degrees, 50); + 138 } + 139 /* USER CODE END WHILE */ + 140 + 141 /* USER CODE BEGIN 3 */ +### Stack ##################################################################### +[0] from 0x080015de in main+122 at Core/Src/main.c:132 +### Threads ################################################################### +[1] id 0 from 0x080015de in main+122 at Core/Src/main.c:132 +### Variables ################################################################# +loc motor_degrees = 290 +############################################################################### +Loading section .isr_vector, size 0x190 lma 0x8000000 +Loading section .text, size 0xa8c8 lma 0x80001c0 +Loading section .rodata, size 0x648 lma 0x800aa88 +Loading section .ARM, size 0x8 lma 0x800b0d0 +Loading section .init_array, size 0x8 lma 0x800b0d8 +Loading section .fini_array, size 0x8 lma 0x800b0e0 +Loading section .data, size 0x9a8 lma 0x800b0e8 +Start address 0x080041a8, load size 47712 +Transfer rate: 30 KB/sec, 5301 bytes/write. +Unable to match requested speed 500 kHz, using 480 kHz +Unable to match requested speed 500 kHz, using 480 kHz +A debugging session is active. + + Inferior 1 [Remote target] will be detached. + +Quit anyway? (y or n) [answered Y; input not from terminal] +[Inferior 1 (Remote target) detached] diff --git a/motor_controller.ioc b/motor_controller.ioc index f68aa26..57ce4a7 100644 --- a/motor_controller.ioc +++ b/motor_controller.ioc @@ -15,10 +15,10 @@ Mcu.Name=STM32L432K(B-C)Ux Mcu.Package=UFQFPN32 Mcu.Pin0=PC14-OSC32_IN (PC14) Mcu.Pin1=PC15-OSC32_OUT (PC15) -Mcu.Pin10=PA15 (JTDI) -Mcu.Pin11=PB3 (JTDO-TRACESWO) -Mcu.Pin12=PB6 -Mcu.Pin13=PB7 +Mcu.Pin10=PA12 +Mcu.Pin11=PA13 (JTMS-SWDIO) +Mcu.Pin12=PA14 (JTCK-SWCLK) +Mcu.Pin13=PA15 (JTDI) Mcu.Pin14=VP_SYS_VS_Systick Mcu.Pin15=VP_TIM6_VS_ClockSourceINT Mcu.Pin2=PA0 @@ -27,8 +27,8 @@ Mcu.Pin4=PA2 Mcu.Pin5=PA3 Mcu.Pin6=PA4 Mcu.Pin7=PA5 -Mcu.Pin8=PA13 (JTMS-SWDIO) -Mcu.Pin9=PA14 (JTCK-SWCLK) +Mcu.Pin8=PA9 +Mcu.Pin9=PA10 Mcu.PinsNb=16 Mcu.ThirdPartyNb=0 Mcu.UserConstants= @@ -55,6 +55,14 @@ PA0.Locked=true PA0.Mode=HSE-External-Clock-Source-for-LittleOrca PA0.Signal=RCC_CK_IN PA1.Signal=S_TIM2_CH2 +PA10.Locked=true +PA10.Mode=Asynchronous +PA10.Signal=USART1_RX +PA12.GPIOParameters=GPIO_Label +PA12.GPIO_Label=USART1_DE +PA12.Locked=true +PA12.Mode=Hardware Flow Control (RS485) +PA12.Signal=USART1_DE PA13\ (JTMS-SWDIO).GPIOParameters=GPIO_Label PA13\ (JTMS-SWDIO).GPIO_Label=SWDIO PA13\ (JTMS-SWDIO).Locked=true @@ -84,14 +92,9 @@ PA5.GPIOParameters=GPIO_Label PA5.GPIO_Label=m2_dir PA5.Locked=true PA5.Signal=GPIO_Output -PB3\ (JTDO-TRACESWO).Locked=true -PB3\ (JTDO-TRACESWO).Mode=Hardware Flow Control (RS485) -PB3\ (JTDO-TRACESWO).Signal=USART1_DE -PB6.Mode=Asynchronous -PB6.Signal=USART1_TX -PB7.Locked=true -PB7.Mode=Asynchronous -PB7.Signal=USART1_RX +PA9.Locked=true +PA9.Mode=Asynchronous +PA9.Signal=USART1_TX PC14-OSC32_IN\ (PC14).Locked=true PC14-OSC32_IN\ (PC14).Mode=LSE-External-Oscillator PC14-OSC32_IN\ (PC14).Signal=RCC_OSC32_IN