Arduino Uno Wifi库不工作

Arduino Uno Wifi library not working

本文关键字:工作 Wifi Uno Arduino      更新时间:2023-10-16

我最近购买了Arduino Uno WIFI。它表示,它已经集成了ESP8266 wifi模块,使其具备wifi功能。我已经成功连接wifi和wifi控制台。我还使用测试WebServer Blink测试来玩pin 13 rest api命令。我遇到的问题超出了这个例子。我搜索了WIFI文档,但只能找到这个文档的WIFI屏蔽是不适合我的arduino。

我在例子中看到他们导入了#include <ArduinoWiFi.h>,但是我找不到这个库的文档。有没有其他的库我可以使用这个新的arduino wifi?有人有这方面的经验吗?我已经尝试使用#include <WIFI.h>,但它说我没有wifi屏蔽。

错误:

WebServerBlink.ino:14:23: error: 'class ArduinoWifiClass' has no member named 'status'

代码:

#include <Wire.h>
#include <ArduinoWiFi.h>
/*
on your borwser, you type http://<IP>/arduino/webserver/ or http://<hostname>.local/arduino/webserver/
http://labs.arduino.org/WebServerBlink
*/
void setup() {
    pinMode(13,OUTPUT);
    Wifi.begin();
    Wifi.println("WebServer Server is up");
    Wifi.println(Wifi.status()); //Line 14:23:: This will not work
}
void loop() {
    while(Wifi.available()){
      process(Wifi);
    }
  delay(50);
}
void process(WifiData client) {
  // read the command
  String command = client.readStringUntil('/');
  // is "digital" command?
  if (command == "webserver") {
    WebServer(client);
  }
  if (command == "digital") {
    digitalCommand(client);
  }
}
void WebServer(WifiData client) {
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println();
          client.println("<html>");
          client.println("<head> </head>");
          client.print("<body>");
          client.print("Click<input type=button onClick="var w=window.open('/arduino/digital/13/1','_parent');w.close();"value='ON'>pin13 ON<br>");
          client.print("Click<input type=button onClick="var w=window.open('/arduino/digital/13/0','_parent');w.close();"value='OFF'>pin13 OFF<br>");
          client.print("</body>");
          client.println("</html>");
          client.print(DELIMITER); // very important to end the communication !!! 
}
void digitalCommand(WifiData client) {
  int pin, value;
  // Read pin number
  pin = client.parseInt();
  // If the next character is a '/' it means we have an URL
  // with a value like: "/digital/13/1"
  if (client.read() == '/') {
    value = client.parseInt();
    digitalWrite(pin, value);
  }
  // Send feedback to client
  client.print(F("Pin D"));
  client.print(pin);
  client.print(F(" set to "));
  client.print(value);
  client.print(EOL);
}

Arduino Uno WIFI (http://www.arduino.org/products/boards/arduino-uno-wifi)与Arduino有很大的区别。org和ArduinoWiFiShield (www.arduino.cc/en/Main/ArduinoWiFiShield) from Arduino .cc.

这是Arduino Uno WIFI的一个很好的起点:http://www.arduino.org/learning/getting-started/getting-started-with-arduino-uno-wifi

下一个重点是,您需要使用Arduino 1.7(来自arduino.org),特别是用于OTA编程。Arduino 1.6。X从arduino。

不幸的是,他们并没有很好地开发他们的arduinowifi库。

我在Linux IDE 1.8.1上有同样的问题,我这样解决它:

https://github.com/arduino-org/Arduino/tree/master/libraries/ArduinoWiFi添加到.....arduino-1.8.1/libraries/ArduinoWiFi/中重新启动IDE。你应该能够在File->Examples->ArduinoWiFi下打开并运行示例草图。

我想它可以在任何平台上的任何IDE上工作。