Isi kandungan:

ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit: 5 Langkah
ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit: 5 Langkah

Video: ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit: 5 Langkah

Video: ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit: 5 Langkah
Video: Программирование ESP-01 с автоматическим сбросом и выбором режима программирования 2024, Jun
Anonim
ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit
ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter Tidak rumit

Panduan ini bertujuan untuk membantu orang yang telah membeli ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter dan tidak tahu menggunakannya dengan Arduino.

Pada mulanya, tutorial ini ditulis dalam bahasa Portugis di sini di Brazil. Saya berusaha sedaya upaya untuk menulisnya dalam bahasa Inggeris. Oleh itu, maafkan saya atas beberapa kesilapan yang mungkin berlaku dalam penulisan.

Instruksional ini dibahagikan seperti berikut:

Langkah 1: Mengenal ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

Langkah 2: Tingkatkan Firmware pada ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

Langkah 3: Shiald, Shield, More dan Moer? Pentingkah?

Langkah 4: Shield Moer - Menyelesaikan Komunikasi Bersiri RX / TX

Langkah 5: Pelayan web dengan ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

Saya mengesyorkan agar anda membaca semua langkah untuk belajar sebanyak mungkin mengenai perisai ini.

Langkah 1: Mengenal ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter (Shield WiFi ESP8266) menjadikannya mudah untuk menghubungkan rangkaian Arduino ke WiFi melalui ESP8266. Semasa menggunakannya, tidak perlu lagi memasang litar dengan beberapa komponen dan wayar untuk menghubungkan ESP8266 ke Arduino, cukup pasangkan papan ke Arduino, letakkan jalur suis DIP mengikut mod operasi perisai dan atur Arduino ke sambungkan ke rangkaian WiFi. Di samping itu, papan boleh digunakan tanpa Arduino, kerana ia mempunyai semua pin-out ESP-12E yang tersedia.

Di perisai terdapat maklumat bahawa ia dibuat oleh orang bernama WangTongze dan yang memiliki haknya adalah elecshop.ml. Pada mulanya pencipta perisai itu berusaha mengumpulkan dana untuk projeknya melalui Indiegogo (laman dana kolektif), tetapi dia tidak berjaya mengumpulkan wang.

Ciri-ciri ESP8266 model ESP-12E:

- Senibina RISC 32-bit- Pemproses boleh beroperasi pada 80MHz / 160MHz- memori flash 32MB- 64kB untuk arahan- 96kB untuk data- WiFi asli standard 802.11b / g / n- Beroperasi dalam mod AP, Stesen atau AP + Stesen- Ia mempunyai 11 pin digital- Ia mempunyai 1 pin analog dengan resolusi 10-bit- Pin digital kecuali D0 mengalami gangguan, PWM, I2C dan satu wayar- Boleh diprogramkan melalui USB atau WiFi (OTA) - Sesuai dengan Arduino IDE- Sesuai dengan modul dan sensor yang digunakan di Arduino

Di bawah ini anda boleh membaca ciri utama perisai ini:

- Ukuran Arduino Uno R3 dan penyematannya serasi dengan Arduino Uno, Mega 2560, Leonardo dan turunannya. - Versi kecil Arduino (Nano dan Pro Mini, misalnya) serasi, tetapi sambungan mesti dibuat melalui jumper.- Voltan Arduino (5V) digunakan untuk memberi kuasa pada perisai. - Mempunyai pengatur voltan 3.3S AMS1117, jadi voltan 5V yang dibekalkan oleh Arduino dikurangkan untuk mengaktifkan perisai tanpa memerlukan daya luaran. - Ia mempunyai penukar tahap logik terbina dalam, jadi Arduino TTL level (5V) tidak merosakkan ESP8266 yang beroperasi dengan level TTL 3.3V.- Ia mempunyai suis DIP 4 arah yang berfungsi untuk mengubah mod operasi papan.- Mod operasi yang tersedia: WiFi Shield untuk Arduino / menghantar arahan AT melalui peningkatan Arduino / firmware melalui USB Serial external / standalone converter.- Ia mempunyai LED indikasi (PWR / DFU / AP / STA).- Kerana dalam format perisai, ia membolehkan perisai dan modul lain dimasukkan.- Ia mempunyai butang ESP-RST untuk menetapkan semula ESP8266.- Th e Pin ADC ESP8266 tersedia dalam dua bentuk di papan tulis, yang pertama pada pin dengan julat bacaan 0 hingga 1V dan bentuk kedua dalam julat 0 hingga 3.3V.

