1回答

1收藏

【追梦人】STM32F4Discovery 串口续篇

#竞赛 #竞赛 6818 人阅读 | 1 人回复 | 2013-09-28

     虽然很早前就已经调好串口了,现在才补上,废话少絮,请看正文:
    像其他人一样,初次调串口时,接收的是乱码,首先怀疑是波特率问题,重复多遍检查代码,发现没有问题。对此苦恼不已,
后在网上找到有人说有的开发板用的是25M晶振,而F4Discovery用的是8M晶振,需要在stm32f4xx.h中将25000000改为
8000000,如图



    按图改过来之后,发现数据仍是乱码,为了探究是否是波特率问题,只好拿出杀手锏——示波器了,经示波器观察后,发现波特率正常。至此,串口调试放下了一段时间,某一天在看F4Discovery原理图时,偶然发现所用的串口端口与板上MicroUSB接口复用,猜想串口乱码可能与此有关,为了验证自己的猜想,用到了管脚的重映射。



经过修改之后,bingo!串口数据正常,果然是此问题。后来在爱板网看到了xinxin在坛子共享的F4Discovery扩展版的资料,里面关于串口代码的编写很规范,其扩展、维护和使用都非常方便,但三串口(uart1、uart3、uart6)代码只有com1可以使用,com2、com3貌似没写完整。在此基础之上,完善了剩下的代码,并添加了中断接收功能。可根据自己需要更改中断服务处理函数,以满足自己的需要。现将代码及相关资料附上


STM32F4Discovery扩展版资料

STM32F4-PIN-MAP.pdf (71.9 KB, 下载次数: 62)


代码:链接:http://pan.baidu.com/share/link?shareid=2907931950&uk=3946165763 密码:aemv
分享到:
回复

使用道具 举报

回答|共 1 个

倒序浏览

沙发

youyuwangzi16

发表于 2013-10-7 11:29:32 | 只看该作者

你的这个问题,跟我https://www.cirmall.com/bbs/thread-18861-1-1.html这帖子关系很密切哟,希望你能看看啊
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条