Specifikationer af ESP32-C3 WT32-ETH01 PoE WiFi Bluetooth Udviklingsboard
ESP32-C3 WT32-ETH01 PoE Udviklingsboard er en tre-i-en 10T kommunikationsgateway baseret på ESP32-C3 chip, som understøtter WIFI, Bluetooth-kompatibilitet og Ethernet. Den understøtter en komplet TCP/IP-protokolstak og AT- kommandoer, hvilket gør det nemt for brugerne at gennemføre netværksfunktionen af indlejrede enheder og i høj grad reducerer udviklingstiden og omkostningerne. ESP32-C3 WT32-ETH01 PoE Udviklingsboard er kompatibelt med designet af semi-pad og connector gennemgående hul. Det kan enten loddes direkte på printkortet eller anvendes på et breadboard, og der er reserveret en POE-position for at støtte forskellige scenarier.
Tekniske detaljer for ESP32-C3 WT32-ETH01 PoE Udviklingsboard
- SoC: ESP32-C3 module
- CPU: RISC-V 32-bit single core processor
- Connectivity: 2.4 GHz WiFi (802.11 b/g/n) and Bluetooth® 5 (LE) module
- Network port: RJ45 10/100Mbit network port with POE input
- Serial Port Baud Rate: 80~5000000
- On board FLASH: 2Mbit
- Working voltage: 5V or 3.3V power supply (optional)
- Working current: Average: 80mA
- Temperature range: -40°C~+85°C
- Power supply current: Minimum: 500 mA
- Package: Half Shroud/Connector Through-hole Connection (Optional)
- WI-FI mode: Station/softAP/SoftAP+station/P2P
- WIFI security: WPA/WPA2/WPA2-Enterprise/WPS
- Encryption Type: AES/RSA/ECC/SHA
- UPGRADE: Remote OTA upgrade through network
- Network protocol: IPv4、TCP/UDP
- IP acquisition method: Static IP, DHCP (default)
- User profile: AT+instruction set
Installere Arduino, og ESP package
– Installere Arduino IDE Software
Før du kan starte din programmering skal Arduino’s IDE software hentes. Dette program bruges til at programmere din arduino.
Download fra dette link: Download
– Installere ESP package (Arduino IDE)
Åben Arduino IDE (Download her)
Klik “Fil/Egenskaber”
Indtast dette link i feltet “Additionel Board Manager URL’s”
Link “https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json“
Klik OK
Åben “Værktøj/Board/Boards manager” (Lad programmet opdatere)
Find “ESP32” og installere
Klik derefter “Værktøj/Board” og find (ESP32C3 Dev Module)
Du er nu klar til at sende en kode
Installere Arduino Library
– Installere NTPClient
- Download library (Download)
- Åben Arduino IDE software og klik på “Sketch/Include library”
- Klik nu på “Add Zip. library” og find Zip filen du lige har downloaded.
- Luk, og åben Arduino IDE programmet. (Genstart programmet)
- Nu er library installeret.
- Library kan også downloades direkte i Arduino IDE find den her: “Sketch/Include library/Manage library/NTPClient – by Fabrice Weinberg”
Eksempel
Her vises et hurtigt eksempel på, hvordan man kan oprette et system til at tænde og slukke lys baseret på en tidsplan. Dette gøres ved hjælp af en webserver, hvor du kan styre, hvornår lyset skal tændes og slukkes ved at indstille specifikke tidspunkter.
Programmering:
PL2303HX USB To TTL Converter Serial bruges til at programmere.
Forbindelser for Kodning:
Forbind I009 til GND på ETH01-EVO.
Tilslut 5V til ETH01-EVO.
Klargøring til Kodning:
Når forbindelserne er etableret, skal du fjerne forbindelsen mellem I009 og GND.
Nu er ETH01-EVO klar til at blive kodet.
Du skal bruge:
– PL2303HX USB To TTL Converter Serial
– Dupont Kabel
– LED
Forbind det sådan:
5V (PL2303HX) – 5V (ETH01-Evo)
GND (PL2303HX) – GND (ETH01-Evo)
TX (PL2303HX) – RX (ETH01-Evo)
RX (PL2303HX) – TX (ETH01-Evo)
+ (LED) – 1005/RXD (ETH01-Evo)
– (LED) – GND (ETH01-Evo)
Kode: (Programmering)
#include <WiFi.h> #include <WebServer.h> #include <NTPClient.h> #include <WiFiUdp.h> // Wi-Fi credentials const char* ssid = "your_SSID"; const char* password = "your_PASSWORD"; // Time settings const long utcOffsetInSeconds = 7200; // Adjust for your timezone (e.g., 3600 for UTC+1) // LED pin const int ledPin = 5; // Variables to store the desired time int turnOnHour = 18; int turnOnMinute = 30; int turnOnSecond = 0; int turnOffHour = 19; int turnOffMinute = 0; int turnOffSecond = 0; // Web server WebServer server(80); // NTP Client setup WiFiUDP ntpUDP; NTPClient timeClient(ntpUDP, "pool.ntp.org", utcOffsetInSeconds); void setup() { // Initialize Serial Monitor Serial.begin(9600); // Set LED pin as output pinMode(ledPin, OUTPUT); // Connect to Wi-Fi Serial.println("Connecting to Wi-Fi..."); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting..."); } Serial.println("Connected to Wi-Fi"); // Initialize NTP Client to get time timeClient.begin(); // Configure web server routes server.on("/", handleRoot); server.on("/setTime", handleSetTime); server.begin(); Serial.println("HTTP server started"); } void loop() { // Handle client requests server.handleClient(); // Update the NTPClient timeClient.update(); // Get the current time int currentHour = timeClient.getHours(); int currentMinute = timeClient.getMinutes(); int currentSecond = timeClient.getSeconds(); // Check if it is time to turn on or off the LED if (currentHour == turnOnHour && currentMinute == turnOnMinute && currentSecond == turnOnSecond) { digitalWrite(ledPin, HIGH); // Turn on the LED Serial.println("LED turned ON"); } else if (currentHour == turnOffHour && currentMinute == turnOffMinute && currentSecond == turnOffSecond) { digitalWrite(ledPin, LOW); // Turn off the LED Serial.println("LED turned OFF"); } // Wait for 1 second before checking the time again delay(1000); } void handleRoot() { // Get the current time timeClient.update(); String currentTime = timeClient.getFormattedTime(); // HTML response String html = "<html><body>"; html += "<h1>Set LED Time</h1>"; html += "<p>Current time: " + currentTime + "</p>"; html += "<form action=\"/setTime\" method=\"get\">"; html += "<h2>Turn On Time</h2>"; html += "Hour: <input type=\"number\" name=\"onHour\" min=\"0\" max=\"23\" value=\"" + String(turnOnHour) + "\"><br>"; html += "Minute: <input type=\"number\" name=\"onMinute\" min=\"0\" max=\"59\" value=\"" + String(turnOnMinute) + "\"><br>"; html += "Second: <input type=\"number\" name=\"onSecond\" min=\"0\" max=\"59\" value=\"" + String(turnOnSecond) + "\"><br>"; html += "<h2>Turn Off Time</h2>"; html += "Hour: <input type=\"number\" name=\"offHour\" min=\"0\" max=\"23\" value=\"" + String(turnOffHour) + "\"><br>"; html += "Minute: <input type=\"number\" name=\"offMinute\" min=\"0\" max=\"59\" value=\"" + String(turnOffMinute) + "\"><br>"; html += "Second: <input type=\"number\" name=\"offSecond\" min=\"0\" max=\"59\" value=\"" + String(turnOffSecond) + "\"><br>"; html += "<input type=\"submit\" value=\"Set Time\">"; html += "</form>"; html += "</body></html>"; server.send(200, "text/html", html); } void handleSetTime() { if (server.hasArg("onHour")) { turnOnHour = server.arg("onHour").toInt(); } if (server.hasArg("onMinute")) { turnOnMinute = server.arg("onMinute").toInt(); } if (server.hasArg("onSecond")) { turnOnSecond = server.arg("onSecond").toInt(); } if (server.hasArg("offHour")) { turnOffHour = server.arg("offHour").toInt(); } if (server.hasArg("offMinute")) { turnOffMinute = server.arg("offMinute").toInt(); } if (server.hasArg("offSecond")) { turnOffSecond = server.arg("offSecond").toInt(); } String message = "Time set to Turn On: " + String(turnOnHour) + ":" + String(turnOnMinute) + ":" + String(turnOnSecond) + "<br>"; message += "Time set to Turn Off: " + String(turnOffHour) + ":" + String(turnOffMinute) + ":" + String(turnOffSecond); server.send(200, "text/html", "<html><body><h1>" + message + "</h1><a href=\"/\">Back</a></body></html>"); }
Kontakt os
Du er altid velkommen til at kontakte os på info@ardustore.dk, eller vores kontaktformular HER.
Anmeldelser
Der er endnu ikke nogle anmeldelser.