Esp 01 arduino firmware. ESP8266 firmware, პროგრამირება Arduino IDE-ში

22.02.2024

ჩინურმა კომპანია Espressif-მა 2014 წელს დაიწყო ESP8266 ჩიპებზე დაფუძნებული Wi-Fi მოდულების გაყიდვა. რომელმაც მაშინვე დიდი პოპულარობა მოიპოვა რადიომოყვარულებში დაბალი ღირებულებისა და დიდი შესაძლებლობების გამო. დღეს არის დიდი რაოდენობით სხვადასხვა მოდული, რომელიც დაფუძნებულია ESP8266 ჩიპზე, ამ სტატიაში ვისაუბრებ ESP-01-ზე.

ტექნიკური პარამეტრები

მიწოდების ძაბვა: 3V ~ 3.6V
მაქსიმალური სამუშაო დენი: 220 mA
ოპერაციული სიხშირე: 2.4 გჰც
რეჟიმები: P2P (კლიენტი), soft-AP (წვდომის წერტილი)
GPIO-ების რაოდენობა: 2.
ფლეშ მეხსიერება: 1024 kb.
გამომავალი სიმძლავრე 802.11b რეჟიმში: +19.5dBm
უკაბელო სტანდარტული მხარდაჭერა: 802.11 b/g/n
ზომები: 24.8 მმ x 14.3 მმ x 8 მმ

ზოგადი ინფორმაცია ESP-01-ის შესახებ

არსებითად, ESP8266 ჩიპი არის მინიატურული მიკროკონტროლერი Wi-Fi გადამცემით, რომელსაც შეუძლია იმუშაოს სრული ავტონომიით, დამატებითი Arduino დაფის გარეშე. ESP-01 მოდულის გამოყენებით შეგიძლიათ გადაიტანოთ მონაცემები ტემპერატურაზე, ტენიანობაზე, ჩართოთ რელე და ა.შ. ESP8266 ჩიპის მოხერხებულობისთვის, მწარმოებელმა დაამზადა მოდულების სერია ESP-01-დან ESP-14-მდე. ამ სერიიდან პირველი არის ESP-01 მოდული (აქ არის ასევე ESP-01S, ამაზე ცოტა მოგვიანებით), რომელიც ერთ-ერთი ყველაზე ცნობილია თავისი ფასითა და მცირე ზომის გამო, მხოლოდ 14,3 მმ 24,8 მმ-ზე. მაგრამ მას აქვს ორი ნაკლი: შეზღუდული რაოდენობის პროგრამირებადი GPIO ქინძისთავები და მათი არასასიამოვნო მდებარეობა (მოუსიამოვნოა განლაგებისთვის).


ESP-01 მოდული არის პატარა შავი დაფა, რომელზეც განთავსებულია ორი ძირითადი ჩიპი, ESP8266 მიკროკონტროლერი და 1 მბ ფლეშ მეხსიერება. ახლოს არის კვარციტის რეზონატორი და ბეჭდური ანტენა. დაფას აქვს ორი LED, წითელი და ლურჯი. წითელი LED ანათებს, როდესაც მოდულს აქვს ენერგია, ხოლო ლურჯი ციმციმებს ბრძანებების შესრულებისას (წითელი LED ამოღებულია NSP-01S-დან მუდმივი ენერგიის მოხმარების გამო). ESP-01 მოდულის დასაკავშირებლად მოწოდებულია რვა პინი (ორი რიგი ოთხი ქინძისთავით, 2,54 მმ სიმაღლეზე), მზა ორი არის ციფრული შეყვანა-გამომავალი, მხარს უჭერს პულსის სიგანის მოდულაციას. მიუხედავად იმისა, რომ მოდულს ნაგულისხმევად აქვს ორი GPIO პინი, შეგიძლიათ გამოიყენოთ სხვა ხელმისაწვდომი ქინძისთავები, თუ თქვენ გაქვთ საჭირო შედუღების ხელსაწყო.


პინის დავალება
GND:"-" მოდულის კვების წყარო
GPIO2:(ციფრული I/O პროგრამირებადი)
GPIO0:(ციფრული I/O პროგრამირებადი, ასევე გამოიყენება ჩატვირთვის რეჟიმებისთვის)
RX: UART მიღება
TX: UART გადაცემა
CH_PD:(ჩართვა/გამორთვა, გამომავალი უნდა იყოს 3.3 ვ-მდე პირდაპირ ან რეზისტორის მეშვეობით)
RST:გადატვირთეთ, თქვენ უნდა გაიყვანოთ იგი 3.3 ვ-მდე
VCC:"3.3V" მოდულის კვების წყარო

მოდულის კავშირი
ESP-01 მოდულის ფუნქციონირებისთვის საჭიროა DC დენის წყარო, რომელიც უნდა უზრუნველყოს 3.3 ვ და დენი მინიმუმ 250 mA. სამწუხაროდ, Arduino-ზე დაყენებულ სტანდარტულ სტაბილიზატორს არ შეუძლია ESP-01-ის მუშაობისთვის საჭირო დენის მიწოდება (თუ მაინც გადაწყვეტთ ESP-01-ის დაკავშირებას, ველით არასტაბილურ მუშაობას და მუდმივ გადატვირთვას). გარდა ამისა, ამ მოდულის ლოგიკური სიგნალი გათვლილია 3.3 ვ-ზე, ანუ RX პინზე უნდა იყოს გამოყენებული ძაბვა 3.3 ვ, ხოლო TX პინიდან 3.3 ვ ძაბვა მიეწოდება (იგივე სხვა ქინძისთავებისთვის. ). თუ დაგჭირდებათ მოდულის დაკავშირება Arduino-სთან ან სხვა კონტროლერებთან, რომლებიც გამოსცემენ 5V-ს ლოგიკურ პინზე, თქვენ უნდა გამოიყენოთ რეზისტორები ან ლოგიკური დონის მოდული, თუ პირდაპირ დააკავშირებთ, მოდული გაფუჭდება.

ყურადღება! ESP-01 ძალიან კაპრიზულია ელექტრომომარაგებასთან დაკავშირებით, თქვენ უნდა გამოიყენოთ გარე 3.3 ვ ძაბვის რეგულატორი, პირველ მაგალითს გამოვიყენებ USB ადაპტერს.

ზემოთ მოყვანილი ცხრილიდან ჩანს, რომ ESP-01 მოდულს შეუძლია იმუშაოს რამდენიმე ძილის რეჟიმში, მინიმალური დენის მოხმარებით, მათ უწოდებენ პროგრამულ უზრუნველყოფას, გარდა ბოლო „გამორთვისა“, ამ რეჟიმის გასააქტიურებლად, თქვენ საჭიროა ჯემპერის დაყენება GPIO16-სა და RST-ს შორის, მოგვიანებით მოგიყვანთ მაგალითს.

ESP8266-ის ინსტალაცია Arduino IDE-ში

ჩამოტვირთეთ Arduino IDE პროგრამა ვებგვერდიდან arduino.cc
შემდეგი, თქვენ უნდა დააინსტალიროთ ESP დაფა Arduino IDE-ში, ამისათვის გაუშვით Arduino IDE პროგრამა და გახსენით: ფაილი -> პარამეტრები.
ახალ ღია ფანჯარაში, ველში " დამატებითი ბმულები PCB მენეჯერისთვის:» ლინკის დამატება:

Http://arduino.esp8266.com/stable/package_esp8266com_index.json

ღია ფანჯარაში მოძებნეთ " esp8266 ESP8266 Communit-ის მიერ y" და დააჭირეთ " დააინსტალირეთ". ინსტალაციას რამდენიმე წუთი დასჭირდება, შემდეგ შეტყობინება " დაყენებულია", დააწკაპუნეთ" დახურვა«

დააწკაპუნეთ " ინსტრუმენტები -> დაფები -> Generis ESP8266 მოდული«.

ახლა თქვენ უნდა დაუკავშიროთ ESP-01 მოდული კომპიუტერს სპეციალური USB ადაპტერის საშუალებით CH340G ჩიპზე


პროცესორის სიხშირის რეგულირება " პროცესორის სიხშირე: "80 MHz"", სიჩქარე" ატვირთვის სიჩქარე: "115200""და აირჩიეთ" პორტი«.

შემდეგ ჩვენ ავტვირთავთ ესკიზს, რომელიც ESP8266-ს აახამებს LED-ს.

/* ტესტირება Arduino IDE 1.8.5-ზე ტესტირების თარიღი 06/15/2018 */ #define TXD 1 // GPIO1 / TXD01 void setup() ( pinMode (TXD, OUTPUT); ) void loop() ( digitalWrite (TXD, HIGH); delay (1000); digitalWrite (TXD, LOW); delay( 1000);

... ზოგადად, ეს მასალა არ შემოიფარგლება მხოლოდ ერთი Arduino თემით.

ESP8266-ის თემა საკმაოდ რთულია. მაგრამ, თუ თქვენ მუშაობთ ამ Wi-Fi მოდულებთან Arduino IDE განვითარების გარემოში, შესვლის ბარიერი ეცემა Arduino-ს საშუალო მომხმარებლისთვის მისაღები დონემდე. და არა მხოლოდ Arduino-ს ბიჭი, არამედ ნებისმიერ ადამიანს, ვისაც აქვს სურვილი, რომ რაღაც შეაგროვოს IoT (ნივთების ინტერნეტი) თემაზე, ჩიპისთვის დოკუმენტაციის წაკითხვისა და ამ მოდულების API-ს შესწავლის გარეშე დიდი დროის დახარჯვის გარეშე.

ეს ვიდეო სრულად იმეორებს ქვემოთ მოცემულ სტატიაში წარმოდგენილ მასალას.

ისე, უკვე ვიცით ESP8266-ის დაკავშირება და პროგრამირების რეჟიმში გადაყვანა, ახლა უფრო სასარგებლოზე გადავიდეთ.

მე მაშინვე ვიტყვი, რომ როგორც კი დავაპროგრამებთ მოდულს Arduino-ს განვითარების გარემოში, ჩვენ ვანადგურებთ მშობლიურ firmware-ს და ვეღარ შევძლებთ მოდულთან მუშაობას AT ბრძანებების გამოყენებით. პირადად, ეს არ მაციებს/მაცხელებს, მაგრამ თუ ვინმეს ეს სჭირდება, სტატიის ბოლოს მე გაჩვენებთ, თუ როგორ დააბრუნოთ მშობლიური firmware მოდულში ან რაიმე სახის ჩამტვირთველში, როგორიცაა NodeMcu.

დასაწყისისთვის, ჩამოტვირთეთ Arduino IDE-ის უახლესი ვერსია ოფიციალურ ვებსაიტზე, ამჟამად ის არის 1.6.7. ძველი ვერსიები, როგორიცაა 1.0.5. არ ჯდება, რადგან მათ უბრალოდ არ აქვთ საჭირო ფუნქციონირება და ტამბურით ცეკვა არ გვაინტერესებს, არა?

ჩვენ ვიწყებთ განვითარების გარემოს და დაუყოვნებლივ გადავდივართ ფაილზე/პარამეტრებზე:

Http://arduino.esp8266.com/stable/package_esp8266com_index.json

შემდეგ გადადით Tools/Board:/Board Manager...:

ჩვენს თვალწინ გამოჩნდება დაფის მენეჯერის ფანჯარა, გადაახვიეთ ბოლოში და თუ ყველაფერი სწორად გაკეთდა, ჩვენ ვნახავთ მსგავს რამეს:

დააწკაპუნეთ კურსორზე წარწერაზე " esp8266მიერ ESP8266 საზოგადოებაამის შემდეგ გვაქვს ღილაკი "ინსტალაცია", ავირჩიოთ სასურველი ვერსია, ვიღებ უახლესს, დღეს არის 2.1.0 და დავაინსტალირე. დეველოპერული გარემო ჩამოტვირთავს საჭირო ფაილებს (დაახლოებით 150 მეგაბაიტი) და ამის საპირისპიროდ წარწერა " esp8266მიერ ESP8266 საზოგადოება""INSTALLED" გამოჩნდება, ანუ დაინსტალირებულია:

ჩვენ გადავახვიეთ დაფების სიაში და ვხედავთ, რომ სიაში გვაქვს მრავალი განსხვავებული ESP, აიღეთ „Generic ESP8266 Module“:

გადადით "Tools"-ზე და აირჩიეთ სასურველი COM პორტი (ჩემთვის ეს არის COM32) Arduino ან USB UART გადამყვანი, შემდეგ დააყენეთ ატვირთვის სიჩქარე: "115200":

ჩვენ დავაყენეთ სიჩქარე 74880-ზე და „NL & CR“-ზე და ისევ გამორთეთ და გამორთეთ დენი და ის გიპასუხებთ გამართვის შესახებ ინფორმაციით:

გაითვალისწინეთ, რომ 74880 არ არის ESP8266-ის მთავარი სიჩქარე, ის უბრალოდ აგზავნის მასზე გამართვის ინფორმაციას. თუ მოდული არაფერს აგზავნის კონსოლზე, მაშინ რაღაც შეიძლება არასწორად იყოს დაკავშირებული.

ნაგულისხმევად სიჩქარე უნდა იყოს 115200, მაგრამ ზოგ შემთხვევაში შეიძლება იყოს 9600 და სხვა... ამიტომ ეცადეთ იპოვოთ.

საჭირო სიჩქარის არჩევის შემდეგ ვაგზავნით "AT" მოდულს და ის უნდა უპასუხოს, რომ ყველაფერი "OK". "AT+GMR" ბრძანება აჩვენებს ინფორმაციას პროგრამული უზრუნველყოფის შესახებ.

სანამ დაიწყებთ ESP8266-ის ციმციმს Arduino IDE-ში, გირჩევთ, ბოლომდე წაიკითხოთ სტატია.

ახლა ვცადოთ ESP8266-ის გამორთვა Arduino IDE-ის საშუალებით. ჩვენ მოდული გადავიყვანეთ პროგრამირების რეჟიმში (როგორ გავაკეთო ეს წინა სტატიაში დავწერე).

მოდით დავამატოთ სტანდარტული LED ფლეშერს:

// ბატონი PodelkinTs youtube.com/RazniePodelki // სპეციალური geektimes.ru/post/271754/ #define TXD 1 // GPIO1/TXD01 void setup() ( pinMode(TXD, OUTPUT); ) void loop() ( digitalWrite( TXD, HIGH) დაყოვნება(1000);

ციმციმდა? ასე რომ, ყველაფერი გაკეთდა სწორად. საიდან მივიღე, რომ LED არის დაკავშირებული პირველ პინთან? წინა სტატიაში არის სურათი სხვადასხვა მოდულის პინოტებით, ასევე არის პორტების მარკირება Arduino ჩამტვირთველის გამოყენებისას (ქინძისთავები მონიშნულია ვარდისფერში).

LED-ის მოციმციმე რა თქმა უნდა კარგია, მაგრამ ჩვენ უნდა დავაყენოთ რაიმე სახის ვებ სერვერი ან დავიწყოთ LED-ის კონტროლი ბრაუზერში ღილაკების გამოყენებით მაინც, არა? მაგრამ ამაზე სხვა დროს გეტყვით.

ახლა კი როგორ დავაბრუნოთ მშობლიური firmware, და როგორ უნდა გამორთოთ მოდული მესამე მხარის ჩამტვირთველებით. ESP8266-ისთვის არის ისეთი პროგრამა, როგორიცაა NodeMCU Flasher, რომელიც თავდაპირველად განკუთვნილია NodeMCU ჩამტვირთველის გასანათებლად. მაგრამ, როგორც გაირკვა, ის მშვენივრად ანათებს სხვა firmware-ს.

მოხერხებულობისთვის სტატიას დავამაგრებ არქივს ამ პროგრამით და firmware-ით, მაგრამ ყოველთვის შეგიძლიათ ჩამოტვირთოთ NodeMCU Flasher-ის ახალი ვერსია.

"nodemcu-flasher-master" საქაღალდეში არის 2 საქაღალდე, Win64 და Win32 და თქვენი OS-ის ბიტის სიღრმიდან გამომდინარე, აირჩიეთ თქვენთვის სასურველი. შემდეგ, Release საქაღალდეში, გაუშვით "ESP8266Flasher.exe" და იხილეთ პროგრამის ინტერფეისი:

აირჩიეთ სასურველი COM პორტი და გადადით "Config" ჩანართზე, ამოიღეთ ჯვარი "INTERNAL://NODEMCU"-ის გვერდით და ჩადეთ ერთი პუნქტით ქვემოთ, როგორც ეკრანის სურათზე:

(თუ გსურთ NodeMCU ჩამტვირთველის გამორთვა, ამოიღეთ ჯვარი იქ, სადაც ის არ იყო და განათავსეთ იქ, სადაც იყო, ანუ "INTERNAL://NODEMCU"-თან ახლოს).

შემდეგ ვაწკაპუნებთ გადაცემათა კოლოფზე და ვირჩევთ სად მდებარეობს ჩვენი პროგრამული უზრუნველყოფა, firmware ჩვეულებრივ არის *.bin ფორმატში (თანდართულ არქივში არის “v0.9.5.2 AT Firmware.bin”, რომელიც არის მთავარ საქაღალდეში) და ასევე აირჩიეთ „0x00000“ როგორც და უფრო მაღალი.

ჩვენ კვლავ ვუბრუნდებით "ოპერაციის" ჩანართს, ვაყენებთ მოდულს პროგრამირების რეჟიმში და დააჭირეთ "Flash"-ს:

ესე იგი, მოდულმა დაიწყო ციმციმი, ციმციმის შემდეგ არ დაგავიწყდეთ მოდულის გადატვირთვა და voila, ის ციმციმდება ჩვენთვის საჭირო ფირმვერით.

ჩვენ ვამოწმებთ AT ბრძანებით "AT+GMR", გავაკეთეთ თუ არა ყველაფერი სწორად:

როგორც ხედავთ, ყველაფერმა შეუფერხებლად ჩაიარა.

Moule esp-01
esp-01 მოდულის სწორი კავშირის დიაგრამა პროგრამირებისა და პროგრამული უზრუნველყოფისთვის.

მოდული ციმციმდება პროგრამირების რეჟიმზე გადასვლისას, დააჭირეთ ღილაკს FLASH, შემდეგ გათავისუფლების გარეშე, მოკლედ დააჭირეთ RESET ღილაკს და გაათავისუფლეთ FLASH.
მოდული გადართულია პროგრამირების რეჟიმში.
ტერმინალში ამ წუთში ხედავთ

დაწყებულია 2013 წლის 8 იანვარი, პირველი მიზეზი: 2, ჩატვირთვის რეჟიმი: (1.6)
ჩატვირთვის რეჟიმი:(1,6) - გადატვირთეთ RESET-ით პროგრამირების რეჟიმში
ჩატვირთვის რეჟიმი:(1,7) - პროგრამირების რეჟიმში გადატვირთვა - რაც მთლად სწორი არ არის.

ფირმვერისთვის გამოვიყენებ პროგრამას NODEMCU პროგრამული უზრუნველყოფის პროგრამისტი
(თემას დაერთვება არქივი პროგრამასთან ერთად)
ამოალაგეთ არქივი და გაუშვით პროგრამის 32-ბიტიანი ვერსია\Win32\Release\ESP8266Flasher.exe
ჩვენ ვაკონფიგურირებთ მოდულისთვის, ჩემს შემთხვევაში ეს არის 1 მეგაბაიტი ფლეშ მეხსიერება ან 8 მეგაბიტი.




