有时候ST-LINK连接没问题,但无法下载原因: 如果连接没有问题却下载不了,一般是通信出错导致 解决:使用STM32 ST-LINK Utility 来帮助解决 - 下载STM32 ST-LINK Utility程序,安装,linux下载后编译安装
- 如果出现连线正常却无法下载时点开该软件,点击Disconnect,即断开连接即可
其实一开始想到的应该是用ST-LINK Utility的命令行工具ST-LINK_CLI使用命令进行断开的,但是找了找ST-LINK_CLI的命令及参数(直接运行ST-LINK_CLI),没找到断开连接的命令,才出此下策
使用串口: UART_Init();中只设置了串口模式,与串口相关的时钟、IO口都没有初始化,因此如果需要使用,要调用
- /**
- * @brief UART MSP Initialization
- * This function configures the hardware resources used in this example:
- * - Peripheral's clock enable
- * - Peripheral's GPIO Configuration
- * @param huart: UART handle pointer
- * @retval None
- */
- void HAL_UART_MspInit(UART_HandleTypeDef *huart)
复制代码
这个函数 调用的位置可以在UART_Init()之前,也可以在UART_Init()中调用 比如在UART_Init()中调用
- HAL_UART_MspInit(&UartHandle);
复制代码
需要换串口的话,官方的只能在stm32f4xx_hal_msp.h中修改宏定义,自认为不好用。。。。。 在app.c中使用printf(); 默认是不能使用的,app.c中有如下条件编译
- #if NO_PRINTF
- #define printf(...)
- #endif
复制代码
如果一定要使用,则注释掉即可
|