- Samsung Galaxy Watch7 - kötelező kör
- Samsung Galaxy S25 - végre van kicsi!
- Xiaomi 14 - párátlanul jó lehetne
- Telekom mobilszolgáltatások
- Három új órát hozott a Samsung, a csúcson az Ultra
- Kikristályosodik a Razr 60
- One mobilszolgáltatások
- Huawei Watch GT 5 Pro - egészség + stílus
- Google Pixel topik
- Yettel topik
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
Mobilarena
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
válasz
polgcsabi #17563 üzenetére
PL. a "digitalWrite(ledPin10, HIGH);" után írasd ki a buffer első mondjuk 50, vagy valahány tagját, és egyből látod, hol kezdődik benne az, ami neked kell.
Utána már ezeket fel tudod dolgozni. Pl. Aryes által javasolttal (amire azt mondtam, jéééé mindig tanul az ember), vagy bármi más módon. -
Janos250
őstag
válasz
polgcsabi #17551 üzenetére
Ezt az ethernet csatit nem ismerem, nem is tudom kipróbálni, nem akarok hülyeséget írni.
Ha esetleg ESP32-n tennéd, akkor pontos választ tudnék adni.
A megoldás lényege:
A WEB szerverek - már amit én ismerek - megadják neked egy karakter tömbben, amit a 192.168.1.139/ után írtál, és úgy kezeled, ahogy akarod, ez már csak kézügyesség kérdése. De csinálhatsz űrlapot, vagy valami hasonló bevitelt is. -
Janos250
őstag
válasz
polgcsabi #17540 üzenetére
De ahogy elnézem, ezt is hasonlóan lehet írni, olvasni:
https://how2electronics.com/interface-enc28j60-ethernet-module-with-arduino/
-
Janos250
őstag
válasz
polgcsabi #17540 üzenetére
Ez meg egy minta WEB szerverre, eggyel magasabb szinten:
#include <iostream>
#include <string>
#include <WiFi.h>
#include <SPI.h>
using namespace std;
const char* ssid = "*********";
const char* password = "*********";
IPAddress ip(192, 168, 0, 30);
IPAddress dns(192, 168, 0, 1);
IPAddress gateway(192, 168, 0, 1);
IPAddress subnet(255, 255, 0, 0);
IPAddress primaryDNS(8, 8, 8, 8); //optional
IPAddress secondaryDNS(8, 8, 4, 4); //optional
WiFiServer myServer(80);
const char httpHeader[] PROGMEM = R"=====(
HTTP/1.1 200 OK
Content-type:text/html
Connection: close
)=====";
char htmlHeader[] PROGMEM = R"=====(
<!DOCTYPE html>
<html lang = hu >
<head>
<meta charset="UTF-8">
<title>minta WEB szerver</title>
</head>
)=====";
char body[] PROGMEM = R"=====(
<body>
Ez a kiirando
</body></html>
)=====";
void setup(void) {
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: ");
Serial.println(WiFi.localIP());// this will display the Ip address of the Pi which should be entered into your browser
myServer.begin();
Serial.println("setup lefutott");
} ; // end setup
void loop(void) {
string header = "";
uint16_t karakterszam = 0 ;
unsigned long previousTime = 0;
const long timeoutTime = 1000; //in milliseconds (example: 2000ms = 2s)
IPAddress tavoliIP ; // = uint8_t tavoliIP[4]
//https://randomnerdtutorials.com/esp32-web-server-arduino-ide/
WiFiClient client = myServer.available(); // Listen for incoming clients
if (client) {
tavoliIP = client.remoteIP() ;
printf("tavoli IP: %3d.%3d.%3d.%3d\n",tavoliIP[0],
tavoliIP[1],tavoliIP[2],tavoliIP[3]);
previousTime = millis();
// Serial.println();
// printf("\nNew Client\n");
String currentLine = "";
while (!client.available()){
if ( (millis()- previousTime) > 100 ) {
tavoliIP = client.remoteIP() ;
Serial.println(tavoliIP) ;
client.flush() ;
client.stop() ;
printf ("megszakitva\n");
return;
} ; // if ( (millis()- previousTime) > 100 )
} ; // while (!client.available())
while (client.connected() &&
( (millis() - previousTime) <= timeoutTime) ) {
if (client.available()) {
karakterszam++ ;
char c = client.read();
Serial.write(c);
header += c;
if (c == '\n') {
if (currentLine.length() == 0) {
break;
// printf ("ures sor\n");
}
else {
currentLine = "";
// printf ("uj sor\n");
}
} else
if (c != '\r') {
currentLine += c;
} ; // if (c != '\r')
} ; // if (client.available())
} ; // while (client.connected()
if (karakterszam == 0){
client.flush() ;
client.stop() ;
return;
} ; // if (karakterszam == 0)
// Serial.println(header.c_str());
client.println(httpHeader);
client.println(htmlHeader);
client.println(body);
client.flush();
client.stop(); // Close the connection
while (client.available()){
delay(1) ;
}; // while (client.connected())
} ; // if (client)
delay(50);
} ; // end loopAzért WEB, mert figyeli, hogy mikor jön közvetlenül egymás után két sorváltás, mert a http szerint az jelzi az üzenet végét.
Természetesen bármilyen beérkező szöveget figyelhetsz, és bármit válaszolhatsz rá, nem kell a headereket küldeni, ha nem WEB lap, amit elküldesz.Ezt használtam fel:
https://randomnerdtutorials.com/esp32-web-server-arduino-ide/ -
Janos250
őstag
válasz
polgcsabi #17540 üzenetére
Például:
https://prohardver.hu/tema/arduino/hsz_16434-16434.htmlAz int socket_descriptor-tól a FILE* -ig változatlanul beírhatod, persze a 216.58.208.110 helyett a saját szerver címét. De még vannak más lehetőségek is.
-
Janos250
őstag
válasz
polgcsabi #17534 üzenetére
Nem biztos, hogy jól értem a kérdést.
Ha jól értem, akkor a válasz:
Az internetet soros vonalként működik. Az egyik oldalon soros vonalként írunk rá, a másik oldalon meg soros vonalként fogadjuk.
Az, hogy milyen protokoll szerint, azt az üzenet első sora szabja meg.
Ha csak simán soros vonalként akarod használni, akkor ne foglalkozz protokollal, hanem használd soros vonalként.
Új hozzászólás Aktív témák
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- Samsung Galaxy Watch7 - kötelező kör
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
- Cyberpunk 2077
- Bluetooth hangszórók
- Samsung Galaxy S25 - végre van kicsi!
- Milyen légkondit a lakásba?
- Xiaomi 14 - párátlanul jó lehetne
- Filmvilág
- További aktív témák...
- Azonnali készpénzes AMD Ryzen 1xxx 2xxx 3xxx 5xxx processzor felvásárlás személyesen / csomagküldés
- Lenovo ThinkPad 40AF docking station (DisplayLink)
- Realme 7i 64GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3038, 94% Akkumulátor
- Telefon felváráslás!! Samsung Galaxy S22/Samsung Galaxy S22+/Samsung Galaxy S22 Ultra
Állásajánlatok
Cég: FOTC
Város: Budapest