打印
[综合信息]

华大MCU填坑之USART

[复制链接]
1952|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
先吐槽下,华大的函数库都是坑,而且很浪费CPU资源,在此建议有能力、有时间的一定要去学习他的寄存器操作,一是防坑,二可以提高个人能力,毕竟这是基础的东西(俗话说:基础不牢,地动山摇)。

进入主题,这个说是串口BUG,实际是系统时钟问题。本人使用外部8M晶振,按照官方例程,将串口配置完成后,测试。设置波特率为9600,实际使用波特率只有2400。使用仿真查看系统时钟频率,这点华大的库提供了一个比较便利的函数 Clk_GetHClkFreq()

使用特权

评论回复
沙发
狗啃模拟|  楼主 | 2022-1-26 23:10 | 只看该作者

使用特权

评论回复
板凳
狗啃模拟|  楼主 | 2022-1-26 23:13 | 只看该作者
仿真发现,程序运行到u32Val = CLK_XTH_VAL;时,Val值为32000000,GO TO一下

使用特权

评论回复
地板
狗啃模拟|  楼主 | 2022-1-26 23:13 | 只看该作者
发现外部高速时钟频率默认值是32000000。我的天呐,以后换个外部高速晶振都得来改下这个值。。。惊掉下巴!!!

使用特权

评论回复
评论
wubangmi 2022-1-27 16:32 回复TA
@eelux :说的很有道理 
eelux 2022-1-27 09:58 回复TA
你有没有更好的方法可以让软件自动知道外部晶体的值? 
5
狗啃模拟|  楼主 | 2022-1-26 23:14 | 只看该作者
  在使用华大MCU的串口时还要注意波特率与系统主频的匹配,在他们的用户手册里有“Mode1/Mode3波特率设置示例”需要跑更高的波特率时,主频速率也要跟上。

使用特权

评论回复
6
狗啃模拟|  楼主 | 2022-1-26 23:17 | 只看该作者
这里备注个“双波特率”,根据华大提供的公式理解,就是将(主频*2),具体功能未查到,也未细研究,如有知道的大佬欢迎留言解惑。

使用特权

评论回复
7
azrm| | 2022-1-26 23:52 | 只看该作者
本帖最后由 azrm 于 2022-1-27 00:09 编辑

没遇到过,我直接使用的官方例子里面的,时钟频率和窗串口都是正常的,串口分频设置为16,就可以满足9600到115200之前的波特率了。我用的f460,没遇到过你说的情况,f005我也用过,用的外部8m晶振,9600波特率,暂时还没啥问题。

使用特权

评论回复
8
azrm| | 2022-1-27 00:02 | 只看该作者
哦,对了,我用的是f460,可能和你使用的型号不一样

使用特权

评论回复
9
azrm| | 2022-1-27 00:11 | 只看该作者
没遇到过,我直接使用的官方例子里面的,时钟频率和窗串口都是正常的,串口分频设置为16,就可以满足9600到115200之前的波特率了。我用的f460,没遇到过你说的情况,f005我也用过,用的外部8m晶振,9600波特率,暂时还没啥问题。

使用特权

评论回复
10
martinhu| | 2022-1-27 14:32 | 只看该作者
因为STK板用的是32M的外部晶振。
楼主有没有更好的办法让程序知道外部晶振的频率???

使用特权

评论回复
11
wubangmi| | 2022-1-27 16:34 | 只看该作者
这本不叫坑,只是需要手工改宏定义而已,从另一方面来说,楼主没有很好的熟悉华大的例程而已

使用特权

评论回复
12
七毛钱| | 2022-2-6 21:05 | 只看该作者
还以为真的是什么大坑了

使用特权

评论回复
13
tfqi| | 2022-2-7 10:29 | 只看该作者
如果真是这样的话 很难找问题

使用特权

评论回复
14
tfqi| | 2022-2-7 10:30 | 只看该作者
这样也能提高调试水平

使用特权

评论回复
15
nawu| | 2022-2-7 10:51 | 只看该作者
看来无论什么都要持怀疑态度啊

使用特权

评论回复
16
aoyi| | 2022-2-7 11:33 | 只看该作者
虽然能提高能力 但是真的不好找原因

使用特权

评论回复
17
zljiu| | 2022-2-7 11:52 | 只看该作者
对官方数据也要怀疑了

使用特权

评论回复
18
gwsan| | 2022-2-7 12:30 | 只看该作者
那还是自己从头写代码比较好

使用特权

评论回复
19
dzfansman| | 2022-2-13 14:13 | 只看该作者
串口有什么bug  

使用特权

评论回复
20
modesty3jonah| | 2022-2-13 16:43 | 只看该作者
现在都是库函数配置了。

使用特权

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

本版积分规则

60

主题

770

帖子

1

粉丝