ESP8266 NodeMcu V3

Raspberry, Arduino, Mini-PC a další

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
Le_Ze
Příspěvky: 631
Registrován: 24 črc 2014, 02:00
Bydliště: Ano, mam

ESP8266 NodeMcu V3

#1 Příspěvek od Le_Ze »

Zdravím.

Mam vytvořený web server a když zadám do prohlížeče IP, vypíše se mi náhodně vygenerované číslo.
Jak na to, aby se čislo třeba co vteřinu přepisovalo?
Nebo každým pruchodem loop.
Děkují.

Kód: Vybrat vše

WiFiClient client = server.available();
 if (!client) {
 return;
 }
 client.println(random(100) ); 
}

Uživatelský avatar
mikollar
Příspěvky: 1406
Registrován: 26 pro 2004, 01:00
Bydliště: Košice - okolie

#2 Příspěvek od mikollar »

refesh automaticky napr tak ze vratis html stranku a pouzijes meta tag
https://www.w3schools.com/tags/att_meta_http_equiv.asp

Ak pri kazdom prechode loop tak to uz musis riesit cez js a websockety a pod...

Uživatelský avatar
Le_Ze
Příspěvky: 631
Registrován: 24 črc 2014, 02:00
Bydliště: Ano, mam

#3 Příspěvek od Le_Ze »

Přes ten refresh, to bych musel vytvařet web stranku, ne?
Toto je zatím mimo me zkušenosti..
Ja potřbuj jen vypisovat data přes client.println.

O toto mi jde.
https://pastebin.com/X8FnMjAj?fbclid=Iw ... 38dCvLcRr0

Misto Serial.print použit client.println

Uživatelský avatar
mikollar
Příspěvky: 1406
Registrován: 26 pro 2004, 01:00
Bydliště: Košice - okolie

#4 Příspěvek od mikollar »

prehliadac nacitava data resp server poskytuje data len pri requeste. Najjednoduchsie to je spravit cez tu html

Ak to chces aby ti to vypisalo ako na seriovy port, tak to tak jednoducho nejde.

Spravil by som jednu premmennu kde by som si zbieral hodnoty ktore chces kao keby poslat. A pri dotaze vratil pospajane hodnoty na stranku z tej premennej a priadne ju vycistil.

Pre html staci ak z esp vratis toto

Kód: Vybrat vše

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="refresh" content="2">
</head>
<body>
 TU SI VLOZIS TVOJU HODNOTU
</body>
</html>

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#5 Příspěvek od pocitujlasku »

komplikovanejsia cesta je websocket - vtedy sa drzi spojenie a ked server odosle data, tak javascript na strane klienta ich spracuje a aktualizuje na stranke. Ale to uz chce trocha znalosti jquery.

Web funguje tak, ze pride poziadavka, on ju spracuje, posle odpoved a tym to prenho konci. uz neexistuje ziadne spojenie klient-server.
Preto pre dynamicku zmenu sa pouziva websocket, kedy klient moze len "visiet" a cakat na data od servera.
ja mam tak napr. urobene IoT zariadenia. Vytvori sa websocket a cez neho si vymienaju json s prikazmi/udajmi.
No vidis, a tak si sa bal

Uživatelský avatar
Le_Ze
Příspěvky: 631
Registrován: 24 črc 2014, 02:00
Bydliště: Ano, mam

#6 Příspěvek od Le_Ze »

Hm.
Půjde ale vyřešit to, co potřebují?
S web strakama nemam zkušenosti, ale neběží HTML na počitači klienta?

Je tam třeba.

Kód: Vybrat vše

pv=(node.getResponseBuffer(0x02) | node.getResponseBuffer(0x03) << 16)/ 100.0f;
Serial.print("Panely Výkon: ");
Serial.println(pv);
Takže něco takoveho asi šlapat nebude?

Kód: Vybrat vše

pv=(node.getResponseBuffer(0x02) | node.getResponseBuffer(0x03) << 16)/ 100.0f;
client.println.("Panely Výkon: ");
client.println.(pv);

Uživatelský avatar
mikollar
Příspěvky: 1406
Registrován: 26 pro 2004, 01:00
Bydliště: Košice - okolie

#7 Příspěvek od mikollar »

Html nebezi nikde je to len staticky subor. Teda klient poziada o stranku, server mu vrati html stranku, tym spojenie klient server konci, klient vyrenderuje stranku.
Dalsie spojenie je mozne len ak klient znova inicializuje spojenie teda si vyziada stranku.

prave websockety riesia tuto vec.

Alebo ak sa ti neche babrat cez websockety.

Spravit html stranku a ce javascript ptavidelne volat ajaxom ESP ten mu vrati JSON s hodnotamy a to potom js vypise do stranky.

Ak chces robit vypis do prehliadaca tak si budes musiet nastudovat ako funguje komunikacia na webe. Bez toho sa budes len trapit

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#8 Příspěvek od pocitujlasku »

ja by som isiel rovno do websocket, pravidelne requesty su zbytocne pomale. na esp mam server, dotnetcore je klient a spojenie mi drzalo asi pol roka vkuse, potom som daval novu verziu, tak sa resetlo.
pekny navod je napr. tu
ked sa ocisti od balastu, tak to je mozno 30-40 riadkov cisteho kodu, kde je komplet pripojenie na wifi a cela komunikacia.
No vidis, a tak si sa bal

Uživatelský avatar
Le_Ze
Příspěvky: 631
Registrován: 24 črc 2014, 02:00
Bydliště: Ano, mam

#9 Příspěvek od Le_Ze »

Ještě jeden dotaz by byl.
Na netu jsem našel info, že tato deska ma jen jeden UART port.
Ale i tento obrazek.
Jak je to tedy?
Přílohy
ser port.png

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#10 Příspěvek od Mahoney »

Přímo ten modul má (podle obrázku) jeden celej a dva jen na odesílání. Co se týče té desky celé, ten zbytek může být vyveden z toho CP2102 převodníku (takže směrem k PC)
Přílohy
NODEMCU-ESP8266-Pinout-features-and-specifications.jpg
ESP8266-ESP-12E-chip-pinout-gpio-pin.jpg

Odpovědět

Zpět na „Miniaturní počítače (Arduino, Raspberry a další)“