学STM32的USART1,用Printf函数向超级终端打印信息。为什么超级终端没有反应? 用的是keil4,3.5的库。

2025-05-04 09:22:35
推荐回答(1个)
回答(1):

如果这就是你全部的程序,那么,你的程序是有问题的:
你没有任何初始化时钟的操作,那么,此时,STM32用的是内部的HSI,也就是STM32内部的8MHz的RC时钟,此时,STM32的主时钟是8MHz,我估计你也没有修改系统时钟的宏定义,如果你不修改的话,系统时钟的宏定义默认是72MHz,那么,此后所有的与时钟有关的东西,都是按照72MHz进行的,包括你的波特率的设置,你虽然设置为115200,其实没有那么大,应该是12800.

所以,建议你:
设置RCC时钟,为72MHz