პირველი ნაბიჯი არის მეხსიერების წაშლა ცარიელი 1 მბ ფაილით.
ეს არის არჩევითი ელემენტი. შეგიძლიათ გამოტოვოთ წაშლა და გადახვიდეთ firmware-ზე.
ვისაც მეტ-ნაკლებად მეხსიერება აქვს, სჭირდება შესაბამისი ზომის ცარიელი ფაილი.
შემდეგი, ჩვენ განვსაზღვრავთ რა firmware არის საჭირო!
შეგიძლიათ გამოიყენოთ მზა პროგრამული უზრუნველყოფა NODEMCU-ზე ან ააწყოთ იგი დიზაინერისგან თქვენთვის საჭირო მოდულებით.
მაგალითად, ერთ-ერთი ძველი დადასტურებული NODEMCU

კონსტრუქტორი wifi-iot.com/
კონსტრუქტორი nodemcu-build.com/
ან ჩამოტვირთეთ უახლესი

პრობლემები firmware-თან
თუ esp8266 მოდული არ ციმციმებს, შეამოწმეთ ამოღებები და სწორი კავშირი GND GPIO0-თან. და ასევე აირია თუ არა RX TX.
ტერმინალში შეგიძლიათ შეამოწმოთ, რომ ჩატვირთვის რეჟიმი:(1,6) ან ჩატვირთვის რეჟიმი:(1,7) არის ნაჩვენები.

თუწარუმატებელი firmware-ის შემდეგ მოდული არ მუშაობს, სცადეთ მეხსიერების წაშლა თქვენი მეხსიერების ზომის ცარიელი ცარიელი ფაილით.

თუმოდული არ მუშაობს წარმატებული პროგრამული უზრუნველყოფის შემდეგ და აგზავნის გაუთავებელ ნაგავს პორტში (მონაცემთა გადაცემის LED შეიძლება ციმციმდეს), ეს ხდება Nodemcu-ს უახლესი ნაგებობების ციმციმის დროს, შემდეგ თქვენ დამატებით დაგჭირდებათ ფაილის ჩასმა მეხსიერების ზონაში, ეს დამოკიდებულია მეხსიერების ჩიპი.
ინფორმაცია მეხსიერების შესახებ აღებულია nodemcu ვებსაიტიდან.
0x7c000 512 კბაიტისთვის, მოდულები, როგორიცაა ESP-01,03,07
0xfc000 1 მბ-ისთვის, მოდულები, როგორიცაა ESP8285, PSF-A85, მაგრამ ასევე ზოგიერთი სახეობის esp-01,01s
0x1fc000 2 მბ-ისთვის
0x3fc000 4 მბ-ისთვის, მოდულის ტიპი ESP-12E, NodeMCU devkit 1.0, WeMos D1 mini და ა.შ.

თუ სხვა არაფერია, დაწერეთ...

დავამატებ აღჭურვილობის მწარმოებლის ოფიციალურ ჯგუფს

უფრო რთული პროექტების შესწავლისა და შემუშავების პროცესში, დგება დრო, როდესაც ჩნდება საჭიროება და სურვილი, ისწავლოთ როგორ იმუშაოთ კომუნიკაციის ისეთ ჩვეულებრივ ტიპთან, როგორიცაა WiFi. ვინაიდან ამ ტიპის კომუნიკაცია საშუალებას მოგცემთ კომფორტულად შექმნათ ერთიანი ქსელი თქვენი ჭკვიანი სახლის მოწყობილობებისთვის და აკონტროლოთ ისინი, მაგალითად, მობილური ტელეფონიდან, ტაბლეტიდან ან კომპიუტერიდან, ანუ სხვა სიტყვებით რომ ვთქვათ, შექმნათ ნამდვილი ჭკვიანი სახლი, რომელიც ეღირება თქვენ ათჯერ ნაკლებს ყიდულობთ მზა ხსნარებს მაღაზიაში. WiFi-ის გამოყენება, რა თქმა უნდა, ამით არ შემოიფარგლება და ამ ტიპის კომუნიკაციის გამოყენების იმდენი მაგალითი არსებობს, რომ მათ ჩამოთვლას აზრი არ აქვს და თუ ამ გვერდზე მოხვდით, ეს ნიშნავს, რომ უკვე გჭირდებათ გამოიყენეთ WiFi რაიმე მიზეზით, თქვენ უბრალოდ უნდა გაერკვნენ, თუ როგორ უნდა იმუშაოთ მასთან სწორად.

ჩვენ გავარკვევთ მას ყველაზე იაფი და პოპულარული WiFi მოდულის საფუძველზე ESP8266-01. თქვენ შეგიძლიათ შეიძინოთ ESP8266-01 WiFi მოდული ჩვენს ვებგვერდზე.

ასეთი მოდულის ერთ-ერთი მთავარი უპირატესობაა მეხსიერების და საკუთარი მიკროკონტროლერის არსებობა დაფაზე, რაც საშუალებას აძლევს მას დამოუკიდებლად იმუშაოს ესკიზის პირდაპირ მოდულში ჩატვირთვით.

რეალურად არის ESP8266 WiFi მოდულის საკმაოდ ბევრი მოდიფიკაცია და ჩვენ მათ აქ არ ჩამოვთვლით, როგორც კი ისწავლით როგორ მუშაობას, შეგიძლიათ მარტივად დაიწყოთ მუშაობა სხვებთან. მინდა დაუყოვნებლივ აღვნიშნო, რომ WiFi-თან მუშაობა შეიძლება საკმაოდ რთულ ამოცანად მოგეჩვენოთ და თუ თქვენს ბარგში რამდენიმე დასრულებული პროექტი გაქვთ, უმჯობესია ამ დროისთვის უარი თქვათ WiFi კომუნიკაციაზე და გამოიყენოთ რადიო კომუნიკაციები თქვენს პროექტებში, რომლებთანაც მუშაობთ. ბევრად უფრო ადვილი გასაგებია. მთელი თემები და თემატური ფორუმები იქმნება WiFi მოდულებთან მუშაობისთვის, რაც კიდევ ერთხელ ადასტურებს, თუ რამდენად რთულია ადამიანების უმეტესობისთვის ამ ტიპის კომუნიკაციის დაუყოვნებლივ გაგება და ყველა ინფორმაციის ხელახალი წაკითხვის შემდეგ, ადამიანების უმეტესობა უბრალოდ უარს ამბობს. დიდი ალბათობით, მარტო ამ სტატიაში ვერ მოვახერხე ყველა მნიშვნელოვანი ინფორმაციის მოთავსება და აზრი არ აქვს ამას, თორემ მორიგი არეულობა მოჰყვება. მე შევეცდები მივყვე ყველაზე მნიშვნელოვანი პუნქტების მკაცრი თანმიმდევრობის გზას, რათა დაიწყოთ ამ ტიპის კომუნიკაციის მოქმედების პრინციპის გაგება და შემდეგ უბრალოდ განავითაროთ საკუთარი უნარები ამ მიმართულებით.

მაშ ასე, დავიწყოთ და ჯერ გადავხედოთ WiFi მოდულის ქინძისთავებს ESP8266-01.

VCC- მოდულის კვების წყარო 3V-დან 3.6V-მდე

GND- დედამიწა.

RST- გადატვირთეთ გამომავალი, რომელიც პასუხისმგებელია მოდულის გადატვირთვაზე.

CH_PD- "ჩიპის გამორთვა", როდესაც მას მიეწოდება ელექტროენერგია, მოდულის მუშაობა გააქტიურებულია.

TX- მონაცემთა გადაცემა (UART ინტერფეისი)

RX- მონაცემთა მიღება (UART ინტერფეისი)

GPIO0

GPIO2- ზოგადი დანიშნულების I/O პორტი

GPIO0 და GPIO2 პინები ზუსტად იგივე ციფრული პინებია, რომლებთანაც ჩვენ ვმუშაობთ Arduino დაფებზე სხვადასხვა სენსორებთან დასაკავშირებლად და ისინი გამოიყენება ESP8266-01 მოდულის შიდა WiFi მიკროკონტროლერზე დამოუკიდებელი ოპერაციის განხორციელების შემთხვევაში.

ESP8266-01 მოდულის საიმედოდ ჩასართავად გამოიყენეთ გარე სტაბილიზირებული 3.3 ვ დენის წყარო და უმჯობესია არ სცადოთ ენერგიის აღება თქვენი Arduino დაფიდან, რადგან მოდული მოიხმარს დენს 215 mA-მდე და ეს შეიძლება ცუდად დასრულდეს თქვენი გამართვის დაფისთვის. სად ვიშოვო სტაბილიზებული 3.3V დენის წყარო, იმედია არ არის თქვენთვის პრობლემა, თორემ აშკარად ნაადრევია ამ მოდულთან გამკლავება. მაგალითად, მე მომწონს ამ 3.3V და 5.0V YWRobot დენის მოდულის გამოყენება პურის დაფებზე სქემების სწრაფად ასაწყობად, რაც საშუალებას გაძლევთ სწრაფად მიიღოთ 3.3V ან 5V სტაბილიზირებული ძაბვა პურის დაფის შესაბამის დენის ბილიკებზე.

პლიუსის დაკავშირება (+) ჩვენი 3.3 ვ დენის წყაროდან ქინძისთავამდე VCCმოდული ESP8266-01 და მინუს (-) მიიტანეთ კვების წყარო გამოსავალზე GND. ამ მდგომარეობაში მოდულის წითელი LED ჩაირთვება, რაც გვაძლევს სიგნალს, რომ ელექტროენერგია სწორად არის დაკავშირებული. იმისათვის, რომ მოდული გააქტიურდეს, ასევე აუცილებელია პლუსის დაკავშირება (+) კვების წყარო გამომავალი CH_PDმოდული ESP8266-01 და მიზანშეწონილია ამის გაკეთება პირდაპირ 10 kOhm რეზისტორის საშუალებით. ახლა, როდესაც ჩართავთ დენს, მოდულზე წითელი LED უნდა აანთოს და ლურჯი LED სწრაფად უნდა აციმციმდეს რამდენჯერმე. თუ ასე დაგემართათ, მაშინ ყველაფერი კარგადაა, ყველაფერი სწორად დააკავშირეთ და თქვენი მოდული მუშაობს. წინააღმდეგ შემთხვევაში, ხელახლა შეამოწმეთ კავშირი ან შეცვალეთ მოდული, რადგან ის დიდი ალბათობით არ მუშაობს.

მოდით გადავიდეთ. ESP8266 WiFi მოდულთან მუშაობისთვის ჩვენ გვჭირდება USB-UART ადაპტერი. არსებობს სხვადასხვა გადამყვანები, მაგალითად: FT232RL, CP2102, PL2303. მაგრამ ჩვენ ვივარაუდებთ, რომ თქვენ არ გაქვთ ასეთი გადამყვანები და ჩვენ გამოვიყენებთ Arduino დაფას USB-UART ადაპტერად. ამისთვის გამოვიყენებ Arduino NANO დაფას, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ ნებისმიერი სხვა თქვენს განკარგულებაში. კავშირი ნებისმიერ დაფაზე იდენტურია. ჩვენ ვაკეთებთ კავშირს შემდეგი სქემის მიხედვით.

მოდით შევხედოთ რა გავაკეთეთ აქ. გთხოვთ, დაუყოვნებლივ გაითვალისწინოთ, რომ ჩვენ დავაკავშირეთ ქინძისთავები Arduino დაფაზე ჯემპრით RSTდა GND. ეს მანიპულაცია გამორთავს მიკროკონტროლერს და გვაძლევს საშუალებას, რომ ჩვენი Arduino დაფიდან შევქმნათ ნამდვილი USB-UART ადაპტერი.

ვინაიდან ჩვენ ვკვებავთ ESP8266-01 WiFi მოდულს ცალკე გარე კვების წყაროდან, გახსოვდეთ, რომ ჩვენს პროექტებში ყოველთვის უნდა დავაკავშიროთ ყველა კვების წყაროს მიწა. ამიტომ ჩვენ ვაკავშირებთ გამომავალს GND Arduino დაფები ადგილზე (-) ჩვენი გარე 3.3V კვების წყარო, რომელიც შექმნილია ESP8266-01 მოდულის კვებისათვის.

დასკვნა TXდააკავშირეთ თქვენი Arduino დაფა პინთან TX ESP8266-01 მოდული. ეს ხაზი გადასცემს მონაცემებს WiFi მოდულიდან Arduino დაფაზე. ნებისმიერს, ვინც იცნობს UART ინტერფეისს, შეიძლება გაინტერესებდეს: „მაგრამ როგორ შეიძლება იყოს ეს ყველგან, სადაც ისინი ასწავლიან, რომ TX უნდა დაუკავშირდეს RX-ს და RX იღებს“. და მართალი იქნებით. ასეა, TX ყოველთვის დაკავშირებულია RX-თან, მაგრამ იმ შემთხვევაში, როდესაც Arduino-სგან ვამზადებთ UART ადაპტერს, აუცილებელია მოწყობილობების პირდაპირ დაკავშირება. ჩათვალეთ ეს წესის გამონაკლისად.

ხაზი RXჩვენ ასევე ვუკავშირდებით თქვენს Arduino დაფას პირდაპირ ხაზთან RX ESP8266-01 მოდული. ეს ხაზი გადასცემს ინფორმაციას Arduino დაფიდან WiFi მოდულის დაფაზე. მაგრამ ჩვენ ამ კავშირს ვაკეთებთ ეგრეთ წოდებული ძაბვის გამყოფის საშუალებით, რომელიც შედგება ორი რეზისტორისგან, ნომინალური მნიშვნელობებით 1 kOhm და 2 kOhm. ჩვენ უნდა შევამციროთ ძაბვა ამ ხაზზე ორი რეზისტორის გამოყენებით (ძაბვის გამყოფი), რადგან Arduino დაფა გადასცემს ლოგიკურ სიგნალს 5 ვ ძაბვით, ხოლო WiFi მოდული მუშაობს 3.3 ვ ძაბვით. ლოგიკური სიგნალის გადასაყვანად შეგვეძლო გამოგვეყენებინა სპეციალური ლოგიკური დონის გადამყვანი ბარათი, რაც, რა თქმა უნდა, უფრო სწორი იქნებოდა, მაგრამ კიდევ ერთხელ, დავუშვათ, რომ თქვენ არ გაქვთ, და ჩვენ მოგვიწია უფრო მარტივი მარშრუტის გავლა და ამის გაკეთება ძაბვის გამყოფი.

ჩვენ ახლა დავაკავშირეთ ყველაფერი, რაც საჭიროა შემდგომი მუშაობისთვის, მაგრამ ჯერ კიდევ გვაქვს კიდევ 3 ქინძისთავი გამოუყენებელი ( GPIO0, GPIO2და RST) ზე WiFi მოდული ESP8266-01. WiFi მოდულის სტაბილური მუშაობისთვის, დარჩენილი გამოუყენებელი ქინძისთავები პოზიტივისკენ უნდა გადავიყვანოთ (+) მოდულის ელექტროგადამცემი ხაზები 10 kOhm რეზისტორების მეშვეობით.

ეს დაგვიხსნის სხვადასხვა ჩარევისგან (ჩარევისგან) და მოდულის მუშაობას სტაბილურს გახდის. უმჯობესია ამის გაკეთება დაუყოვნებლივ. წინააღმდეგ შემთხვევაში, ნუ გაგიკვირდებათ, რომ თქვენი მოდული მუდმივად გადატვირთულია, აწარმოებს გაუგებარ ინფორმაციას ან საერთოდ არ სურს მუშაობა. მიკროკონტროლერის გამოუყენებელ ქინძისთავებს ასაწევი რეზისტორების გამოყენება უნდა იყოს ცერის წესი, თუ გსურთ სტაბილური მუშაობა თქვენს პროექტებში.

ჩვენ კვლავ ვამოწმებთ ESP8266-01 WiFi მოდულის ფუნქციონირებას. ჩართეთ დენი და ნახეთ, რომ წითელი LED ანათებს და ლურჯი LED რამდენჯერმე ანათებს. თუ ყველაფერი ასე მოხდა, მაშინ კარგი, მოდით გადავიდეთ. წინააღმდეგ შემთხვევაში, ჩვენ ვამოწმებთ კავშირების სისწორეს, ისევე როგორც ყველა კონტაქტის ხარისხს. შეიძლება უბრალოდ ტრივიალური სიტუაციაა, როცა ათჯერ გადაამოწმეთ ყველაფერი და დარწმუნდით, რომ ყველაფერი სწორად იყო დაკავშირებული, მაგრამ მოდულის ჩართვისას ხედავთ, რომ ლურჯი LED არ იქცევა ადეკვატურად, მუდმივად ჩართულია, მუდმივად ციმციმებს. ან საერთოდ არ პასუხობს არაფერს. ეს შეიძლება იყოს ცუდი კონტაქტის გამო ზოგიერთ ხაზზე. მაგალითად, პურის დაფაზე მიკროსქემის აწყობისას, ერთ-ერთი რეზისტორი თავის ადგილზე მჭიდროდ არ ზის და ეს იწვევს ჩარევას. შეამოწმეთ კავშირის ხარისხი. მოდული ძალიან მგრძნობიარეა. ნუ უგულებელყოფთ ამას. ეს არის არასტაბილური ოპერაციის საერთო მიზეზი.

ზოგადად, ჩვენ დავასრულეთ კავშირი. ახლა ჩვენ უნდა მოვამზადოთ Arduino IDE პროგრამა ESP8266-01 WiFi მოდულთან მუშაობისთვის. ამისათვის ჩვენ უნდა გადმოვწეროთ და დავაინსტალიროთ Arduino IDE-ში საჭირო არქივი ბიბლიოთეკებით, მაგალითებით და ESP დაფებით, რაც შემდგომში საშუალებას მოგვცემს ატვირთოთ ესკიზები პირდაპირ ESP8266-01 მოდულის მიკროკონტროლერზე, შევცვალოთ firmware და ა.შ. ამ სტატიის მიზნებისთვის, ჩვენ, სავარაუდოდ, არ დაგვჭირდება ეს პარამეტრები, მაგრამ მეჩვენება, რომ მას შემდეგ რაც გავარკვევთ, როგორ დავაკავშიროთ მოდული, პროცედურა სწორი იქნება, თუ დაუყოვნებლივ გადმოვწერთ ყველაფერს, რაც საჭიროა Arduino IDE-სთან მუშაობისთვის. . აქ ყველაფერი პრინციპში მარტივია.

გაუშვით პროგრამა Arduino IDEდა გადადით მენიუში "ფაილი" - "პარამეტრები"

ფანჯარაში, რომელიც გამოჩნდება, ზედა ველში ვწერთ "esp8266". შედეგად, ჩვენ გვექნება მხოლოდ საჭირო firmware ფანჯარაში. როდესაც დააწკაპუნებთ firmware-ზე, გამოჩნდება ღილაკი "ინსტალაცია". დააჭირეთ ღილაკს "ინსტალაცია"და დაელოდეთ სანამ ყველაფერი დაინსტალირდება. არქივი საკმაოდ დიდია, დაახლოებით 150 მეგაბაიტი, ასე რომ თქვენ მოგიწევთ ლოდინი.

ინსტალაციის დასრულების შემდეგ. ჩვენ გადატვირთეთ Arduino IDE და ვხედავთ, თუ როგორ გამოჩნდა ახალი ESP დაფები "ინსტრუმენტები" - "დაფები" მენიუში. სულ ესაა. ჩვენ დავასრულეთ Arduino IDE-ს დაყენება. ჩვენ ჯერ არ გვჭირდება ეს პარამეტრები, მაგრამ სამომავლო სამუშაოებში მათ გარეშე ვერ შევძლებთ.

ჩვენ ყველაფერი დაკავშირებული და მომზადებული გვაქვს, ახლა ჩვენ შეგვიძლია დავიწყოთ კონტროლის გაგება. სინამდვილეში, ახლა ჩვენ გავაგრძელებთ მოდულის შემოწმებას და კონფიგურაციას AT ბრძანებების გამოყენებით და ამის გარეშე არაფერია. WiFi მოდულები დანერგილია ისე, რომ მათთან ყველა კომუნიკაცია ხდება ეგრეთ წოდებული AT ბრძანებების გამოყენებით, რომლებიც ჩართულია მოდულის firmware-ში. ჩვენ აქ არ ჩამოვთვლით ყველა AT ბრძანებას, საკმაოდ ბევრია და თუ გსურთ ყურადღებით შეისწავლოთ ყველაფერი, შეგიძლიათ მარტივად იპოვოთ ისინი ინტერნეტში. ახლა კი მხოლოდ ყველაზე საჭიროს გამოვიყენებთ დასაწყებად.

ასე რომ, ჩვენ ვუკავშირდებით ჩვენს Arduino დაფას USB კაბელის საშუალებით კომპიუტერთან. და ენერგიის გარე წყარო, რომელიც ძალას აძლევს WiFi მოდული ESP8266-01ჯერ არ არის საჭირო მისი ჩართვა. ჩვენ გავუშვით Arduino IDE პროგრამა, აირჩიეთ ჩვენი Arduino დაფა "Tools" მენიუდან, ჩემს შემთხვევაში ეს არის Arduino NANO და თქვენ ირჩევთ თქვენსას. ასევე, არ დაგავიწყდეთ აირჩიოთ პორტი, რომელსაც ჩვენი Arduino უკავშირდება. იმედია გესმით ეს ყველაფერი და იცით როგორ გააკეთოთ ეს.

ღია პორტის მონიტორინგი "ინსტრუმენტები" - "პორტის მონიტორი". პორტის სიჩქარის არჩევა 74880 (ამ სიჩქარით მოდული იწყება) და აირჩიეთ „NL & CR“ მარცხნივ სიაში

ახლა ჩვენ ვუკავშირდებით გარე კვების წყაროს, რომელიც კვებავს ჩვენს WiFi მოდულს. რის შემდეგაც თქვენ უნდა ნახოთ დაახლოებით შემდეგი ინფორმაცია პორტის მონიტორზე.

აქ ჩვენ ვხედავთ გარკვეულ ინფორმაციას ჩვენს WiFi მოდულზე (სიჩქარე, მეხსიერების რაოდენობა ბორტზე და ა.შ.). მიღებული ინფორმაცია შეიძლება განსხვავდებოდეს WiFi მოდულის firmware ვერსიის მიხედვით. ნუ გავამახვილებთ ყურადღებას ამაზე. სხვა რამეა მნიშვნელოვანი. ქვემოთ ჩვენ ვხედავთ უაზრო სიმბოლოების ერთობლიობას, ეს ნიშნავს, რომ ჩვენ მიერ დაყენებული პორტის სიჩქარე (74880 baud) შესაფერისია მხოლოდ მოდულის საწყისი ჩატვირთვისთვის, რათა ეს ინფორმაცია ნორმალურად ნახოთ, მაგრამ ეს სიჩქარე არ არის შესაფერისი ნორმალური კომუნიკაციისთვის. WiFi მოდული.

პორტის სწორი სიჩქარის ასარჩევად, ჩვენ უბრალოდ შევცვლით პორტის სიჩქარეს და გამოგიგზავნით სიმბოლოებს პორტში (ველი ზედა და გაგზავნის ღილაკი) ATსანამ პასუხს არ მივიღებთ OK. თუ ცდილობთ სიმბოლოების გაგზავნას ახლავე ATპორტამდე 74880 სიჩქარით, პასუხად მიიღებთ კიდევ ერთ ან ორ უაზრო სიმბოლოს.

სცადეთ დაუყოვნებლივ დააყენოთ სიჩქარე 115200 ბაუდზე და გაგზავნოთ AT ბრძანება. ყველაზე ხშირად, მოდულები ციმციმებენ ამ სიჩქარით.

ეს არის სურათი, რომელიც უნდა ნახოთ თქვენს პორტის მონიტორზე. თუ პასუხად მაინც მიიღებთ სიმბოლოების გაუგებარ კრებულს, შეამცირეთ სიჩქარე და ხელახლა გაგზავნეთ ATბრძანებებს, სანამ პასუხი არ დაბრუნდება OK. თუ თქვენ სცადეთ ყველა სიჩქარე და ვერ მიიღეთ სწორი პასუხი, მაშინ არ გაგიმართლათ და მოდული ციმციმებულია firmware-ით არასტანდარტული სიჩქარით. შემდეგ რჩება მხოლოდ მოდულის განახლება ჩვეულებრივი პროგრამული უზრუნველყოფით, მაგრამ ეს ცალკე სტატიის თემაა.

ვიმედოვნებ, რომ ყველაფერი კარგადაა და თქვენ აირჩიეთ სწორი სიჩქარე. სხვათა შორის, თუ ცდილობთ გამორთოთ და ჩართოთ WiFi მოდული ხელახლა მას შემდეგ, რაც აირჩიეთ სწორი სიჩქარე, მაშინ იმავე საწყისი ინფორმაციის ნაცვლად, რომელიც სწორად იყო ნაჩვენები 74880 ბაუდის სიჩქარით, პირიქით, იხილეთ პერსონაჟების შერეული ნაკრები, მაგრამ ბოლოს ნახავთ სიტყვას "მზადაა". მაგრამ ჩვენ გვაქვს შესაძლებლობა ვნახოთ ეს საწყისი ინფორმაცია ნორმალური ფორმით, ამისათვის საჭიროა მოდული პროგრამულად გადატვირთოთ AT ბრძანების გამოყენებით AT+RST.

თქვენი ESP8266-01 WiFi მოდულის firmware ვერსიის გასარკვევად, თქვენ უნდა გაგზავნოთ ბრძანება პორტის მონიტორზე AT+GMRდა პასუხად მიიღებთ დაახლოებით შემდეგ ინფორმაციას:

ESP8266-01 WiFi მოდულს შეუძლია იმუშაოს როგორც წვდომის წერტილის, ასევე კლიენტის რეჟიმში. იმისათვის, რომ მოდულმა ერთდროულად იმუშაოს ყველა რეჟიმში, გაგზავნეთ ბრძანება პორტის მონიტორზე AT+CWMODE=3და საპასუხოდ უნდა მიიღოთ OK.

გუნდი AT+CWLAPსაშუალებას მოგცემთ ნახოთ ყველა WiFi წვდომის წერტილი, რომელსაც თქვენი მოდული ამჟამად ხედავს. ჩემი მოდული, მაგალითად, ამჟამად ხედავს მხოლოდ სამ WiFi წვდომის წერტილს მის დაფარვის ზონაში. პასუხი დაახლოებით ასეთი უნდა იყოს:

მაგალითად, ჩვენ ვიცით მესამე წვდომის წერტილის პაროლი და მასთან დასაკავშირებლად ვასრულებთ ბრძანებას AT+CWJAP="სახელი","პაროლი", ჩემს შემთხვევაში ეს ბრძანება ასე გამოიყურება AT+CWJAP="dsl_unlim_512_home","11111111", რაზეც მივიღებთ წარმატებულ პასუხს:

ბრძანების პარამეტრები იწერება ESP8266-01 WiFi მოდულის ფლეშ მეხსიერებაში და თუ მოდულს გამოვრთავთ და ხელახლა ჩავრთავთ, ის ავტომატურად დაუკავშირდება ამ წვდომის წერტილს. შეხედე, შემთხვევით, ბრძანებაში სივრცე არ დაუშვა, თორემ პასუხს მიიღებ შეცდომა. გთხოვთ გაითვალისწინოთ, რომ firmware-ის უახლეს ვერსიებში რეკომენდებულია ბრძანების გამოყენება AT+CWJAP_CUR, ანუ ბრძანება ასე გამოიყურება AT+CWJAP_CUR="სახელი","პაროლი".თუ მოულოდნელად დაგვავიწყდა, რომელ წვდომის წერტილთან არის დაკავშირებული ჩვენი მოდული, უნდა გავგზავნოთ ბრძანება AT+CWJAP?ან AT+CWJAP_CUR?და პასუხად მივიღებთ წვდომის წერტილს, რომელზეც ამჟამად არის დაკავშირებული WiFi მოდული.

კავშირით და თავდაპირველი დაყენებით WiFi მოდული ESP8266-01ჩვენ გავარკვიეთ. მოდული მუშაობს და მზად არის თქვენი მომავალი პროექტების განსახორციელებლად. ამ მოდულთან მუშაობის ყველა შესაძლო მაგალითის ანალიზი ერთი სტატიის ფარგლებში უბრალოდ შეუძლებელია და ამას შემდეგ სტატიებში შევეხებით. და მათთვის, ვინც არც თუ ისე კარგად იცნობს პროგრამირებას, მაგრამ ნამდვილად სურს სწრაფად დაიწყოს თავისი პროექტების მართვა WiFi-ს გამოყენებით, გირჩევთ გააცნოთ ისინი RemoteXY WiFi პროექტის დიზაინერს. ეს საიტი დაგეხმარებათ მარტივად შექმნათ საკონტროლო ინტერფეისი თქვენი მობილური ტელეფონისთვის ან ტაბლეტისთვის და გამოიყენოთ იგი თქვენი მოწყობილობის სამართავად, რომელსაც უკავშირებთ WiFi მოდულს.

ბევრმა მომხმარებელმა უკვე მიიპყრო ყურადღება Espressif-ის მიერ გამოშვებულ ESP8266-12 ჩიპზე. მისი ღირებულება მნიშვნელოვნად იაფია სტანდარტული Bluetooth ადაპტერის დაფასთან შედარებით და მიუხედავად მისი მცირე ზომებისა, მას მნიშვნელოვნად დიდი შესაძლებლობები აქვს. ახლა სახლის ყველა ენთუზიასტს აქვს შესაძლებლობა იმუშაოს Wi-Fi ქსელზე ერთდროულად ორ რეჟიმში, ანუ დააკავშიროს თავისი კომპიუტერი ნებისმიერ წვდომის წერტილთან ან ჩართოს ის, როგორც ასეთი წერტილი.

მეორეს მხრივ, სწორად უნდა გესმოდეთ, რომ ასეთი დაფები არ არის მხოლოდ ფარები, რომლებიც განკუთვნილია მხოლოდ Wi-Fi კომუნიკაციისთვის. ESP8266 თავისთავად არის მიკროკონტროლერი, რომელსაც აქვს საკუთარი UART, GPIO და SPI ინტერფეისები, ანუ ის შეიძლება გამოყენებულ იქნას როგორც სრულიად ავტონომიური მოწყობილობა. ამ ჩიპის გამოშვების შემდეგ, ბევრმა მას ნამდვილი რევოლუცია უწოდა და დროთა განმავლობაში, ასეთი მოწყობილობები დაიწყებენ ჩაშენებას უმარტივეს ტიპის მოწყობილობებშიც კი, მაგრამ ამ დროისთვის მოწყობილობა შედარებით ახალია და მისთვის სტაბილური პროგრამული უზრუნველყოფა არ არსებობს. მრავალი ექსპერტი მთელს მსოფლიოში ცდილობს საკუთარი პროგრამული უზრუნველყოფის გამოგონებას, რადგან მათი დაფაზე ატვირთვა სინამდვილეში არ არის რთული, მაგრამ მიუხედავად სხვადასხვა სირთულეებისა, მოწყობილობას უკვე შეიძლება ეწოდოს საკმაოდ შესაფერისი სამუშაოსთვის.

ამ მომენტისთვის, ამ მოდულის გამოყენების მხოლოდ ორი ვარიანტი განიხილება:

  • დაფის გამოყენება დამატებით მიკროკონტროლერთან ან კომპიუტერთან ერთად, რომელიც გააკონტროლებს მოდულს UART-ის საშუალებით.
  • ჩიპისთვის firmware-ის დამოუკიდებელი ჩაწერა, რაც საშუალებას გაძლევთ მოგვიანებით გამოიყენოთ იგი როგორც თვითკმარი მოწყობილობა.

სავსებით ბუნებრივია, რომ ამ შემთხვევაში არ განვიხილავთ დამოუკიდებელ firmware-ს.

გამოყენების სიმარტივისა და კარგი მუშაობის გათვალისწინებით, ბევრს ურჩევნია ESP8266 მოდელი მრავალ მიკროკონტროლერს შორის. ამ მოწყობილობის პროგრამული უზრუნველყოფის დაკავშირება და განახლება ძალიან მარტივი და ხელმისაწვდომია და ხორციელდება იმავე აპარატურაზე, რომელზეც მოწყობილობა დაკავშირებულია კომპიუტერთან. ანუ, ასევე USB-TTL კონვერტორის საშუალებით ან, თუ ვინმეს ურჩევნია კავშირის სხვა ვარიანტები, ეს შეიძლება გაკეთდეს RPi და Arduino-ს საშუალებით.

როგორ შევამოწმო?

ახლად შეძენილი მოწყობილობის ფუნქციონალურობის შესამოწმებლად, თქვენ უნდა გამოიყენოთ სპეციალური სტაბილიზირებული ძაბვის წყარო, რომელიც შეფასებულია 3.3 ვოლტზე. დაუყოვნებლივ უნდა აღინიშნოს, რომ ამ მოდულის რეალური მიწოდების ძაბვის დიაპაზონი არის 3-დან 3.6 ვოლტამდე, ხოლო გაზრდილი ძაბვის მიწოდება დაუყოვნებლივ გამოიწვევს იმ ფაქტს, რომ თქვენ უბრალოდ დააზიანებთ თქვენს ESP8266-ს. პროგრამული უზრუნველყოფა და სხვა პროგრამული უზრუნველყოფა შეიძლება დაიწყოს არასწორად მუშაობა ასეთი სიტუაციის შემდეგ და თქვენ დაგჭირდებათ მოწყობილობის შეკეთება ან როგორმე გამოსწორება.

ამ მიკროკონტროლერის მოდელის ფუნქციონირების დასადგენად, თქვენ უბრალოდ უნდა დააკავშიროთ სამი პინი:

  • CH_PD და VCC დაკავშირებულია 3.3 ვოლტ მიწოდებასთან.
  • GND აკავშირებს მიწას.

თუ თქვენ არ იყენებთ ESP-01-ს, არამედ სხვა მოდულს და მას უკვე აქვს გამომავალი GPIO15, მაშინ ამ შემთხვევაში დაგჭირდებათ მისი დამატებით დაკავშირება მიწასთან.

თუ ქარხნული პროგრამული უზრუნველყოფა ნორმალურად დაიწყო, მაშინ ამ შემთხვევაში ხედავთ და ცისფერი შუქი რამდენჯერმე აციმციმდება. თუმცა, აღსანიშნავია, რომ ESP8266 სერიის ყველა მოწყობილობას არ აქვს წითელი დენის მაჩვენებელი. ზოგიერთ მოწყობილობაზე პროგრამული უზრუნველყოფა არ ითვალისწინებს წითელი ინდიკატორის განათებას, თუ მოდული არ არის (კერძოდ, ეს ეხება ESP-12 მოდელს).

დაკავშირების შემდეგ, თქვენს უკაბელო ქსელში გააქტიურდება ახალი წვდომის წერტილი, რომელსაც დაერქმევა ESP_XXX და მისი აღმოჩენა იქნება ნებისმიერი მოწყობილობიდან, რომელსაც აქვს წვდომა Wi-Fi-ზე. ამ შემთხვევაში, წვდომის წერტილის სახელი პირდაპირ დამოკიდებულია თქვენს მიერ გამოყენებული პროგრამული უზრუნველყოფის მწარმოებელზე და, შესაბამისად, შეიძლება განსხვავებული იყოს.

თუ წერტილი გამოჩნდება, შეგიძლიათ გააგრძელოთ ექსპერიმენტი, წინააღმდეგ შემთხვევაში თქვენ მოგიწევთ ხელახლა შეამოწმოთ ელექტრომომარაგება, ასევე GND და CH_PD კავშირების სისწორე და თუ ყველაფერი სწორად არის დაკავშირებული, მაშინ, სავარაუდოდ, თქვენ კვლავ ცდილობთ გამოიყენეთ გატეხილი მოდული ან მასზე უბრალოდ დამონტაჟებულია firmware არასტანდარტული პარამეტრებით.

როგორ დავაკავშიროთ ის სწრაფად?

ამ მოდულის დასაკავშირებლად საჭირო სტანდარტული ნაკრები მოიცავს შემდეგს:

  • თავად მოდული;
  • solderless breadboard;
  • მდედრობითი მამრობითი სადენების სრული კომპლექტი, რომელიც განკუთვნილია პურის დაფისთვის, ან სპეციალური DUPONT M-F კაბელი;
  • USB-TTL კონვერტორი, რომელიც დაფუძნებულია PL2303, FTDI ან რაიმე მსგავს ჩიპზე. საუკეთესო ვარიანტია, თუ RTS და DTR ასევე გამოდის USB-TTL ადაპტერზე, რადგან ამის გამო შეგიძლიათ მიაღწიოთ პროგრამული უზრუნველყოფის საკმაოდ სწრაფ ჩატვირთვას ზოგიერთი UDK-დან, Arduino IDE-დან ან Sming-დან, GPIO0-ზე ხელით გადართვის გარეშეც კი.

თუ იყენებთ 5 ვოლტიან გადამყვანს, მაშინ ამ შემთხვევაში დაგჭირდებათ დამატებითი სიმძლავრის სტაბილიზატორის შეძენა 1117 ჩიპზე ან რაიმე მსგავსზე დაფუძნებული, ასევე კვების წყარო (სტანდარტული 1117-ისთვის, თუნდაც ჩვეულებრივი 5- ვოლტიანი სმარტფონის დამტენი საკმაოდ შესაფერისია). მიზანშეწონილია არ გამოიყენოთ Arduino IDE ან USB-TTL, როგორც კვების წყარო ESP8266-ისთვის, არამედ გამოიყენოთ ცალკე, რადგან ამან შეიძლება საბოლოოდ მოგვარდეს მრავალი პრობლემა.

მოდულის კომფორტული და მუდმივი მუშაობის უზრუნველსაყოფად გაფართოებული ნაკრები მოითხოვს დამატებითი რეზისტორების, LED-ების და DIP კონცენტრატორების გამოყენებას. გარდა ამისა, თქვენ ასევე შეგიძლიათ გამოიყენოთ იაფი USB მონიტორი, რომელიც საშუალებას მოგცემთ მუდმივად აკონტროლოთ მოხმარებული დენის რაოდენობა და ასევე უზრუნველყოთ USB ავტობუსის მცირე დაცვა.

რა უნდა გავაკეთო?

უპირველეს ყოვლისა, აღსანიშნავია ის ფაქტი, რომ ESP8266-ში კონტროლი შეიძლება ოდნავ განსხვავდებოდეს იმისდა მიხედვით, თუ რომელ კონკრეტულ მოდელს იყენებთ. დღესდღეობით საკმაოდ ბევრი ასეთი მოდულია ხელმისაწვდომი და პირველი რაც დაგჭირდებათ არის მოდელის იდენტიფიცირება, რომელსაც იყენებთ და გადაწყვიტეთ მისი პინი. ამ ინსტრუქციაში ვისაუბრებთ ESP8266 ESP-01 V090 მოდულთან მუშაობაზე და თუ იყენებთ სხვა მოდელს GPIO15 პინით (HSPICS, MTDO), თქვენ მოგიწევთ მისი გაყვანა მიწაზე როგორც სტანდარტული დასაწყებად. მოდული და პროგრამული უზრუნველყოფის რეჟიმის გამოყენება.

