Mündəricat:

ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü: 5 addım
ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü: 5 addım

Video: ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü: 5 addım

Video: ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü: 5 addım
Video: How to Program ESP01 WiFi Module | Arduino IDE | DIY 2024, Iyun
Anonim
ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü
ESP8266 ESP-12E UART Simsiz WIFI Shield TTL Dönüştürücü

Bu təlimat, ESP8266 ESP-12E UART Wireless WIFI Shield TTL çeviricisini satın almış və Arduino ilə necə istifadə edəcəyini bilməyən insanlara kömək etmək üçün hazırlanmışdır.

Əvvəlcə bu dərslik Braziliyada Portuqal dilində yazılmışdır. İngilis dilində yazmaq üçün əlimdən gələni etdim. Buna görə yazılı ola biləcək bəzi səhvlər üçün məni bağışla.

Bu təlimatlar aşağıdakı kimi bölündü:

Addım 1: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL Konvertoru ilə tanış olmaq

Addım 2: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL Dönüştürücüsündə Firmware Yeniləməsi

Addım 3: Shiald, Shield, Daha çox və Moer? Vacibdirmi?

Addım 4: Shield Moer - RX / TX Serial Rabitə həll edir

Addım 5: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL çeviricisi olan veb server

Bu qalxan haqqında mümkün qədər çox məlumat əldə etmək üçün bütün addımları oxumağı məsləhət görürəm.

Addım 1: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL Konvertoru ilə tanış olmaq

ESP8266 ESP-12E UART Wireless WIFI Shield TTL çeviricisi (Shield WiFi ESP8266), Arduinonun ESP8266 vasitəsilə WiFi şəbəkələrinə qoşulmasını asanlaşdırır. İstifadə edərkən, bir ESP8266 -nı Arduino -ya bağlamaq üçün bir neçə komponentdən və teldən ibarət bir dövrə quraşdırmaq lazım deyil, sadəcə lövhəni Arduino -ya bağlayın, DIP keçid yolunu qalxanın iş rejiminə uyğun olaraq yerləşdirin və Arduino -nu proqramlaşdırın. WiFi şəbəkələrinə qoşulun. Əlavə olaraq, board ESP-12E-nin bütün pinləri olduğu üçün Arduino olmadan da istifadə edilə bilər.

Qalxanda, WangTongze adlı bir şəxs tərəfindən yaradıldığı və onun hüquqlarının sahibi olan elecshop.ml olduğu barədə məlumatlar var. Əvvəlcə qalxanın yaradıcısı Indiegogo (kollektiv maliyyələşdirmə saytı) vasitəsi ilə öz layihəsi üçün vəsait toplamağa çalışdı, lakin pul yığmaqda uğursuz oldu.

ESP8266 ESP-12E modelinin xüsusiyyətləri:

- 32-bit RISC arxitekturası- Prosessor 80MHz / 160MHz-də işləyə bilər- 32MB flash yaddaş- 64kB təlimat üçün- məlumat üçün 96kB- Standart yerli WiFi 802.11b / g / n- AP, Station və ya AP + Station rejimində işləyir. 11 rəqəmsal pin- 10 bit qətnamə ilə 1 analoq pin var- D0 istisna olmaqla rəqəmsal pinlər, PWM, I2C və bir tel var- USB və ya WiFi (OTA) ilə proqramlaşdırıla bilər- Arduino IDE ilə uyğun gəlir- İstifadə olunan modul və sensorlar ilə uyğundur Arduinoda

Aşağıda bu qalxanın əsas xüsusiyyətlərini oxuya bilərsiniz:

- Arduino Uno R3-ün ölçüsü Arduino Uno, Mega 2560, Leonardo və törəmələri ilə uyğundur.- Arduinonun kiçik versiyaları (məsələn, Nano və Pro Mini) uyğun gəlir, lakin əlaqələr jumper vasitəsi ilə edilməlidir. Qalxanı işə salmaq üçün Arduino gərginliyi (5V) istifadə olunur.- AMS1117 3.3V gərginlik tənzimləyicisinə malikdir, buna görə də Arduino tərəfindən verilən 5V gərginliyi xarici enerjiyə ehtiyac olmadan qalxanı işə salmaq üçün azalır.- Daxili məntiq səviyyəsi çeviricisi var., buna görə də Arduino TTL səviyyəsi (5V), TTL 3.3V səviyyəsi ilə işləyən ESP8266-ya zərər vermir.- Lövhənin iş rejimini dəyişməyə xidmət edən 4 tərəfli DIP açarı var.- Mövcud iş rejimləri: WiFi Qalxan Arduino / Arduino vasitəsilə AT əmrləri göndərmək / USB Serial xarici / bağımsız çevirici vasitəsi ilə firmware yüksəltmək.- Göstərici LEDləri var (PWR / DFU / AP / STA).- Qalxan formatında olduğu üçün digər qalxan və modulların daxil edilməsinə imkan verir.- ESP8266 sıfırlamaq üçün ESP-RST düyməsinə malikdir e ESP8266 ADC pin, lövhədə iki formada mövcuddur: birincisi 0 ilə 1V aralığında olan bir pində, ikincisi 0 ilə 3.3V aralığında.

