串口通信小试牛刀

本文介绍了如何使用STM32CubeMX和HAL库快速实现LED流水灯及USART串口通讯。通过配置GPIO端口和USART参数,实现了3个LED的周期闪烁及STM32向Win10发送“hellowindows!”的串口通信。HAL库简化了寄存器配置,提高了开发效率。
摘要由CSDN通过智能技术生成

安装 stm32CubeMX,配合Keil,分别尝试使用寄存器地址方式(汇编或C,不限) 和HAL库这两种方式,完成下列任务:
1、重做上一个LED流水灯作业,即用GPIO端口完成3只LED红绿灯的周期闪烁。
2、完成一个STM32的USART串口通讯程序(查询方式即可,暂不要求采用中断方式),要求:
1)设置波特率为115200,1位停止位,无校验位;
2)STM32系统给上位机(win10)连续发送“hello windows!”。win10采用“串口助手”工具接收。

一、HAl库实现流水灯

1.安装cubeMX

安装教程:STM32CubeMX系列教程02_STM32CubeMX工具、HAL库下载、安装说明
按照以上教程安装好后开始下一步

2.创建项目

打开cubeMX
在这里插入图片描述
选择New Project下的第一个选项access to mcu那一个
在这里插入图片描述
在左上的part number中输入对应芯片名,中间出现对应的芯片后双击进入编辑
在这里插入图片描述
选择PA4,PB5,PC14三个引脚,都选择GPIO_Output选项
在这里插入图片描述
点击左侧system core选项,选择sys,右方debug选择serial write
接着点击GPIO设置
在这里插入图片描述
点击上方Project Manager
在这里插入图片描述
输入项目名称,application Structure选择basic,ide选择mdk,版本对应keil版本,最后点击右上方generate code
代码创建好后点击open即可keil打开项目
在这里插入图片描述
修改while循环实现流水灯,编译创建hex文件
在这里插入图片描述
烧录hex文件
效果:HAL库实现流水灯

3.波形图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到按照A4、B5、C14的顺序依次先高电平再低电平,时间间隔约为1s。

二、USART串口通讯

1.创建项目

项目创建与前面步骤一致
在这里插入图片描述
在AZ选项中选择usart1并进行图中配置
然后generate code,manager选项与前面也一致
keil打开项目
在这里插入图片描述
修改while循环
在这里插入图片描述
PA4端口在每次发送信息后亮0.1秒后熄灭,等待0.9秒后继续循环上述步骤。
烧录hex
在这里插入图片描述

2.实现效果

在这里插入图片描述

三、总结

通过使用HAL库可以大大减少我们配置对应引脚的时间和代码量,在操作方面也方便了许多,不需要再翻资料查找每一个寄存器的基地址了。而且HAL库可以一键帮我们配置串口输出参数,很方便编程。

四、参考

STM32CubeMX系列|串口通讯
STM32实现LED闪烁——基于HAL库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ivan@Xiang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值