打印

GD32F403的 USART0通讯问题

[复制链接]
847|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wanchengjian|  楼主 | 2019-12-11 10:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
硬件:GD32F403 外部时钟8M,PLL到168M
现在USART0通讯,通讯参数1200波特率,数据8,ODD校验,1停止
发送出来就是和PC串口调试程序发送出来的数据对不上!

有谁也遇到了吗?

使用特权

评论回复
沙发
xdqfc| | 2019-12-11 12:01 | 只看该作者
串口设置其实不难的,楼主要么先拿GD提供的实例先试一下,那个是没有问题的,我之前基本也参考他们的例程,有时候需要修改部分寄存器,发送假如不使用中断的话,基本就不要修改,直接拿来用,PC端的程序我是自己用JAVA编的,没有用串口调试助手,都很好用的。楼主先用GD的例程试试,肯定没有问题。

使用特权

评论回复
板凳
sonicll| | 2019-12-11 13:47 | 只看该作者
应该是波特率相对与APB时钟太低了,你主频168M,APB2应该也是168M吧,168000000/1200 = 140000,这个数值已经超过波特率分频寄存器的16位大小了。你要么降低APB2频率,要么提高波特率

使用特权

评论回复
地板
wanchengjian|  楼主 | 2019-12-12 11:14 | 只看该作者
sonicll 发表于 2019-12-11 13:47
应该是波特率相对与APB时钟太低了,你主频168M,APB2应该也是168M吧,168000000/1200 = 140000,这个数值已 ...

只能rcu_apb2_clock_config(RCU_APB1_CKAHB_DIV8);//select CK_AHB/16 as CK_APB2
试看看了

使用特权

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

本版积分规则

1

主题

9

帖子

1

粉丝