Şəkildə qalxanın əsas hissələri vurgulanır:

Şəkil
Şəkil

A (DİJİTAL PİNLƏR): Arduino tərəfindən istifadə edilən sancaqlar ardıcıllığı.

B (ESP8266 PINS): ESP8266-12E və müvafiq sancaqlar. Lövhənin arxasında sancaqların nomenklaturası var.

C (XARİCİ SERİ USB ADAPTÖR BAĞLANTISI): ESP8266 firmware proqramının yenilənməsi və ya ayıklanması üçün xarici Serial USB adapterini bağlamaq üçün istifadə olunan pin ardıcıllığı.

D (QALÇA BAKIM PİNSİ): Yalnız Baxım olaraq təyin olunan və gərginlik tənzimləyicisinin gərginliyi düzgün qəbul etdiyini və təmin etdiyini yoxlamaq üçün istifadə olunan üç pinli ardıcıllıq. TƏMİNAT MƏNBƏSİ İSTİFADƏ EDİLMƏLİDİR.

E (İŞLƏMƏ MODLARINI DƏYİŞTİRMƏK ÜÇÜN DİDİF ANAHTARI): İş rejimlərini dəyişdirmək üçün dörd tərəfli DIP açarı.

CONTACT 1 (P1) və CONTACT 2 (P2): ESP8266 -nın RX (P1 ilə təmsil olunur) və TX (P2 ilə təmsil olunur) Arduino D0 (RX) və D1 (TX) pinlərinə qoşulmaq üçün istifadə olunur. OFF vəziyyətdə olan P1 və P2, ESP8266 -dan Arduino TX -ə və TX -dən ESP8266 -dan Arduino RX -ə RX bağlantısını söndürür.

CONTACT 3 (P3) və CONTACT 4 (P4): ESP8266 üçün firmware yeniləmə rejimini aktiv etmək və söndürmək üçün istifadə olunur. ESP8266 -da firmware yazma / yükləməni aktivləşdirmək üçün P3 və P4 AÇIQ vəziyyətdə olmalıdır. P4 ON mövqeyində olduqda, EF8266 firmware almaq üçün aktiv olduğunu göstərən DFU LED yanacaq. Firmware yeniləmə rejimini deaktiv etmək və ESP8266 -nı normal iş rejiminə keçirmək üçün P3 və P4 -ü OFF olaraq təyin edin.

Qeyd: OFF mövqedəki 4 kontaktın hamısı ESP8266 -nın Arduinonun yanında normal rejimdə işlədiyini göstərir

F (ESP8266 -dan AD8): ESP8266 ADC üçün pin təyinatı. 0 ilə 1 V arasında işləyən bir pin və 0 ilə 3.3 V arasında işləyən başqa bir pin. Bu sancaqlar yalnız ESP8266 (müstəqil rejim) istifadə edildikdə istifadə ediləcək.

G (ESP8266 RESET): ESP8266 sıfırlamaq üçün istifadə olunan düymə. DIP açarlarının mövqeyini dəyişdirdiyiniz zaman ESP-RST düyməsini basmalısınız.

H (ANALOG PİNİ VƏ GÜÇ QAYDASI): Arduino tərəfindən istifadə edilən sancaqlar ardıcıllığı.

Bu qalxanın DIP Switch -in P1 və P2 kontaktlarında bir xüsusiyyəti var və bu xüsusiyyət, əslində qalxandan istifadə etməyə çalışan insanlarda böyük bir şübhə yaradır.

Qalxanın yaradıcısına görə, onu Arduinoya bağlayarkən cəmi 2 sancaq lazım olacaq. Bu pinlər D0 və D1 (sırasıyla Arduino RX və TX) olardı və əlavə olaraq, qalxandakı DIP Switch -in P1 və P2 kontaktları əlaqə üçün ON vəziyyətində olmalıdır.

Bu qalxan haqqında əldə etdiyim yeganə Çin sənədlərindən birində, lövhənin yaradıcısı deyir:

P1 və P2 bit kodlayıcılardır və ESP8266 serialının Arduino D0 və D1 -ə bağlı olub olmadığını müəyyən etmək üçün istifadə olunur.

Sənədin başqa bir hissəsində qeyd olunur:

Bu genişləndirmə lövhəsi, RX -ni ESP8266 -dan Arduino -dan TX -ə və TX -ni ESP8266 -dan Arduino RX -ə bağlayan Arduino serialını məşğul saxlayır.

Arduino'nun D0 (RX) və D1 (TX) pinləri yerli serial / USB əlaqəsinə uyğundur, buna görə də lövhəyə kod göndərdikdə və ya serial monitordan istifadə etdikdə bu sancaqlar məşğul olur. Buna görə də, qalxanın P1 və P2 kontaktları AÇIK vəziyyətdədirsə, ESP8266 Arduino D0 və D1 istifadə edəcək və məşğul olduğu üçün kodları göndərmək və ya serialı istifadə etmək mümkün olmayacaq. Bundan əlavə, AT əmrlərini qalxana göndərmək üçün ESP8266 RX -in Arduino RX -ə və ESP8266 TX -in Arduino TX -ə bağlı olması lazımdır. Aşağıdakı şəkildə göstərildiyi kimi əlaqələri ters çevirdiyimiz zaman bu baş verəcək:

