参考:wemosD1_WIFI模块 与 arduino
作者:枕上
发布时间:2021-07-19 21:49:55
网址:https://blog.csdn.net/jinchi_boke/article/details/118915142
目录
- 作为设备接入wifi(STA模式)
- 架设Wemos为ftp服务器
- arduino编写 wemosD1作为设备接入wifi的 代码
- 修改代码,变为服务器
作为设备接入wifi(STA模式)
#include <ESP8266WiFi.h> //使用wifi的头文件
char* ssid = “gcc-tech”; //“wifi热点名称”
char* passwd = “18650711783”; //”wifi热点密码”void initWifiSta()
{WiFi.mode(WIFI_STA); // 设置STA模式WiFi.begin(ssid, passwd); //连接网络while (WiFi.status() != WL_CONNECTED) {Serial.print(".");delay(500);}Serial.println(WiFi.localIP()); //通过串口打印wemos的IP地址delay(500);}Tips: 注意代码的大小写!!!!!!!!,注意中英文符号
架设Wemos为ftp服务器
int port = 8888; //端口号
WiFiServer server(port); // 设置服务器端口号void loop() {
WiFiClient client = server.available(); //服务初始化while (client.connected()) { //等待客户端连接while (client.available() > 0) { //有数据到来,类似串口的那个函数cmd = client.read();//读取数据}
}
}Tips: 启动服务器的API: server.begin();
arduino编写 wemosD1作为设备接入wifi的 代码
#include <ESP8266WiFi.h> //使用wifi的头文件char* ssid = "iPhone"; //“wifi热点名称”
char* passwd = "1234569870-1"; //”wifi热点密码”void initWifiSta()
{WiFi.mode(WIFI_STA); // 设置STA模式WiFi.begin(ssid, passwd); //连接网络while (WiFi.status() != WL_CONNECTED) {Serial.print(".");delay(500);}
}void setup()
{Serial.begin(115200);initWifiSta(); //wifi初始化
}void loop()
{Serial.println(WiFi.localIP()); //通过串口打印wemos的IP地址delay(500);
}
修改代码,变为服务器
#include <ESP8266WiFi.h> //使用wifi的头文件char* ssid = "iPhone"; //“wifi热点名称”
char* passwd = "1234569870-1"; //”wifi热点密码”int port = 8888; //端口号
WiFiServer server(port); // 设置服务器端口号void initWifiSta()
{WiFi.mode(WIFI_STA); // 设置STA模式WiFi.begin(ssid, passwd); //连接网络while (WiFi.status() != WL_CONNECTED) {Serial.print(".");delay(500);} Serial.println(WiFi.localIP()); //通过串口打印wemos的IP地址
}void setup()
{Serial.begin(115200);initWifiSta();server.begin(); //启动服务器
}void loop()
{//Serial.println(WiFi.localIP()); //通过串口打印wemos的IP地址// delay(500);char cmd;WiFiClient client = server.available(); //服务初始化出一个客户端while (client.connected()) { //等待客户端连接while (client.available() > 0) { //有数据到来,类似串口的那个函数cmd = client.read();//读取数据if( cmd == '1'){ //asiii码的字符1 和数字1是不一样的Serial.println("just do it");}else{Serial.println("nothing"); }}
}}