STM32基于HAL库的ESP8266实现

本文介绍了如何使用STM32 HAL库驱动ESP8266,包括引脚连接、工程创建、驱动移植和代码编写。通过使能USART1和USART2,配置GPIO,以及启用接收和空闲中断,实现了STM32与ESP8266的串口通信。最后,通过中断函数和验证驱动,确保了通信的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发板:正点原子阿波罗
与ESP8266通信:USART2

引脚连接说明

引脚 说明
RST PA4
EN PA5
TX PA3(USART2-RX)
RX PA2(USART2-TX)

模块的RST、EN这两个引脚不固定,只要能作普通IO的引脚都行

创建工程

1、使能USART1

用来通过串口打印ESP8266返回的信息

在这里插入图片描述

使能NVIC
在这里插入图片描述

2、使能USART2

本例程中是使用USART2与ESP8266实现互的

在这里插入图片描述

使能NVIC

在这里插入图片描述

3、配置GPIO

配置连接到RST、EN引脚的GPIO

在这里插入图片描述

GPIO的标签最好与图中的保持一致,这样是不需要更改驱动中的代码的

生成工程

我们在生成代码时,将USART部分生成LL库

在这里插入图片描述

移植驱动

将ESP8266相关的驱动添加到工程中

在本工程目录下新建一个文件夹用来存放相关驱动,我这里新建的文件夹名是Hardware

在这里插入图片描述

把以下两个文件夹的内容复制到刚刚新建的Hardware文件夹中
在这里插入图片描述

ok,此时驱动已经移植到工程中了,添加编译路径,编译一下,接着进去代码补充

代码编写

CubeMx生成的代码有些寄存器没有使能,我们不能直接使用,需要我们自己使能相关寄存器

使能接收中断、空闲中断

打开usart.c源文件,我们在函数MX_USART1_UART_Init()、MX_USART2_UART_Init() 最后面添加USART接收中断使能

USART1:

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

点灯大师~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值