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

STM32 OTA例程之ESP8266使用

[复制链接]
STMCU-管管 发布时间:2018-9-29 11:23
前言
; M) i5 N+ }& a+ h5 n# Q# w4 Q: y
这一节,我们来聊聊 STM32的 FOTA例程中用到的 wifi 模块:ESP-01。ESP-01是安信可公司基于 ESP8266 wifi 芯片的 WIFI模块。在 STM32 FOTAdemo里,用来实现无线通信。下面我们将来认识一下这个模块,并介绍 demo里相关底层驱动 的实现。 5 C# `5 w8 s5 P' R, S* [! i! F- q

" n; G( e4 ~1 F& X. W- F/ oESP-01 模块
( |1 T  |; N! w( X( }9 V" ~5 X
: v! N  H6 e: Q, M8 x$ M7 QESP-01模块集成 esp8266EX WIFI芯片,支持 802.11b/g/n协议,支持 UART/GPIO等接口,内嵌 LwIP 协议栈,支持 STA/AP/STA+AP工作模式,是一款低成本的无线模块。
; X* D2 B& A* @3 u; C3 W+ A4 r9 ?
ESP-01模块采用 DIP-8封装。尺寸和引脚定义见下图。提供一个 UART接口和两个 GPIO口。
% z1 L' _, Y/ b2 \
5 y& c# r3 ^% I" E
QQ截图20180929110858.png

9 m9 A6 W7 p1 u  P' l) d. Z. nSTM32F769探索板的 CN2接口支持对 ESP-01模块的扩展,可以直接将 ESP-01模块插在 CN2接口上。STM32F769和 ESP-01之间通过串口通信,串口配置为:115200波特率,8位数据位,无奇偶校验,1位停止位。连接如下:9 u6 r: J! n7 l. y) S! k

$ @  G% |7 n# U! W4 S
QQ截图20180929110912.png
- g5 @# ]' l, I* O' q  n+ C3 m% L% [
AT 指令格式
! i; T% m5 |9 @: y9 @' C/ a" ]% @: ], _8 e8 n% h+ q5 S  R8 R
ESP-01的 AT指令集就是 ESP8266的 AT指令集。可以细分为四种类型:
9 ?2 q) q% n! }/ T
- E. W% L7 Y6 U+ G2 J, x
QQ截图20180929110923.png
+ Z# s' h# r- A7 Q( L4 k
要注意的是, " i$ u* G3 @% C/ E! |+ i# d2 N) y
不是每条 AT指令都具备上面 4种类型,具体要去看该条 AT指令的说明。
( m8 y0 ?: @8 j& l使用双引号表示字符串数据。比如“123”,就是一个字符串,而 123就是数字。
& b2 O6 w0 }' [2 J开头的 AT指令两个字符必须大写,每条命令以回车换行符结尾“\r\n” 1 l3 I* J0 ]0 i! S
! y+ w) P# i9 w7 G& T' `( Q
ESP8266的 AT指令集又分为:基础 AT命令(对模块的配置,串口设置等),WIFI功能 AT命令(设置 wifi模式,连接 AP 等),TCP/IP功能 AT命令(建立 TCP连接,收发数据等)。 9 H. O6 I/ e  t

: o# u6 g' d5 ^: a& d2 _
) i# M& O* a: r. C9 K
作为 TCP 客户端工作
- S$ h1 Z% J4 y8 }' P8 r" s
! }! k3 [, [2 s: Q3 Q) H2 l模块初始化   b# x" k! h' y1 s+ }+ T
程序上电运行后,在开始使用 WIFI模块前,必须先对其进行初始化。除了 GPIO口以及串口的初始化外,还需要对 WIFI模 块进行配置,使其工作在我们希望的模式下。在 STM32 FOTA demo里 ESP8266应该工作在 STATION模式和多连接模式下。 所以在初始化的时候,需要通过相应的 AT指令进行配置。下面是初始化的代码以及 AT指令执行的过程。
0 G) L6 X( A6 \2 N9 Z
/ A) p, ^+ G3 S& Y9 Z! B
QQ截图20180929110957.png
QQ截图20180929111020.png
( [1 W0 D6 D; b" C9 `0 l7 i$ w/ X
AT指令的运行记录

# l1 O2 `* {  P% h9 A# L
QQ截图20180929111030.png

( J: C/ {7 z. h7 m, |
' |, Y. e5 p& C1 R! U( l
连接到 AP 8 R3 J( ?  P* I7 ~! W
调用 ESP8266_JoinAccessPoint函数,输入 AP的 SSID和密码,连接到对应的 wifi 热点
- t* x. r! v9 Y+ B' f1 t8 c5 r- Y5 N6 j( A
) T1 a7 J" i+ y2 J$ Y
...
7 V' R2 d; g! i( p% ]/ j* b5 H% V  \$ S: W
了解更多,请下载后阅读3 [$ h/ R# Y+ R8 ]6 F& V9 J

: z; S, Q. D8 ^( i! k& n, ^下载地址1>>                                     下载地址2>>                                   更多实战经验>>
+ @2 P" ^) [& Z% R- }6 s6 g. U$ h9 j  n7 R' s9 S/ S) }# T2 z
赞 收藏 评论5 发布时间:2018-9-29 11:23

举报

5个回答
hyxzs 回答时间:2019-4-2 15:36:07
请问,demo源代码从哪里下载?
Johnson wang 回答时间:2020-3-13 11:01:55
hyxzs 发表于 2019-4-2 15:36
' C5 U) a: _4 e8 P* n( [1 p/ ?请问,demo源代码从哪里下载?
4 @- r6 I5 v- H0 L
我也在找这个DEMO呢,你找到了吗?
hyxzs 回答时间:2020-4-27 16:48:12
没有啊1 |8 _3 }3 j& u7 w$ A
bjflsk 回答时间:2020-6-27 23:44:17
谢谢分享!
吕小布丶 回答时间:2022-10-12 16:27:09
学习学习
0 K7 t) e3 O- N9 m) H- X, a
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版