Isi kandungan:
- Langkah 1: Apa itu MicroPython?
- Langkah 2: Keperluan
- Langkah 3: Mengapa Papan Berasaskan ESP8266?
- Langkah 4: Menyiapkan Komputer Anda
- Langkah 5: Menghidupkan MicroPython Dengan Esptool.py
- Langkah 6: Menggunakan REPL MicroPython Dengan Rshell
- Langkah 7: Mengawal Pin Menggunakan MicroPython
- Langkah 8: Memudar LED
- Langkah 9: Dari mana ke sini?
- Langkah 10: Kesimpulannya
Video: Bermula dengan MicroPython pada ESP8266: 10 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Adakah anda mahukan cara lain untuk memprogram papan berasaskan ESP8266 daripada kaedah biasa menggunakan Arduino IDE bersama bahasa pengaturcaraan C / C ++?
Dalam tutorial ini kita akan belajar siapa yang harus mengkonfigurasi dan mengendalikan papan ESP8266 menggunakan MicroPython.
MEMBINA MASA: 60 MINIT PERBEZAAN: PENILAIAN: Mudah
Langkah 1: Apa itu MicroPython?
MicorPython adalah salah satu daripada banyak bahasa pengaturcaraan yang dapat kita gunakan untuk memprogram modul ESP8266. Ini adalah versi ringkas dan pantas dari bahasa pengaturcaraan Python 3 dan mempunyai beberapa kelebihan berbanding bahasa pengaturcaraan tradisional seperti C dan C ++.
MicroPython direka agar serasi dengan Python normal sebanyak mungkin. Ia mempunyai penyusun dan waktu operasi Python yang lengkap, dan menyediakan permintaan interaktif yang dikenali sebagai REPL (Read-Eval-Print Loop).
MicorPython direka untuk menyokong beberapa jenis mikrokontroler yang berbeza. Tetapi untuk tutorial ini saya akan menggunakan hanya satu model: papan berasaskan ESP8266 (NodeMCU). Perhatikan bahawa terdapat beberapa papan berbeza yang boleh anda beli dengan cip yang sama.
Bacaan & Sumber:
MicroPython
NodeMCU
Langkah 2: Keperluan
Untuk mengikuti tutorial ini, anda hanya perlu mempunyai pengalaman pengkodan asas dengan Python. Anda tidak perlu mempunyai pengetahuan sebelumnya mengenai mikrokontroler, elektronik, atau bahkan MicroPython.
Anda juga memerlukan komputer Windows, Mac atau Linux dengan port USB percuma, kerana anda akan menyambungkan mikrokontroler ke komputer anda untuk memprogramnya.
Bahagian yang Diperlukan:
1 x NodeMCU (atau papan berasaskan ESP8266 lain)
1 x LED 5mm Merah
Perintang 1 x 220Ω 1 / 4W
Potensiometer Putar 1 x 10KΩ
1 x Papan Roti
1 x kabel USB ke MicroUSB
Wayar Pelompat.
Langkah 3: Mengapa Papan Berasaskan ESP8266?
Salah satu cara untuk memanfaatkan sepenuhnya ESP8266 anda adalah dengan menggunakan MicroPython. Juga, modul ESP8266 adalah salah satu platform terbaik untuk belajar menggunakan MicroPython. Ini kerana ESP8266 menyediakan fungsi kawalan pin GPIO sederhana serta fungsi tanpa wayar, yang membolehkan anda menguji semua aspek bahasa pengaturcaraan MicroPython.
Cip ESP8266 terkenal di industri pembangunan sumber terbuka. Terdapat banyak papan pengembangan dari pelbagai pengeluar yang menggunakan cip ESP8266. MicroPython telah dirancang untuk menyediakan port generik yang dapat berjalan di kebanyakan papan tersebut, dengan sekatan mungkin. Port ini berdasarkan papan Adafruit Feather HUZZAH Semasa menggunakan papan ESP8266 lain, pastikan anda memeriksa skema dan lembaran data mereka sehingga anda dapat mengenal pasti perbezaan antara mereka dan papan Adafruit Feather HUZZAH. Dengan cara itu, anda dapat menampung perbezaan kod anda.
Bacaan & Sumber:
ESP8266
Bulu Adafruit HUZZAH
Langkah 4: Menyiapkan Komputer Anda
Terdapat beberapa perkara yang perlu anda siapkan sebelum menggunakan MicroPython untuk memprogram papan ESP8266 anda. Kami akan melalui proses penyediaan dalam langkah ini. Dengan cara ini anda akan mengetahui cara mengkonfigurasi papan ESP8266 untuk digunakan dengan MicroPython.
Bersiap sedia
Yang anda perlukan dari langkah ini ke langkah 6 ialah ESP8266 dan kabel USB anda. Sambungkan papan ESP8266 anda ke komputer anda.
Bagaimana hendak melakukannya…
LANGKAH1: Pasang pemacu peranti
Sekiranya anda mempunyai komputer Linux, maka anda tidak perlu memasang pemacu peranti agar pemacu mikrokontroler dapat dikenali. Tetapi jika anda mempunyai mesin Mac atau Windows, pemacu diperlukan untuk membolehkan komputer mengenali mikrokontroler sebagai peranti bersiri.
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
LANGKAH2: Pasang Python
Alat yang akan anda gunakan untuk berkomunikasi dengan ESP8266 ditulis dalam Python, jadi anda perlu memasang Python pada komputer anda.
Sekiranya sistem operasi anda tidak menyediakan Python yang sudah dibungkus sebelumnya, anda boleh pergi ke https://python.org untuk memuat turun binaan rasmi untuk mana-mana sistem operasi yang disokong.
LANGKAH3: Pasang esptool dan rshell
Pasang dua pakej yang akan membantu anda menguruskan papan anda menggunakan pip. Untuk melakukan ini, buka terminal anda dan jalankan
pip pasang esptool rshell
LANGKAH4: Muat turun MicroPython
Muat turun firmware MicroPython terkini dari pautan berikut:
Pada masa saya menulis ini, versi semasa adalah 1.11, dan fail firmware dipanggil esp8266-20190529-v1.11.bin
Pada masa anda melakukan ini, anda mungkin akan mendapat keluaran yang lebih baru.
Langkah 5: Menghidupkan MicroPython Dengan Esptool.py
Sebelum mem-flash firmware baru ke papan, adalah idea yang baik untuk menghapus data sebelumnya. Ini adalah sesuatu yang harus selalu anda lakukan agar firmware baru berjalan dari keadaan bersih.
Pergi ke tempat anda meletakkan fail.bin. Gunakan esptool.py untuk memadamkan denyar.
Untuk Linux:
esptool.py --port / dev / ttyUSB0 erase_flash
Untuk Windows:
esptool.py --port COM3 erase_flash
Anda mungkin perlu menukar port bersiri dalam perintah anda ke port bersiri yang disambungkan oleh papan ESP8266 anda. Sekiranya anda tidak mengetahui nombor port siri ESP8266 anda, anda boleh menyemak di Arduino IDE. Cukup buka IDE dan kemudian klik pada Tools | Pelabuhan. Anda harus melihat port bersiri papan ESP8266 anda disenaraikan di sana. Gantikan port bersiri dalam perintah (/ dev / ttyUSB0) dengan port bersiri papan anda.
Setelah papan dipadamkan sepenuhnya, anda boleh memuatkan binaan MicroPython yang baru anda muat turun. Ini juga dilakukan dengan arahan esptool.py:
esptool.py --port / dev / ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin
Perintah ini akan menulis kandungan fail MicroPython.bin ke papan di alamat 0.
Pastikan anda menukar nama fail.bin firmware dalam arahan (esp82688-2019-080529-v1.11.bin) kepada firmware yang anda muat turun.
Setelah firmware berjaya dipasang pada papan ESP8266, anda boleh mengakses REPL pada papan anda melalui sambungan berwayar (port bersiri UART) atau menggunakan WiFi.
Langkah 6: Menggunakan REPL MicroPython Dengan Rshell
Anda kini bersedia untuk memulakan MicroPython di papan ESP8266 anda.
Apa yang akan saya tunjukkan kepada anda bagaimana untuk menyambung ke prompt Python yang berjalan di papan anda. Ini dipanggil REPL, yang bermaksud "Read-Eval-Print-Loop". Ini adalah arahan Python standard yang mungkin biasa anda lihat ketika bekerja dengan jurubahasa Python biasa, tetapi kali ini ia akan berjalan di papan anda, dan untuk berinteraksi dengannya, anda akan menggunakan sambungan bersiri ke komputer anda. Sedia?
Untuk menyambung ke papan anda dan membuka sesi REPL, masukkan arahan berikut:
rshell --port
Perintah ini akan membawa anda ke perintah rshell. Lihat gambar di atas.
Sekiranya anda mengikuti tutorial ini di Windows, perhatikan bahawa rshell mempunyai sejarah masalah ketika berjalan di Windows.
Jadi untuk memperbaiki jenis itu:
rshell -a --port COM3
Dari arahan ini, anda dapat menjalankan tugas pengurusan yang berkaitan dengan papan mikrokontroler anda, dan juga memulakan Python REPL yang boleh anda gunakan untuk berinteraksi dengan papan dalam masa nyata. Oleh itu, masukkan arahan berikut:
pengganti
Untuk memastikan semuanya berfungsi, ketik ayat Python yang mudah:
cetak ("Hello World")
Langkah 7: Mengawal Pin Menggunakan MicroPython
Dalam langkah ini, kita akan belajar bagaimana mengawal pin ESP8266 dengan MicroPython. Untuk melakukan itu, kita akan membuat persediaan di mana kita akan menukar keadaan LED yang disambungkan ke pin GPIO papan ESP8266. Ini akan membantu anda memahami cara mengawal output digital menggunakan MicoPython.
Bersiap sedia
Anda memerlukan perkara berikut untuk mencapai LANGKAH ini:
1 x NodeMCU
1 x LED 5mm Merah
1 x 220 Ω Perintang
1 x Papan Roti
Wayar Pelompat
Binaan
Mulakan dengan memasang LED ke papan roti. Sambungkan satu hujung perintang 220 Ω ke kaki positif LED (kaki positif LED biasanya lebih tinggi daripada kedua kaki). Sambungkan hujung perintang yang lain ke pin D1 pada papan ESP8266. Kemudian sambungkan kaki negatif LED ke pin GND papan ESP8266. Sambungannya seperti yang ditunjukkan dalam rajah di atas.
Setelah persediaan selesai, sambungkan papan ESP8266 ke komputer anda melalui kabel USB.
Bagaimana hendak melakukannya…
Taipkan kod berikut di REPL anda:
# LED berkelip setiap 1 saat
def blink (pin = 5, time = 1) # fungsi blink secara default pin = 5, time = 1s import machine # modul mesin menahan konfigurasi pin dan mod dari waktu import sleep # import sleep for some delay LED = machine. Pin (led_pin, machine. PIN. OUT) # konfigurasikan LED sebagai OUTPUT sementara Benar: # jalankan selama-lamanya LED.value (1) # set LED ke tidur TINGGI (masa) # tunggu 1 saat secara lalai LED.value (0) # set LED untuk tidur RENDAH (masa) # tunggu 1 saat secara lalai
Taipkan kedip () dalam sesi RPEL anda untuk menguji kod ini. Ini akan mengedipkan LED yang disambungkan ke GPIO5 setiap 1 saat.
Anda boleh menukar pin dan / atau waktu dengan menghubungi:
berkelip (pin =, time =)
Tekan ctrl + c untuk keluar dari kod yang sedang berjalan.
Anda boleh menggunakan MicroPython untuk membaca input yang disambungkan ke ESP8266. Teruskan ke langkah seterusnya untuk mengetahui cara melakukannya.
Lihat video jika anda tersekat.
Langkah 8: Memudar LED
Dalam langkah ini, kita akan belajar bagaimana menyesuaikan kecerahan LED menggunakan potensiometer berputar. Kami akan menggunakan teknik yang disebut Pulse Width Modulation (PWM), ini memungkinkan kita untuk meredupkan LED dengan hingga 256 tetapan.
Perhatian: Semua pin ESP8266 dapat digunakan sebagai pin PWM kecuali GPIO16 (D0).
Bersiap sedia:
Anda memerlukan perkara berikut untuk mencapai LANGKAH ini:
1 x NodeMCU
1 x LED 5mm Merah
Potensiometer Putar 1 x 50 KΩ.
1 x Papan Roti
Wayar Pelompat
Binaan
Sambungannya seperti yang ditunjukkan dalam rajah di atas: Setelah persediaan selesai, sambungkan papan ESP8266 ke komputer anda melalui kabel USB.
Bagaimana hendak melakukannya…
Taipkan kod berikut di REPL anda:
# Memudar LED setiap 0.5 dengan membaca data dari Potentiometer
mesin import dari masa import import led_pin = 5 # pin led POT = machine. ADC (0) # ADC0 pin LED = machine. Pin (led_pin) # buat objek LED LED_pwm = mesin. PWM (LED, freq = 500) # create LED_pwm objek dan tetapkan frekuensi ke 500Hz sementara True: LED_pwm.duty (POT.read ()) # dapatkan nilai dari Pot dan tetapkan ke siklus tugas tidur (0.5) # tunggu 0.5
Ini akan mengubah kecerahan LED yang disambungkan ke GPIO 5 dengan mengubah nilai potensiometer.
Tekan ctrl + c untuk keluar dari kod yang sedang berjalan.
Lihat video jika anda tersekat.
Langkah 9: Dari mana ke sini?
Sejauh ini kita telah melihat cara mengkonfigurasi dan menjalankan MicroPython pada papan berasaskan ESP8266. kami belajar bagaimana mengawal pin untuk mengedipkan LED kemudian kami menambahkan potensiometer untuk mengawal kecerahan LED menggunakan teknik modulasi lebar nadi.
Sekarang kita dapat membaca data dari sensor dan mengirimkannya ke awan, kita juga dapat membuat pelayan HTTP di mana anda dapat mencetak data kami di halaman web sederhana, dll …
Ini memberi kita banyak idea mengenai Internet of things (IoT).
Langkah 10: Kesimpulannya
Di sana anda memilikinya! Maju dan menakluki dunia MicroPython.
jika anda mempunyai sebarang pertanyaan tentu anda boleh memberikan komen.
Untuk melihat lebih banyak mengenai karya saya, sila lawati saluran YouTube saya:
myYouTube
myGitHub
myLinkedin
Terima kasih kerana membaca arahan ini ^^ dan selamat mencuba.
Jumpa lagi.
Ahmed Nouira.
Disyorkan:
Bermula dengan ROS Melodic pada Raspberry Pi 4 Model B: 7 Langkah
Bermula dengan ROS Melodic pada Raspberry Pi 4 Model B: Sistem Operasi Robot (ROS) adalah sekumpulan perpustakaan perisian dan alat yang digunakan untuk membina sistem dan aplikasi robot. Versi perkhidmatan jangka panjang ROS sekarang ialah Melodic Morenia. ROS Melodic serasi dengan hanya Ubuntu 18.04 Bionic Beaver
Memasang Raspbian Buster pada Raspberry Pi 3 - Bermula dengan Raspbian Buster Dengan Raspberry Pi 3b / 3b +: 4 Langkah
Memasang Raspbian Buster pada Raspberry Pi 3 | Bermula dengan Raspbian Buster Dengan Raspberry Pi 3b / 3b +: Hai kawan-kawan, baru-baru ini organisasi Raspberry pi melancarkan OS Raspbian baru yang disebut sebagai Raspbian Buster. Ini adalah versi baru Raspbian untuk Raspberry pi's. Jadi hari ini dalam instruksional ini kita akan belajar bagaimana memasang Raspbian Buster OS pada Raspberry pi 3 anda
Sensor Kebocoran Air pada ESP8266 + Micropython + Domoticz: 16 Langkah (dengan Gambar)
Sensor Kebocoran Air pada ESP8266 + Micropython + Domoticz: Beberapa ketika lalu, isteri saya meminta saya membuat sensor kebocoran air. Dia takut selang di bilik dandang itu bocor, dan air akan membanjiri lantai kayu yang baru diletakkan. Dan saya sebagai jurutera sejati melakukan sensor yang perlu dilakukan. Dari 15 tahun saya
Memasang Windows pada Pemacu Luaran Dengan Partition Mac pada Mac: 5 Langkah (dengan Gambar)
Memasang Windows pada Pemacu Luaran Dengan Partisi Mac di Mac: Sekiranya anda telah membeli sesuatu seperti MacBook pro asas dan menyimpan sedikit wang tunai, tetapi kemudian segera menghadapi masalah penyimpanan ketika cuba memasang tetingkap menggunakan Bootcamp Kita semua tahu bahawa 128 gb tidak diperlukan ini supaya kita mungkin membeli sesuatu
Cara Flash Firmware MicroPython pada Suis Pintar Sonoff Berasaskan ESP8266: 3 Langkah (dengan Gambar)
Cara Flash Firmware MicroPython pada Suis Pintar Sonoff Berasaskan ESP8266: Sonoff Apa? Sonoff adalah barisan peranti untuk Smart Home yang dibangunkan oleh ITEAD. Salah satu peranti yang paling fleksibel dan murah dari barisan tersebut adalah Sonoff Basic dan Sonoff Dual. Ini adalah suis berkemampuan Wi-Fi berdasarkan cip hebat, ESP8266. Walaupun