[STM32F4] STM32F429探索板的串口UART5发送数据时错误

[复制链接]
2239|9
 楼主| wyjben 发表于 2014-4-3 11:57 | 显示全部楼层 |阅读模式
本帖最后由 wyjben 于 2014-4-4 08:45 编辑

为什么我的STM32F429探索板的串口UART5发送数据时乱码,只有前两个字节是对的,后面的字符串每个字符的高4位是错的,低是位是正常的?

比如我发送16进制:61 62 63 64 65 66
接收时变成了:      61 62 E3 E4 65 E6
这是什么情况,有高手帮忙分析下吗?谢谢
MOn51 发表于 2014-4-3 12:07 | 显示全部楼层
检查一下波特率,以及实际使用的晶振频率
mmuuss586 发表于 2014-4-3 12:15 | 显示全部楼层

用什么接收?
还是自发自收
 楼主| wyjben 发表于 2014-4-3 12:46 | 显示全部楼层
波特率从1200到9600都试过了,结果都是一样的,
用PC机接收的
Ketose 发表于 2014-4-3 14:09 | 显示全部楼层
贴代码吧
大秦正声 发表于 2014-4-3 14:10 | 显示全部楼层
用UART1测试看看!
yinhaix 发表于 2015-8-12 20:18 | 显示全部楼层
songchenping 发表于 2015-8-12 20:57 | 显示全部楼层
用示波器测量一下晶振和波形是否正确。
songchenping 发表于 2015-8-12 20:58 | 显示全部楼层
必要的时候查查硬件连接。
595004525 发表于 2015-10-12 18:03 | 显示全部楼层
本帖最后由 595004525 于 2015-10-12 18:28 编辑



stm32f4xx_hal_uart.c  函数得到的HAL_RCC_GetPCLK1Freq(),好像不是PCLK1的时钟。
huart->Instance->BRR = UART_BRR_SAMPLING16(45000000, huart->Init.BaudRate);//0x0000124F;HAL_RCC_GetPCLK1Freq()
这样就可以了。
用的是STM32F427xx芯片 UART4  9600 HCLK=180M ,PCLK1=45M, PCLK2=90M
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

99

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部