ESP8266连接wifi,但没有注册
ESP8266 connects to wifi, but doesnt registrer it
我有一个 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);
}
}
最可能的解决方法是将热点从我的 phone 更改为电脑。
我的 phone 很可能没有给它一个 IP 地址...
我有一个 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);
}
}
最可能的解决方法是将热点从我的 phone 更改为电脑。
我的 phone 很可能没有给它一个 IP 地址...