Dalam gambar bahagian utama perisai diserlahkan:

Imej
Imej

A (PIN DIGITAL): urutan pin yang digunakan oleh Arduino.

B (PIN8 ESP8266): ESP8266-12E dan pin masing-masing. Di bahagian belakang plat terdapat tatanama pin.

C (Sambungan Adaptor USB Siri LUARAN): Urutan pin yang digunakan untuk menyambungkan penyesuai USB Serial luaran untuk kemas kini firmware atau penyahpepijatan ESP8266.

D (PIN PENYELENGGARAAN SHIELD): Urutan tiga pin yang dikenal pasti sebagai Maintenance Only dan digunakan untuk mengesahkan bahawa pengatur voltan menerima dan membekalkan voltan dengan betul. TIDAK HARUS DIGUNAKAN SEBAGAI SUMBER BEKALAN.

E (DIP SWITCH TO MODIFY OPERATING MODES): Suis DIP empat arah untuk menukar mod operasi.

CONTACT 1 (P1) dan CONTACT 2 (P2): digunakan untuk menghubungkan RX (diwakili oleh P1) dan TX (diwakili oleh P2) dari ESP8266 ke pin Arduino D0 (RX) dan D1 (TX). P1 dan P2 dalam posisi OFF mematikan sambungan RX dari ESP8266 ke Arduino TX dan TX dari ESP8266 ke Arduino RX.

CONTACT 3 (P3) dan CONTACT 4 (P4): digunakan untuk mengaktifkan dan mematikan mod peningkatan firmware untuk ESP8266. Untuk mengaktifkan / menulis firmware pada ESP8266, P3 dan P4 mesti berada dalam kedudukan ON. Apabila P4 berada dalam posisi ON, LED DFU akan menyala, menunjukkan bahawa ESP8266 diaktifkan untuk menerima firmware. Untuk mematikan mod kemas kini firmware dan menetapkan ESP8266 ke operasi normal, cukup tetapkan P3 dan P4 ke MATI.

CATATAN: Semua 4 kenalan dalam posisi MATI menunjukkan bahawa ESP8266 beroperasi dalam mod biasa di sebelah Arduino

F (AD8 DARI ESP8266): penugasan pin untuk ESP8266 ADC. Pin yang beroperasi dalam julat 0 hingga 1V dan pin lain yang beroperasi dalam julat 0 hingga 3.3V. Pin ini hanya akan digunakan apabila menggunakan ESP8266 sahaja (mod mandiri).

G (ESP8266 RESET): butang yang digunakan untuk menetapkan semula ESP8266. Setiap kali anda menukar kedudukan suis DIP, anda mesti menekan butang ESP-RST.

H (PIN ANALOG DAN BEKALAN KUASA): urutan pin yang digunakan oleh Arduino.

Perisai ini mempunyai keunikan pada kenalan P1 dan P2 dari DIP Switch dan kekhususan ini, sebenarnya ia menimbulkan keraguan besar pada orang yang cuba menggunakan perisai.