Şəkil
Şəkil

Bax, qalxanın D0 və D1 kontaktlarını əydim və Arduino D0 -u qalxanın D1 -ə və Arduino -nun D1 -ni qalxanın D0 -na bağladım. Bağlantıyı bu şəkildə istifadə edərkən (Arduino bir əlaqə körpüsü olaraq istifadə olunur), ESP8266 -a AT əmrləri göndərə bildim və əvvəllər təsəvvür etdiyimi təsdiq etdim.

Qalxanın standart iş forması, qalxana bir kodun (məsələn, veb -server və ya firmware) yüklənməsini və yerli serialdan gələn məlumatların göndərilməsi, qəbul edilməsi və şərh edilməsi üçün başqa bir kodun Arduino -ya yüklənməsini tələb edir. Bu ünsiyyət forması haqqında daha çox detallar sonrakı addımlarda görüləcək.

Hər halda, qalxanın bu xüsusiyyəti onun işinə müdaxilə etmir, çünki yerli serialı əldə etmək üçün adətən bir serialı digər Arduino rəqəmsal pinlərində təqlid edirik. Bundan əlavə, AT əmrlərini qalxana göndərmək lazımdırsa, onu dörd kabel vasitəsilə Arduino -ya qoşa bilərik və ya seriyalı USB çeviricisini istifadə edə bilərik.

Nəhayət, qalxan çox sabit idi və sxemlərin montajını çox asanlaşdırdı. Arduino Uno R3 və Mega 2560 R3 ilə sınaqdan keçirdim.

Növbəti addımda, qalxan firmware proqramını necə təkmilləşdirməyi / dəyişdirməyi öyrənəcəksiniz.

Addım 2: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL Dönüştürücüsündə Firmware Yeniləməsi

Qalxanı kompüterə bağlamaq üçün seriyalı USB çeviricidən istifadə etmək lazımdır. Adi bir USB çeviriciniz yoxdursa, Arduino Uno R3 çeviricisini aralıq olaraq istifadə edə bilərsiniz. Bazarda seriyalı USB çeviricilərin bir neçə modeli var, amma bu dərs üçün PL2303HX TTL Serial USB Dönüştürücü Adaptordan istifadə etdim.

Qalxanı təkmilləşdirmək üçün aşağıdakılardan istifadə edin:

ESP8266 Flash Yükləmə Alətləri

İstifadə ediləcək firmware:

Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware

Proqramı və proqram təminatını yüklədikdən sonra hər ikisini Windows -un kökünə (C sürücüsünə) kopyalayın.

Flash_download_tools_v2.4_150924.rar və FLASH_DOWNLOAD_TOOLS_v2.4_150924 qovluğu açılacaq.

Arduino Uno R3 seriyalı USB çeviricisini aralıq olaraq istifadə edərək:

Növbəti addım qalxanı kompüterə bağlamaqdır. Standart bir seriya usb çeviriciniz yoxdursa, qalxan və kompüteri birləşdirmək üçün Arduino Uno R3 istifadə edə bilərsiniz. USB Kabelli Arduino Uno R3 -ə əlavə olaraq sizə lazım olacaq:

01 - ESP8266 ESP -12E UART Wireless WIFI Shield TTL Converter04 - Kişi -Qadın Jumper Kabelləri

DİQQƏT: Arduino kabel sxemini qurmadan əvvəl, seriyalı USB çeviricinin istifadə olunmadığından əmin olmaq üçün lövhəyə boş bir kod yükləməlisiniz. Aşağıdakı kodu Arduino -ya yükləyin və davam edin:

