你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32串口通信

[复制链接]
STMCU小助手 发布时间:2021-1-27 11:22
STM32串口通信
用过STM32的小伙伴们都对这个功能不陌生吧,串口通信可以用来驱动at指令,与串口屏通信,熟悉掌握串口的使用可以做很多事情,例如蓝牙模块,WIFI模块,物联网模块。
因为当前很多模块厂家都封装好了,我们只需要会发送串口指令就可以。
我们先上完整工程,代码在Github中:https://github.c/WANG-GXI/USART(如果不会使用请先看入门教程)
我打包为压缩包:USART.zip
像这种蓝牙模块某宝随便搜索就可以看到它的使用方法:
4.1.png
还有正点原子的ESP8266也是需要串口去发送指令
4.2.png
具体的原理我们就不多赘述了直接开始讲解使用方法
配置串口包括三部分内容:
1.I/O口配置:TXD配置为复用推挽输出(GPIO_Mode_AF_PP),RXD配置为浮空输入(GPIO_Mode_IN_FLOATING);
2.  串口配置:波特率等;
3.  中断向量配置:一般用中断方式接收数据。
注意事项:
在我们一般的使用中会发现串口初始化函数都大同小异,但是需要注意的是配置中断口时串口45的入口分别是UART4_IRQn、UART5_IRQn,而在移植代码的时候应该同样注意串口45不是USART。
下面我们把代码贴出来,就举串口1与串口4的例子
这是正点原子的串口例程 USART1
4.3.png
4.4.png
这是我自己用的串口代码 UART4:
4.5.png
对串口的使用关键在于中断函数的编写,首先应了解u8,u16定义的是什么再往下看。我们用com1_data来存储收到的数据,可以看到我注释中的代码是把接收到的数据进行openmv算法处理,这里根据自己的需要进行更改。
4.6.png
当我们需要接收字符串时候中断应该用一个数组来存储接收值。
4.7.png
对于发送就是很普通的字符串检测,我们把需要发的指令作为函数参数调用就可以了。
4.8.png
在研究代码的前提是我们的接线没有问题,小鱼之前在玩时总是莫名其妙的把RX 与TX接错导致心态崩掉,同时也是对大家的提醒,当代码确定没有问题时去看看硬件连接。

文章出处: 小鱼君code

收藏 评论0 发布时间:2021-1-27 11:22

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版