我有一个NodeMcu的Lua ESP8266 ESP-12E,我想用来控制通过WiFi网络继电器。无线网络与ESP8266-的Arduino
的第一步是写一个Arduino草图,其扫描的网络和连接到网络。但是,即使是示例菜单中的标准示例也无效(c.f.,https://github.com/esp8266/Arduino/blob/master/libraries/ESP8266WiFi/examples/WiFiScan/WiFiScan.ino)。
#include "ESP8266WiFi.h"
void setup() {
Serial.begin(115200);
// Set WiFi to station mode and disconnect from an AP if it was previously connected
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
Serial.println("Setup done");
}
void loop() {
Serial.println("scan start");
// WiFi.scanNetworks will return the number of networks found
int n = WiFi.scanNetworks();
Serial.println("scan done");
if (n == 0)
Serial.println("no networks found");
else
{
Serial.print(n);
Serial.println(" networks found");
for (int i = 0; i < n; ++i)
{
Serial.print(WiFi.SSID(i));
delay(10);
}
}
Serial.println("");
// Wait a bit before scanning again
delay(5000);
}
为了排除硬件问题我尝试了从列表API文档(见下文),工作的LUA版本。
-- print ap list
function listap(t)
for k,v in pairs(t) do
print(k.." : "..v)
end
end
wifi.sta.getap(listap)
使用从http://nodemcu.com/index_en.html工作的固件版本。
后来,我给了INO版本再试一次,它似乎正常工作。然而,事实证明,它只有在先前的固件已经从http://nodemcu.com/index_en.html
要我需要包括图书馆什么的正确初始化无线固件的作品? 由于提前,
'没有工作'意味着什么?固件没有启动?没有找到WiFi网络?您是否使用Arduino IDE编译和上传代码?唯一能够解释为什么它在以前刷新NodeMCU固件时起作用的原因是,固件会将一些数据存入闪存(初始化数据,rf校准,..),Arduino IDE未将其放入固件/闪存中。 –
它没有找到任何无线网络。是的,我正在使用arduino ide。我同意你的看法,nodemcu固件似乎初始化了某事。问题是如何实现与arduino ide相同 – CAFEBABE
@MaximilianGerhardt你几乎是正确的。见下文 – CAFEBABE