ESP-IDF adalah kerangka pengembangan resmi untuk chip ESP32.
Lihat panduan pengaturan untuk instruksi rinci untuk mengatur ESP-IDF:
Selain proyek esp-idf-template yang disebutkan dalam panduan pengaturan, ESP-IDF dilengkapi dengan beberapa contoh proyek di direktori contoh.
Setelah Anda menemukan proyek yang ingin Anda kerjakan, ubah ke direktorinya dan Anda dapat mengonfigurasi dan membangunnya.
make menuconfig
?
untuk melihat layar bantuan. Tombol enter keluar dari layar bantuan.Y
dan N
untuk mengaktifkan (Ya) dan menonaktifkan (Tidak) item konfigurasi dengan kotak centang " [*]
"?
sambil menyorot item konfigurasi menampilkan bantuan tentang item tersebut./
untuk mencari item konfigurasi.Setelah selesai mengonfigurasi, tekan Escape beberapa kali untuk keluar dan ucapkan "Ya" untuk menyimpan konfigurasi baru saat diminta.
make all
... akan mengkompilasi aplikasi, bootloader dan menghasilkan tabel partisi berdasarkan konfigurasi.
Ketika make all
selesai, ia akan mencetak baris perintah untuk menggunakan esptool.py untuk mem-flash chip. Namun Anda juga dapat melakukan ini dari make dengan menjalankan:
make flash
Ini akan mem-flash seluruh proyek (aplikasi, bootloader, dan tabel partisi) ke chip baru. Pengaturan untuk flashing port serial dapat dikonfigurasi dengan make menuconfig
.
Anda tidak perlu menjalankan make all
sebelum menjalankan make flash
, make flash
akan secara otomatis membangun kembali apa pun yang memerlukannya.
Target make monitor
akan menggunakan miniterm yang sudah diinstal (bagian dari pyserial) untuk menampilkan output serial dari ESP32 di konsol terminal.
Keluar dari miniterm dengan mengetik Ctrl-].
Untuk mem-flash dan memantau output sekaligus, Anda dapat menjalankan:
make flash monitor
Setelah flash awal, Anda mungkin hanya ingin membuat dan mem-flash aplikasi Anda saja, bukan bootloader dan tabel partisi:
make app
- buat aplikasinya saja.make app-flash
- mem-flash aplikasinya saja. make app-flash
akan secara otomatis membangun kembali aplikasi jika diperlukan.
(Dalam perkembangan normal, tidak ada ruginya untuk mem-reflash bootloader dan tabel partisi setiap kali, jika tidak berubah.)
ESP-IDF mendukung kompilasi beberapa file secara paralel, sehingga semua perintah di atas dapat dijalankan sebagai make -jN
dengan N
adalah jumlah proses make paralel yang akan dijalankan (umumnya N harus sama dengan atau satu lebih banyak dari jumlah inti CPU di sistem Anda.)
Beberapa fungsi make dapat digabungkan menjadi satu. Misalnya: untuk membangun aplikasi & bootloader menggunakan 5 pekerjaan secara paralel, lalu mem-flash semuanya, lalu menampilkan output serial dari proses ESP32:
make -j5 flash monitor
Setelah Anda mengkompilasi proyek Anda, direktori "build" akan berisi file biner dengan nama seperti "my_app.bin". Ini adalah biner gambar ESP32 yang dapat dimuat oleh bootloader.
Flash tunggal ESP32 dapat berisi banyak aplikasi, serta berbagai jenis data (data kalibrasi, sistem file, penyimpanan parameter, dll). Untuk alasan ini tabel partisi di-flash untuk mengimbangi 0x4000 di flash.
Setiap entri dalam tabel partisi memiliki nama (label), tipe (aplikasi, data, atau yang lainnya), subtipe, dan offset di flash tempat partisi dimuat.
Cara termudah untuk menggunakan tabel partisi adalah dengan make menuconfig
dan memilih salah satu tabel partisi sederhana yang telah ditentukan sebelumnya:
Dalam kedua kasus, aplikasi pabrik di-flash pada offset 0x10000. Jika Anda make partition_table
maka ringkasan tabel partisi akan dicetak.
Untuk detail selengkapnya tentang tabel partisi dan cara membuat variasi khusus, lihat file docs/partition-tables.rst
.
Target make flash
tidak menghapus seluruh isi flash. Namun terkadang berguna untuk mengembalikan perangkat ke keadaan terhapus total, terutama saat melakukan perubahan tabel partisi atau pembaruan aplikasi OTA. Untuk menghapus seluruh flash, jalankan make erase_flash
.
Ini dapat digabungkan dengan target lain, yaitu make erase_flash flash
akan menghapus semuanya dan kemudian mem-flash ulang aplikasi, bootloader, dan tabel partisi baru.
Dokumentasi untuk versi terbaru: http://esp-idf.readthedocs.io/. Dokumentasi ini dibuat dari direktori docs repositori ini.
Forum esp32.com adalah tempat untuk bertanya dan mencari sumber daya komunitas.
Periksa bagian Masalah di github jika Anda menemukan bug atau memiliki permintaan fitur. Silakan periksa Masalah yang ada sebelum membuka yang baru.
Jika Anda tertarik untuk berkontribusi pada ESP-IDF, silakan periksa Panduan Kontribusi.