ESP8266 dan Arduino, koneksi, pinout
Hai geektimes . Tema ESP8266, seperti IoT (Internet of Things) , semakin populer, dan Arduino sudah mengambil inisiatif dengan menambahkan modul Wi-Fi ini ke daftar papan yang didukung.Tetapi bagaimana menghubungkannya ke Arduino? Dan mungkinkah entah bagaimana melakukannya tanpa Arduino sama sekali? Hari ini, inilah tepatnya yang akan dibahas dalam artikel ini.Ke depan, saya akan mengatakan bahwa akan ada artikel kedua, yang sudah lebih praktis, tentang topik flashing dan pemrograman modul ESP8266 di lingkungan pengembangan IDE Arduino . Tapi, hal pertama yang pertama.
Video ini sepenuhnya menggandakan materi yang disajikan dalam artikel.Saat ini, ada banyak varietas modul ini, berikut adalah beberapa di antaranya:
Tetapi pinout ESP01, ESP03, ESP12:
* Gambar ini dapat dilihat dengan kualitas baik saat tidak aktif. situs web pighixxx.com .Secara pribadi, saya paling suka versi ESP07. Setidaknya untuk fakta bahwa ada layar logam (melindungi sirkuit mikro dari gangguan eksternal, sehingga memastikan operasi yang lebih stabil), antena keramiknya sendiri, konektor untuk antena eksternal. Ternyata dengan menghubungkan antena eksternal, seperti biquadrat , untuk itu, Anda dapat mencapai jangkauan yang baik. Selain itu, ada beberapa port input dan output, yang disebut GPIO (General Input Input Output - port input-output tujuan umum), dengan analogi dengan pin Arduino.Mari kita kembali ke modul Wi-Fi domba jantan kita dan Arduino. Pada artikel ini, saya akan mempertimbangkan menghubungkan ESP8266 (model ESP01) ke Arduino Nano V3.Tetapi, informasi ini akan relevan untuk sebagian besar modul ESP8266 dan berbagai papan Arduino, misalnya, Arduino UNO paling populer.Beberapa kata pada kaki ESP01:
Vcc dan GND (dalam gambar di atas adalah 8 dan 1) - kekuatan , menurut dokumentasi , dari 3 menjadi 3,6 V , dan GND, dapat diterapkan ke kaki Vcc ,- tanah (persediaan dikurangi). Saya melihat bagaimana satu orang menghubungkan modul ini ke dua baterai AA (tegangan suplai dalam kasus ini sekitar 2,7 V) dan modul berfungsi. Tapi tetap saja, para pengembang menunjukkan kisaran voltase di mana modul harus dijamin berfungsi, jika Anda menggunakan yang lain, masalah Anda.Perhatian! Modul ini didasarkan pada logika 3,3 V, dan Arduino terutama logika 5 V. 5 Mereka dapat dengan mudah menonaktifkan ESP8266, sehingga perlu didukung secara terpisah dari arduino ."Ada arduino di kakiku yang bertuliskan 3.3 V, mengapa tidak menggunakannya?"Anda mungkin berpikir. Faktanya adalah bahwa ESP8266 cukup modul rakus, dan dalam puncaknya dapat mengkonsumsi arus hingga 200 mA, dan hampir tidak ada Arduino secara default dapat menghasilkan arus seperti itu, kecuali pengecualiannya adalah Arduino Due , di mana arus melalui garis 3,3 V dapat mencapai 800 mA dengan margin yang cukup, dalam kasus lain, menyarankan untuk menggunakan tambahan stabilizer 3,3 V, misalnya AMS1117 3.3 di . Poros seperti di Cina dan di sini.
Kaki RST 6 - dimaksudkan sebagai "besi" untuk me-reboot modul, secara singkat memberi makan tingkat logika yang rendah untuk itu, modul akan reboot. Meskipun saya mengabaikan ini di video, saya menyarankan Anda untuk "menekan" kaki ini dengan resistor 10 kOhm ke power plus, untuk mencapai stabilitas yang lebih baik dalam modul, kalau tidak saya reboot dari gangguan sedikit pun.Kaki CP_PD 4 (atau dengan kata lain EN ) - berfungsi, sekali lagi, untuk transfer "besi" modul ke mode hemat energi, di mana ia mengkonsumsi arus yang sangat kecil. Nah, sekali lagi - tidak akan berlebihan untuk "memeras" kaki ini dengan resistor 10 kOhm ke plus Pitalov. Dalam video itu, saya dengan bodohnya menyingkat kaki ini menjadi Vcc, karena tidak ada penghambat seperti itu di tangan.Kaki RXD0 7 TXD0 2 - UART perangkat keras, yang digunakan untuk menginstal, tetapi tidak ada yang melarang menggunakan port ini sebagai GPIO (masing-masing GPIO3 dan GPIO1). Untuk beberapa alasan, GPIO3 dalam gambar tidak diberi label, tetapi ada dalam lembar data:
Omong-omong, LED "Connect" terhubung ke kaki TXD0 2, dan menyala pada tingkat logika rendah pada GPIO1, atau ketika modul mengirim sesuatu melalui UART.GPIO0 5 - tidak hanya port input / output, tetapi juga menempatkan modul dalam mode pemrograman. Ini dilakukan dengan menghubungkan port ini ke level logika rendah ("ditekan" ke GND) dan menerapkan daya ke modul. Dalam video, saya melakukan ini dengan tombol biasa. Setelah flashing, jangan lupa untuk melepas jumper / tekan tombol (tidak perlu menahan tombol selama flashing, modul beralih ke mode pemrograman saat dihidupkan, dan tetap di dalamnya sampai reboot).GPIO2 3 - port I / O.Dan poin penting lainnya, setiap modul GPIO Wi-Fi dapat dengan aman menyediakan arus hingga 6 mAagar tidak membakarnya, pastikan untuk meletakkan resistor secara seri dengan port input / output pada ... Ingat hukum Ohm R = U / I = 3,3V / 0,006 A = 550 Ohm, yaitu, 560 Ohm . Atau mengabaikannya, dan kemudian bertanya-tanya mengapa itu tidak berhasil.Di ESP01, semua GPIO mendukung PWM, sehingga Anda dapat menghubungkan driver mesin ke empat GPIO kami, yaitu, GPIO0-3, ala L293 / L298 dan mengarahkan dengan dua mesin, misalnya kapal, atau membuat RGB Wi-Fi tersesat. Ya, ya, modul ini memiliki banyak hal, dan untuk proyek sederhana, pemain biolaArduino tidak diperlukan, hanya untuk menginstal. Dan jika Anda menggunakan ESP07 maka umumnya ada port yang hampir seperti Uno, yang memungkinkan untuk melakukannya tanpa arduino. Benar, ada satu momen yang tidak menyenangkan, ESP01 tidak memiliki port analog sama sekali, tetapi ESP07 hanya memiliki satu, ADC disebut. Ini tentu saja memperburuk pekerjaan dengan sensor analog. Dalam hal ini, multiplekser analog Arduino dapat membantu.Semuanya sepertinya dijelaskan oleh pinout, dan di sini adalah diagram koneksi ESP8266 ke Arduino Nano:
Lihat jumper pada kaki Arduino Nano RST dan GND? Ini diperlukan agar arduinka tidak mengganggu firmware modul, dalam hal menghubungkan ESP8266 menggunakan Arduino, ini merupakan prasyarat.Juga, jika Anda terhubung ke Arduino - modul RX harus pergi ke RX arduino, TX - TX. Ini karena konverter mikro sudah terhubung ke kaki Arduino dalam urutan silang.Pembagi resistif yang terdiri dari 1 kOhm dan 2 kOhm resistor (dapat dibuat dari dua resistor 1 kOhm secara seri dengan menghubungkannya) di sepanjang garis RX modul juga penting. Karena arduino adalah logika 5 V dan modul 3.3. Ternyata konverter tingkat primitif. Pasti, karena kaki-kaki modul RXD TXD tidak toleran terhadap 5 V.
Nah, Anda dapat melakukannya tanpa Arduino sama sekali dengan menghubungkan ESP8266 melalui konverter USB-UART biasa. Dalam hal menghubungkan ke Arduino, kami, pada kenyataannya, menggunakan konverter antarmuka usb dan uart standar, melewati otak. Jadi mengapa menghabiskan uang sekali lagi, jika Anda bisa melakukannya tanpa arduino sama sekali? Hanya dalam kasus ini, kami menghubungkan modul RXD ke konverter TXD, TXD - RXD.Jika Anda malas repot-repot menghubungkan, mengotak-atik resistor dan stabilisator - ada solusi NodeMcu yang sudah jadi:
Semuanya lebih sederhana di sini, saya memasukkan kabel ke komputer, menginstal driver dan diprogram, hanya ingat untuk menggunakan jumper / tombol pada GPIO0 untuk menempatkan modul ke mode firmware.Yah, mungkin itu semua dengan teorinya, artikelnya ternyata cukup besar, dan bagian praktisnya, ala firmware dan pemrograman modul, saya akan publikasikan nanti.Saya, di saluran YouTube saya , membuka seluruh daftar putar yang didedikasikan untuk video saya pada modul Wi-Fi ini. Rencana telah membangun mesin tik, atau kapal, pada kontrol Wi-Fi, di mana alih-alih remote control akan ada smart biasa. Tetapi sejauh ini saya belum sampai pada hal ini, jadi ini hanya rencana untuk masa depan.Kelanjutan artikel ini.Lembar data pada:ASM1117 3.3 B ;ESP8266EX (mikrokontroler yang ada di modul) ;Lebih banyak tautan:komunitas berbahasa Rusia di ESP8266 ;Skema yang digambar dalam program Fritzing ;Mengapa banyak yang tidak suka Arduino ;Semua publikasi saya di geektimes .Oleh Sergey Sharekin, alias Tuan Podelkin. Source: https://habr.com/ru/post/id390593/
All Articles