Menurut pencipta perisai, ketika menyambungkannya ke Arduino hanya diperlukan 2 pin. Pin ini adalah D0 dan D1 (Arduino's RX dan TX masing-masing) dan sebagai tambahan, kenalan P1 dan P2 DIP Switch pada perisai mesti berada dalam posisi ON untuk sambungan.

Dalam satu-satunya dokumen Cina yang saya perolehi mengenai perisai ini, pencipta lembaga itu mengatakan:

P1 dan P2 adalah pengekod bit dan digunakan untuk menentukan sama ada siri ESP8266 disambungkan ke Arduino D0 dan D1.

Di bahagian lain dari dokumen tersebut disebutkan:

Papan pengembangan ini menjadikan siri Arduino sibuk, menghubungkan RX dari ESP8266 ke TX dari Arduino dan TX dari ESP8266 ke Arduino RX.

Pin D0 (RX) dan D1 (TX) Arduino sesuai dengan komunikasi bersiri / USB asli, sehingga pin ini tetap sibuk setiap kali kami menghantar kod ke papan atau menggunakan monitor bersiri. Oleh itu, jika kenalan P1 dan P2 pelindung berada dalam posisi ON, ESP8266 akan menggunakan Arduino D0 dan D1 dan tidak mungkin untuk menghantar kod atau menggunakan siri kerana ia akan sibuk. Sebagai tambahan, untuk menghantar arahan AT ke perisai, ESP8266 RX perlu disambungkan ke Arduino RX dan ESP8266 TX disambungkan ke Arduino TX. Ini hanya akan berlaku sekiranya kita membalikkan sambungan seperti yang ditunjukkan dalam gambar di bawah:

Imej
Imej

Lihat saya telah membengkokkan kenalan D0 dan D1 perisai, dan menghubungkan Arduino D0 ke D1 perisai dan D1 dari Arduino ke D0 perisai. Semasa menggunakan sambungan dengan cara ini (Arduino digunakan sebagai jambatan sambungan), saya dapat menghantar arahan AT ke ESP8266 dan mengesahkan apa yang sudah saya bayangkan.

Bentuk operasi standard perisai memerlukan kod (pelayan web atau firmware, misalnya) dimuat ke dalam perisai dan kod lain dimuat ke dalam Arduino untuk menghantar, menerima, dan menafsirkan data yang masuk melalui siri asli. Maklumat lebih terperinci mengenai bentuk komunikasi ini akan dilihat pada langkah seterusnya.

Bagaimanapun, ciri pelindung ini tidak mengganggu operasinya, kerana kita biasanya meniru siri pada pin digital Arduino yang lain sehingga kita dapat menyediakan siri asli tersebut. Sebagai tambahan, jika perlu untuk mengirimkan perintah AT ke perisai, kita dapat menghubungkannya ke Arduino melalui empat kabel atau menggunakan penukar USB bersiri.

Akhirnya, perisai sangat stabil dan membuat pemasangan litar sangat mudah. Saya menguji dengan Arduino Uno R3 dan Mega 2560 R3.

Pada langkah seterusnya anda akan belajar bagaimana meningkatkan / menukar firmware perisai.

Langkah 2: Tingkatkan Firmware pada ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

Untuk menyambungkan perisai ke komputer, perlu menggunakan penukar USB bersiri. Sekiranya anda tidak mempunyai penukar USB bersiri konvensional, anda boleh menggunakan penukar Arduino Uno R3 sebagai perantaraan. Terdapat beberapa model penukar USB bersiri di pasaran, tetapi untuk tutorial ini saya menggunakan Adaptor Penukar USB Serial PL2303HX TTL.

Untuk menaik taraf perisai, gunakan:

Alat Muat Turun Kilat ESP8266

Firmware yang akan digunakan adalah:

Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a Firmware AT

Setelah anda memuat turun program dan firmware, salin keduanya ke root (pemacu C) Windows anda.

Unzip flash_download_tools_v2.4_150924.rar dan folder FLASH_DOWNLOAD_TOOLS_v2.4_150924 akan dihasilkan.

Menggunakan penukar USB bersiri Arduino Uno R3 sebagai perantaraan:

Langkah seterusnya adalah menyambungkan perisai ke komputer. Sekiranya anda tidak mempunyai penukar usb bersiri standard, anda boleh menggunakan Arduino Uno R3 untuk merapatkan perisai dan komputer. Sebagai tambahan kepada Arduino Uno R3 dengan Kabel USB, anda akan memerlukan:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - Kabel Jumper Lelaki-Wanita

CATATAN: Sebelum memasang rajah pendawaian Arduino, anda mesti memuatkan kod kosong di papan untuk memastikan bahawa penukar USB bersiri tidak digunakan. Muatkan kod di bawah ke Arduino anda dan teruskan:

persediaan kosong () {// letakkan kod persediaan anda di sini, untuk dijalankan sekali:} gelung kosong () {// letakkan kod utama anda di sini, untuk dijalankan berulang kali:}

Imej
Imej

CATATAN: Berhati-hatilah semasa memasang pin perisai 3.3V ke Arduino.

Menggunakan Adapter Serial TTL USB Converter PL2303HX:

Anda memerlukan item berikut sebagai tambahan kepada Adaptor Penukar USB Serial PL2303HX TTL:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - Kabel Jumper Lelaki-Wanita

Imej
Imej

CATATAN: PL2303 mempunyai kuasa 5V dan 3V3. Gunakan kuasa 3V3 dan abaikan pin 5V

Setelah anda membuat salah satu skema sambungan di atas, sambungkan kabel USB (ke Arduino dan komputer) atau penukar USB bersiri ke komputer.

Kemudian pergi ke 'Control Panel' di Windows, 'Device Manager', dan di tetingkap yang terbuka pergi ke 'Ports (COM dan LPT)'. Anda dapat melihat peranti yang disambungkan dan nombor port COM di mana ia diperuntukkan. Sebagai demonstrasi, saya menghubungkan kedua Arduino dan penukar USB bersiri di komputer dan pada gambar di bawah anda dapat melihat bagaimana peranti muncul di pengurus:

Imej
Imej

Sekiranya anda menggunakan PL2303HX dan tidak dikenali oleh Windows, akses pos Serial TTL USB Converter PL2303HX - Pemasangan di Windows 10, lihat cara menyelesaikannya dan kemudian kembali untuk meneruskan.

Sekarang pergi ke folder FLASH_DOWNLOAD_TOOLS_v2.4_150924 dan jalankan ESP_DOWNLOAD_TOOL_V2.4.exe:

Imej
Imej

Pada perisai, letakkan kenalan P3 dan P4 dari Suis DIP pada posisi ON dan kemudian tekan butang ESP-RST pada kad sehingga perisai memasuki mod peningkatan firmware:

Imej
Imej

Dengan program yang terbuka, hapus centang pilihan 'SpiAutoSet', pilih port COM, pilih 'BAUDRATE' 115200, hapus centang mana-mana kotak bertanda 'Muat turun Path Config', konfigurasikan pilihan lain seperti yang ditunjukkan di bawah dan klik 'MULAI':

Imej
Imej

Sekiranya komunikasi dengan ESP8266 WiFi Shield OK, anda akan melihat maklumat dalam 'INFO DETEKTIF', 'Alamat MAC' dan 'SYNC':

Imej
Imej

CATATAN: Sekiranya program mengembalikan 'FAIL', periksa apakah anda telah memilih port COM yang betul, periksa sama ada kekunci P3 dan P4 pada suis DIP AKTIF, klik butang ESP-RST, klik STOP dan sekali lagi klik MULAI.

Dalam 'Download Path Config' anda harus memilih fail 'Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin' yang dimuat turun. Klik pada '…' pada medan pertama dan di tetingkap yang terbuka, arahkan ke folder tempat anda meletakkan firmware dan pilih fail 'Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin'. Di medan 'ADDR' isikan 0x00000 ofset dan centang kotak untuk menyelesaikannya. Setelah selesai, anda akan mempunyai tetapan seperti di bawah ini:

Imej
Imej

Sekarang klik MULAI untuk memulakan proses:

CATATAN: Sekiranya anda menggunakan penukar USB bersiri Arduino sebagai perantara antara perisai dan komputer, klik pada butang ESP-RST perisai sebelum mengklik MULAI. Sekiranya anda menggunakan penukar USB bersiri konvensional, prosedur ini tidak diperlukan

Imej
Imej

Tunggu proses peningkatan firmware selesai (akan memakan masa sekitar tujuh minit untuk proses selesai):

Imej
Imej

Setelah menyelesaikan proses peningkatan firmware, tutup tetingkap ESP_DOWNLOAD_TOOL_V2.4, kembalikan kenalan P3 dan P4 dari Suis DIP ke posisi MATI dan tekan butang ESP-RST pada perisai sehingga dapat keluar dari mod peningkatan firmware.

Sekarang buka Arduino IDE sehingga anda dapat mengirim perintah AT ke papan untuk mengesahkan bahawa firmware telah dikemas kini dengan betul dan papan tersebut bertindak balas terhadap perintah tersebut.

Dengan IDE terbuka, pergi ke menu 'Tools' dan kemudian dalam pilihan 'Port' pilih port COM. Perhatikan pada gambar di bawah bahawa saya memilih port COM7 (port anda mungkin akan berbeza):

Imej
Imej

Anda TIDAK perlu memilih papan di IDE kerana ini tidak relevan untuk menghantar perintah AT.

Buka 'Serial Monitor' dan periksa footer jika kelajuannya ditetapkan ke 115200 dan jika 'Keduanya, NL dan CR' dipilih:

Imej
Imej

Sekarang ketik perintah 'AT' (tanpa tanda petik) dan berikan 'ENTER' atau klik 'Kirim'. Sekiranya sambungan berfungsi, anda perlu mengembalikan mesej 'OK':

Imej
Imej

CATATAN: Sekiranya menghantar arahan TIDAK menerima maklum balas atau menerima rentetan watak rawak, ubah kelajuan dari 115200 monitor bersiri menjadi 9600 dan hantarkan perintah itu sekali lagi

Dalam 'Serial Monitor' taipkan arahan 'AT + GMR' (tanpa tanda petik) dan berikan 'ENTER' atau klik 'Kirim'. Sekiranya anda menerima maklum balas seperti ditunjukkan di bawah, maka Perisai WiFi ESP8266 anda telah berjaya dikemas kini:

Imej
Imej

Sekiranya anda ingin menukar baudrate komunikasi dengan perisai 9600, masukkan perintah 'AT + UART_DEF = 9600, 8, 1, 0, 0' (tanpa petikan) dan berikan 'ENTER' atau klik 'Kirim'. Sekiranya anda menerima maklumat seperti yang ditunjukkan di bawah, maka kelajuan komunikasi telah berubah:

Imej
Imej

CATATAN: Semasa menukar pelindung baudrate, anda juga harus mengubah kelajuan dari 115200 hingga 9600 di footer Monitor Serial. Kemudian hantarkan arahan 'AT' sekali lagi (tanpa tanda petik) dan tekan 'ENTER' atau klik 'Kirim'. Sekiranya anda menerima 'OK' sebagai pulangan maka komunikasi berfungsi

Sekiranya anda ingin menggunakan perisai untuk memberikan WiFi ke Arduino, kelajuan komunikasi yang ideal adalah 9600 baud.

Pada langkah seterusnya, anda akan mengetahui perisai apa yang anda ada, kerana mungkin terdapat sekurang-kurangnya tiga perisai di pasaran yang nampaknya sama, tetapi sebenarnya papan ini mempunyai beberapa titik yang membezakannya, walaupun dalam persoalan bekerja dengan Arduino melalui komunikasi melalui siri asli.

Langkah 3: Shiald, Shield, More dan Moer? Pentingkah?

Sekiranya ia adalah ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter, adalah mungkin untuk mencari sekurang-kurangnya tiga papan yang nampaknya sama, tetapi sebenarnya papan ini mempunyai beberapa titik yang membezakannya, walaupun dalam soal bekerja dengan Arduino melalui komunikasi bersiri asli.

Mengikuti anda dapat melihat apa yang membezakan papan dan mengetahui yang mana satu adalah milik anda.

Shiald WiFi ESP8266:

Imej
Imej

Perhatikan bahawa di papan ini perkataan Shield ditulis "Shiald" dan perkataan "more" mempunyai huruf "m" dalam huruf kecil. Dalam ujian yang saya lakukan untuk masa yang lama, papan TIDAK menunjukkan kekurangan dalam fungsinya.

Perisai WiFi ESP8266:

Imej
Imej

Perhatikan bahawa di papan ini perkataan Shield ditulis dengan betul dan perkataan "More" mempunyai huruf "M" dalam huruf besar. Dalam soal pengoperasian, papan ini berkelakuan sama seperti versi Shiald, yakni papan tidak rosak.

Oleh itu, anda bermaksud bahawa papan Shiald dan Shield hanya mempunyai perbezaan dalam isu sutera PCB?

Ya, kedua-dua kad ini hanya mempunyai perbezaan dalam soal penulisan dua perkataan. Litar di kedua papan sama dan kedua-duanya berfungsi dengan sempurna dengan Arduino atau bersendirian (mod berdiri sendiri). Memandangkan bahawa Arduino mempunyai kod yang betul dimuat dan salah satu perisainya juga dengan firmware yang betul, setelah memasang perisai ke Arduino dan menyambungkan kabel USB, cukup letakkan kenalan P1 dan P2 dari suis DIP pada posisi ON. dan komunikasi melalui siri asli (pin D0 dan D1) antara papan akan dibuat.

Ada yang mengatakan bahawa versi Shiald ini mempunyai sambungan tanpa wayar yang tidak stabil, tetapi saya menegaskan bahawa sama sekali tidak ada ketidakstabilan.

Perisai WiFi ESP8266 (Moer):

Imej
Imej

Perhatikan bahawa di papan ini perkataan Shield ditulis dengan betul dan perkataan "More" ditulis "Moer", iaitu, salah. Malangnya papan ini tidak berfungsi sebagaimana mestinya dan jika terpasang pada Arduino (dengan kenalan suis DIP MATI atau AKTIF) dan pengguna cuba memuatkan kod pada Arduino, mesej kesalahan akan muncul di IDE sebagai memuatkan akan gagal.

Sekiranya perisai anda adalah pelindung yang ditulis di Moer dan anda menghadapi masalah menggunakannya dengan Arduino anda melalui komunikasi bersiri asli, pergi ke langkah seterusnya dan pelajari cara menyelesaikan masalah tersebut. Sekiranya perisai anda TIDAK LAGI, lompat ke Langkah 5.

Langkah 4: Shield Moer - Menyelesaikan Komunikasi Bersiri RX / TX

Sekiranya papan ini (Moer) digabungkan ke Arduino (dengan kenalan suis DIP MATI atau AKTIF) dan pengguna cuba memuatkan kod pada Arduino, mesej ralat akan muncul di IDE kerana beban akan gagal. Ini disebabkan oleh kesalahan komponen yang digunakan dalam pembinaan perisai.

Perisai yang mempunyai pembinaan dan operasi yang betul, telah mengimpal dua Channel N MOSFET dan dikenal pasti sebagai J1Y. Salah satu transistor J1Y disambungkan ke ESP8266 RX dan yang lain disambungkan ke ESP8266 TX. Dalam gambar di bawah anda dapat melihat dua transistor diserlahkan:

Imej
Imej

Transistor J1Y ini adalah BSS138 yang bertujuan untuk membolehkan litar tahap logik 5V berkomunikasi dengan litar tahap logik 3.3V dan sebaliknya. Oleh kerana ESP8266 mempunyai tahap logik 3.3V dan Arduino mempunyai tahap logik 5V, perlu menggunakan penukar tahap logik untuk memastikan pengoperasian ESP8266 dengan sempurna.

Di perisai Moer, terdapat di atas papan dua transistor yang dikenali sebagai J3Y. Dalam gambar di bawah ini anda dapat melihat dua transistor diserlahkan:

Imej
Imej

Transistor J3Y adalah S8050 NPN dan jenis transistor ini biasanya digunakan dalam litar penguat. Atas sebab-sebab tertentu semasa pembinaan perisai Moer, mereka menggunakan transistor J3Y dan bukannya penukar tahap logik J1Y.

Dengan cara ini, pin RX dan TX ESP8266 tidak akan berfungsi sebagaimana mestinya dan oleh itu perisai tidak akan mempunyai komunikasi bersiri dengan Arduino. Sebagai perisai berkomunikasi dengan Arduino melalui siri asli (pin D0 dan D1), dengan itu digabungkan dengan pemuatan kod Arduino (di Arduino) tidak akan pernah dapat diselesaikan dengan jayanya, kerana dalam beberapa kes akan selalu ada sekitar 2.8V di RX dan Arduino TX atau 0V malar, semuanya kerana transistor yang salah.

Setelah semua maklumat ini, jelas bahawa satu-satunya penyelesaian untuk perisai Moer, adalah penggantian transistor J3Y oleh transistor J1Y. Untuk prosedur ini, anda perlu sebagai tambahan kepada perisai kesabaran Moer, dan:

01 - Soldering Iron01 - Tin01 - Forceps atau Needle Pliers01 - Welding Sucker02 - BSS138 (J1Y)

Transistor BSS138 (J1Y) digunakan dalam 3.3V / 5V Logic Level Converter.

CATATAN: Prosedur berikut memerlukan anda mengetahui cara mengendalikan besi pematerian dan anda mempunyai pengalaman mengimpal paling sedikit. Komponen yang akan dikeluarkan dan komponen yang akan diganti adalah komponen SMD dan memerlukan penjagaan dan kesabaran yang lebih tinggi ketika mengelas dengan besi pemateri biasa. Berhati-hatilah untuk tidak meninggalkan besi pematerian terlalu lama di terminal transistor kerana ini boleh merosakkannya

Dengan besi pematerian panas, panaskan salah satu terminal transistor dan masukkan sedikit timah. Lakukan prosedur ini untuk setiap terminal kedua-dua transistor. Kimpalan yang berlebihan di terminal akan memudahkan penukaran transistor:

Imej
Imej

Sekarang ambil pinset / tang, pegang transistor di sisi, panaskan sisi transistor yang hanya mempunyai satu terminal dan paksa transistor ke atas sehingga terminal terlepas dari pateri. Masih dengan pinset / tang memegang transistor, cuba letakkan hujung besi pemateri pada dua terminal yang lain dan paksa transistor sehingga selesai melepaskannya dari papan. Lakukan ini untuk kedua-dua transistor dan berhati-hati:

Imej
Imej

Keluarkan dua IC J3Y dari pelindung, letakkan IC J1Y di tempatnya, pegang dengan pinset / tang, dan panaskan setiap hujung pelindung sehingga timah bergabung dengan kenalan. Sekiranya kenalannya rendah pateri, panaskan masing-masing dan letakkan lebih banyak timah. Lakukan ini untuk kedua-dua transistor dan berhati-hati:

Imej
Imej

Selepas pembaikan, perisainya yang sebelumnya tidak mempunyai komunikasi langsung dengan Arduino, mula terhubung ke papan melalui siri asli (pin D0 dan D1).

Ujian pertama untuk mengesahkan bahawa pembaikan berjaya dilakukan adalah dengan memasang pelindung (dengan semua kenalan suis DIP MATI) ke Arduino, sambungkan kabel USB ke papan dan komputer, dan cuba memuatkan kod ke dalam Arduino. Sekiranya semuanya baik-baik saja, kod akan berjaya dimuat.

Langkah 5: Pelayan Web Dengan ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter untuk Arduino

Sebagai syarat utama untuk meneruskan langkah ini, anda seharusnya melakukan langkah 2.

Seperti yang saya nyatakan sebelumnya, untuk menggunakan perisai dengan Arduino melalui siri asli (pin D0 dan D1), adalah perlu agar kod dimasukkan ke dalam perisai dan Arduino dimuatkan kod lain untuk menghantar, menerima dan mentafsirkan data diperdagangkan melalui siri asli. Di perisai, kita dapat memasang firmware perintah AT dan memprogram Arduino untuk mengirim perintah ke perisai untuk menyambung ke rangkaian WiFi dan untuk mengawal input dan output dari Arduino.

Pada langkah ini kita akan menggunakan perpustakaan WiFiESP, kerana sudah memiliki semua fungsi yang diperlukan untuk mengintegrasikan ESP8266 (Shield WiFi ESP8266 dalam kes kita) ke Arduino dan memberikan WiFi ke papan. Perpustakaan WiFiESP berfungsi dengan mengirimkan perintah AT, maka sambungan rangkaian tanpa wayar penghala dan permintaan apa pun yang dibuat ke pelayan web akan mengakibatkan pengiriman perintah AT ke perisai.

Agar perpustakaan WiFiESP berfungsi, versi firmware arahan AT mestilah sekurang-kurangnya 0.25 atau lebih tinggi. Oleh itu, jika anda tidak mengetahui versi perintah AT perisai anda, pergi ke langkah 2 untuk mengemas kini papan dengan firmware yang mempunyai versi perintah AT 1.2.0.0 dan kemudian kembali untuk meneruskan.

Satu perkara yang saya kenal semasa ujian saya dengan perisai dan Arduino adalah kerana komunikasi di antara mereka berlaku melalui siri asli (pin D0 dan D1), menjadi mustahak bahawa siri ini dapat digunakan secara eksklusif untuk komunikasi antara mereka. Oleh itu, saya tidak mengesyorkan menggunakan "Serial.print () / Serial.println ()" untuk mencetak maklumat pada monitor bersiri Arduino IDE atau program lain yang memaparkan maklumat bersiri.

Secara lalai, perpustakaan WiFiESP dikonfigurasikan untuk menampilkan kesalahan bersiri, amaran, dan maklumat komunikasi lain antara Arduino dan ESP8266. Seperti yang saya sebutkan sebelumnya, siri ini harus dilancarkan untuk komunikasi antara Arduino dan perisai. Oleh itu, saya menyunting fail dari perpustakaan dan melumpuhkan paparan semua maklumat dalam siri ini. Satu-satunya maklumat yang akan ditampilkan pada monitor bersiri adalah perintah AT yang dikirimkan oleh perpustakaan ke perisai untuk menyambung ke rangkaian tanpa wayar atau perintah AT untuk melaksanakan permintaan yang dibuat ke pelayan web.

Muat turun perpustakaan WiFIESP yang diubah suai dan pasangkannya di Arduino IDE:

Mod WiFIESP

Di folder pemasangan perpustakaan, cukup akses jalan "WiFiEsp-master / src / utiliti" dan di dalamnya terdapat file "debug.h" yang diedit untuk menonaktifkan paparan maklumat pada serial. Membuka fail di Notepad ++, misalnya, kita mempunyai baris 25, 26, 27, 28, dan 29 yang menunjukkan penomboran yang sesuai untuk jenis maklumat yang akan dipaparkan pada monitor bersiri. Perhatikan bahawa nombor 0 mematikan paparan semua maklumat pada monitor bersiri. Akhirnya, pada baris 32 saya mengkonfigurasi "_ESPLOGLEVEL_" dengan nilai 0:

Imej
Imej

Sekiranya anda ingin menggunakan perpustakaan WiFiESP dalam projek lain dengan ESP8266 dan memerlukan maklumat yang dipaparkan pada monitor bersiri, cukup tetapkan "_ESPLOGLEVEL_" ke nilai 3 (nilai lalai perpustakaan) dan simpan fail.

Oleh kerana perisai anda sudah mempunyai versi firmware arahan AT 0.25 atau lebih tinggi, mari kita teruskan.

Pasang perisai ke Arduino anda (Uno, Mega, Leonardo atau versi lain yang membolehkan perisai dipasang), letakkan semua kenalan suis DIP pada posisi OFF, sambungkan LED antara pin 13 dan GND, dan sambungkan kabel USB ke Arduino dan komputer:

Imej
Imej

Saya menggunakan Arduino Mega 2560, namun, hasil akhirnya akan sama jika anda menggunakan papan Arduino lain yang membolehkan pelindung digabungkan.

Muat turun kod dari pautan dan buka di Arduino IDE:

Pelayan Web Kod

Sekiranya anda menggunakan Arduino Leonardo, pergi ke baris 19 dan 20 kod, dan ubah perkataan Serial menjadi Serial1, seperti yang ditunjukkan dalam gambar di bawah:

Imej
Imej

Dalam kod tersebut anda mesti memasukkan nama rangkaian WiFi anda di baris char * ssid = "NAMA RANGKAIAN WIFI ANDA";, kata laluan harus dimasukkan di baris char * kata laluan = "PASSWORD JARINGAN WIFI ANDA"; dan pada baris WiFi.config (IPAddress … anda harus memasukkan alamat IP yang tersedia di rangkaian wayarles anda kerana kod ini menggunakan IP statik:

Imej
Imej

Di menu "Tools" pilih "Board" dan pilih model Arduino anda. Masih di menu "Alat", pilih pilihan "Port" dan periksa port COM di mana Arduino anda telah diperuntukkan.

Klik butang untuk menghantar kod ke Arduino dan tunggu pemuatan.

Setelah memuatkan kod pada Arduino, cabut kabel USB dari kad, letakkan kenalan P1 dan P2 dari Suis DIP perisai dalam kedudukan ON dan sambungkan kabel USB ke Arduino sekali lagi.

CATATAN: Selagi kenalan P1 dan P2 perisai berada dalam kedudukan ON, anda tidak akan dapat menghantar kod ke Arduino kerana siri asli akan sibuk. Ingatlah setiap kali anda menukar kedudukan suis DIP, tekan butang ESP-RST

Buka monitor bersiri Arduino IDE dengan segera:

Imej
Imej

Dengan monitor bersiri terbuka, anda dapat mengikuti perintah AT yang dikirim ke perisai untuk menjalankan pelayan web. Sekiranya tidak ada maklumat yang ditunjukkan semasa membuka monitor bersiri, tekan butang RESET di Arduino anda dan tunggu.

Perhatikan bahawa pada monitor bersiri arahan "AT + CIPSTA_CUR" menunjukkan alamat IP untuk menyambung ke pelayan web dan perintah "AT + CWJAP_CUR" menunjukkan nama dan kata laluan rangkaian wayarles di mana perisai disambungkan:

Imej
Imej

Salin alamat IP yang ditunjukkan pada monitor bersiri, buka penyemak imbas internet anda, tampal alamat IP dan tekan ENTER untuk mengakses. Halaman web yang serupa dengan yang di bawah akan dimuat:

Imej
Imej

Halaman web mempunyai butang yang bertanggungjawab untuk menghidupkan / mematikan LED yang disambungkan ke pin 13 Arduino. Tekan butang untuk menghidupkan / mematikan LED dan melihat bahawa status semasa dikemas kini di halaman.

Anda juga dapat mengakses laman web melalui telefon pintar atau tablet, misalnya.

Lihat video di bawah untuk hasil akhir:

Ini adalah latihan sederhana, kerana tujuannya adalah untuk menunjukkan betapa mudahnya menggunakan perisai dengan Arduino. Semua projek yang anda dapati di internet yang menggunakan ESP8266 untuk menetapkan WiFi ke Arduino, dapat dihasilkan semula dengan WiFi Shield ini, perbezaannya ialah anda tidak perlu memasang pembahagi voltan di protoboard untuk berkomunikasi platform, dan secara sederhana projek anda tidak perlu risau untuk menghidupkan litar dengan bekalan kuasa luaran. Di samping itu, projek anda akan mempunyai estetika yang lebih menyenangkan.

Sekarang setelah anda mengetahui cara mengintegrasikan Shield WiFi ESP8266 dengan Arduino dari pelayan web, cukup ubah kod dan laksanakan beberapa projek yang lebih rumit atau mulailah mengembangkan kod anda sendiri.

Sekali lagi, maaf atas kegagalan dalam Bahasa Inggeris.

Sekiranya anda mempunyai soalan mengenai perisai, tanyakan saja dan saya dengan senang hati akan memberi respons.

Disyorkan: