Talian Khidmat
Memandangkan Python menjadi bahasa pengaturcaraan yang dominan, MicroPython menjadi semakin popular dalam ruang sistem terbenam, terutamanya dalam ESP32 yang popular dan modul Pico berasaskan mikropengawal RP2040 yang baru dikeluarkan oleh Raspberry PI Foundation.
Sebagai bannon yang tidak boleh menulis baris kod, saya berasa sangat terhad dalam kebanyakan masa, dan berikrar untuk mencari masa yang sesuai untuk mempelajari bahasa pengaturcaraan. Saya menumpukan diri saya kepada MicroPython semasa cuti Hari Kebangsaan selama 7 hari, dan menyedari semua fungsi peranti pada papan pada papan pembelajaran sambungan Pico yang direka oleh saya sendiri:
-
Pencahayaan mewah - monokrom, RGB tiga warna, semua jenis kombinasi, juga boleh dikawal oleh butang dan penderia
-
Skrin OLED memaparkan teks, imej dan bentuk gelombang
-
Isyarat audio dikumpul dan dipaparkan pada skrin OLED - menjadikan paparan bentuk gelombang yang sejuk
-
Memainkan "Saya dan Negaraku" dengan buzzer di papan tulis
-
Memindahkan kod orang lain untuk menjana bentuk gelombang sewenang-wenangnya - menukar bentuk gelombang, menukar frekuensi, menukar magnitud, dsb.
Apa yang paling saya TERKESAN sepanjang "penerokaan" 7 hari ialah betapa mudahnya untuk bermula dengan sistem terbenam dalam MicroPython - sumber sumber terbuka yang kaya, pelbagai bentuk rujukan, seperti kursus video, kes teks, dsb.
MicroPython benar-benar bahasa pengaturcaraan yang hebat - berorientasikan objek, fleksibel, ringkas, elegan!
Pembelajaran peribadi saya mendapat manfaat daripada perkongsian orang lain (sumber terbuka), dan cara terbaik untuk menyampaikan ilmu adalah dengan berkongsi apa yang saya pelajari dan apa yang saya pelajari. Oleh itu, saya bercadang untuk melancarkan tutorial pengaturcaraan terbenam Micro Python berdasarkan Pico, yang akan dilancarkan secara rasmi dalam masa sebulan. Sudah tentu, Pada peringkat awal, akan ada 15 kursus langsung reka bentuk PCB, yang akan membawa anda untuk mereka bentuk papan pembelajaran Pico sendiri. Lagipun, dalam persekitaran mudah papan percetakan percuma dan penghantaran percuma, berdasarkan papan teras Pico, semua orang boleh mereka bentuk PCB untuk membuat pelbagai aplikasi menarik pada masa hadapan. Mempelajari cara mereka bentuk PCB juga boleh menjadi kelebihan untuk jurutera sistem terbenam.
Mulai sekarang, akan ada beberapa siri artikel teknikal yang berkaitan dengan kursus ini. Hari ini adalah yang pertama:
1. Apakah itu MicroPython
MicroPython ialah penterjemah bahasa pengaturcaraan Python sumber terbuka kecil yang berjalan pada papan pembangunan terbenam kecil. Dengan MicroPython, anda boleh menulis kod Python yang bersih dan ringkas untuk mengawal perkakasan tanpa perlu menggunakan bahasa asas yang kompleks seperti C atau C ++ (Arduino untuk pengaturcaraan).

Logo MicroPython
Kesederhanaan bahasa pengaturcaraan Python menjadikan MicroPython pilihan ideal untuk pemula dalam pengaturcaraan dan perkakasan. MicroPython sangat berciri penuh dan menyokong kebanyakan sintaks Python, jadi walaupun veteran Python yang berpengalaman akan mendapati penggunaan MicroPython biasa dan menyeronokkan.
Selain mudah digunakan, MicroPython mempunyai beberapa ciri unik yang membezakannya daripada sistem terbenam lain:
Gunakan penterjemah interaktif: REPL (Read Read- Evaluate Evaluate- Print Print- Loop Loop) - ini membolehkan anda menyambung ke papan dan memintanya melaksanakan kod tanpa menyusun atau memuat naik - sesuai untuk pembelajaran pantas dan bereksperimen dengan perkakasan!
Perpustakaan Perisian Kaya - Seperti bahasa pengaturcaraan Python biasa, MicroPython mempunyai sejumlah besar perpustakaan terbina dalam untuk menyokong banyak tugas. Contohnya, melalui perpustakaan terbina dalam MicroPython, mudah untuk menghuraikan data JSON daripada perkhidmatan Web, mencari teks menggunakan ungkapan biasa dan juga melakukan pengaturcaraan soket rangkaian.
Kebolehlanjutan - Untuk pengguna lanjutan, MicroPython boleh dilanjutkan dengan fungsi C/C++ peringkat rendah, jadi anda boleh mencampurkan kod MicroPython peringkat tinggi ekspresif dengan kod peringkat rendah yang lebih pantas apabila diperlukan.
MicroPython ialah varian bahasa Python 3. Ia adalah cetusan idea Darrien P. George, Ph.D., dari The University of Cambridge, yang bekerja dengan pasukan crowdfunding untuk membangunkan papan pembangunan perkakasan yang didayakan microPython yang dipanggil PyBoard pada tahun 2013. MicroPython1.0 telah dibentangkan pada persidangan Python ( PyCon) pada 2014. Dr. George turut menyediakan tapak web Micro Python.org (www.micropython.org) untuk menyokong MicroPython dan Pyboard.

