INHOUDSOPGAWE:

ESP8266- en Python -kommunikasie vir noobs: 6 stappe
ESP8266- en Python -kommunikasie vir noobs: 6 stappe

Video: ESP8266- en Python -kommunikasie vir noobs: 6 stappe

Video: ESP8266- en Python -kommunikasie vir noobs: 6 stappe
Video: MicroPython on ESP8266 | A Setup Guide 2024, November
Anonim
ESP8266 en Python Communication For Noobs
ESP8266 en Python Communication For Noobs

Met hierdie gids kan u enige data van ESP8266 kry en dit beheer oor luislang sonder AT -opdragte.

Vir beginners is die meeste gidse oor die gebruik van ESP8266 moeilik, want hulle wil hê dat u 'OP OPDRAGTE' in die chip moet flits, dit is:

  • Onnodig
  • Vermorsing van geheue van ESP
  • Gee u beperkte beheer
  • Hard en uitdagend
  • En nie geskik vir alle ESP8266 -modules nie

Daarom het ek 'n baie eenvoudige mDNS -kommunikasiestelsel geskep wat slegs met 3 eenvoudige funksies beheer kan word. Dit gee u ook volle beheer.

Stap 1: Teorie

Teorie
Teorie

Ons esp verbind met ons wifi en skep 'n localhost -bediener en begin 'n versoek wag. Elke keer as ons luislang 'n versoek na die plaaslike gasheer stuur, voer esp die gewenste kode uit en gee die resultaat dan weer as 'n http -versoek. Uiteindelik lees python die gegewe data as http -versoek en haal die veranderlikes daaruit. Hiermee kan esp snare, gegewens en skikkings teruggee. Python -kode sal hul datatipe verstaan.

Stap 2: Voorbereiding van die vereiste biblioteke

Die voorbereiding van die vereiste biblioteke
Die voorbereiding van die vereiste biblioteke

Eerstens moet u die kaartbiblioteek van ESP8266 na arduino aflaai. Hier is die gids as u nie weet hoe nie.

Daarna moet u my mikrobiblioteek hier aflaai.

Nadat u afgelaai het, is daar in die biblioteekmap 'n lêer genaamd "ESP_MICRO.h", en kopieer dit na u koderingsmap van die huidige arduino -projek. Ja, moenie dit na arduino se biblioteke kopieer nie; dit is 'n mikrobiblioteek, sodat u dit na die gids van u huidige arduino -projek kan kopieer.

Ons behoeftes word dus bevredig. Ons kan dit begin kodeer.

Stap 3: Skryf 'n eenvoudige versoekkode

Skryf 'n eenvoudige versoekkode
Skryf 'n eenvoudige versoekkode

As u u project.ino oopmaak, sien u twee oortjies oor arduino ide. Die een is u projek, die ander is 'ESP_MICRO.h', ons mikrobiblioteek.

Nou het u daardie 5 funksie in ESP_MICRO.h in u hoofkode, (die funksies word in die eerste reëls van ESP_MICRO.h verduidelik)

Hier is 'n eenvoudige veranderlike kode wat toeneem.

Arduino kode:

/* F5 TOETS VIR ESP2PY

* Geskryf deur Junicchi * https://github.com/KebabLord/esp_to_python * Dit neem eenvoudig toe en gee 'n veranderlike terug elke keer as 'n python -vereiste kom */#include "ESP_MICRO.h" // Sluit die mikrobiblioteek int testvariable = 0 in; ongeldige opstelling () {Serial.begin (9600); // Seriële poort begin om besonderhede te sien begin ("USERNAME", "PASSWORD"); // EnAIt maak verbinding met u wifi met gegewe besonderhede} void loop () {waitUntilNewReq (); // Wag totdat 'n nuwe versoek van python kom/* indeks verhoog wanneer 'n nuwe versoek kom*/testvariable += 1; returnThisInt (testvariable); // Stuur die data terug na python}

Stap 4: Laai op

Laai tans op
Laai tans op

Die programmering van Nodemcu ESP8266s sluit eenvoudig usb in en laai die skets van arduino op.

Maar die programmering van ESP8266-1 is moeiliker; daar is twee metodes om dit te programmeer

ESP programmeer deur arduino

As u goed is met springers, kan u dit deur middel van arduino met hierdie kring programmeer. Maar op lang termyn is dit pyn. Ek stel dus 'n ander metode voor.

Programmeer dit met ESP -programmeerder

Dit is baie makliker en vinniger. Dit is slegs 1 dollar, koop een en gebruik 'n usb -programmeerder.

Leer die IP -adres van ESP

Terwyl die kode opgelaai word, maak die seriële poort oop. U sal sien dat die besonderhede gedruk word wanneer die oplaai gedoen is. Leer die IP van esp en let daarop. Onthou, ESP's IP on local; verander deur wifi na wifi, nie sessie na sessie nie, dus as u dit later toemaak en oopmaak, sal dit nie verander word nie.

Stap 5: Lees en Python

Lees en Python
Lees en Python

In die esp_to_python/biblioteek is daar 'n "EXAMPLE_PYTHON_READER.py"

wysig dit, verander die 5de reël met die IP -adres van die esp -module wat op die seriële poort gedruk is en voer die python -script uit. In hierdie projek het ek python gebruik om versoeke te stuur en te lees. Maar u kan ook die rou data met 'n blaaier bekyk terwyl u die ip van ESP in 'n blaaier plak. Of u kan 'n aansoek maak om dit te lees, of u kan selfs 'n ander taal gebruik. Die beheer van die module oor python word ook verduidelik in die "ledControl" -projek in die gids voorbeelde.

Stap 6: Voltooi

Finaliseer
Finaliseer

Alle funksies en kodes word verduidelik in die ESP_MICRO.h en in die README.md lêer.

As hierdie projek u gehelp het, kan u die oorspronklike projek op github vertolk.

Aanbeveel: