文章目录
一、Wemos D1和WIFI
Wemos D1上搭载板载无线网卡
支持AP(路由),STA(上网设备模式)
AP :相当于路由器允许其他设备接入。
STA:相当于手机可连接其他无线设备。
Wemos的WiFi模块测试(代码如下):
//STA(上网设备模式)
#include<ESP8266WiFi.h> // 引入WiFi模块的头文件
char* ssid = "TP-LINK"; // “wifi热点名称”
char* passwd = "111111111"; // “wifi热点密码”
//初始化WiFi设置
void InitWifiSta()
{
WiFi.mode(WIFI_STA); // 设置STA模式
WiFi.begin(ssid, passwd); // 连接网络函数
while (WiFi.status() != WL_CONNECTED) {
// WiFi.status()函数是判断WiFi连接状态,WL_CONNECTED是这个函数其中一个返回值,连接上返回WL_CONNECTED
Serial.print("."); //每隔500微秒打印一个点
delay(500);
}
}
void setup() {
InitWifiSta(); // 初始化WiFi设置
Serial.begin(115200); // 初始化串口,设置波特率为115200
}
void loop(){
Serial.println(WiFi.localIP()); // 连接上WiFi后通过串口打印Wemos的IP地址
delay(500);
}
二、Wesmos D1的C/S模式
C/S:客户端/服务器模式
服务器两大要素:
地址 :ip地址,域名等
端口号 :一台电脑或者设备有多个服务每个服务用端口号区别
用Wemos D1架设一个简单的ftp服务器(代码如下):
#include<ESP8266WiFi.h> // 引入WiFi模块头文件
char* ssid = "hpy"; // “wifi热点名称”
char* passwd = "2225341578"; // “wifi热点密码”
int port=8888; // 设置一个端口号
WiFiServer server(port); // 设置服务器端口号
//初始化WiFi设置
void InitWifiSta()
{
WiFi.mode(WIFI_STA); // 设置STA模式
WiFi.begin(ssid, passwd); // 连接网络
while (WiFi.status() != WL_CONNECTED) {
// 判断WiFi是否连接成功
Serial.print(".");
delay(500);
}
Serial.println(WiFi.localIP()); // 连接成功通过串口打印Wemos的IP地址
}
void setup() {
Serial.begin(115200); // 初始化串口,设置波特率为115200
InitWifiSta(); // 初始化WiFi设置
server.begin(); // 服务器开始运行
}
void loop(){
char cmd;
WiFiClient client = server.available(); // 获取连接到服务器
while (client.connected()) {
// 等待客户端连接
while (client.available() > 0) {
// 判断是否有数据到来,类似串口的那个函数
cmd = cli