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

[复制链接]
查看11 | 回复5 | 2013-2-27 22:21:11 | 显示全部楼层 |阅读模式
如果这就是你全部的程序,那么,你的程序是有问题的:你没有任何初始化时钟的操作,那么,此时,STM32用的是内部的HSI,也就是STM32内部的8MHz的RC时钟,此时,STM32的主时钟是8MHz,我估计你也没有修改系统时钟的宏定义,如果你不修改的话,系统时钟的宏定义默认是72MHz,那么,此后所有的与时钟有关的东西,都是按照72MHz进行的,包括你的波特率的设置,你虽然设置为115200,其实没有那么大,应该是12800. 所以,建议你:设置RCC时钟,为72MHz...
回复

使用道具 举报

千问 | 2013-2-27 22:21:11 | 显示全部楼层
我是也是遇到了跟你同样的问题,现在解决了如果你也是用printf只是输出,那么下面这些代码就够用了以下代码直接替换main()中的部分,功能是完整可用的 /* Enable GPIO clock */main(){RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 |
...
回复

使用道具 举报

千问 | 2013-2-27 22:21:11 | 显示全部楼层
配置上没什么问题,就是不知道你勾选了MDK的微库了没?...
回复

使用道具 举报

千问 | 2013-2-27 22:21:11 | 显示全部楼层
先确认硬件以及连线没有问题。有条件的话用示波器量一下输出波形。...
回复

使用道具 举报

千问 | 2013-2-27 22:21:11 | 显示全部楼层
在开头先对函数fputc进行申明...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行