STM32F105串口USART3无法发送数据或数据错误问题

本文介绍了在STM32F105开发中遇到的USART3串口无法发送数据或数据错误的问题。首先强调硬件检查的重要性,然后详细描述了从波特率设置、固件库问题到时钟配置的排查过程,最终发现并解决了时钟源选择错误的问题,从而实现了正常通信。
摘要由CSDN通过智能技术生成

关于STM32系列的例程网上有很多,大部分是103系列,使用USART3,而且都是直接抄袭书上3.0的固件库或者转载别人的,所以很少又遇到类似我的问题,由于我用105系列芯片,开发板上只有USART3引出来重映射PD8、PD9,用的3.5的固件库,所以调试起来特别麻烦,没有可以运行的例子参考,网上down了一下都发现有问题,自己摸索半天终于发现了解决方案,觉得自己应该做出一点事情,为来源社会略尽微薄之力,所以决定开始写技术博客,一定要我自己原创的,发现别人一般发现不了问题的,绝大多数人转载的那种就算了。


其实103和105/107系列差别很小,只在建立工程的时候要稍微设置一下,有空专门写一篇建工程的,总的来说要使105的USART3要注意几个地方:


1.如果没法收发数据,通常情况是执行printf以后,串口助手只显示空字符串,查看HEX是00,首先要检查硬件,做嵌入式最关键的一点是,在怀疑自己代码之前先看硬件有没有连错,很多时候这样可以省不少事情,像我自己就是刚开始板子上面只连出了RXD和TXD,我就很天真地用3根杜邦线,和9针的电脑串口2、3、5连了,忘了还需要MAX232转电平,调代码搞半天浪费了时间没解决真正的问题,后面找到别的板子的MAX232模块,硬件问题解决。


2.这时候还不能收发数据,查了网上大部分资料,跟预期的

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值