void setup () {// quraşdırma kodunuzu bura qoyun, bir dəfə işləsin:} void loop () {// əsas kodunuzu bura qoyun, təkrar işləsin:}

Şəkil
Şəkil

Qeyd: 3.3V qalxan pinini Arduinoya bağlayarkən xəbərdar olun.

Serial TTL USB Dönüştürücü Adapter PL2303HX istifadə edərək:

PL2303HX TTL Serial USB Dönüştürücü Adaptörünə əlavə olaraq aşağıdakı maddələrə ehtiyacınız olacaq:

01 - ESP8266 ESP -12E UART Wireless WIFI Shield TTL Converter04 - Kişi -Qadın Jumper Kabelləri

Şəkil
Şəkil

Qeyd: PL2303 5V və 3V3 gücə malikdir. 3V3 gücünü istifadə edin və 5V pininə məhəl qoymayın

Yuxarıdakı əlaqə sxemlərindən birini etdikdən sonra sadəcə USB kabelini (Arduino və kompüterə) və ya seriyalı USB çeviricisini kompüterə qoşun.

Sonra Windows -dakı "İdarəetmə Paneli" nə, "Cihaz Meneceri" nə gedin və açılan pəncərədə "Limanlar (COM və LPT)" -ə gedin. Bağlı cihazı və ayrıldığı COM port nömrəsini görə bilərsiniz. Bir nümayiş olaraq, kompüterdə həm Arduino, həm də serial USB çeviricisini bağladım və aşağıdakı şəkildə cihazların menecerdə necə göründüyünü görə bilərsiniz:

Şəkil
Şəkil

PL2303HX istifadə edirsinizsə və Windows tərəfindən tanınmırsa, Windows 10 -da Serial TTL USB Converter PL2303HX - Quraşdırma yazısına daxil olun, bunu necə həll edəcəyinizə baxın və sonra davam etmək üçün geri qayıdın.

İndi FLASH_DOWNLOAD_TOOLS_v2.4_150924 qovluğuna gedin və ESP_DOWNLOAD_TOOL_V2.4.exe faylını işə salın:

Şəkil
Şəkil

Qalxanda, DIP Switch-in P3 və P4 kontaktlarını ON vəziyyətinə qoyun və sonra qalxan firmware yeniləmə rejiminə keçməsi üçün kartdakı ESP-RST düyməsini basın:

Şəkil
Şəkil

Proqram açıq olduqda, 'SpiAutoSet' seçimini yoxlayın, COM portunu seçin, 'BAUDRATE' 115200 seçin, 'Yükləmə Yolu Konfiqurasiyasında' işarələnmiş hər hansı bir onay işaretini silin, digər variantları aşağıda göstərildiyi kimi konfiqurasiya edin və 'BAŞLAT' düyməsini basın:

Şəkil
Şəkil

ESP8266 WiFi Shield ilə əlaqə yaxşı olarsa, 'DETECTED INFO', 'MAC Address' və 'SYNC' məlumatlarını görəcəksiniz:

Şəkil
Şəkil

DİQQƏT: Proqram 'FAIL' qaytararsa, düzgün COM portunu seçdiyinizi yoxlayın, DIP açarının P3 və P4 düymələrinin ON olub olmadığını yoxlayın, ESP-RST düyməsini, STOP düyməsini və yenidən START düyməsini basın.

'Yükləmə Yolu Konfiqurasiyasında' Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin 'faylını seçməlisiniz. Birinci sahənin '…' düyməsini vurun və açılan pəncərədə, firmware proqramını yerləşdirdiyiniz qovluğa gedin və 'Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin' faylını seçin. 'ADDR' sahəsində 0x00000 ofsetini doldurun və tamamlamaq üçün onay qutusunu işarələyin. Bitirdikdə, aşağıda göstərildiyi kimi parametrlərə sahib olacaqsınız:

Şəkil
Şəkil

İndi prosesi başlamaq üçün START düyməsini basın:

QEYD: Arduino seriyalı USB çeviricisini qalxanla kompüter arasında ara vasitə kimi istifadə edirsinizsə, BAŞLAT düyməsini basmadan əvvəl qalxanın ESP-RST düyməsini basın. Adi bir USB çeviricisini istifadə edirsinizsə, bu prosedura ehtiyac yoxdur

Şəkil
Şəkil

Firmware yeniləmə prosesinin tamamlanmasını gözləyin (prosesin tamamlanması təxminən yeddi dəqiqə çəkəcək):

Şəkil
Şəkil

Firmware təkmilləşdirmə prosesini başa vurduqdan sonra ESP_DOWNLOAD_TOOL_V2.4 pəncərələrini bağlayın, DIP Switch-in P3 və P4 kontaktlarını OFF vəziyyətinə qaytarın və firmware yeniləmə rejimindən çıxa bilməsi üçün qalxanın üzərindəki ESP-RST düyməsini basın.

İndi Arduino IDE -ni açın, beləliklə firmware proqramının düzgün şəkildə yeniləndiyini və lövhənin əmrlərə cavab verdiyini yoxlamaq üçün lövhəyə AT əmrləri göndərə bilərsiniz.

IDE açıq olduqda 'Alətlər' menyusuna gedin və 'Port' seçimində COM portunu seçin. Aşağıdakı şəkildə COM7 portunu seçdiyimə diqqət yetirin (portunuz çox güman ki fərqli olacaq):

Şəkil
Şəkil

ID əmrlərini göndərməklə əlaqəli olmadığı üçün IDE -də lövhəni seçməyinizə ehtiyac yoxdur.

'Serial Monitoru' açın və altbilgidə sürətin 115200 olaraq təyin edilib -edilmədiyini və 'Həm NL, həm də CR' seçildiyini yoxlayın:

Şəkil
Şəkil

İndi 'AT' əmrini yazın (tirnoq olmadan) və 'ENTER' verin və ya 'Göndər' düyməsini basın. Bağlantı işləyirsə, 'OK' mesajını geri qaytarmalı olacaqsınız:

Şəkil
Şəkil

DİQQƏT: Əgər əmri göndərmək hər hansı bir rəy almazsa və ya təsadüfi bir simli alırsa, serial monitorun 115200 sürətini 9600 -ə dəyişin və əmri yenidən göndərin

'Serial Monitor' da 'AT + GMR' (kotirovkalar olmadan) əmrini yazın və 'ENTER' verin və ya 'Göndər' düyməsini basın. Aşağıda göstərildiyi kimi geribildirim alırsanız, ESP8266 WiFi Qalxanınız uğurla yeniləndi:

Şəkil
Şəkil

9600 qalxanı ilə rabitə sürətini dəyişdirmək istəyirsinizsə, 'AT + UART_DEF = 9600, 8, 1, 0, 0' (kotirovka olmadan) əmrini daxil edin və 'ENTER' verin və ya 'Göndər' düyməsini basın. Məlumatı aşağıda göstərildiyi kimi alırsanız, əlaqə sürəti dəyişir:

Şəkil
Şəkil

QEYD: Qalxanın sürətini dəyişdirərkən, Monitor Serial altbilgisindəki sürəti də 115200 -dən 9600 -ə dəyişməlisiniz. Sonra yenidən 'AT' əmrini göndərin (tırnak işarəsi olmadan) və 'ENTER' düyməsini basın və ya 'Göndər' düyməsini basın. Bir geri dönüş olaraq 'OK' alsanız, əlaqə işləyir

Arduinoya WiFi təyin etmək üçün qalxandan istifadə etmək istəyirsinizsə, ideal ünsiyyət sürəti 9600 bauddur.

Növbəti addımda hansı qalxanınız olduğunu öyrənəcəksiniz, çünki bazarda eyni görünən ən azı üç qalxan tapmaq mümkündür, amma əslində bu lövhələrdə fərqlənən bəzi məqamlar var. yerli serial vasitəsilə ünsiyyət vasitəsi ilə Arduino ilə işləmək.

Addım 3: Shiald, Shield, Daha çox və Moer? Vacibdirmi?

ESP8266 ESP-12E UART Wireless WIFI Shield TTL çeviricisidirsə, eyni görünən ən azı üç lövhə tapmaq mümkündür, amma əslində bu lövhələrdə hətta onlarla işləmək məsələsində də fərqlənən bəzi məqamlar var. Arduino yerli serial ünsiyyəti vasitəsi ilə.

Ardından lövhələrin nəyi fərqləndirdiyini və hansının sizə aid olduğunu öyrənə bilərsiniz.

Shiald WiFi ESP8266:

Şəkil
Şəkil

Qeyd edək ki, bu lövhədə Shield sözü "Shiald" yazılıb və "daha çox" sözünün kiçik hərfdə "m" işarəsi var. Uzun müddət etdiyim testlərdə, idarə heyəti işində heç bir qüsur göstərmədi.

Qalxan WiFi ESP8266:

Şəkil
Şəkil

Bu lövhədə Shield sözünün düzgün yazıldığını və "Daha çox" sözünün böyük hərflə "M" olduğunu unutmayın. Əməliyyat məsələsində, bu lövhə Shiald versiyası ilə eyni şəkildə davranır, yəni lövhə qüsurlu deyil.

Demək istəyirsiniz ki, Shiald və Shield lövhələrində yalnız PCB ipək məsələsində fərqlər var?

Bəli, bu iki kartın yalnız iki sözün yazılmasında fərqi var. Hər iki lövhədəki dövrə eynidır və hər ikisi də Arduino və ya tək başına mükəmməl işləyir (müstəqil rejim). Arduinonun düzgün kod yükləndiyini və qalxanlardan birinin də doğru proqram təminatına sahib olduğunu nəzərə alaraq, qalxanı Arduino -ya bağladıqdan və USB kabelini bağladıqdan sonra, DIP açarının P1 və P2 kontaktlarını ON vəziyyətinə qoyun. və lövhələr arasında yerli serial (D0 və D1 sancaqları) vasitəsilə əlaqə qurulacaq.

Bəziləri bu Shiald versiyasının qeyri -sabit simsiz əlaqəyə sahib olduğunu söyləyirlər, amma heç bir qeyri -sabitlik olmadığını iddia edirəm.

Shield WiFi ESP8266 (Moer):

Şəkil
Şəkil

Qeyd edək ki, bu lövhədə Shield sözü düzgün, "Daha çox" sözü "Moer", yəni səhv yazılıb. Təəssüf ki, bu lövhə lazım olduğu kimi işləmir və Arduino -ya qoşulduqda (DIP keçid kontaktları KAPALI və ya AÇIQ olduqda) və istifadəçi Arduinoya bir kod yükləməyə çalışsa, IDE -də səhv mesajı görünəcək. yükləmə uğursuz olacaq.

Qalxanınız Moer -də yazılıbsa və Arduino ilə yerli serial ünsiyyət vasitəsi ilə istifadə etməkdə çətinlik çəkmisinizsə, növbəti addıma keçin və problemi necə həll edəcəyinizi öyrənin. Qalxan Moer deyilsə, 5 -ci addıma keçin.

Addım 4: Shield Moer - RX / TX Serial Rabitə həll edir

Bu lövhə (Moer) Arduinoya qoşulduqda (DIP keçid kontaktları KAPALI və ya AÇIQ) və istifadəçi Arduinoya bir kod yükləməyə çalışırsa, yük uğursuz olacağı üçün IDE -də bir səhv mesajı görünəcək. Bu, qalxan quruluşunda istifadə olunan bir komponent səhvindən qaynaqlanır.

Düzgün quruluşu və istismarı olan qalxan iki Kanal N MOSFET qaynaqladı və J1Y olaraq təyin edildi. J1Y tranzistorlarından biri ESP8266 RX -ə, digəri isə ESP8266 TX -ə bağlıdır. Aşağıdakı şəkildə iki tranzistorun vurğulandığını görə bilərsiniz:

Şəkil
Şəkil

Bu J1Y tranzistoru, məqsədi 5V məntiq səviyyəli sxemlərin 3.3V məntiq səviyyəsi sxemləri ilə əlaqə qurmasını təmin etmək və əksinə BSS138 -dir. ESP8266 -nın məntiqi səviyyəsi 3.3V və Arduino -nun məntiqi səviyyəsi 5V olduğundan, ESP8266 -nın mükəmməl işləməsini təmin etmək üçün məntiq səviyyəsi çeviricisindən istifadə etmək lazımdır.

Qalxan Moer -də, lövhədə J3Y kimi tanınan iki tranzistor var. Aşağıdakı şəkildə iki tranzistorun vurğulandığını görə bilərsiniz:

Şəkil
Şəkil

J3Y tranzistoru bir S8050 NPN -dir və bu tip tranzistor ümumiyyətlə gücləndirici sxemlərdə istifadə olunur. Nədənsə Moer qalxanının qurulması zamanı J1Y məntiq səviyyəsinin çeviricisi əvəzinə J3Y tranzistorundan istifadə etdilər.

Bu şəkildə, ESP8266 -nın RX və TX pinləri lazım olduğu kimi işləməyəcək və buna görə də qalxanın Arduino ilə heç bir serial əlaqəsi olmayacaq. Qalxan Arduino ilə yerli serial (D0 və D1 sancaqları) vasitəsi ilə əlaqə qurduğundan, Arduino koduna qoşularaq (Arduinoda) heç vaxt uğurla tamamlanmayacaq, çünki bəzi hallarda həmişə təxminən 2.8V olacaq. RX və Arduino TX və ya sabit 0V, hamısı səhv tranzistorlar səbəbindən.

Bütün bu məlumatlardan sonra aydın olur ki, Moer qalxanı üçün yeganə həll J3Y tranzistorlarının J1Y tranzistorları ilə əvəz olunmasıdır. Bu prosedur üçün Moer səbr qalxanına əlavə olaraq ehtiyacınız olacaq və:

01 - Lehimləmə Dəmir01 - Tin01 - Forseps və ya İğne Pense01 - Qaynaq Sucker02 - BSS138 (J1Y)

BSS138 (J1Y) tranzistoru 3.3V / 5V Logic Level Converter -də istifadə olunur.

Qeyd: Aşağıdakı prosedur, bir lehimləmə dəmirini necə idarə edəcəyinizi bilməyinizi və ən az qaynaq təcrübənizin olmasını tələb edir. Söküləcək və dəyişdiriləcək komponentlər SMD komponentləridir və adi bir lehimləmə dəmiri ilə qaynaq edərkən daha çox diqqət və səbr tələb edir. Lehimləmə dəmirini tranzistor terminallarında çox uzun buraxmamaq üçün diqqətli olun, çünki bu onlara zərər verə bilər

İsti lehimləmə dəmiri ilə, tranzistor terminallarından birini qızdırın və bir az qalay qoyun. Bu proseduru iki tranzistor terminalının hər biri üçün yerinə yetirin. Terminallarda həddindən artıq qaynaq tranzistorların çıxarılmasını asanlaşdıracaq:

Şəkil
Şəkil

İndi cımbızları / pensləri götürün, tranzistoru yanlarından tutun, yalnız bir terminala malik olan tranzistorun tərəfini qızdırın və terminalın lehimdən çıxması üçün tranzistoru yuxarı qaldırın. Hələ də cımbız / kəlbətinlə tranzistoru tutarkən, lehimləmə dəmirinin ucunu digər iki terminalın üzərinə qoymağa çalışın və tranzistoru lövhədən çıxarmağa məcbur edin. Bunu hər iki tranzistor üçün edin və çox diqqətli olun:

Şəkil
Şəkil

İki J3Y IC -ni qalxandan çıxardın, sadəcə J1Y IC -ni yerinə qoyun, cımbız / kəlbətinlə tutun və qalayın kontağa qoşulması üçün qalxanın hər ucunu qızdırın. Kontaktlar az lehimlidirsə, hər birini qızdırın və daha çox qalay qoyun. Bunu hər iki tranzistor üçün edin və çox diqqətli olun:

Şəkil
Şəkil

Təmirdən sonra, əvvəllər Arduino ilə birbaşa əlaqəsi olmayan qalxanı taxta ilə yerli serial (pin D0 və D1) vasitəsilə əlaqə qurmağa başladı.

Təmirin uğurlu olduğunu təsdiqləyən ilk sınaq, qalxan (bütün DIP açar kontaktları KAPALI) Arduinoya bağlamaq, USB kabelini lövhəyə və kompüterə bağlamaq və Arduinoya kod yükləmək cəhdidir. Hər şey qaydasındadırsa, kod uğurla yüklənəcəkdir.

Addım 5: Arduino üçün ESP8266 ESP-12E UART Wireless WIFI Shield TTL çeviricisi olan veb server

Bu addımı davam etdirmək üçün əsas tələb olaraq 2 -ci addımı yerinə yetirməlisiniz.

Daha əvvəl də qeyd etdiyim kimi, Arduino ilə qalxanı yerli serial (D0 və D1 sancaqları) vasitəsi ilə istifadə etmək üçün qalxana bir kod yüklənməli və Arduinoya başqa bir kod yüklənməli, qəbul edilməli və şərh edilməlidir. məlumatlar yerli seriallar vasitəsilə satılır. Qalxana AT əmrləri proqram təminatı qoya bilərik və Arduino -nu WiFi şəbəkəsinə qoşulmaq və Arduinonun giriş və çıxışlarını idarə etmək üçün əmrləri qalxana göndərməsini proqramlaşdıra bilərik.

Bu addımda WiFiESP kitabxanasından istifadə edəcəyik, çünki artıq ESP8266 -nı (bizim vəziyyətimizdə Shield WiFi ESP8266) Arduinoya birləşdirmək və lövhəyə WiFi təyin etmək üçün bütün lazımi funksiyalara malikdir. WiFiESP kitabxanası AT əmrləri göndərməklə işləyir, sonra yönləndiricinin simsiz şəbəkə bağlantısı və veb serverə edilən hər hansı bir tələb AT əmrlərinin qalxana göndərilməsi ilə nəticələnəcək.

WiFiESP kitabxanasının işləməsi üçün AT əmr firmware versiyası ən azı 0,25 və ya daha yüksək olmalıdır. Qalxanınızın AT əmr versiyasını bilmirsinizsə, lövhəni 1.2.0.0 AT əmr versiyası olan firmware ilə yeniləmək üçün 2 -ci addıma keçin və sonra davam etmək üçün geri qayıdın.

Qalxan və Arduino ilə sınaqlar zamanı müəyyən etdiyim bir şey, aralarındakı ünsiyyətin doğma serial (D0 və D1 sancaqları) vasitəsi ilə meydana gəldiyi üçün serialın aralarındakı ünsiyyət üçün müstəsna olaraq istifadə olunmasının zəruriliyidir. Buna görə də, Arduino IDE serial monitorunda və ya serial məlumatlarını göstərən hər hansı digər proqramda məlumat çap etmək üçün "Serial.print () / Serial.println ()" istifadə etməyi məsləhət görmürəm.

Varsayılan olaraq, WiFiESP kitabxanası Arduino və ESP8266 arasındakı ardıcıl səhvləri, xəbərdarlıqları və digər ünsiyyət məlumatlarını göstərmək üçün qurulmuşdur. Daha əvvəl də qeyd etdiyim kimi, serial Arduino ilə qalxan arasındakı əlaqə üçün yayımlanmalıdır. Buna görə kitabxanadan bir fayl redaktə etdim və serialdakı bütün məlumatların göstərilməsini deaktiv etdim. Serial monitorda görünəcək yeganə məlumat, kitabxananın simsiz şəbəkəyə qoşulmaq üçün qalxana göndərdiyi AT əmrləri və ya veb serverə edilən istəkləri yerinə yetirmək üçün AT əmrləridir.

Dəyişdirilmiş WiFIESP kitabxanasını yükləyin və Arduino IDE -də quraşdırın:

WiFIESP Modu

Kitabxana quraşdırma qovluğunda, sadəcə "WiFiEsp-master / src / utility" yoluna daxil olun və içərisində serialdakı məlumatların göstərilməsini söndürmək üçün redaktə edilmiş "debug.h" faylı var. Dosyanı Notepad ++ da açarkən, məsələn, seriyalı monitorda göstəriləcək məlumat növləri üçün müvafiq nömrələnməni göstərən 25, 26, 27, 28 və 29 sətirləri var. Qeyd edək ki, 0 rəqəmi bütün məlumatların serial monitorda göstərilməsini deaktiv edir. Nəhayət, 32 -ci sətirdə "_ESPLOGLEVEL_" ni 0 dəyəri ilə konfiqurasiya etdim:

Şəkil
Şəkil

WiFiESP kitabxanasını ESP8266 ilə digər layihələrdə istifadə etmək istəyirsinizsə və məlumatların serial monitorda göstərilməsini istəyirsinizsə, sadəcə "_ESPLOGLEVEL_" dəyərini 3 (kitabxananın standart dəyəri) olaraq təyin edin və faylı qeyd edin.

Qalxanınızda artıq 0.25 və ya daha yüksək AT əmr firmware versiyası olduğundan davam edək.

Qalxanı Arduino -ya bağlayın (Uno, Mega, Leonardo və ya qalxanı bağlamağa imkan verən digər versiya), bütün DIP keçid kontaktlarını OFF vəziyyətinə qoyun, pin 13 ilə GND arasında bir LED bağlayın və USB kabelini Arduino və kompüter:

Şəkil
Şəkil

Arduino Mega 2560 -dan istifadə etdim, ancaq qalxanın bağlanmasına imkan verən başqa bir Arduino lövhəsi istifadə edirsinizsə, nəticə eyni olacaq.

Kodu linkdən yükləyin və Arduino IDE -də açın:

Kod veb server

Arduino Leonardodan istifadə edirsinizsə, kodun 19 və 20 -ci sətirlərinə gedin və Serial sözünü aşağıdakı şəkildə göstərildiyi kimi Serial1 olaraq dəyişdirin:

Şəkil
Şəkil

Kodda WiFi * şəbəkənizin adını char * ssid = "WIFI AĞINIZIN ADI" sətrinə daxil etməlisiniz;, parol char * password = "WIFI ŞƏBƏKƏNİN ŞİFRİ" sətrinə daxil edilməlidir; və WiFi.config xəttində (IPAddress … simsiz şəbəkənizdə mövcud bir IP ünvanı daxil etməlisiniz, çünki bu kod statik IP istifadə edir:

Şəkil
Şəkil

"Alətlər" menyusunda "Kart" ı seçin və Arduino modelinizi seçin. Hələ də "Alətlər" menyusunda "Port" seçimini seçin və Arduino -nun ayrıldığı COM portunu yoxlayın.

Kodu Arduinoya göndərmək üçün düyməni basın və yüklənməsini gözləyin.

Kodu Arduino -ya yüklədikdən sonra USB kabelini kartdan ayırın, qalxanın DIP Switch -in P1 və P2 kontaktlarını ON vəziyyətinə qoyun və USB kabelini yenidən Arduino -ya qoşun.

QEYD: Qalxanın P1 və P2 kontaktları AÇIK mövqedə olduğu müddətcə yerli serial məşğul olacağından Arduinoya kod göndərə bilməyəcəksiniz. DIP açarlarının yerini dəyişəndə hər dəfə ESP-RST düyməsini sıxın

Dərhal Arduino IDE serial monitorunu açın:

Şəkil
Şəkil

Serial monitor açıq olduqda veb serveri işə salmaq üçün qalxana göndərilən AT əmrlərini izləyə bilərsiniz. Serial monitoru açarkən heç bir məlumat görünmürsə, Arduino cihazınızdakı RESET düyməsini basın və gözləyin.

Diqqət yetirin ki, serial monitorda "AT + CIPSTA_CUR" əmri veb serverə qoşulmaq üçün IP ünvanını, "AT + CWJAP_CUR" əmri isə qalxanın qoşulduğu simsiz şəbəkənin adını və şifrəsini göstərir:

Şəkil
Şəkil

Serial monitorda göstərilən IP ünvanını kopyalayın, internet brauzerinizi açın, IP ünvanını yapışdırıb daxil olmaq üçün ENTER düyməsini basın. Aşağıdakı səhifəyə bənzər bir web səhifəsi yüklənəcək:

Şəkil
Şəkil

Veb səhifədə Arduinonun 13 -cü pininə qoşulmuş LED -in açılması / söndürülməsindən məsul olan bir düymə var. LED -i yandırmaq / söndürmək və səhifədəki mövcud vəziyyətin yeniləndiyini görmək üçün düyməni basın.

Veb səhifəyə, məsələn, bir smartfon və ya planşet vasitəsilə də daxil ola bilərsiniz.

Son nəticə üçün aşağıdakı videoya baxın:

Bu sadə bir praktik idi, çünki məqsəd qalxanı Arduino ilə istifadə etməyin nə qədər asan olduğunu göstərmək idi. Arduino -ya WiFi təyin etmək üçün ESP8266 istifadə edən internetdə tapdığınız bütün layihələr bu WiFi Qalxanı ilə təkrarlana bilər, fərqi odur ki, platformalarla ünsiyyət qurmaq üçün protoboya lövhəyə gərginlik ayırmaq lazım olmayacaq. Xarici enerji təchizatı ilə dövrə gücləndirməkdən narahat olmayacaq layihələr. Bundan əlavə, layihəniz daha xoş bir estetikə sahib olacaq.

İndi Shield WiFi ESP8266 -nı bir veb serverdən Arduino ilə necə inteqrasiya edəcəyinizi bildiyiniz üçün sadəcə kodu dəyişdirin və daha ətraflı bir layihə tətbiq edin və ya öz kodunuzu inkişaf etdirməyə başlayın.

Bir daha ingilis dilindəki uğursuzluqlara görə üzr istəyirəm.

Qalxanla bağlı suallarınız varsa, soruşun və cavab verməkdən məmnunam.

Tövsiyə: