Satura rādītājs:
- 1. solis: teorija
- 2. darbība. Nepieciešamo bibliotēku sagatavošana
- 3. darbība. Vienkārša pieprasījuma koda rakstīšana
- 4. darbība. Augšupielāde
- 5. darbība: lasīšana un Python
- 6. darbība: pabeigšana
Video: ESP8266 un Python komunikācija Noobs: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šī rokasgrāmata ļauj iegūt datus no ESP8266 un kontrolēt to python bez AT komandām.
Iesācējiem lielākā daļa rokasgrāmatu par ESP8266 lietošanu ir grūti, jo viņi vēlas, lai jūs “AT COMMANDS” mirgo mikroshēmā, kas ir:
- Nevajadzīgi
- ESP atmiņas izšķērdēšana
- Piešķir ierobežotu kontroli
- Grūti un izaicinoši
- Un nav piemērots visiem ESP8266 moduļiem
Tāpēc es izveidoju ļoti vienkāršu mDNS sakaru sistēmu, kas tiek kontrolēta tikai ar 3 vienkāršām funkcijām. Tas arī nodrošina pilnīgu kontroli.
1. solis: teorija
Mūsu esp izveido savienojumu ar mūsu wifi un izveido localhost serveri un sāk gaidīt pieprasījumu. Katru reizi, kad mūsu python nosūta pieprasījumu šim vietējam resursdatoram, esp palaiž vēlamo kodu un pēc tam atgriež rezultātu kā http pieprasījumu. Visbeidzot, python nolasa atgrieztos datus kā http pieprasījumu un paņem no tiem mainīgos. Tādējādi esp var atgriezt virknes, datus un masīvus. Python kods sapratīs to datu tipu.
2. darbība. Nepieciešamo bibliotēku sagatavošana
Pirmkārt, jums ir jālejupielādē ESP8266 karšu bibliotēka arduino ide. Ja jūs nezināt, kā, šeit ir ceļvedis.
Pēc tam jums ir jālejupielādē mana mikro bibliotēka no šejienes.
Pēc lejupielādes bibliotēkas mapē ir fails ar nosaukumu "ESP_MICRO.h", nokopējiet to pašreizējā arduino projekta kodēšanas mapē. Jā, nekopējiet to arduino bibliotēkās, tā ir mikro bibliotēka, lai jūs to nokopētu pašreizējā arduino projekta mapē.
Tātad mūsu prasības ir apmierinātas. Mēs varam sākt to kodēt.
3. darbība. Vienkārša pieprasījuma koda rakstīšana
Atverot projektu.ino, jūs redzēsit divas cilnes arduino ide. Viens ir jūsu projekts, otrs ir "ESP_MICRO.h" mūsu mikro bibliotēka.
Tagad jūsu galvenajā kodā ir šī 5 funkcija ESP_MICRO.h (funkcijas ir izskaidrotas ESP_MICRO.h pirmajās rindās)
Šeit ir vienkāršs mainīgā palielināšanas kods.
Arduino kods:
/* F5 TESTS ESP2PY
* Autors Junicchi * https://github.com/KebabLord/esp_to_python * Tas vienkārši palielina un atgriež mainīgo katru reizi, kad ienāca python req */#include "ESP_MICRO.h" // Iekļaut mikro bibliotēku int testvariable = 0; void setup () {Serial.begin (9600); // Sākuma sērijas ports, lai redzētu detaļu sākumu ("USERNAME", "PASSWORD"); // EnAIt izveidos savienojumu ar jūsu wifi ar norādīto informāciju} void loop () {waitUntilNewReq (); // Gaida, līdz jauns pieprasījums no python come/* palielina indeksu, kad nāca jauns pieprasījums*/testvariable += 1; returnThisInt (testa mainīgais); // Atgriež datus python}
4. darbība. Augšupielāde
Programmēšana Nodemcu ESP8266s vienkārši pievieno USB un augšupielādē skici no arduino.
Bet programmēt ESP8266-1 ir grūtāk, to programmēšanai ir divas metodes
ESP programmēšana, izmantojot arduino
Ja jums ir labi ar džemperiem, varat to programmēt, izmantojot arduino, izmantojot šo shēmu. Bet ilgtermiņā tās ir sāpes. Tāpēc es iesaku citu metodi.
Programmēšana ar ESP programmētāju
Tas ir daudz vieglāk un ātrāk. Tas ir tikai 1 dolārs, nopērciet vienu un izmantojiet programmētāju usb.
ESP IP adreses apguve
Kamēr kods tiek augšupielādēts, atveriet seriālo portu. Kad augšupielāde būs pabeigta, tiks parādīta informācija. Uzziniet esp IP un atzīmējiet to. Atcerieties, ka ESP IP vietējā līmenī; mainās ar wifi uz wifi, nevis no sesijas uz sesiju, tāpēc, aizverot un atverot to vēlāk, tas netiks mainīts.
5. darbība: lasīšana un Python
Esp_to_python/bibliotēkā ir "EXAMPLE_PYTHON_READER.py"
rediģējiet to, mainiet 5. rindu ar esp moduļa IP adresi, kas tika izdrukāta uz seriālā porta, un palaidiet python skriptu. Šajā projektā es izmantoju python, lai nosūtītu un izlasītu pieprasījumu. Bet neapstrādātos datus varat skatīt arī pārlūkprogrammā, pārlūkprogrammā ielīmējot ESP ip. Vai arī varat izveidot lietojumprogrammu tās lasīšanai vai pat izmantot citu valodu. Moduļa vadība, izmantojot python, ir paskaidrota arī projektā "ledControl" piemēru mapē.
6. darbība: pabeigšana
Visas funkcijas un kodi ir izskaidroti failā ESP_MICRO.h un failā README.md.
Ja šis projekts jums palīdzēja, varat sākotnējo projektu atzīmēt ar zvaigznīti vietnē github.
Ieteicams:
Arduino un mobilā Bluetooth komunikācija (kurjers): 8 soļi
Arduino un mobilā Bluetooth komunikācija (kurjers): Komunikācijai ir svarīgs faktors mūsu ikdienas dzīvē. Bet šajā slēgšanas laikā saziņai ar mūsu ģimeni vai saziņai ar cilvēkiem mūsu mājās dažreiz ir nepieciešami mobilie tālruņi. Bet mobilo tālruņu izmantošana īsu laiku
Bezvadu šifrēta komunikācija Arduino: 5 soļi
Bezvadu šifrēta komunikācija Arduino: Sveiki visiem! Šajā otrajā rakstā es jums paskaidrošu, kā izmantot mikroshēmu Atecc608a, lai nodrošinātu bezvadu sakarus. Šim nolūkam es izmantošu NRF24L01+ bezvadu daļai un Arduino UNO. Mikroshēmu ATECC608A ir izstrādājis
STM32F4 atklāšanas dēlis un Python USART komunikācija (STM32CubeMx): 5 soļi
STM32F4 atklāšanas dēlis un Python USART sakari (STM32CubeMx): Sveiki! Šajā apmācībā mēs centīsimies izveidot USART komunikāciju starp STM32F4 ARM MCU un Python (to var aizstāt ar jebkuru citu valodu). Tātad, sāksim
PIC MCU un Python seriālā komunikācija: 5 soļi
PIC MCU un Python sērijas komunikācija: Sveiki, puiši! Šajā projektā es mēģināšu izskaidrot savus eksperimentus ar PIC MCU un Python sērijas sakariem. Internetā ir daudz noderīgu pamācību un video par to, kā sazināties ar PIC MCU, izmantojot virtuālo termināli. Kā
ESP8266 Tieša datu komunikācija: 3 soļi
ESP8266 tieša datu komunikācija: Ievads. Veicot dažus projektus ar Arduinos un nRF24l01 moduļiem, es domāju, vai es varētu ietaupīt dažas pūles, izmantojot ESP8266 moduli. ESP8266 moduļa priekšrocība ir tā, ka tajā ir mikrokontrolleris, tāpēc nē