嵌入式学习之WIFI模组

一、ESP12-F模组介绍

ESP8266类比于U5芯片

ESP12-F模组类比为 U5的最小系统

安信可 ESP8266 系列模组

https://docs.ai-thinker.com/esp8266

 二、固件

固件就是程序,比如之前的串口控灯实验,将当时的代码下载到硬件中去,形成一个产品,用户不能动,代码只对用户提供了控制指令的输入接口。此时这个控制程序就是固件。

ESP8266不需要我们从到到尾去编程,只要们将官方提供的固件烧进去,那我们只要发送指令就可以控制这款芯片了。

  • 固件开发(二次开发):不需要其他单片机只用8266就可以了,写8266内程序。
  • AT指令方式开发:需要通过串口再接一个单片机,8266和这个单片机进行串口通信,8266内有原本的固件程序,单片机串口发送指令(AT指令)控制8266。
本实验所使用板子的硬件连线:

 三个开放引脚

GPIO0:控制WIFI模式,GPIO0为低电平是下载模式,高电平为运行模式

        运行和下载模式:

        运行模式:此时串口为正常的通信功能

        下载模式:此时串口为下载固件的功能

22号引脚 TXD为WIFI模组的串口发送引脚

21号引脚 RXD为WIFI模组的串口接收引脚

三、指令

注意:指令均要以 ' \r\n ' 结尾,

\r  ---->光标回到本行行首

\n ---->光标直接直接换到下一行

3.1 复位

AT+RST
此指令相当于按了一下复位按键,有如下回复则是成功复位

3.2 设置wifi模式

AT+CWMODE=参数

参数:
0: 无 Wi-Fi 模式,并且关闭 Wi-Fi RF
1: Station 模式---------可以连接其他热点
2: SoftAP 模式---------变身成为一个路由器,可以发射wifi信号成为一个热点
3: SoftAP+Station------模式 混合模式

一般使用1(station)模式 ,即AT+CWMODE=1

有如下回复则设置成功

3.3 连接WIFI热点

AT+CWJAP="热点名字","热点密码"

此处确保热点名字不要出现比较另类的字符,尽量为纯数字或者数字和字母组合
此热点为2.4G热点
如下回复则连接成功
如连接有问题可根据回复的错误信息判断连接不成功的问题在哪

回复错误码1:连接超时

回复错误码2:密码错误

回复错误码3:找不到该AP(热点)

回复错误码4:连接失败

补充:使用电脑开热点:

3.4 连接TCP服务器

AT+CIPSTART="TCP","服务器IP",服务器端口

此时需要打开一个同网络下的服务器,可以是虚拟机的用代码写的服务器或者在Windows上打开一个服务器模拟器

3.5 数据发送

AT+CIPSEND=5     //发送五个字节给服务器
这种方式只能实现单次固定长度数据的发送

输入后会出现箭头,表示后续需要往串口发的就是想发送到服务器的5个字节的数据

3.6 透传模式

3.6.1 什么是透传

3.5的发送太别扭了,每次发送要提前输入指令,还有长度限制,并不高效和方便, 可以不可以有一种设置,只要设置好了,我们就可以让串口助手直接和服务器进行通信,ESP8266只作一个转发者的身份存在,当发送指定字符时才退出通信。

这就是透传,让ESP8266透明化的一种数据传输方式。

也就是,开启透传模式后,ESP8266接收到的任何数据他都不会将其看做命令,而是看做是要传输出去的数据,此时ESP8266就只是一个数据中转站,也就是实现了其透明化,数据好像直接从发送方到了接收方。

3.6.2 开启透传

//设置透传模式
AT+CIPMODE=1

//使能透传发送
AT+CIPSEND

发送完上面两个命令以后,出现如下的小箭头,则代表开启透传成功

进行数据的发送和接收:

这样每次收发前不用再输入指令,更加高效。一旦进入了透传模式,即使再发送AT指令ESP8266也不会把他当指令进行处理的,所发送的AT指令会当做消息发送。

注意:

在透传模式中,若识别到单独的一包数据“ +++”,则退出透传模式。

流程:

四、单片机控制ESP8266连接TCP服务器

wifi驱动文件:

https://gitee.com/xiefujuan/driver-files.git


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值