ამის შემდეგ, ორჯერ შეამოწმეთ, რომ დაკავშირებული მოდულის მიწოდების ძაბვა არის 3.3 ვოლტი. როგორც ზემოთ აღინიშნა, დასაშვები დიაპაზონი 3-დან 3.6 ვოლტამდეა და თუ ის გაიზრდება, მოწყობილობა მწყობრიდან გამოდის, მაგრამ მიწოდების ძაბვა შეიძლება მნიშვნელოვნად დაბალიც კი იყოს დოკუმენტებში მითითებულ 3 ვოლტზე.

თუ იყენებთ 3.3 ვოლტ USB-TTL კონვერტორს, მაშინ დააკავშირეთ მოდული ზუსტად ისე, როგორც ქვემოთ მოცემულ სურათზე მარცხენა მხარეს. თუ იყენებთ ექსკლუზიურად ხუთ ვოლტ USB-TTL-ს, მაშინ ყურადღება მიაქციეთ ფიგურის მარჯვენა მხარეს. შეიძლება ბევრს მოეჩვენოს, რომ სწორი წრე უფრო ეფექტურია იმის გამო, რომ იგი იყენებს ცალკე დენის წყაროს, მაგრამ სინამდვილეში, 5 ვოლტიანი USB-TTL კონვერტორის გამოყენების შემთხვევაში, სასურველია ასევე დამზადდეს დამატებითი რეზისტორის გამყოფი სამვოლტიანი და ხუთვოლტიანი ლოგიკური დონის შესატყვისობის უზრუნველსაყოფად, ან უბრალოდ გამოიყენეთ დონის კონვერტაციის მოდული.

კავშირის მახასიათებლები

მარჯვენა ფიგურაში ნაჩვენებია ამ მოდულის UTXD (TX), ისევე როგორც URXD (RX) კავშირი ხუთ ვოლტ TTL ლოგიკასთან და ასეთი პროცედურები ხორციელდება მხოლოდ თქვენი საფრთხის და რისკის ქვეშ. ESP8266-ისთვის აღწერილობაში ნათქვამია, რომ მოდული ეფექტურად მუშაობს მხოლოდ 3.3 ვოლტიანი ლოგიკით. უმეტეს შემთხვევაში, ხუთვოლტიანი ლოგიკით მუშაობის დროსაც კი, მოწყობილობა არ იშლება, მაგრამ ასეთი სიტუაციები ზოგჯერ ხდება, ამიტომ ასეთი კავშირი არ არის რეკომენდებული.

თუ არ გაქვთ შესაძლებლობა გამოიყენოთ სპეციალიზებული 3.3 ვოლტი USB-TTL გადამყვანი, შეგიძლიათ გამოიყენოთ რეზისტორის გამყოფი. აღსანიშნავია ისიც, რომ სწორ სურათზე 1117 დენის სტაბილიზატორი დაკავშირებულია დამატებითი გაყვანილობის გარეშე და ეს ნამდვილად მუშაობს ტექნოლოგია, მაგრამ მაინც უმჯობესია გამოიყენოთ 1117 კავშირის დიაგრამა კონდენსატორის გაყვანილობით - თქვენ უნდა შეამოწმოთ იგი ESP8266 მონაცემთა ფურცელი თქვენი სტაბილიზატორისთვის ან გამოიყენეთ სრულიად მზად ერთი მოდული, რომელიც დაფუძნებულია 1117 ბაზაზე.

მოდულის დასაწყებად, თქვენ უნდა გახსნათ GPIO0-TND წრე, რის შემდეგაც შეგიძლიათ გამოიყენოთ ძალა. აღსანიშნავია, რომ ყველაფერი უნდა გაკეთდეს ზუსტად ამ თანმიმდევრობით, ანუ ჯერ დარწმუნდით, რომ GPIO0 "ჰაერშია" და მხოლოდ ამის შემდეგ გამოიყენეთ დენი CH_PD და VCC.

როგორ დავაკავშიროთ სწორად?

თუ თქვენ შეგიძლიათ დაზოგოთ ერთზე მეტი საღამო ESP8266 მოდულის სწორად დასაკავშირებლად, შეგიძლიათ გამოიყენოთ უფრო სტაბილური ვარიანტი. ზემოთ მოცემულ დიაგრამაში ხედავთ კავშირის ვარიანტს ავტომატური პროგრამული უზრუნველყოფის ჩამოტვირთვით.

აღსანიშნავია, რომ ზემოთ მოცემულ სურათზე არ ჩანს უფასო GPIO ან ADC-ების გამოყენება და მათი კავშირი პირდაპირ იქნება დამოკიდებული იმაზე, თუ რისი დანერგვა გსურთ, მაგრამ თუ გსურთ უზრუნველყოთ სტაბილურობა, გახსოვდეთ, რომ ყველა GPIO-ს და ADC-ზე გადაიყვანეთ. დამიწება ასაწევი რეზისტორების გამოყენებით.

საჭიროების შემთხვევაში, 10k რეზისტორები შეიძლება შეიცვალოს ნებისმიერი სხვა 4.7k-დან 50k-მდე დიაპაზონში, GPIO15-ის გამოკლებით, რადგან მისი ღირებულება არ უნდა იყოს 10k-ზე მეტი. კონდენსატორის მნიშვნელობა, რომელიც არბილებს მაღალი სიხშირის პულსაციას, შეიძლება ოდნავ განსხვავებული იყოს.

RESET-ისა და GPIO16-ის დაკავშირება 470 Ohm ღრმა ძილის რეზისტორის გამოყენებით შესაძლოა საჭირო გახდეს შესაბამისი რეჟიმის გამოყენებისას, რადგან ღრმა ძილის რეჟიმიდან გამოსასვლელად მოდული ასრულებს სრულ გადატვირთვას GPIO16-ზე დაბალი დონის გამოყენებით. ამ კავშირის გარეშე, თქვენი მოდულის ღრმა ძილის რეჟიმი სამუდამოდ გაგრძელდება.

ერთი შეხედვით, შეიძლება ჩანდეს, რომ GPIO0, GPIO1 (TX), GPIO2, GPIO3 (RX) და GPIO15 დაკავებულია, ასე რომ თქვენ ვერ შეძლებთ მათ გამოყენებას თქვენი მიზნებისთვის, მაგრამ სინამდვილეში ეს შორს არის შემთხვევისგან. GPIO0-ზე და GPIO2-ზე საკმარისად მაღალი დონე, ისევე როგორც დაბალი დონე GPIO15-ზე, შეიძლება საჭირო გახდეს მხოლოდ მოდულის საწყისი გაშვებისთვის და მომავალში მათი გამოყენება თქვენი შეხედულებისამებრ შეგიძლიათ. ერთადერთი, რაც უნდა აღინიშნოს, არის გახსოვდეთ, რომ უზრუნველყოთ საჭირო დონეები თქვენი აღჭურვილობის სრულ გადატვირთვამდე.

თქვენ ასევე შეგიძლიათ გამოიყენოთ TX, RX, როგორც GPIO1 და GPIO3 ალტერნატივა, მაგრამ არ უნდა დაგვავიწყდეს, რომ მოდულის დაწყების შემდეგ, თითოეული პროგრამული უზრუნველყოფა იწყებს TX-ის „გაყვანას“ და პარალელურად აგზავნის გამართვის ინფორმაციას UART0-ზე 74480 სიჩქარით, მაგრამ შემდეგ ჩამოტვირთვა წარმატებული იქნება, მათი გამოყენება შესაძლებელია არა მხოლოდ როგორც UART0 მონაცემების სხვა მოწყობილობასთან გაცვლის მიზნით, არამედ როგორც სტანდარტული GPIO.

მოდულებისთვის, რომლებსაც აქვთ სადენიანი პინების მცირე რაოდენობა (მაგალითად, ESP-01), არ არის საჭირო გაუქმებული პინების დაკავშირება, ანუ მხოლოდ GND, CH_PD, VCC, GPIO0, GPIO2 და RESET არის გაყვანილი ESP-01-ზე. , და ეს არის ის, რაც გჭირდებათ, უნდა გამკაცრდეს. არ არის საჭირო პირდაპირ ESP8266EX ჩიპზე შედუღება და შემდეგ შიშველი ქინძისთავები, თუ ეს ნამდვილად არ გჭირდებათ.

ასეთი გაყვანილობის დიაგრამები გამოიყენებოდა კვალიფიციური სპეციალისტების მიერ ჩატარებული დიდი რაოდენობით ექსპერიმენტების შემდეგ და შეგროვდა მრავალი განსხვავებული ინფორმაციისგან. აღსანიშნავია, რომ ასეთი სქემებიც კი არ შეიძლება ჩაითვალოს იდეალურად, რადგან შეიძლება გამოყენებულ იქნას მრავალი სხვა, არანაკლებ ეფექტური ვარიანტი.

კავშირი Arduino-ს საშუალებით

თუ რაიმე მიზეზით არ გაქვთ 3.3 ვოლტი USB-TTL გადამყვანი, მაშინ ESP8266 WiFi მოდული შეიძლება დაუკავშირდეს Arduino-ს მეშვეობით ჩაშენებული გადამყვანით. აქ თქვენ ჯერ უნდა მიაქციოთ ყურადღება სამ ძირითად ელემენტს:

  • ESP8266-თან გამოყენებისას, Arduino Reset თავდაპირველად უკავშირდება GND-ს, რათა თავიდან აიცილოს მიკროკონტროლერი და ამ ფორმით გამოიყენებოდა როგორც გამჭვირვალე USB-TTL კონვერტორი.
  • RX და TX არ იყო დაკავშირებული "გზაჯვარედინზე", არამედ პირდაპირ - RX-RX (მწვანე), TX-TX (ყვითელი).
  • ყველაფერი დანარჩენი დაკავშირებულია ზუსტად ისე, როგორც ზემოთ იყო აღწერილი.

