欢迎光临散文网 会员登陆 & 注册

STM32Cube串口通信(上)串口发送

2021-02-08 21:22 作者:僚机Wingplane  | 我要投稿

工作环境:

STM32CubeMXv6

Keil5

串口调试助手

    单单的串口发送相对而言还是比较简单,因为不用打开配置串口中断相关的配置。

    首先打开左侧的下拉框Connectivity,点击USART1选项;

    在打开的选单中点击Mode的下拉框,选中Asynchronous;

    在下方的配置框中选中Parameter Settings进行配置:

    Baud Rate:波特率

    Word Length:字长

    Parity: 奇偶校验

    Stop Bits:停止位

    Data Directon:数据方向

    Over Sampling:超采样

    Auto Baudrate: 自动波特率

    TX Pin Active Level Inversion:输出引脚有效电平反转

    RX Pin Active Level Inversion:输入引脚有效电平反转

    Data Inversion:数据反转

    TX and RX Pin Swapping:输出和输入引脚交换

    DMA on RX Error:DMA接收错误

    MSP First:MSP优先

设置完成后

点击Project Manager页面,输入工程名和工程位置,选择工具链和IDE为MDK-ARM,版本为5.27;

打开左侧Code Generater菜单勾选Generate peripheral initialization as a pair of'.c/.h'file per peripheral;

最后点击右上角的GENERATE CODE按钮后生成代码。

生成代码后打开工程文件夹,用Keil5打开工程。

编译后运行

此时还是无法进行串口通信的

打开usart.c,在#include "usart.h"下添加以下代码

好了,现在可以使用

直接在串口1中输出了

如果不想改变stm32cube生成的函数,那么可以不用添加这段代码,直接使用

函数中的三个形参分别是串口名,串口数组名,数组长度,超时时间(因为是阻塞式的)。

参考资料:


STM32F7开发指南-HAL库版本_V1.1

HAL库教程5:串口数据发送    https://blog.csdn.net/geek_monkey/article/details/89164939


STM32Cube串口通信(上)串口发送的评论 (共 条)

分享到微博请遵守国家法律