RT-Thread在正点原子apollo STM32F767上串口2使用

1. STM32F767IGTx的串口2在PA2(Tx)和PA3(Rx)上,在RTT的apollo BSP中使用menuconfig打开串口,在rtconfig.h中定义#define BSP_USING_UART2

RT-Thread在正点原子apollo STM32F767上串口2使用_第1张图片

2. 编译后在msh中使用list_device查看,看到串口2,但此实无法调用串口2,发送信息也不由成功,原因是

RT-Thread在正点原子apollo STM32F767上串口2使用_第2张图片

3. 在官方BSP串口2 IO定义错误,在board\CubeMX_Config\Src中stm32f7xx_hal_msp.c文件里,Keil工程Drivers中,对串口2的IO定义如下,很明显,初始化在了PD5和PD6,只要改到了对用的IO就行(使用RT-Thread Studio中同样出现这个问题,只要找到stm32f7xx_hal_msp.c文件修改代码就可以了)

RT-Thread在正点原子apollo STM32F767上串口2使用_第3张图片

 

改为

RT-Thread在正点原子apollo STM32F767上串口2使用_第4张图片

4. 对于其他串口也是这样,试了串口4

 

你可能感兴趣的:(RT-Thread在正点原子apollo STM32F767上串口2使用)