Isi kandungan:

Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO: 7 Langkah
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO: 7 Langkah

Video: Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO: 7 Langkah

Video: Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO: 7 Langkah
Video: PENTINGNYA FW!!! PENGERTIAN DAN FUNGSI FW/FIRMWARE PADA ANDROID | BANG LEVV 2024, Julai
Anonim
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO
Pulihkan atau Tingkatkan Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO

Modul ESP-01 yang saya gunakan pada asalnya dilengkapi dengan firmware AI Thinker yang lebih tua, yang membatasi kemampuannya kerana banyak arahan AT yang berguna tidak disokong.

Adalah idea yang baik untuk menaik taraf firmware anda untuk memperbaiki bug dan juga bergantung pada fungsi yang diperlukan dari modul ESP, satu set arahan AT yang lebih lengkap mungkin diperlukan. Tutorial ini juga menerangkan cara memulihkan atau mem-flash firmware Espressif yang asli jika anda kebetulan merosakkan firmware ESP anda, misalnya, melalui beberapa perintah AT yang salah. Inilah yang berlaku ketika saya cuba mengubah kadar baud lalai dari 115200 hingga 9600. Saya menggunakan arahan berikut (berdasarkan carian Google pantas):

AT + IPR = 9600

Ini membina modul ESP-01. Tidak ada arahan AT yang berfungsi lagi, yang mendorong saya untuk melakukan lebih banyak penyelidikan dan setelah berjam-jam, akhirnya saya menemui cara untuk memulihkan ESP-01 saya dan memasang firmware yang terkini. Oleh itu, saya memutuskan untuk berkongsi keseluruhan proses.

Perhatian: Berdasarkan pengalaman saya, saya sangat menasihatkan untuk tidak menggunakan perintah AT + IPR untuk mengubah kadar baud anda kerana kemungkinan besar anda memerlukan flash firmware anda semula. Walau bagaimanapun, terdapat banyak varian modul ESP-01 dengan saiz flash yang berbeza dan versi firmware kilang, jadi pengalaman anda mungkin berbeza-beza.

Modul ESP-01 tidak mematuhi 5 V dan memerlukan 3.3 V untuk mengaktifkannya tetapi juga berfungsi dengan betul pada tahap logik. Untuk berkomunikasi dengan komputer, modul ini juga memerlukan penukar bersiri USB ke. Oleh itu, daripada menggunakan penukar voltan dan penyesuai USB ke siri, saya memutuskan untuk memilih penyelesaian yang lebih mudah. Oleh kerana saya sudah memiliki Arduino UNO, saya menggunakan yang terakhir untuk menguatkan modul ESP-01 dan menjalin komunikasi antara ESP-01 dan komputer, berkesan berfungsi sebagai jambatan bersiri.

Bekalan

  1. Modul ESP-01
  2. Arduino UNO (dengan kabel USB)
  3. Wayar Jumper DuPont
  4. Papan roti

Langkah 1: Sambungan Kawat

Sambungan Kawat
Sambungan Kawat
Sambungan Kawat
Sambungan Kawat
Sambungan Kawat
Sambungan Kawat

Sambungan wayar dengan modul Arduino UNO dan ESP-01 dapat dibuat dengan mudah menggunakan kabel jumper dan papan roti. Sambungan antara papan pengembangan Arduino dan modul ESP dijelaskan dalam jadual. Sambungan RX dan TX tidak terbalik dalam kes ini, kerana komunikasi tidak berlaku antara modul Arduino dan ESP tetapi antara ESP dan komputer. Oleh itu, dalam kes ini, papan Arduino UNO digunakan sebagai jambatan bersiri melalui penukar bersiri USB ke siri.

Sambungan pin RX antara papan Arduino dan modul ESP harus dibuat melalui pembahagi voltan, kerana ESP-01 beroperasi pada tahap logik 3.3 V dan menerima tahap logik 5 V dari Arduino UNO boleh merosakkan modul ESP. Anda boleh membina pembahagi voltan 3.3 V sederhana dengan hanya menggunakan 2 perintang seperti yang ditunjukkan dalam gambar. Sebagai pilihan, anda boleh menggunakan penukar tahap logik.

