Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Gyorskeresés
Legfrissebb anyagok
- Retro Retro Kocka Kuckó 2024
- Bemutató Spyra: nagynyomású, akkus, automata vízipuska
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
Általános témák
LOGOUT.hu témák
- [Re:] [sziku69:] Fűzzük össze a szavakat :)
- [Re:] [bb0t:] Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- [Re:] [patomi:] Alufelni felujítás amatőr módon.
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [attilasd:] A laposföld elmebaj: Vissza a jövőbe!
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] [Parci:] Milyen mosógépet vegyek?
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [sziku69:] Szólánc.
- [Re:] eBay-es kütyük kis pénzért
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
Útvonal
Fórumok » Egyéb hardverek » Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)Téma összefoglaló
Hozzászólások
vargalex
félisten
A két kérésed is GET kérés. Ezért értetlenkedem. Attól, hogy GET-nek hívják, az még adatküldésre alkalmas query string-el.
Az eredeti példánál maradva az egyszerűsített verzió:
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#define DEFAULT_STATE LOW
// Replace with your network credentials
const char* ssid = "Your_SSID";
const char* password = "your_password";
// GPIO for controlling the relay
uint8_t relay_pin = 12;
ESP8266WebServer server(80);
void setup(void){
//Set default state
digitalWrite(relay_pin, DEFAULT_STATE);
//Turn on serial output
delay(1000);
Serial.begin(115200);
WiFi.begin(ssid, password);
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// logging to serial output
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
// web server setup
server.on("/on", []() {
digitalWrite(relay_pin, HIGH);
Serial.println("Relay turned on");
server.send(200, "text/plain", "Relay turned on");
});
server.on("/off", []() {
digitalWrite(relay_pin, LOW);
Serial.println("Relay turned off");
server.send(200, "text/plain", "Relay turned off");
});
server.on("/state", []() {
String relay_state = (digitalRead(relay_pin)) ? "true" : "false";
server.send(200, "text/plain", relay_state);
});
server.begin();
Serial.println("HTTP server started");
}
void loop(void){
server.handleClient();
}
Ha jól láttam, a sonoff-on a 12-es GPIO-ra van kötve a relé. A relé kapcsolgatása mellett a led-et is kapcsolhatod a 13-as GPIO-n. A fenti példa a kapcsoláskor is ad vissza választ, mert szerintem egy web szervernek illik (legalább a HTTP 200-at visszaadni).
[ Szerkesztve ]
Alex