- Kas ir OTA programmēšana?
- ESP8266 NodeMCU
- Nepieciešamās sastāvdaļas
- Notiek NodeMCU sagatavošana OTA atjaunināšanas saņemšanai bezvadu režīmā
- ESP8266 Mirgojoša LED programma OTA pārsūtīšanai
- ESP8266 mirgo gaismas diode, izmantojot OTA atjauninājumu
Kas ir OTA programmēšana?
OTA programmēšana (bezvadu) ir process, kas ļauj ierīcēm bezvadu režīmā uzlabot savu programmaparatūru vai programmatūru bez fiziskas piekļuves. Tas izmanto bezvadu tehnoloģiju, piemēram, Wi-Fi, Bluetooth, GPRS vai 4G / 3G, nevis vadu sērijveida sakarus. OTA tiek izmantots, lai pārprogrammētu tādas ierīces kā mikrokontrolleri, mobilie tālruņi, datori, televizora pierīces utt. OTA atjauninājumi parasti tiek nosūtīti programmatūras atjaunināšanai, kļūdu novēršanai, dažu funkciju pievienošanai utt. Arvien vairāk lietojot IoT ierīces, OTA tiek pārsūtīta, izmantojot frekvenču joslas ar zemu datu pārraides ātrumu (868 MHz, 900 MHz, 2400 MHz).
Šajā apmācībā mēs nosūtīsim OTA atjauninājumu uz ESP8266 NodeMCU, lai mirgot gaismas diode.
ESP8266 NodeMCU
NodeMCU ir atvērtā koda IoT platforma. Tajā ietilpst programmaparatūra, kas darbojas ar zemu izmaksu Wi-Fi iespējotu ESP8266 Wi-Fi SoC no Espressif Systems, un aparatūra, kuras pamatā ir ESP-12 modulis. Tam ir GPIO, SPI, I2C, ADC, PWM UN UART tapas. To var ieprogrammēt ar Arduino IDE. Borta NodeMCU ir CP2102 IC, kas nodrošina USB līdz TTL funkcionalitāti. Lai uzzinātu vairāk par ESP8266, pārbaudiet citus uz ESP8266 balstītos projektus.
Nepieciešamās sastāvdaļas
- MezglsMCU ESP8266
- Mikro USB kabelis
- Arduino IDE
Notiek NodeMCU sagatavošana OTA atjaunināšanas saņemšanai bezvadu režīmā
Vispirms pievienojiet NodeMCU ESP8266 ar datoru, izmantojot mikro USB kabeli. Pēc tam, lai augšupielādētu programmaparatūru, izmantojot OTA, mums ir jāaugšupielādē skice sērijveidā, izmantojot mikro USB, lai ģenerētu ESP IP adresi. Šis ir nepieciešamais solis, lai nākamreiz bezvadu veidā augšupielādētu programmaparatūru. Izvēlieties seriālo portu, kuram pievienots kabelis, no Tools -> Port .
ESP8266 nāk ar bibliotēkām un piemēriem, kuriem var tieši piekļūt no Arduino IDE. Atveriet Arduino IDE un pēc tam atveriet BasicOTA piemēru.
Rediģējiet skici, aizstājot “your-ssid” un “your-password” ar savu Wi-Fi SSID un paroli, un pēc tam augšupielādējiet skici
Pēc veiksmīgas programmas augšupielādes atveriet sērijveida monitoru. Seriālajā monitorā iestatiet 115200 pārraides ātrumu un nospiediet NodeMCU ESP8266 pogu Atiestatīt. NodeMCU ESP8266 savienošana ar Wi-Fi prasa zināmu laiku, jo tas pārbauda Wi-Fi akreditācijas datus. Ja SSID un parole ir pareiza, NodeMCU ESP8266 tiks izveidots savienojums ar Wi-Fi un ESP IP adrese tiks parādīta sērijveida monitorā.
ESP8266 Mirgojoša LED programma OTA pārsūtīšanai
Pilnīgs kods mirgojošās LED programmas pārsūtīšanai caur OTA ir norādīts beigās, šeit mēs izskaidrojam dažas svarīgas koda daļas.
Nepieciešamo bibliotēku importēšana ir pirmais koda rakstīšanas solis. ESP8266WiFi.h bibliotēka nodrošina ESP8266 specifiskas Wi-Fi rutīnas, kas nepieciešamas, lai izveidotu savienojumu ar tīklu. Tas arī nodrošina metodes un īpašības, kā darboties ESP8266 stacijas režīmā vai mīkstā piekļuves punkta režīmā. ESP8266mDNS.h ļauj skicei atbildēt uz multiraides DNS vaicājumiem.
# iekļaut
Definējiet SSID un paroles mainīgos Wi-Fi tīklā, kuram jāpievieno ESP. Mums ir jāpievieno personālais dators un ESP vienam un tam pašam Wi-Fi tīklam.
#ifndef STASSID #define STASSID "jūsu-ssid" #define STAPSK "jūsu-parole" #endif const char * ssid = STASSID; const char * parole = STAPSK;
ESP8266 ir iestatīts kā stacijas režīms, un Wi-Fi savienojums tiek izveidots, dodot akreditācijas datus. Lai ESP izveidotu savienojumu ar Wi-Fi moduli, nepieciešams zināms laiks. Ja SSID un parole ir pareiza, tā tiek savienota ar Wi-Fi un ja SSID un parole nav pareiza, tā tiks restartēta ik pēc 1 sekundes.
Sērijas sākums (115200); // Iestatiet pārraides ātrumu uz 115200 Serial.println ("Booting"); // solis, lai savienotu ESP ar Wi-Fi WiFi.mode (WIFI_STA); // Iestatiet ESP kā stacijas režīmu WiFi.begin (ssid, parole); // Wi-Fi akreditācijas dati, kamēr (WiFi.waitForConnectResult ()! = WL_CONNECTED) // ESP savienošana ar wi-fi prasa zināmu laiku, tāpēc pagaidiet, līdz tas tiek savienots { Serial.println ("Savienojums neizdevās! Pārstartēšana…"); kavēšanās (1000); ESP. Restart (); }
ESP IP adrese tiek drukāta uz sērijveida monitora kā savienojums ar Wi-Fi moduli. WiFi.localIP () norāda ESP IP adresi.
Pēc koda augšupielādes veiksmīgi atveriet sērijveida monitoru ar ātrumu 115200. Nospiediet atiestatīšanas pogu un pēc dažām sekundēm sērijveida monitorā varēsit redzēt ESP IP adresi. Tagad jūs varēsiet augšupielādēt programmaparatūru bez vadiem.
ESP8266 mirgo gaismas diode, izmantojot OTA atjauninājumu
Pirms nākamās skices augšupielādes pārejiet uz Rīki un mainiet PORT uz ESP IP adresi, lai bezvadu režīmā augšupielādētu programmaparatūru NodeMCU.
Tagad augšupielādējiet zemāk redzamo mirgojošās gaismas diode NodeMCU bezvadu režīmā, izmantojot Arduino IDE, un pārliecinieties, vai jūsu dators un ESP ir savienoti ar to pašu Wi-Fi tīklu un ESP darbina kāds enerģijas avots.
Pēc veiksmīgas koda augšupielādes NodeMCU ESP8266 gaismas diode sāks mirgot ik pēc 1 sekundes. Skices drošībā var iestatīt arī resursdatora nosaukumu un paroli, vienlaikus augšupielādējot programmaparatūru ESP.