HM_Nano和STM32F103C8T6通过UART1进行通信的若干问题

Viewed 88

技术支持提问请严格按照以下格式提供对应信息,否则会影响回复时效,一定要描述清楚,以免一次回复无法解决问题

(提问前请先自查自己是否很仔细看过教程了,教程中的每句话都很重要,教程都是经过验证的,不会有问题的)

一、描述你遇到的问题

在HM_Nano和STM32F103C8T6通过UART1进行通信时,STM32端通过USB-TTL与PC端连接后测试收发均正常显示。小熊派端首先运行例程B6,自发自收再通过UART0将printf出的内容打在屏幕上,一切正常。但是通过USB-TTL直接将UART1连接在PC端时,串口收发在串口助手收发区均无显示。并且最为关键的问题在于,每次将小熊派的RX、TX连接到USB-TTL上时,LED灯就莫名亮起,按下RESET键后,按下时LED熄灭,松开后LED再次亮起。

此外,在使用杜邦线连接小熊派和STM32F103C8T6时,若只连接RX、TX,则使用USB-C连PC串口助手读取小熊派的串口UART0,获取printf的内容,可以收到乱码。(stm32和小熊派的波特率及数据位等信息均相同)但再添加一根连接双方GND的杜邦线后,PC端串口助手接收区不再收到信息。

综上,无法通过GPIO_5和GPIO_6复用得到的UART1来实现小熊派从stm32f103c8t6接收有效字符串信息。

二、你具体做的所有步骤结果截图

三、当前开发板状态全景照片

如图,串口通过TTL-USB连接PC(未接5V,只接了RX TX GND三根线),LED灯亮起,按RESET重置无效。

四、开发板串口所有日志

不知需要的日志是从哪里获取。
希望得到解答,感谢!

2 Answers

先给nano开发板上电,再接上TTL-USB/STM32 试试,记得UART1的有个引脚好像是起到了BOOT作用,拉高/拉低 启动可能不行。

那请问接收stm32发出的字符串乱码可能是因为什么呀?

以及如果不能使用UART1的话,还有其他办法能构建与stm32的通信嘛?按您说的话,是不是不能按reset了呀?

请问您解决了吗?我遇到了同样的问题,双方分开测试均正常,但小熊派一和其他设备连接,串口监视区就一片空白,按reset也没用,无法用uart1进行串口通信。

这个是3861的芯片限制,配置选项字节,屏蔽这个引脚的BOOT试试看

请问配置选项字节,放在自己编写的程序中可以吗?还是说要去底层文件里改?