Hotline Layanan
Ketika Python menjadi bahasa pemrograman yang dominan, MicroPython menjadi semakin populer di ruang sistem tertanam, terutama pada modul Pico berbasis mikrokontroler ESP32 dan RP2040 yang baru saja dirilis oleh Raspberry PI Foundation.
Sebagai seorang bannon yang tidak bisa menulis sebaris kode pun, saya merasa sangat dibatasi hampir sepanjang waktu, dan bersumpah untuk mencari waktu yang tepat untuk belajar bahasa pemrograman. Saya mengabdikan diri pada MicroPython selama 7 hari libur Hari Nasional, dan menyadari semua fungsi periferal di papan pada papan pembelajaran ekstensi Pico yang saya rancang sendiri:
-
Pencahayaan mewah - monokrom, RGB tiga warna, semua jenis kombinasi, juga dapat dikontrol dengan tombol dan sensor
-
Layar OLED menampilkan teks, gambar, dan bentuk gelombang
-
Sinyal audio dikumpulkan dan ditampilkan pada layar OLED - membuat tampilan bentuk gelombang yang keren
-
Memainkan "Aku dan Negaraku" dengan bel di papan
-
Memindahkan kode orang lain untuk menghasilkan bentuk gelombang sewenang-wenang - mengubah bentuk gelombang, mengubah frekuensi, mengubah besaran, dll
Apa yang paling membuat saya terkesan selama "eksplorasi" 7 hari adalah betapa mudahnya memulai sistem tertanam di MicroPython - sumber daya sumber terbuka yang kaya, berbagai bentuk referensi, seperti kursus video, kasus teks, dll.
MicroPython benar-benar bahasa pemrograman yang hebat - berorientasi objek, fleksibel, sederhana, elegan!
Pembelajaran pribadi saya mendapat manfaat dari berbagi orang lain (sumber terbuka), dan cara terbaik untuk menyebarkan pengetahuan adalah dengan membagikan apa yang telah saya pelajari dan apa yang telah saya pelajari. Oleh karena itu, saya berencana meluncurkan tutorial pemrograman tertanam Micro Python berbasis Pico, yang akan diluncurkan secara resmi dalam sebulan. Tentu saja, Pada tahap awal, akan ada 15 kursus langsung desain PCB, yang akan mengarahkan Anda untuk mendesain sendiri papan pembelajaran Pico. Lagi pula, dalam lingkungan yang nyaman dengan papan cetak gratis dan pengiriman gratis, berdasarkan papan inti Pico, semua orang dapat mendesain PCB untuk membuat berbagai aplikasi menarik di masa depan. Mempelajari cara mendesain PCB juga dapat menjadi keuntungan bagi insinyur sistem tertanam.
Mulai sekarang akan ada serangkaian artikel teknis terkait kursus ini. Hari ini adalah yang pertama:
1. Apa itu MicroPython
MicroPython adalah penerjemah bahasa pemrograman Python open source kecil yang berjalan pada papan pengembangan kecil yang tertanam. Dengan MicroPython, Anda dapat menulis kode Python yang bersih dan sederhana untuk mengontrol perangkat keras tanpa harus menggunakan bahasa dasar yang rumit seperti C atau C++ (Arduino untuk pemrograman).

Logo MikroPython
Kesederhanaan bahasa pemrograman Python menjadikan MicroPython pilihan ideal bagi pemula dalam pemrograman dan perangkat keras. MicroPython memiliki fitur yang sangat lengkap dan mendukung sebagian besar sintaksis Python, sehingga bahkan para veteran Python berpengalaman pun akan menganggap penggunaan MicroPython familier dan menyenangkan.
Selain mudah digunakan, MicroPython memiliki beberapa fitur unik yang membedakannya dari sistem tertanam lainnya:
Gunakan penerjemah interaktif: REPL (Baca Baca- Evaluasi Evaluasi- Cetak Cetak- Loop Loop) - ini memungkinkan Anda terhubung ke papan dan mengeksekusi kode tanpa mengkompilasi atau mengunggah - sempurna untuk belajar cepat dan bereksperimen dengan perangkat keras!
Perpustakaan Perangkat Lunak yang Kaya - Seperti bahasa pemrograman Python biasa, MicroPython memiliki banyak perpustakaan bawaan untuk mendukung banyak tugas. Misalnya, melalui perpustakaan bawaan MicroPython, mudah untuk mengurai data JSON dari layanan Web, mencari teks menggunakan ekspresi reguler, dan bahkan melakukan pemrograman soket jaringan.
Ekstensibilitas - Untuk pengguna tingkat lanjut, MicroPython dapat diperluas dengan fungsi C/C++ tingkat rendah, sehingga Anda dapat menggabungkan kode MicroPython tingkat tinggi yang ekspresif dengan kode tingkat rendah yang lebih cepat bila diperlukan.
MicroPython adalah varian dari bahasa Python 3. Ini adalah gagasan Darrien P. George, Ph.D., dari Universitas Cambridge, yang bekerja dengan tim crowdfunding untuk mengembangkan papan pengembangan perangkat keras berkemampuan mikroPython yang disebut PyBoard pada tahun 2013. MicroPython1.0 dipresentasikan pada konferensi Python ( PyCon) pada tahun 2014. Dr. George juga menyiapkan situs web Micro Python.org (www.micropython.org) untuk mendukung MicroPython dan Pyboard.