Logo rasmi MicroPython.Org
MicroPython.Org PyBoard, berdasarkan pengawal STM32.
2. Apakah yang boleh dilakukan oleh MicroPython?
MicroPython direka untuk mencipta program kawalan sistem terbenam dengan cepat dan cekap. Sistem terbenam boleh ditakrifkan sebagai mana-mana projek yang memerlukan penggunaan mikropengawal untuk memenuhi keperluan kejuruteraan. Sistem terbenam biasa biasanya menggunakan penderia dan kadangkala penggerak elektromekanikal untuk bersambung dengan mikropengawal. Ia mungkin dilampirkan pada peranti antara muka manusia-mesin untuk interaksi yang mudah, tetapi lebih automatik, untuk operasi bersendirian atau akses jauh ke awan.
Sama seperti papan Arduino, MicroPython boleh mengawal perkakasan dan peranti yang disambungkan -- anda boleh mengawal lampu berkelip pin GPIO, membaca suis dan banyak lagi; Boleh memacu isyarat PWM yang boleh memacu pelayan dan LED; Penderia analog boleh dibaca dan dibaca melalui penukar analog-ke-digital. Ia juga mudah untuk berkomunikasi dengan peranti I2C atau SPI. Anda juga boleh mencari sokongan rangkaian dan WiFi pada beberapa papan. MicroPython juga mempunyai perpustakaan untuk mengawal perkakasan lain, seperti NeoPixels dan jalur LED, paparan OLED kecil dan sebagainya. Pendek kata, MicroPython boleh melakukan banyak perkara!
Apakah batasan MicroPython?
MicroPython mempunyai sedikit batasan, dan hampir semua yang Arduino boleh lakukan boleh dilakukan melalui papan MicroPython. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa kod MicroPython tidak sepantas dan mungkin memerlukan lebih banyak memori daripada Arduino yang serupa atau kod peringkat rendah berasaskan C/C++ lain, walaupun ini biasanya tidak penting kerana perbezaan kelajuan dan memori tidak cukup besar untuk mempengaruhi kebanyakan aplikasi. Harap maklum bahawa kod yang kritikal masa atau prestasi mungkin tidak berfungsi dalam MicroPython. Contohnya, menggunakan perisian sepenuhnya untuk memacu pin IO untuk melaksanakan beberapa protokol komunikasi bersiri berkelajuan tinggi dalam MicroPython mungkin bukan idea terbaik. Walau bagaimanapun, terdapat cara untuk mencampurkan kod MicroPython dan C/C++ peringkat rendah supaya kita boleh mendapatkan yang terbaik daripada kedua-dua dunia - logik utama adalah kod MicroPython yang bersih dan mudah difahami, manakala bahagian kritikal prestasi ditulis dalam kod peringkat rendah yang lebih pantas.
Bahasa MicroPython melaksanakan kebanyakan bahasa teras Python 3, tetapi MicroPython tidak melaksanakan keseluruhan perpustakaan standard Python 3. Python terkenal kerana mempunyai perpustakaan standard yang luas, tetapi cuba memampatkan perpustakaan yang begitu besar ke papan kecil dengan hanya kilobait memori adalah mustahil. Sebaliknya, MicroPython melaksanakan beberapa versi perpustakaan standard Python yang lebih kecil, memberikan pengalaman pembangunan yang hebat.
Penafian: Artikel ini dicetak semula daripada "hutan elektronik", artikel ini hanya mewakili pandangan peribadi penulis, tidak mewakili pandangan Sakwei dan industri, hanya diterbitkan semula dan dikongsi, menyokong perlindungan hak harta intelek, sila nyatakan sumber asal dan penulis, jika terdapat pelanggaran, sila hubungi kami untuk memadam.




粤公网安备44030002007346号