功能介绍
简单来说,WiFi模块一般与STM32单片机通过串口连接。 WiFi模块接收数据,通过串口输出; 串口接收数据,通过WiFi模块输出数据。
三大模式 WiFi模块有三大模式:AP、STA、STA+AP AP模式:提供无线接入服务,即模块作为无线WiFi热点,允许其它设备连接到本模块,一般的无线路由/网桥工作在该模式。 STA模式:类似于无线终端,不接受无线接入服务,模块作为无线WiFiSTA,用于连接到无线网络,实现串口与其他设备间的无线数据传输,一般无线网卡工作在该模式。 STA+AP模式:既做无线AP,也做无线STA,其它设备可以连接到该模块,该模块也可以连接到其他无线网络,实现串口与其他设备间的无线数据转换互传。
子模式 AP、STA各有三个子模式:TCP服务器、TCP客户端、UDP STA+AP有九个子模式:(TCP服务器、TCP客户端、UDP)||(TCP服务器、TCP客户端、UDP)
具体TCP与UDP的联系与区别在这篇博文里有详细介绍:TCP与UDP的联系与区别
模块选型
目前市场上主流的WiFi模块有TI公司的cc3200、乐鑫的ESP8266、联发科的mt7681 不同型号的模块在价格、性能和开发难度上都有所不同,下面是对三种型号的WiFi模块的总结
AT指令及使用
使用WiFi模块一般分两个步骤:
配置WiFi模块 AT指令是应用于WiFi模块与单片机之间的连接与通信的指令 万能公式:AT+< COMMAND >=< VALUE >\r\n 下表是常用的指令集 例如:发送 AT+CWMODE=1 设置WiFi模块为STA模式
接收、发送数据 WiFi模块与STM32连接,用于发送和接收数据,其模块连接结构图通常如下图所示: WiFi模块连接目标热点; 电脑通过网络调试助手与WiFi模块建立信息通讯; 当WiFi模块接收到电脑发送的信息时,WiFi模块通过串口与单片机进行通信,将接收到的数据存储到单片机中; 再此过程中,WiFi模块的主模式为STA,网络调试助手为TCP;
例程 以ESP8266和STM32单片机为例,本人写过通过AT指令配置WiFi模块的例程,供大家参考 ESP8266-STM32-AT指令配置 此例程配置模式包括STA模式和AP模式,可以实现TCP通信和UDP通信,包含详细代码及注释,并在主程序里实现WiFi模块在STA模式下发送数据的例子