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

基于STM32的ESP8266使用教程(一)

[复制链接]
aimejia 发布时间:2018-5-31 10:54
本帖最后由 aimejia 于 2018-5-31 11:14 编辑 , Z. G9 [% v6 O; O* H
; }4 m$ t+ F3 a3 _, ~' |5 |6 ~
基于STM32的ESP8266使用教程(一)1 R' g4 E7 N* H, L' ~
基于STM32的ESP8266使用教程(二)
6 A+ @" A2 h: ~9 e基于STM32的ESP8266使用教程(三)
( R; {% s3 K! Z1 ~基于STM32的ESP8266使用教程(四)(短篇)
: C* T* f  t. I5 t' V. ]
: Y% S" A3 R! m# H关于为什么要写这篇文章,因为之前在做一个项目的时候需要使用WIFI模块。X宝搜WIFI模块的时候推荐ESP8266这个模块,说是价格便宜、使用方便。但是在使用的过程中发现的确使用方便(因为是基于AT指令的,就是AT+...这种固定格式的指令,如AT+RST就是复位指令),但是在单片机控制WIFI模块时资料几乎没有(也许是博主搜索方法有问题……),经历了5天没有数据的迷茫烦躁后总算是把模块调试成功了,为了将来使用ESP8266模块的开发者少走弯路,于是这篇博文诞生了。相关软件和代码整理请参考“基于STM32的ESP8266使用教程(四)(短篇)”。
6 {' G7 _+ a- [' }# t0 O8 t+ f8 r6 y9 E5 p
要调试通信模块,首先要有调试工具,博主推荐sscom42这个工具,首先上张图。
) X5 q4 B7 S3 t8 g
& H: j& Y* S& Y- i  H# k( o  H
1.png
# P* C/ e  S; M& P+ X: y
这里关注几个地方:一个是串口号,这个是WIFI模块通过USB转TTL与电脑的接口;下一个是波特率,ESP8266固定波特率115200,如果选择9600可能会出乱码;还有就是HEX显示,原因有两个,一个是如果传输的是“非可见字符”,就是不是像0~9、a~z这种字符,如空格、回车,如果没有选择HEX显示,就无法判断法搜是否正确,还有一个原因是串口通信结尾一般是0x0D 0x0A,但是在习惯上,我们认为回车键就是结尾,因此,看数据到底发送接收了什么还是用HEX显示不容易出错。
6 I# ?9 _3 m/ y- e' L! }2 Q2 B$ L; T0 m9 ?
接下来是硬件的连接。调试串口需要一个USB转TTL的模块,请自行X宝,放一张博主使用的模块,这个模块有两个3.3V、一个5V供电,不仅在调试WIFI时可以用,在使用其他模块时还能做电源,关键还很便宜。, X" S& F  U! t$ E& Q& ]; Q# D% F

/ @5 h7 x- ~5 E; g9 b+ e  m- F4 L
2.png
& C1 H, _. ~2 O3 z- g- G
再放张WIFI模块的硬件连接图。
4 \$ }$ l7 ]. I. F
* I) t: T& f9 g+ {4 E
3.png

9 Z% |- @, A$ j) }连接很简单,TX连接RX,VCC连接3.3V,GND连接GND,有一点注意就是CH_PD连接3.3V,数据手册上说的。
! q4 J; N$ _% s; |/ F/ A4 j2 G" n' X& u9 m' T, M% u- y  ]
然后进行一个测试,选择串口号,打开串口,字符串输入框中输入AT+RST,点击发送,如果模块正常应该如图。
6 q; a2 Q% a, T* G3 W6 |6 U2 Z5 V/ ~$ ^2 W
4.png

1 x+ n: x$ e) \. y7 @; V: S! ^8 d然后是对模块进行配置。我们将模块配置成多连接模式。
$ H0 M9 x* Z+ T$ H! W+ P) U
* x5 l4 U/ p$ ~6 v9 HAT+CWMODE=3 //配置成多连接模式
  h- d) c  L) E( N: [) S
5 z9 [) L0 `0 D+ f5 V响应OK,如下图
! g" V- v) y4 d" W5 B" [* ~+ ]8 y7 b& K5 z  R/ s
7.png

" |2 v9 r3 |) r7 `) J$ Y; G: ^AT+RST //重启生效
2 z' O6 P2 u. x( y8 n. C! b+ l* P; m! Q
响应OK,如下图8 n& Z; H; M6 J; Q$ ]5 [! @

" S/ U0 ~2 `  V 8.png
  u! T$ i# m9 ?. j8 @. K2 w' z: [4 P/ z5 z- Y& S& W1 K
AT+CWSAP="ESP8266_TEST","1234567890",1,3  //修改模块名字和密码,后面两个是通道号和密码模式,默认1,3就好4 M/ U* n$ S8 p4 s8 B

. t" a; i; R( s( T! }- k/ ]响应OK,如下图/ j' g, h* w7 I) K& U5 S, a

, |# e' d) e" M 9.png : |. n3 J9 x. q! V" b4 W0 s5 k
7 P& ~1 R8 v( r0 Z
AT+CIPMUX=1 //启动多连接
: c' [$ w9 A% S
( B2 R& }$ {. c0 @, x! T' U+ p响应OK,如下图
6 q! a7 v# t- S- R
0 \! g. C2 F/ |- F% y 10.png 1 t& ]( ~$ O. d) D7 l! l: Z
3 g& P$ X- G6 q" ]
AT+CIPSERVER=1,8080 //建立SERVER,端口8080
0 O% p6 @6 W3 O0 H! j* s
3 w% S4 P4 P1 c# ?响应OK,如下图
0 k; s! ^& m8 x1 ~- _: o. d' \4 k  N) I3 S
11.png
* s1 Z4 S$ Y8 T, R" V# L, F0 Y2 `% H  U2 o
此时,我们已经将模块配置完毕,可以发现电脑已经发现了我们的WIFI,输入密码后连接到了WIFI。5 Y! g! @2 K# Y! P5 U

/ ?% U4 M$ I1 _6 I
5.png

2 {5 \* i+ w4 R. t2 k
6.png

3 }: R3 D& c( Q3 `' I  M补充一点,上面的配置成多连接,重启,配置名字和密码只要配置一次就好,即使之后断电再上电也不用重复配置,每次上电后只要输入AT+CIPMUX=1和AT+CIPSERVER=1,8080即可。2 D7 a3 b# k" r$ s  U& a- w& o7 I

) w" V: T3 k6 _( @1 U0 r, [9 A! C$ g# b+ K; s
9 W0 y2 W* D. e- C, C! U2 f
转载自codingindex1 ]: o4 S; O7 u( G' |4 p, d
; H, e5 H6 R) o3 a6 U, i0 S
2 y! F# c, k7 ?- U0 R6 L
收藏 4 评论3 发布时间:2018-5-31 10:54

举报

3个回答
wolfgang 回答时间:2018-5-31 12:33:45
GOOD!
ST1997 回答时间:2019-3-21 08:55:55
这篇理解
lisd70 回答时间:2019-3-23 15:28:40
学习了,谢谢

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版