在stm32f767 nucleo上移植野火的stm32f767串口通讯程序,一直显示乱码。
由于nucleo板子并没有焊接25M晶体振荡器,而是使用了板上的stlink输出的8Mhz的时钟,因此需要对时钟进行重新配置。
系统时钟设置对了,可是还是显示乱码,这是为什么呢???
这个问题折磨了我整整两天,反复查看代码,阅读手册,就是没整明白。
也许是老天爷也看不下去了吧,在一个偶然的机会下我点击了MDK的配置选项,一刹那间,我似乎找到了问题所在。哈哈,问题就这样轻松解决了,下图就是那个困扰了我多日的原因所在。
HSE_VALUE=25000000,因为nucleo的外部高速时钟是8Mhz,因此把这个宏定义改成HSE_VALUE=8000000就行了