რა გასათვალისწინებელია

ეს წრე ასევე მოითხოვს TTL დონის 5 ვოლტის შესაბამისობას Arduino-ზე, ისევე როგორც 3.3 ვოლტზე ESP8266-ზე, მაგრამ მას შეუძლია საკმაოდ კარგად იმუშაოს ორივე გზით.

ESP8266-თან დაკავშირებისას, Arduino შეიძლება აღჭურვილი იყოს დენის რეგულატორით, რომელიც ვერ უმკლავდება ESP8266-ის მიერ მოთხოვნილ დენს, ამიტომ მის გააქტიურებამდე მოგიწევთ შეამოწმოთ მონაცემთა ცხრილი, რომელსაც იყენებთ. არ შეეცადოთ დააკავშიროთ სხვა ენერგომოხმარებადი კომპონენტები ESP8266-თან, რადგან ამან შეიძლება გამოიწვიოს Arduino-ში ჩაშენებული დენის რეგულატორის უბრალოდ გაუმართაობა.

ასევე არსებობს ESP8266 და Arduino კავშირის კიდევ ერთი სქემა, რომელიც იყენებს SoftSerial-ს. ვინაიდან SoftSerial ბიბლიოთეკისთვის პორტის სიჩქარე 115200 ძალიან მაღალია და არ შეუძლია სტაბილური მუშაობის გარანტია, კავშირის ეს მეთოდი არ არის რეკომენდებული, თუმცა არის შემთხვევები, როდესაც ყველაფერი საკმაოდ სტაბილურად მუშაობს.

კავშირი RaspberryPi-ის საშუალებით

თუ საერთოდ არ გაქვთ USB-TTL გადამყვანი, მაშინ შეგიძლიათ გამოიყენოთ RaspberryPi. ამ შემთხვევაში, ESP8266-ისთვის, პროგრამირება და კავშირი ხორციელდება თითქმის იდენტურად, მაგრამ აქ ყველაფერი არც ისე მოსახერხებელია და გარდა ამისა, თქვენ ასევე დაგჭირდებათ 3.3 ვოლტიანი დენის სტაბილიზატორის გამოყენება.

დასაწყისისთვის, ჩვენ ვუკავშირდებით ჩვენი მოწყობილობის RX, TX და GND ESP8266-ს და ვიღებთ GND-ს და VCC-ს 3.3 ვოლტზე გათვლილიდან. აქ განსაკუთრებული ყურადღება უნდა მიექცეს იმ ფაქტს, რომ თქვენ უნდა დააკავშიროთ ყველა GND მოწყობილობა, ანუ RaspberryPi სტაბილიზატორი და ESP8266. თუ თქვენი მოწყობილობის მოდელში ჩაშენებული სტაბილიზატორი უძლებს დამატებით დატვირთვას 300 მილიამპერამდე, მაშინ ამ შემთხვევაში ESP8266-ის დაკავშირება საკმაოდ ნორმალურია, მაგრამ ეს ყველაფერი კეთდება მხოლოდ თქვენი საფრთხის და რისკის ქვეშ.

პარამეტრების დაყენება

მას შემდეგ რაც გაარკვიეთ, თუ როგორ დააკავშიროთ ESP8266, უნდა დარწმუნდეთ, რომ თქვენი მოწყობილობების დრაივერები სწორად არის დაინსტალირებული, რის შედეგადაც სისტემას დაემატა ახალი ვირტუალური სერიული პორტი. აქ დაგჭირდებათ პროგრამის გამოყენება - სერიული პორტის ტერმინალი. პრინციპში, თქვენ შეგიძლიათ აირჩიოთ ნებისმიერი უტილიტა თქვენი გემოვნებით, მაგრამ სწორად უნდა გესმოდეთ, რომ ნებისმიერ ბრძანებას, რომელსაც აგზავნით სერიულ პორტში, ბოლოს უნდა ჰქონდეს CR+LF სიმბოლოები.

CoolTerm და ESPlorer უტილიტები საკმაოდ გავრცელებულია და ეს უკანასკნელი საშუალებას გაძლევთ არ შეხვიდეთ ESP8266-ში და ამავდროულად ამარტივებს Lua სკრიპტებთან მუშაობას NodeMCU-ში, ასე რომ მისი გამოყენება შესაძლებელია როგორც სტანდარტული ტერმინალი.

ნორმალურად დასაკავშირებლად, თქვენ მოგიწევთ ბევრი სამუშაოს შესრულება, რადგან ESP8266-ის firmware ძირითადად მრავალფეროვანია და აქტივაცია შეიძლება განხორციელდეს სხვადასხვა სიჩქარით. საუკეთესო ვარიანტის გადასაწყვეტად, თქვენ უნდა გაიაროთ სამი ძირითადი ვარიანტი: 9600, 57600 და 115200.

როგორ დავახარისხოთ?

დასაწყებად, დაუკავშირდით ტერმინალის პროგრამაში ვირტუალურ სერიულ პორტს, დააყენეთ პარამეტრები 9600 8N1-ზე, შემდეგ შეასრულეთ მოდულის სრული გადატვირთვა, გამორთეთ CH_PD (ჩიპის ჩართვა) კვების წყაროდან, შემდეგ კი ხელახლა გაააქტიურეთ ის CH_PD-ის დარტყმით. თქვენ ასევე შეგიძლიათ განახორციელოთ მოკლე გადატვირთვა მიწაზე მოდულის გადატვირთვისა და ტერმინალში არსებული მონაცემების დასაკვირვებლად.

უპირველეს ყოვლისა, მოწყობილობის LED-ები უნდა გამოჩნდეს ზუსტად ისე, როგორც ნაჩვენებია ტესტის პროცედურაში. თქვენ ასევე უნდა დააკვირდეთ ტერმინალში სხვადასხვა სიმბოლოების ერთობლიობას, რომელიც დასრულდება მზა ხაზით და თუ ის არ არის, ტერმინალთან ხელახალი დაკავშირება ხორციელდება სხვა სიჩქარით, რასაც მოჰყვება მოდულის გადატვირთვა.

როდესაც ხედავთ ამ ხაზს სიჩქარის ერთ-ერთ ვარიანტში, შეგიძლიათ ჩათვალოთ მოდული სამუშაოსთვის მზად.

როგორ განაახლოთ firmware?

ESP8266-ის დაყენების შემდეგ, მოწყობილობის დაკავშირებას მხოლოდ რამდენიმე წამი დასჭირდება, შემდეგ კი შეგიძლიათ დაიწყოთ პროგრამული უზრუნველყოფის განახლება. ახალი პროგრამული უზრუნველყოფის დასაყენებლად, თქვენ უნდა გააკეთოთ შემდეგი.

დასაწყებად, ჩამოტვირთეთ firmware-ის ახალი ვერსია ოფიციალური ვებსაიტიდან და ასევე ჩამოტვირთეთ სპეციალური პროგრამა firmware-ისთვის. აქ განსაკუთრებული ყურადღება უნდა მიექცეს იმას, თუ რა ოპერაციული სისტემაა დამონტაჟებული მანქანაზე, რომლითაც მუშაობს ESP8266. უმჯობესია მოწყობილობის დაკავშირება Windows 7-ზე ძველ სისტემებთან.

სტანდარტული Windows ოპერაციული სისტემებისთვის, ოპტიმალური იქნება პროგრამის გამოყენება სახელწოდებით XTCOM UTIL, რომელიც განსაკუთრებით მოსახერხებელია გამოსაყენებლად, თუ firmware შედგება მხოლოდ ერთი ფაილისგან. საუკეთესო მრავალპლატფორმიანი ვარიანტია esptool უტილიტა, რომელიც, თუმცა, მოითხოვს პითონს, ისევე როგორც ბრძანების ხაზის მეშვეობით პარამეტრების მითითების აუცილებლობას. გარდა ამისა, ESP8266 საშუალებას გაძლევთ მოხერხებულად დააკავშიროთ ძირითადი ფუნქციები Flash Download Tool-თან, რომელსაც აქვს საკმაოდ დიდი რაოდენობის პარამეტრები, ასევე მოსახერხებელი ტექნოლოგია რამდენიმე ფაილიდან პროგრამული უზრუნველყოფის დაყენებისთვის.

შემდეგი, გათიშეთ თქვენი ტერმინალის პროგრამა სერიული პორტიდან და ასევე მთლიანად გამორთეთ CH_PD კვების წყაროდან, დააკავშირეთ მოდულის GPIO0 GND-ს და ამის შემდეგ CH_PD შეიძლება დაბრუნდეს უკან. საბოლოო ჯამში, უბრალოდ გაუშვით მოდულური პროგრამული უზრუნველყოფის პროგრამა და ჩატვირთეთ იგი ESP8266 რელეში.

უმეტეს შემთხვევაში, firmware იტვირთება მოდულში დაახლოებით 115200 სიჩქარით, მაგრამ სპეციალური რეჟიმი უზრუნველყოფს სიჩქარის ავტომატურ განაწილებას, რის შედეგადაც firmware შეიძლება განხორციელდეს 9600-ზე მეტი სიჩქარით, განახლება. ESP8266-ის ხელმისაწვდომი ფუნქციები. დასაკავშირებლად გამოიყენებოდა Arduino ან USB-TTL - ის აქ განსაკუთრებულ როლს არ თამაშობს და აქ მაქსიმალური სიჩქარე უკვე დამოკიდებულია სადენების სიგრძეზე, გამოყენებულ კონვერტორზე და სხვა რიგ ფაქტორებზე.