爱板网论坛

查看: 196|回复: 0

[中移One NET] 自己建立工程出现串口乱码问题解决办法

[复制链接]

3

主题

0

好友

73

积分

童生

Rank: 2

  • TA的每日心情
    开心
    2017-10-26 12:06
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2017-9-20 14:44:56 |显示全部楼层
              我用的是迷你板,感觉板子小巧精致甚是受大家喜爱。我们抱有学习目的同志们当然不能止步于只看官方的源码,只用官方的工程。那么自己建立工程学习的过程中一般你们会遇到程序在其它板子上跑的没问题,但下载到迷你板上就出问题了。究竟是什么鬼!我是深有感悟啊!究根到底是晶振惹的祸!因为迷你板上的外接晶振用的是12M的,而我们平时用的外接晶振是8M的。今天不明白为啥用8M晶振的同学听我说说看

    每个工程里都会有一个必要的文件  system_stm32f10x.c



    看到那里是“RCC_CFGR_PLLMULL9” 外接晶振8M晶振后系统默认倍频后8*9=72M这样就默认了。
    若外接12M晶振后需要72M频率就要6倍频,12*6=72M
    而麒麟座官方工程里为了要匹配72M,他们修改了两处头文件里的值,一处是stm32f10x.h 一处就是上面说的了。
    自己用官方文档必须要改这两处:


    再来看看工程下的文件



    大家注意,stm32f10x.h文件默认情况下是只读的,为啥有的人说会有小钥匙了,只需改了它的属性就可以了。

    当初出现串口问题后我很疑惑,不明白到底是哪出错了,那个纠结呀!!!!还好,算是发现问题了,希望我的教训让一些新手知道,不然遇到这样的问题会耽误好长时间的。


    2.jpg
    3.jpg
    1.jpg
    回复

    使用道具 举报

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

    手机版|爱板网 |网站地图  

    GMT+8, 2017-12-13 07:38 , Processed in 0.211908 second(s), 11 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部