打印
[开发工具]

智林的板子+李宁的串口程序有乱码

[复制链接]
1824|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mxinfa|  楼主 | 2009-4-28 19:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
智林的板子,使用李宁博士书上的串口程序,不知为啥输出是乱码,由于晶振频率不一样(智林的是12M),下面这句使用的时候把RCC_PLLMul_9改成了RCC_PLLMul_6 
 /* PLLCLK = 8MHz * 9 = 72 MHz */ 
    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); 
把波特率 
USART_InitStructure.USART_BaudRate = 115200; 
降为9600,仍然是乱码 
我把李宁博士的原代码传上去,麻烦帮忙看看,初学,我不太敢乱改,我对照库手册挨个看了一下,好像没有什么问题 MDK3.40的环境
相关链接:https://bbs.21ic.com/upfiles/img/20094/2009428193225908.rar
沙发
mxinfa|  楼主 | 2009-4-29 00:56 | 只看该作者

明显感觉波特率不对

但不管怎么设置总是乱码

使用特权

评论回复
板凳
sonicll| | 2009-4-29 12:39 | 只看该作者

stm32f10x_conf.h

你看看stm32f10x_conf.h这个文件里的HSE_Value 有没有改成12000000 ? 貌似要和那个6倍频一起改才行

使用特权

评论回复
地板
McuPlayer| | 2009-4-29 14:35 | 只看该作者

李宁,一切皆有可能

使用特权

评论回复
5
mxinfa|  楼主 | 2009-4-30 19:21 | 只看该作者

谢sonicll

改了之后还是不对,还是乱码

使用特权

评论回复
6
mxinfa|  楼主 | 2009-4-30 20:03 | 只看该作者

还有哪里要改

我仔细分析了乱码的规律,发现把115200改成76800(他们之间正好是1.5倍的关系,跟12M与8M的关系一样),而实际波特率正好是115200。但是RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);这句代码我已经改成了RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_6); stm32f10x_conf.h这个文件里的HSE_Value也已经改成了12000000,还有别的地方吗?

使用特权

评论回复
7
mxinfa|  楼主 | 2009-4-30 20:12 | 只看该作者

菜鸟我猜不可能库本身就是按照8M设计的吧?

使用特权

评论回复
8
yihanqing| | 2009-5-13 21:37 | 只看该作者

我也发现了 这种现象

请高手指点,
谢谢!

使用特权

评论回复
9
香水城| | 2009-5-13 22:51 | 只看该作者

请使用ST提供的库源代码编译,不要使用编译好的库

编译好的库中默认是8MHz输入时钟。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

33

主题

198

帖子

1

粉丝