Logo resmi MicroPython.Org
MicroPython.Org PyBoard, berdasarkan pengontrol STM32.
2. Apa yang bisa dilakukan MicroPython?
MicroPython dirancang untuk membuat program kontrol sistem tertanam dengan cepat dan efisien. Sistem tertanam secara sederhana dapat didefinisikan sebagai proyek apa pun yang memerlukan penggunaan mikrokontroler untuk memenuhi kebutuhan teknik. Sistem tertanam biasanya menggunakan sensor dan terkadang aktuator elektromekanis untuk berinteraksi dengan mikrokontroler. Mereka mungkin terpasang pada perangkat antarmuka manusia-mesin untuk memudahkan interaksi, namun lebih otomatis, untuk pengoperasian yang berdiri sendiri atau akses jarak jauh ke cloud.
Sama seperti papan Arduino, MicroPython dapat mengontrol perangkat keras dan perangkat yang terhubung -- Anda dapat mengontrol lampu berkedip pin GPIO, sakelar baca, dan banyak lagi; Dapat menggerakkan sinyal PWM yang dapat menggerakkan server dan LED; Sensor analog dapat dibaca dan dibaca melalui konverter analog-ke-digital. Juga mudah untuk berkomunikasi dengan perangkat I2C atau SPI. Anda bahkan dapat menemukan dukungan jaringan dan WiFi di beberapa papan. MicroPython bahkan memiliki perpustakaan untuk mengontrol perangkat keras lain, seperti NeoPixels dan strip LED, layar OLED mini, dan sebagainya. Singkatnya, MicroPython dapat melakukan banyak hal!
Apa batasan MicroPython?
MicroPython memiliki sedikit keterbatasan, dan hampir semua hal yang dapat dilakukan Arduino dapat dilakukan melalui papan MicroPython. Namun, penting untuk dicatat bahwa kode MicroPython tidak secepat dan mungkin memerlukan lebih banyak memori dibandingkan Arduino serupa atau kode tingkat rendah berbasis C/C++ lainnya, meskipun hal ini biasanya tidak menjadi masalah karena perbedaan kecepatan dan memori tidak cukup besar untuk mempengaruhi sebagian besar aplikasi. Ketahuilah bahwa kode yang penting bagi waktu atau kinerja mungkin tidak berfungsi di MicroPython. Misalnya, menggunakan perangkat lunak sepenuhnya untuk menggerakkan pin IO guna mengimplementasikan beberapa protokol komunikasi serial berkecepatan tinggi di MicroPython mungkin bukan ide terbaik. Namun, ada cara untuk menggabungkan kode MicroPython dan kode C/C++ tingkat rendah sehingga kita bisa mendapatkan yang terbaik dari kedua dunia - logika utamanya adalah kode MicroPython yang bersih dan mudah dipahami, sedangkan bagian penting kinerja ditulis dalam kode tingkat rendah yang lebih cepat.
Bahasa MicroPython mengimplementasikan sebagian besar bahasa inti Python 3, tetapi MicroPython tidak mengimplementasikan seluruh pustaka standar Python 3. Python dikenal memiliki perpustakaan standar yang luas, tetapi mencoba mengompresi perpustakaan sebesar itu ke papan kecil dengan memori hanya kilobyte adalah hal yang mustahil. Sebaliknya, MicroPython mengimplementasikan beberapa versi yang lebih kecil dari pustaka standar Python, sehingga memberikan pengalaman pengembangan yang luar biasa.
Penafian: Artikel ini dicetak ulang dari "hutan elektronik", artikel ini hanya mewakili pandangan pribadi penulis, tidak mewakili pandangan Sakwei dan industri, hanya direproduksi dan dibagikan, mendukung perlindungan hak kekayaan intelektual, harap sebutkan sumber aslinya dan penulis, jika ada pelanggaran, harap menghubungi kami untuk menghapus.




粤公网安备44030002007346号