标签:USART 引脚 配置 通信 STM32CubeMX 串口 我们
前言
废话 不知不觉又到了难得的周末,本想慵懒的享受一下这难得的清闲,可心中总有点牵挂。碌碌无为是一天,忙忙碌碌是一天,每个人的生活方式还在于自己内心的选择,而我选择了去做点自己感兴趣的小事,也算告慰自己的内心。
闲话就不多说了,接下来我们来一起看看如何通过STM32CubeMX来配置串口通信,串口通信在平常的项目中用到的挺多,但项目中并不是只用到USART来完成数据传输,通常会和RS485、232、Modbus等结合使用,这不仅可以保证数据的稳定及正确性,还可以有效的增加传输距离。这个我们会在后面慢慢讲怎样和485、232、Modbus结合使用,今天我们就先来看看USART串口通信的基本配置。
USART简介:
STM32F767 的串口资源相当丰富的, 最多可提供 8 路串口, 支持 8/16 倍过采样,支持自动波特率检测、支持 Modbus 通信、 支持同步单线通信和半双工单线通讯、支持 LIN、 支持调制解调器操作、智能卡协议和 IrDA SIR ENDEC 规范、具有 DMA 等。
本节将实现STM32F767通过串口和上位机的对话, STM32F767在收到上位机发过来的字符串后,原原本本的返回给上位机。
第一步 创建工程
- 打开STM32CubeMX软件,创建新工程。
- 选择自己所用的芯片。
- 前面说过了,根据自己的硬件设备选择相应引脚配置为USART_RX及USART_TX。也可以直接找到USART直接配置就行,但是这个时候你可能会发现,这个软件自己设置的I\O引脚和我们需要的引脚是有差别的,这个是正常的,我们可以找到我们需要的引脚,直接选择的我们前面配置的USARTx,这个时候之前软件自行选择的引脚就会自动复位。
- 这一步是配置LED的引脚,为的是用LED等来直接提示我们软件是否在正常的运行。
- 在配置完LED的引脚之后,我们点击①处进行USART 配置如下图。
- 完成GPIO的配置后我们来设置USART 的配置,如下图所示,一次安照图中配置即可,这个我们需要注意的是④处有些USART 的波特率等基本的配置,需要我们根据自己的实际情况去配置。
- 前面的配置已经完成了USART 的发送功能,但是我们的USART 接收是需要中断功能的,因此我们接下来配置中断,如下图。 中断的分组及USART 功能的中断优先级这个需根据项目的需求实际配置。
- 配置完中断后,便是配置RCC功能,因为本博主用的是外部晶振提供时钟源。如若用芯片内部的时钟源可省略。
- 然后配置芯片的时钟钟树如下图。
- 完成时钟树的配置,我们这个USART 配置基本上算是完成了,接下了来便是项目工程的配置。
- 选择我们项目工程需要配置的一些HAL库,及创建每个功能的.c/.h等,之后直接在右上角生成项目工程即完成了。
- 打开我们的项目工程查看usart.c文件的初始化配置。
- 在usart.c中添加中断回调函数,处理串口接收数据的存储。
- 添加串口的收发功能,将收到的数据原原本本的发回去,LED的闪烁提示软件正在运行。
第二步 下载验证
将我们的工程编译完成后下载来验证是否完成我们本节的需求,如下图所示。
USART 串口通信:
百度链接: https://pan.baidu.com/s/1CNbqk0n57fdxaZiVZamB-g
提取码:5hyd
总结
STM32CubeMX软件配置USART 串口通信按照上面我们就已经完成了,看到这不妨自己动手去试试,整体下来并不是很难,在我们用熟了之后,我们只需简单的看看需要注意的哪些点即可。 现在距离新一天的开始还有六分钟,就在此别过了,本节就到这里了。
作者:Cary.chen
标签:USART,引脚,配置,通信,STM32CubeMX,串口,我们 来源: https://blog.csdn.net/weixin_43123205/article/details/106878923
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。