@2019-06-20
【主题】
拿到一个stm32f407新板,使用rt-thread源码中的bsp中的stm32f407-discovery工程,操作串口外设实现rt_kprintf功能
【问题】
源码bsp中的工程一般都用usart1实现了rt_kprintf功能,所以直接编译烧写,但就是串口助手无数据
【分析】
调试代码,查看usart1相关寄存器都是正常的,就考虑输出脚是不是重映射了,因为使用的是HAL库,就查看了文件《stm32f4xx_hal_msp.c》中串口配置函数HAL_UART_MspInit,果然将USART1默认的管脚PA9、PA10,改为PB6、PB7了
注:MSP:MCU Specific Package
【解决】
a. 将串口接在PB6 PB7
b. 将管脚改回PA9 PA10
【总结】
不是自己原创建的工程代码,就不要主观认定外设的管脚设定,出现问题就要查查相关配置