Satura rādītājs:
- 1. darbība: PAR ŠO PROJEKTU
- 2. darbība. Nepieciešama aparatūra
- 3. darbība: ķēde un savienojumi
- 4. solis: DARBĪBA
- 5. darbība: HTML un JAVASCRIPT KODS
- 6. darbība: GALVENĀS PIEZĪMES
- 7. darbība: KODĒT
- 8. solis: video apmācība
Video: 7 segmentu LED displeja vadīšana, izmantojot tīmekļa serveri ESP8266: 8 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Manam projektam ir Nodemcu ESP8266, kas kontrolē 7 segmentu displeju, izmantojot http serveri, izmantojot html formu.
1. darbība: PAR ŠO PROJEKTU
Tas ir IOT projekts, kas izstrādāts, izmantojot ESP8266 (NodeMCU) wifi moduli. Projekta motīvs ir modulī izveidot tīmekļa serveri, kas tīklā var uzņemt vairākus klientus. Šeit, lai izprastu manu projektu, ir nepieciešamas pamatzināšanas par html un javaScript. Dažas iepriekšējas tēmas, kuras es šeit apspriedīšu attiecībā uz ESP8266 un javaScript, ir šādas:
1. Failu augšupielāde ESP8266 SPIFFS, lai tos efektīvāk izmantotu mūsu arduino kodā.
2. Tīmekļa krātuve, izmantojot javaScript
SPIFFS
Līdz šim mēs savā skicē vienmēr esam iekļāvuši savu tīmekļa lapu HTML kā virkņu literāļus. Tas padara mūsu kodu ļoti grūti lasāmu, un atmiņa drīz beigsies.
SPIFFS ir viegla failu sistēma mikrokontrolleriem ar SPI zibatmiņas mikroshēmu. ESP8266 iebūvētajā zibatmiņas mikroshēmā ir daudz vietas jūsu tīmekļa lapām, it īpaši, ja jums ir 1 MB, 2 MB vai 4 MB versija. Jūs varat saprast, kā pievienot rīkus arduino programmatūrai failu augšupielādēšanai SPIFFS, izmantojot šo saiti:
Šajā projektā man ir 2 html fails un javascript fails. Visi šie faili tiek augšupielādēti SPIFFS, atdalīti no skices, lai šo failu izmaiņas nebūtu atkarīgas no galvenās skices.
Abi html faili tiek izgūti, sagatavojot failu (), kā parādīts zemāk:
void prepFile () {
bool ok = SPIFFS.begin (); ja (labi) {Fails f = SPIFFS.open ("/index.html", "r"); Fails f1 = SPIFFS.open ("/index1.html", "r"); dati = f.readString (); dati1 = f1.readString (); f. aizvērt (); f1.aizver (); } else Serial.println ("Šāds fails netika atrasts."); }
kamēr JavaScript fails tiek lasīts, izmantojot loadScript (), kā parādīts zemāk:
void loadScript (virknes ceļš, virknes veids) {
ja (SPIFFS.eksistē (ceļš)) {Faila fails = SPIFFS.open (ceļš, "r"); server.streamFile (fails, tips); }}
Vietējā uzglabāšana tīmekļa lietojumprogrammām
Jūs varat saprast, kā izmantot dažādus vietējās krātuves objektus un metodes HTML5, izmantojot javascript no šī raksta: https://diveintohtml5.info/storage.html. Darba sadaļā es apspriedīšu vietējās krātuves izmantošanu savā projektā.
2. darbība. Nepieciešama aparatūra
NodeMCU ESP8266 12E Wifi modulis
Maizes dēlis bez lodēšanas
Džempera vads
7 septiskais displejs (kopējais katods)
1K omu rezistors
Mikro-USB kabelis (NodeMCU savienošanai ar datoru)
3. darbība: ķēde un savienojumi
Savienojumi ir patiešām vienkārši. Iepriekš redzamajā shēmā nodemcu tapas ir savienotas šādā veidā:
A D1
B D2
C D3
D D4
E D6
F D7
G D8
kur A, B, C, D, E & F ir 7 segmentu displeja segmenti
. Ignorējiet DP no 7 segmenta displejiem. Nepievienojiet to ESP tapai D5
4. solis: DARBĪBA
Kā minēts iepriekš, mums ir divi html faili. Viens no tiem ir saknes html lapa, kas tiek izsaukta, kad ESP8266 serveris saņēma "/", ti, ja tiek pieprasīts URI '/', serverim jāatbild ar HTTP statusa kodu 200 (labi) un pēc tam jānosūta atbilde ar "indeksu". html "failu.
Otrais html fails tiks nosūtīts, kad klients to pieprasīs no saknes lapas, veidlapā iesniedzot ievadi. Tiklīdz serveris no veidlapas saņem POSTED ievadi, tas salīdzina to ar fiksētu virknes vērtību un atbildē nosūta otro html lapu.
ja (server.arg ("nam") == "0") {server.send (200, "text/html", data1); septiņiSeg (0); }
Tā kā skicē nav definēts otrās lapas html, šeit mēs atsaucamies uz "data1", kas jau ir nolasījis html kodus, izmantojot SPIFFS.readString ()
Fails f1 = SPIFFS.open ("/index1.html", "r"); data1 = f1.readString ();
Šeit septiņus Segus () sauc arī ar argumentu "0", lai to varētu izmantot, lai parādītu "0", ieslēdzot un izslēdzot dažādus segmentus. Šeit es padarīju fuction nosaukumu pašsaprotamu, ti, onA () ieslēgs A segmentu no 7 seg displeja uz maizes dēļa, līdzīgi offA to izslēgs.
Tātad, šajā gadījumā, lai parādītu "0", mums ir jāpārslēdz viss segments, izņemot G (DP tiek ignorēts, jo tas nav savienots ar nevienu ESP8266 tapu). Tātad mana funkcija izskatās šādi:
ja (skaits == 0) {onA (); onB (); onC (); onD (); onE (); onF (); offG (); }
5. darbība: HTML un JAVASCRIPT KODS
Index.html ir audekls ar 7 segmentu displeju izslēgtā režīmā un formā zem tā. Lūk, ko jūs redzat pēc atvēršanas:
Ja mēs vēlamies izmantot mūsu tīmekļa vietni bez ESP8266, tas būs iespējams, mainot saiti veidlapas darbības atribūtā. Pašlaik šī ir saite darbībā:
Šeit jūs varat redzēt, ka saite darbībā ir tā pati ip adrese, kas tiek piešķirta jūsu nodeMCU pēc savienojuma ar jebkuru wifi (vai karsto punktu). Veidlapas tags pēc pielāgošanas izskatās šādi:
Šeit es izmantoju pārlūkprogrammas tīmekļa veidlapu, lai saglabātu lietotāja ievadīto vērtību tā, lai indeksā index.html ievadītā vērtība tiktu lokāli saglabāta pārlūkprogrammā (piemēram, sīkfails). Šo vērtību iegūst indekss1.html, un skaitlis tiek parādīts 7 segmentu displejā uz html audekla. Jūs varat saprast šo procedūru, skatoties šo videoklipu:
video_attach
6. darbība: GALVENĀS PIEZĪMES
Šis projekts darbosies ar jūsu nodemcu, ja rūpēsities par šādiem punktiem:
1. Saitei html saknes faila darbības atribūtā jābūt "https:// (IP seriālajā monitorā vai IP, kas piešķirts jūsu ESP)/iesniegt".
2. Izmantojiet jaunāko pārlūkprogrammas versiju, kas atbalsta html5, kā arī jaunus tagus un funkcionalitāti.
3. SPIFFS darbosies tikai tad, ja jūsu mapē index.html, index1.html un main.js ir apkopoti dati. Jūs varat klonēt koda failu no mana github
7. darbība: KODĒT
Šī ir mana projekta koda krātuves saite. Ja strādājat ar SPIFFS programmā ESP8266, varat saprast, kāpēc esmu ievietojis html un javascript failus datu mapē. Izmantojiet to tā.
GitHub krātuves saite
8. solis: video apmācība
Ja tas palīdz, lūdzu, abonējiet
Ieteicams:
Garāžas durvju atvērējs ar atsauksmēm, izmantojot tīmekļa serveri Esp8266 .: 6 soļi
Garāžas durvju atvērējs ar atsauksmēm, izmantojot tīmekļa serveri Esp8266. Sveiki, es jums parādīšu, kā vienkāršā veidā izveidot garāžas durvju atvērēju.-ESP8266 ir kodēts kā tīmekļa serveris, durvis var būt atvērtas visā pasaulē. atgriezeniskā saite, jūs zināt, vai durvis ir atvērtas vai aizvērtas reāllaikā-vienkāršs, tikai viens īsceļš
ESP8266 Nodemcu temperatūras uzraudzība, izmantojot DHT11 vietējā tīmekļa serverī - Pārlūkprogrammā iegūstiet istabas temperatūru un mitrumu: 6 soļi
ESP8266 Nodemcu temperatūras uzraudzība, izmantojot DHT11 vietējā tīmekļa serverī | Iegūstiet istabas temperatūru un mitrumu savā pārlūkprogrammā: Sveiki, puiši, šodien mēs izveidosim mitrumu & temperatūras uzraudzības sistēma, izmantojot ESP 8266 NODEMCU & DHT11 temperatūras sensors. Temperatūru un mitrumu noteiks DHT11 sensors & to var redzēt pārlūkprogrammā, kura tīmekļa lapa tiks pārvaldīta
NODEMCU LUA ESP8266 M5450B7 LED displeja draivera IC vadīšana: 5 soļi (ar attēliem)
NODEMCU LUA ESP8266 M5450B7 LED displeja draivera vadīšana katram. Ierīce nogremdē strāvu, nevis to piegādā, tāpēc c
Displeja temperatūra P10 LED displeja modulī, izmantojot Arduino: 3 soļi (ar attēliem)
Displeja temperatūra P10 LED displeja modulī, izmantojot Arduino: Iepriekšējā apmācībā ir teikts, kā parādīt tekstu Dot Matrix LED displeja P10 modulī, izmantojot Arduino un DMD savienotāju, ko varat pārbaudīt šeit. Šajā apmācībā mēs sniegsim vienkāršu projekta apmācību, izmantojot displeja līdzekli P10 moduli
RC automašīnas vadīšana, izmantojot tīmekļa saskarni: 6 soļi (ar attēliem)
RC automašīnas vadīšana, izmantojot tīmekļa saskarni: Hi draugi, šajā pamācībā es iemācīšu jums izveidot RC automašīnu, izmantojot tīmekļa saskarni. Mēs to vadīsim bezvadu režīmā, izmantojot savu serveri. Izmantojot metodi, kuru es jums parādīšu, mums nevajadzēs izmantot RC uztvērēju. Lai mitinātu tīmekli