Perhatian: Untuk persediaan saya, saya hanya memasang pin RX secara langsung (tidak dianjurkan!) Dan semuanya berfungsi, tetapi jika anda memutuskan untuk melepaskan penukaran tahap logik, terus dengan risiko anda sendiri!

Untuk mewujudkan sambungan Ground biasa, pin Arduino UNO Ground disambungkan ke pin Ground modul ESP.

Arduino UNO digunakan untuk memberikan kuasa 3.3 V terus ke pin VCC modul ESP. Sambungkan pin 3.3 V ke papan roti menggunakan wayar jumper, kerana 3.3 V akan digunakan bukan sahaja untuk pin VCC ESP tetapi juga pin CH_PD ESP untuk mengaktifkan cip ESP.

Pin RESET pada Arduino UNO disambungkan ke Ground untuk memintas sebarang kod yang dimuat melalui Arduino sehingga kod tersebut dihantar dari komputer ke ESP-01.

Rajah jadual menunjukkan sekumpulan sambungan penuh untuk firmware berkelip tetapi pada peringkat ini, jangan sambungkan pin Reset dan GPIO_0 ESP kerana kami hanya akan membaca maklumat firmware pada langkah seterusnya.

Langkah 2: Periksa Versi Firmware

Periksa Versi Firmware
Periksa Versi Firmware

Untuk mengetahui versi firmware ESP-01 anda, di Arduino IDE Serial Monitor, ketik:

AT + GMR

Catatan: Semua arahan AT perlu ditaip dengan huruf besar tanpa spasi.

Berikut adalah output bersiri untuk ESP-01 saya (modul ESP anda mungkin tidak menunjukkan maklumat yang sama kerana bergantung pada model dan tarikh pelepasan tertentu):

AT + GMR

Versi AT: 0.25.0.0 (5 Jun 2015 16:27:16) Versi SDK: 1.1.1 Ai-Thinker Technology Co. Ltd. 23 Jun 2015 23:23:50 OK

Sekarang, untuk menaik taraf firmware Espressif ESP8266EX rasmi terkini, pergi ke bahagian sumber di laman webnya:

Catatan: Senarai firmware yang tersedia mungkin tidak semua sesuai dengan model ESP-01 anda. Lihat bahagian Penyelesaian Masalah di akhir tutorial ini untuk maklumat lebih lanjut.

Langkah 3: Menyiapkan Persediaan: Sebelum Berkelip Firmware

Menyiapkan Persediaan: Sebelum Berkelip Firmware
Menyiapkan Persediaan: Sebelum Berkelip Firmware

Sekarang, kami akan menyiapkan Arduino UNO untuk prosedur berkelip firmware ESP-01.

Pastikan wayar RESET Arduino terputus dari Ground. Juga, wayar TX dan RX dari Arduino UNO perlu diputuskan dari modul ESP-01.

Buka Arduino IDE dan dari menu atas, pergi ke Fail> Contoh> 01. Asas> BareMinimum. Muat naik lakaran ke Arduino UNO. Sketsa kosong ini akan memastikan bahawa tiada gangguan komunikasi berlaku dengan modul ESP.

Sambungkan semula kabel RX dan TX antara UNO dan ESP-01. Juga, sambungkan pin RESET UNO ke Ground.

Pin CH_PD atau CH_EN bermaksud 'Chip Power-Down' atau 'Chip Enable' dan ia perlu ditarik TINGGI atau disambungkan ke 3.3 V untuk mengaktifkan cip ESP.

Dua kabel pelompat tambahan diperlukan untuk pin ESP berikut: GPIO_0 dan RESET.

GPIO_2 tidak digunakan dan dibiarkan terputus.

ESP-01 perlu diset dalam mod pengaturcaraan supaya kod dapat dimuat ke dalamnya. Tetapi ESP-01 tidak mempunyai perkakasan tambahan yang diperlukan untuk mencapai ini secara langsung, jadi semuanya perlu disambungkan secara berasingan. Untuk kegunaan saya sendiri, saya tidak bersusah payah menggunakan suis, tetapi sebaliknya hanya menggunakan dua kabel pelompat lelaki-wanita yang disambungkan ke pin GPIO_0 dan RESET modul ESP-01 dan memasangkannya ke pin Ground groundboard biasa dari Arduino UNO's Ground.

Sebelum memulakan prosedur berkelip, GPIO_0 disambungkan ke Ground untuk keseluruhan prosedur berkelip untuk membolehkan mod pengaturcaraan.

Pin RESET disambungkan ke Ground untuk sesaat dan kemudian dikeluarkan. Ini membolehkan firmware baru dimuat naik.

Langkah 4: Muat turun Flashing Tool dan Firmware

Muat turun Flashing Tool dan Firmware
Muat turun Flashing Tool dan Firmware

Firmware yang digunakan adalah dari Espressif yang merupakan pengeluar asal cip ESP8266.

Pergi ke: https://www.espressif.com/en/products/hardware/esp8266ex/resources untuk mengakses alat rasmi dan fail firmware AT.

Di bawah tab 'Alat', muat turun Alat Muat turun Flash (ESP8266 & ESP32), yang terbaru ialah V3.6.8.

Di bawah tab 'AT', muat turun firmware AT serasi terkini, iaitu ESP8266 AT Bin V1.6.2 untuk model ESP-01 saya. Ia bergantung pada model ESP-01 kerana boleh mempunyai saiz memori kilat yang berbeza. Anda akan mendapat lebih banyak maklumat mengenai perkara ini di bahagian INFO DETECTED pada program Flash Download Tools setelah mengklik MULAI untuk memulakan prosedur flashing. Oleh itu, jika anda tidak pasti mengenai saiz flash atau fail firmware mana yang hendak dipilih, jalankan program ini untuk mendapatkan maklumat yang betul mengenai modul ESP anda.

Setelah berkelip, anda boleh menggunakan perintah AT untuk menguji dan bekerja dengan ESP-01. Muat turun set arahan ESP8266 AT rasmi:

Langkah 5: Prosedur Berkelip

Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip
Prosedur Berkelip

Ekstrak fail zip Alat Muat turun Flash dan buka fail exe. Pastikan untuk menjalankannya sebagai pentadbir jika anda menggunakan Windows. Tetingkap DOS pertama kali akan dibuka, diikuti oleh tetingkap pop timbul. Pilih Alat Muat turun ESP8266. Ini akan membuka tetingkap dengan beberapa pilihan yang boleh dikonfigurasi.

Pada tahap ini, lihat tangkapan skrin untuk melihat dengan tepat pilihan apa yang harus dipilih dan apa yang harus diketik dalam kotak kod hex di sebelah setiap fail firmware yang dipilih.

Catatan: Pilih fail firmware dalam urutan yang sama kerana prosedur kilat dilakukan secara berurutan. Fail blank.bin perlu dipilih tiga kali seperti yang ditunjukkan dalam tangkapan skrin set arahan AT.

Untuk mencari kod atau alamat hex yang betul, periksa dokumen set arahan AT rasmi. Saya telah melampirkan tangkapan skrin jadual yang saya gunakan untuk memancarkan modul ESP saya.

Kemudian, tekan butang MULAI dan saksikan keajaiban berlaku. Teks butang akan menunjukkan SYNC dan bahagian DETECTED INFO akan memaparkan spesifikasi modul ESP anda. Kemudian, teks akan menunjukkan DOWNLOAD dan progress bar akan diaktifkan semasa fail firmware dimuat naik ke memori flash ESP. Setelah prosedur flashing firmware selesai, anda akan melihat: SELESAI.

Tutup program Alat Muat turun Flash. Ini diperlukan untuk membebaskan port bersiri untuk membolehkan Arduino IDE Serial Monitor mengambil alih.

Putuskan pin ESP GPIO_0 dari sambungan Ground. Ini akan mematikan mod pengaturcaraan.

Sambungkan RESET ke Ground selama 1 saat dan kemudian putuskan sambungan. Ini akan menetapkan semula modul.

Buka Arduino IDE. Dari menu atas, pilih Alat> Pelabuhan> pilih port COM yang betul. Buka Serial Monitor dan pilih "Kedua-dua NL & CR" dan pilih baud rate 115200 yang merupakan default.

Jenis:

AT

Sekiranya prosedur flashing berjalan dengan betul, tindak balasnya adalah:

okey

Untuk mengesahkan firmware baru anda, ketik:

AT + GMR

Berikut adalah output Monitor Bersiri untuk ESP-01 saya:

AT + GMR

Versi AT: 1.6.2.0 (13 Apr 2018 11:10:59) Versi SDK: 2.2.1 (6ab97e9) masa penyusunan: 7 Jun 2018 19:34:26 Versi tong (Wroom 02): 1.6.2 OK

Langkah 6: Tukar Kadar Baud Secara Kekal

Tukar Kadar Baud Secara Kekal
Tukar Kadar Baud Secara Kekal

Bahagian ini adalah pilihan. Kadar baud lalai adalah 115200 tetapi jika anda ingin menukarnya ke kelajuan baud yang lain, maka anda boleh memasukkan perintah berikut di Arduino Serial Monitor.

Contohnya, jika anda ingin menukar kepada 9600 baud rate / 8 bit bit / 1 stop bit / no parity bit / no flow flow.

Taipkan:

AT + UART_DEF = 9600, 8, 1, 0, 0

Respons mestilah:

okey

Perintah di atas mengubah kadar baud secara kekal menjadi 9600 tetapi anda boleh memilih mana-mana kelajuan baud standard.

Langkah 7: Penyelesaian masalah

Penyelesaian masalah
Penyelesaian masalah
Penyelesaian masalah
Penyelesaian masalah

Sekiranya terdapat anomali setelah berjaya mem-flash firmware, misalnya, di Serial Monitor, setelah anda memilih laju baud lalai 115200 dan ketik: AT tetapi tidak melihat apa-apa respons atau jika anda mengetik AT + GMR dan menerima yang lain jenis maklumat selain daripada maklumat versi firmware, maka anda mungkin mem-flash firmware yang salah. Dalam kes itu, dalam program Alat Muat turun Flash, setelah anda menekan butang MULAI untuk memulakan prosedur berkelip firmware, butang hijau status membaca SYNC dan itulah tahap di mana maklumat modul ESP diekstraksi dan tersedia di bawah INFO DETECTED. Maklumat ini sangat penting untuk menentukan firmware yang betul dan fail yang betul untuk dipusingkan.

Berikut adalah untuk modul ESP-01 saya:

penjual kilat:

E0h: N / A denyar kilat: 4014h QUAD; 8Mbit kristal: 26 Mhz

INFO DETECTED anda akan bergantung pada model ESP-01. Tetapi ini akan membolehkan anda menyimpulkan ukuran denyar yang betul. Dalam ESP saya, ia adalah 8Mbit bersamaan dengan 1 MB. Jadi, ini bermaksud bahawa saya harus memilih 512 KB + 512 KB dari fail firmware. Dan ini juga bermaksud bahawa firmware 1.7.0 atau 1.7.1 tidak akan berfungsi dengan baik untuk modul ESP saya, yang juga saya sahkan dengan mem-flash firmware dan ujian ini. Juga, dalam penerangan firmware 1.7.0 dan 1.7.1 di laman web sumber Espressif rasmi, maklumat berikut disenaraikan: "Dibatasi oleh ukuran fail bin AT, hanya` 1024 + 1024 peta kilat` yang disokong oleh lalai. " 1024 + 1024 bermaksud untuk modul ESP dengan ukuran kilat 2048 KB atau 2 MB.

Catatan: Sekiranya anda tertanya-tanya, anda boleh menurunkan atau menaik taraf antara versi firmware yang berbeza tanpa sekatan. Sekiranya ada yang tidak betul, anda boleh menyala semula dengan parameter yang berbeza atau mencuba firmware yang berbeza.

Disyorkan: