-
Fototrend
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
- RTX 4070 ti I Ryzen 5 7600X I 2x16gb ddr5 6000mHz
- LAST MINUTE KARÁCSONY! 2 egyforma i7 GAMER GÉP! Ingyenes SOS kiszállítás (Bp.) !!!
- Asus ROG Zephyrus G16 Intel Core Ultra 9 185H/RTX 4060/16GB DDR5/1TB SSD eladó NÁLAM A LEGOLCSÓBBAN!
- MacBook Pro M1 13 inch 8/512GB magyar bill nálam a legolcsóbban
- Fujitsu 27" B27-8 TE Full HD 1920x1080 hófehér monitor állítható magasság, PIVOT, HDMI számla + gar
- 13-14" Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
- VeryBig! Akciós! Dell Precision 7760 i7-11850H 32GB 512GB SSD RTX A5000 16GB 17" FHD 1 év garancia
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RTX 5060Ti 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Honor Magic6 Lite, Honor Magic6 Pro, Honor Magic7 Lite, Honor Magic7 Pro
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


ekkold
