Hirdetés
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- SSD kibeszélő
- Milyen CPU léghűtést vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- TCL LCD és LED TV-k
- SONY LCD és LED TV-k
- Milyen videókártyát?
- A Cherry többé nem gyárt kapcsolókat
-
PROHARDVER!
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.
Új hozzászólás Aktív témák
-
Janos250
őstag
Ígértem leegyszerűsített ESP32 WEB szerver mintát.
Nem tudom aktuális-e még, itt van egy végletekig leegyszerűsített változat:// felhasznalva:
// https://lastminuteengineers.com/creating-esp32-web-server-arduino-ide/
// reszletesebben lsd ott
#include <WiFi.h>
#include <WebServer.h>
using namespace std;
const char* ssid = "********";
const char* password = "********";
IPAddress ip(192, 168, 0, 30); // ez lesz az ESP32 IP cime
IPAddress dns(192, 168, 0, 1); // ehhez az IP-ju WiFi routerhez fog kapcsolodni
IPAddress gateway(192, 168, 0, 1); // a router a gateway is
IPAddress subnet(255, 255, 0, 0); // a Wifi router maskja. ha nem tudod, akkor ez tobbnyire jo
IPAddress primaryDNS(8, 8, 8, 8); //optional lehet a router is
IPAddress secondaryDNS(8, 8, 4, 4); //optional
WebServer server(80);
const char htmlHeader[] = R"=====(
<!DOCTYPE html>
<html lang = hu >
<head>
<meta charset="UTF-8">
<title>minta WEB szerver</title>
</head>
)=====";
void serverValaszolHTMLtexttel() {
String htmlstring = htmlHeader ; // csak Arduino String (nagybetus) jo, string (C++ kisbetus string) nem!
htmlstring += "<body>" ;
htmlstring += "\n Hello, World!\n <br>\n" ;
htmlstring += " ide jonnek a feldat szerinti dolgok\n <br>\n" ;
//egy minta: https://lastminuteengineers.com/creating-esp32-web-server-arduino-ide/
htmlstring += "</body>\n</html>" ;
server.send(200, "text/html", htmlstring);
} ;
void handle_NotFound(){
server.send(404, "text/plain", "Not found");
} ;
void setup(void) {
//************************************
// Ez a szokasos
Serial.begin(115200);
delay(2000);
WiFi.begin(ssid, password);
if(!WiFi.config(ip, gateway, subnet, dns, secondaryDNS)) {
Serial.println("STA Failed to configure");
}
Serial.print("Connecting to ");
Serial.println(ssid);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
// Print local IP address and start web server
Serial.println("");
Serial.println("WiFi connected.");
Serial.println("IP address(ESP32): ");
Serial.println(WiFi.localIP());// this will display the Ip address of the Pi which should be entered into your browser
//*************************************************
// mit kuldjon, ha egy client bejelentkezik
server.on("/", serverValaszolHTMLtexttel);
// mit kuldjon, ha hibas az URL
server.onNotFound(handle_NotFound);
server.begin();
Serial.println("HTTP server started");
Serial.print ("ezt ird be a bongeszo cimsoraba:http://");
Serial.println(WiFi.localIP()) ;
} ; // end setup
void loop(void) {
server.handleClient();
delay(50);
} ; // end loop -
Janos250
őstag
A freeRTOS mindenképpen fut, és nem is kell róla tudomást venni, ha nem akarod, pont ugyanúgy használhatod, mint ha mondjuk UNO lenne.
Ugyanúgy van a main.cpp lényege (kikeresheted):setup();
for(;;) {
A mindenféléket beállítja neked, nem kell vele bogarászni, el is felejtheted, hogy freeRTOS alatt fut, ha nem akarod a két magot kihasználni.Nem nagyon van a freeRTOS-hoz használati utasítás a espressifen kívül
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/freertos.html
de nem is igen kell .
Igazából az ember a xTaskCreatePinnedToCore API-t használja, ha meg akarja adni, hogy melyik magon fusson, vagy ha ráhagyod az oprendszerre, akkor meg az xTaskCreate.
Ha nem akarod, nem is látod ezeket a függvényeket, ő automatikusan az 1-es magon futtatja, ha nem beszélsz bele, hanem mondjuk egy UNO programot futtatsz.
Esetleg a vTaskDelete, vTaskDelay ( de a delay is erre fordítódik) , az xTaskDelayUntil, uxTaskPriorityGet, eTaskGetState, vTaskGetInfo, vTaskPrioritySet. Ezek nevei magukért beszélnek, a leírásuk , és a paramétereik a linken ott vannak.
Én akartam még használni a vTaskList-et, de az meg az Arduinora fordított verzióban nem működik, mert az meg csak akkor működik, ha valami debug módot is beállítottak volna, azt meg utólag - állítólag - nem lehet.
A WiFi-re majd írok konkrét példákat, és felteszem valahova.
Többféle módon használhatod.
Új hozzászólás Aktív témák
- ARCTIC Liquid Freezer III 360 A-RGB Processzor vízhűtő
- Phanteks Eclipse P600S Black Számítógép ház
- Corsair 32GB KIT DDR5 6000MHz CL30 Vengeance RGB Grey AMD EXPO / XMP
- Iphone 16 PRO 256GB Titanium BLACK - Garanciás - Akku: 94%
- Esport Gaming PC (Intel i5-9400F, 32GB RAM, RTX 2060, 500GB SSD) Eredeti Windows11 Pro
- Creative Sound BlasterX G6 7.1 USB külső hangkártya
- Samsung Galaxy Z Fold4 Graygreen Duplakijelzős produktivitás, 120 Hz, Garancia 2026. 03. 22-ig
- Apple iPhone Air Space Black 256 GB Használt, újszerű 100% akku / 7 ciklus Garancia 2026.
- Xbox Series X /// 2 TB Model! // Számla + 1 év garancia
- HIBÁTLAN iPhone 13 mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4078, 100% Akkumulátor
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

