Arduino用esp8266WiFi模块连接到服务器

昨天用串口工具测试了一波esp8266WiFi模块连接云服务。没有问题

今天我决定用芯片来控制它,本来想用51,后面感觉太lou,又决定要stm32,

这个感觉不错,但是32芯片查资料确实麻烦,后面我翻了一下我的芯片盒。

发现2枚arduino pro mini ,很nice,就用这个吧。


其实我并不会用这个芯片,然后我就去买了一本arduino的书,结果几个小时就学会了,很无奈。


上传一个芯片和WiFi模块的实物图


按一下复位键,就会连接到云服务器,发送数据,关闭,3个操作


最后上传一波arduino的代码

String CWJAP="AT+\"hes\",\"hes123654\"\r\n";
String CIPSTART="AT+CIPSTART=\"TCP\",\"47.93.186.135\",端口\r\n";//这个端口就不能给你们看了
String CIPMODE="AT+CIPMODE=1\r\n";
String CIPSEND="AT+CIPSEND\r\n";
String CIPCLOSE="AT+CIPCLOSE\r\n";
String CLOSE="+++";
String RN="\r\n";
String BUFF="hello\r\n";
int dela=100;


void setup() {
  // put your setup code here, to run once:
    Serial.begin(115200);
  
   // Serial.print(CWJAP);//连接wifi,我已经连接了就没有用了

    delay(3000);
    Serial.print(CIPSTART);//连接服务器
    delay(dela);
    Serial.print(CIPMODE);//设置为透传
    delay(dela);
    Serial.print(CIPSEND);//开始透传
    delay(dela);
    Serial.print(BUFF);//发送数据
    delay(dela);
    Serial.print(BUFF);//发送数据
    delay(dela);
    Serial.print(CLOSE);//关闭透传
    delay(dela);
      Serial.print(RN);//关闭透传
    delay(dela);
      Serial.print(CIPCLOSE);//关闭服务器连接
    delay(200);
  
     //Serial.println("ok");
}

void loop() {
  // put your main code here, to run repeatedly:
    
}


  • 5
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
下面是一个简单的示例代码,演示如何在两个ESP8266 wifi模块之间通过TCP连接进行通信。其中一个ESP8266 wifi模块作为TCP服务器,另一个ESP8266 wifi模块作为TCP客户端。 TCP服务器端代码: ``` #include <ESP8266WiFi.h> const char* ssid = "YourWiFiSSID"; const char* password = "YourWiFiPassword"; WiFiServer server(80); void setup() { Serial.begin(9600); delay(10); // 连接无线网络 Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); // 启动TCP服务器 server.begin(); Serial.println("Server started"); } void loop() { // 等待客户端连接 WiFiClient client = server.available(); if (!client) { return; } // 读取客户端发送的数据 Serial.println("New client"); while (client.connected()) { if (client.available()) { String request = client.readStringUntil('\r'); Serial.println(request); // 发送响应数据 client.println("Hello from server"); break; } } // 关闭连接 client.stop(); Serial.println("Client disconnected"); } ``` TCP客户端端代码: ``` #include <ESP8266WiFi.h> const char* ssid = "YourWiFiSSID"; const char* password = "YourWiFiPassword"; const char* serverIp = "192.168.1.100"; // TCP服务器的IP地址 int serverPort = 80; // TCP服务器的端口号 void setup() { Serial.begin(9600); delay(10); // 连接无线网络 Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); } void loop() { // 连接TCP服务器 WiFiClient client; if (!client.connect(serverIp, serverPort)) { Serial.println("Connection failed"); return; } // 发送数据到TCP服务器 client.println("Hello from client"); // 读取TCP服务器响应的数据 while (client.connected()) { if (client.available()) { String response = client.readStringUntil('\r'); Serial.println(response); break; } } // 关闭连接 client.stop(); Serial.println("Disconnected"); // 等待一段时间后再次连接 delay(5000); } ``` 在实际使用中,需要根据实际需求进行修改和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值