我有一个 ESP8266,它可以很好地连接到 wifi(可以在移动热点上看到它),但它本身并没有注册它(因为它不会继续代码)
有时它可以注册它,有时它不会。
我找不到任何解决方案。
一些代码是丹麦语(主要是注释)
#include "ThingSpeak.h"
#include "navnkode.h"
#include <ESP8266WiFi.h>
//inkluderet biblioteker og ekstra filer for at få koden til at virke efter ønske
char ssid[] = SECRET_SSID;
char pass[] = SECRET_PASS;
WiFiClient client;
unsigned long kodekanal = SECRET_CODECHANNEL;
unsigned long myChannelNumber = SECRET_CH_ID;
const char * myWriteAPIKey = SECRET_WRITE_APIKEY;
const char * myReadAPIKey = SECRET_READ_APIKEY;
int kanal = 1; //her vælges den kanal inde på thingspeak som skal modtage data
int TO_SLAVE = 15;
int FROM_SLAVE = 13;
void setup() {
Serial.begin(115200); // Initialize serial
pinMode(TO_SLAVE,OUTPUT);
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client); // Initialize ThingSpeak
}
void loop() {
// Connect or reconnect to WiFi
if (WiFi.status() != WL_CONNECTED) {
digitalWrite(TO_SLAVE,LOW);
Serial.print("Attempting to connect to SSID: ");
Serial.println(SECRET_SSID);
while (WiFi.status() != WL_CONNECTED) {
WiFi.begin(ssid, pass);
Serial.print(".");
delay(5000);
digitalWrite(TO_SLAVE,LOW);
}
digitalWrite(TO_SLAVE,HIGH);
Serial.println("\nConnected.");
}
int x = ThingSpeak.writeField(myChannelNumber, kanal, 23, myWriteAPIKey);
if (x == 200) {
Serial.println("kanal 1 blev opdateret uden problemer.");
} else {
Serial.println("Problem med at opdatere. HTTP fejl kode " + String(x));
}
delay(5000); // Venter 20 sekunder før den opdatere kanalen (SKAL FJERNES!)
}
void hotspot() {
if (ThingSpeak.readIntField(myChannelNumber, kanal, myReadAPIKey) >= 1) {
digitalWrite(TO_SLAVE,HIGH);
} else {
digitalWrite(TO_SLAVE,LOW);
}
}