国产网红主播精品一区_国产亚洲精品久久久久四川人_国产av无码专区亚洲av果冻传媒_波多野结衣初尝黑人_亚洲碰碰人人av熟女天堂

/ EN
13922884048

專家專欄

Expert column
/
/

嵌入式系統(tǒng)輕松入門(mén)(1)- MicroPython是什么?

發(fā)布時(shí)間:2022-03-09作者來(lái)源:薩科微瀏覽:3123

隨著Python成為主流的編程語(yǔ)言,MicroPython在嵌入式系統(tǒng)領(lǐng)域也越來(lái)越熱門(mén)起來(lái),尤其是大家喜愛(ài)的ESP32以及樹(shù)莓派基金會(huì)剛推出的基于RP2040微控制器的Pico模塊都支持MicroPython。


作為一行代碼都不會(huì)寫(xiě)的板農(nóng),在很多時(shí)候覺(jué)得非常受限,發(fā)誓一定要找個(gè)時(shí)機(jī)好好學(xué)會(huì)一門(mén)編程語(yǔ)言,這不國(guó)慶7天的假期我都奉獻(xiàn)給了MicroPython,并在自己設(shè)計(jì)的Pico擴(kuò)展學(xué)習(xí)板上實(shí)現(xiàn)了板上所有外設(shè)的功能:

  • 花式點(diǎn)燈 - 單色、RGB三色,各種組合,還可以按鍵和傳感器來(lái)控制

  • OLED屏幕上顯示文本、圖像、波形

  • 將音頻信號(hào)進(jìn)行數(shù)據(jù)采集并顯示在OLED屏幕上 - 做了一個(gè)炫酷的波形顯示

  • 用板上的蜂鳴器奏響了“我和我的祖國(guó)”

  • 移植了別人的代碼生成了任意波形 - 改變波形、改變頻率、改變幅度等等

  • 。。。。


通過(guò)這7天的“探索”我自己[敏感詞]的感觸就是,以MicroPython入門(mén)嵌入式系統(tǒng)實(shí)在是太方便了 - 豐富的開(kāi)源資源、多種形式的參考,比如視頻課程、文本案例等。


MicroPython確實(shí)是一個(gè)很好的編程語(yǔ)言 - 面向?qū)ο蟆㈧`活、簡(jiǎn)單、優(yōu)美!


我個(gè)人的學(xué)習(xí)得益于別人的分享(開(kāi)源)、傳遞知識(shí)[敏感詞]的方式就是把自己所學(xué)、所悟也分享出去,因此我計(jì)劃上線一套基于Pico的Micro Python嵌入式編程教程,一個(gè)月以后正式開(kāi)播,當(dāng)然,前期會(huì)有15節(jié)PCB設(shè)計(jì)的直播課程帶著大家自己設(shè)計(jì)一款Pico的學(xué)習(xí)板,畢竟在打板都能免費(fèi)且包郵的便利大環(huán)境下,基于一個(gè)Pico核心板,未來(lái)每個(gè)人都可以通過(guò)自己設(shè)計(jì)PCB來(lái)做各種有趣的應(yīng)用出來(lái),學(xué)會(huì)PCB的設(shè)計(jì)也會(huì)讓嵌入式系統(tǒng)工程師如虎添翼。


從現(xiàn)在開(kāi)始陸續(xù)連載與這個(gè)課程相關(guān)的技術(shù)文章,今天是[敏感詞]篇:

1. 什么是MicroPython

MicroPython是一個(gè)小型的開(kāi)源Python編程語(yǔ)言解釋器,運(yùn)行在小型嵌入式開(kāi)發(fā)板上。使用MicroPython,您可以編寫(xiě)干凈、簡(jiǎn)單的Python代碼來(lái)控制硬件,而不必使用復(fù)雜的底層語(yǔ)言,如C或c++ (Arduino用于編程)。

MicroPython的Logo

Python編程語(yǔ)言的簡(jiǎn)單性使MicroPython成為編程和硬件新手的理想選擇。MicroPython功能非常齊全,支持大多數(shù)Python語(yǔ)法,所以即使是經(jīng)驗(yàn)豐富的Python老手也會(huì)發(fā)現(xiàn)使用MicroPython很熟悉和有趣。

除了易于使用之外,MicroPython還有一些獨(dú)特的特性,使它有別于其它嵌入式系統(tǒng):

  • 使用交互式解釋器:REPL(讀Read-評(píng)估Evaluate-打印Print-循環(huán)Loop) - 這允許你連接到一個(gè)板,并讓它執(zhí)行代碼,而不需要編譯或上傳-完美的快速學(xué)習(xí)和試驗(yàn)硬件!

  • 豐富的軟件庫(kù) - 像普通的Python編程語(yǔ)言一樣,MicroPython內(nèi)置了非常多的庫(kù)來(lái)支持許多任務(wù)。例如,通過(guò)MicroPython的內(nèi)置庫(kù),可以很容易地解析來(lái)自Web服務(wù)的JSON數(shù)據(jù),使用正則表達(dá)式搜索文本,甚至進(jìn)行網(wǎng)絡(luò)套接字編程。

  • 可擴(kuò)展性 - 對(duì)于高級(jí)用戶來(lái)說(shuō),MicroPython可以通過(guò)低級(jí)C/C++函數(shù)進(jìn)行擴(kuò)展,因此在需要時(shí),您可以將富有表現(xiàn)力的高級(jí)MicroPython代碼與更快的低級(jí)代碼混合使用。

MicroPython是Python 3語(yǔ)言的一個(gè)變種,其思想來(lái)源于劍橋大學(xué)的Darrien P. George博士,他與一個(gè)眾籌團(tuán)隊(duì)一起于2013年開(kāi)發(fā)了一款支持MicroPython的硬件開(kāi)發(fā)板 - 叫PyBoard,并于2014年的Python大會(huì)(PyCon)上提出了MicroPython1.0。George博士也建立了micro python.org網(wǎng)站(www.micropython.org)來(lái)支持MicroPython和Pyboard。

MicroPython.Org官方的Logo

MicroPython.Org官方推出的PyBoard,基于STM32控制器。

2. MicroPython能做什么?

MicroPython被設(shè)計(jì)用于快速有效地創(chuàng)建嵌入式系統(tǒng)控制程序。嵌入式系統(tǒng)可以簡(jiǎn)單定義為任何需要使用微控制器以滿足工程需要的工程。典型的嵌入式系統(tǒng)通常使用傳感器,有時(shí)會(huì)使用電子機(jī)械傳動(dòng)結(jié)構(gòu)與微控制器接口,它們可能附接有人機(jī)接口設(shè)備,便于交互,但是更多為自動(dòng)的,為單機(jī)運(yùn)行或連接至云端進(jìn)行遠(yuǎn)程訪問(wèn)。

就像Arduino板一樣,MicroPython可以控制硬件和連接的設(shè)備 - 可以控制GPIO引腳閃爍燈、讀取開(kāi)關(guān)以及更多;可以驅(qū)動(dòng)能夠驅(qū)動(dòng)伺服器、LED的PWM信號(hào); 能通過(guò)模數(shù)轉(zhuǎn)換器讀取讀取模擬傳感器的信息,與I2C或SPI設(shè)備通信也很容易,你甚至可以在一些板上找到網(wǎng)絡(luò)和WiFi支持。MicroPython甚至有用于控制其它硬件的庫(kù),如NeoPixels和LED條,微型OLED顯示器等等。簡(jiǎn)而言之,MicroPython可以做很多事情!

3. MicroPython有什么局限?

MicroPython有很少的限制,幾乎Arduino能做的任何事情都可以通過(guò)MicroPython板來(lái)完成。然而,需要注意的是,與類(lèi)似的Arduino或其它基于C/C++的底層代碼相比,MicroPython代碼沒(méi)有那么快,需要的內(nèi)存也可能更大,不過(guò)通常這并不重要,因?yàn)樗俣群蛢?nèi)存差異并不大,大多數(shù)的應(yīng)用不會(huì)受到影響。要注意的是,那些對(duì)時(shí)間或性能要求很?chē)?yán)格的代碼可能無(wú)法在MicroPython中工作。例如,在MicroPython中完全使用軟件來(lái)驅(qū)動(dòng)IO管腳實(shí)現(xiàn)一些高速的串行通信協(xié)議可能不是[敏感詞]的主意。然而,有一些方法可以混合MicroPython和低級(jí)C/C++代碼,這樣我們就可以同時(shí)擁有這兩個(gè)世界的優(yōu)點(diǎn) - 主要的邏輯是干凈且易于理解的MicroPython代碼,而性能關(guān)鍵部分使用更快的低級(jí)代碼編寫(xiě)的。

MicroPython語(yǔ)言實(shí)現(xiàn)了大部分核心Python 3語(yǔ)言,但是MicroPython不能實(shí)現(xiàn)整個(gè)Python 3標(biāo)準(zhǔn)庫(kù)。Python以擁有廣泛的標(biāo)準(zhǔn)庫(kù)而聞名,但是試圖將這么大的庫(kù)壓縮到只有千字節(jié)內(nèi)存的小板上是不可能的。相反,MicroPython實(shí)現(xiàn)了一些Python標(biāo)準(zhǔn)庫(kù)的更小版本,為我們提供了很棒的開(kāi)發(fā)體驗(yàn)。




免責(zé)聲明:本文轉(zhuǎn)載自“電子森林”,本文僅代表作者個(gè)人觀點(diǎn),不代表薩科微及行業(yè)觀點(diǎn),只為轉(zhuǎn)載與分享,支持保護(hù)知識(shí)產(chǎn)權(quán),轉(zhuǎn)載請(qǐng)注明原出處及作者,如有侵權(quán)請(qǐng)聯(lián)系我們刪除。


服務(wù)熱線

0755-83044319

霍爾元件咨詢

肖特基二極管咨詢

TVS/ESD咨詢

獲取產(chǎn)品資料

客服微信

微信客服號(hào)

久久精品国产av一区二区三区 | 欧美videos另类极品| 日本欧美一区二区三区在线播放| 亚洲夂夂婷婷色拍WW47| 亚洲youwu永久无码精品| 日本japanese丰满少妇| 黑人巨大videos极度另类| www.-级毛片线天内射视视| 爱情岛论坛网址永久首页| 亚在线观看免费视频入口| 女人18毛片水真多免费看| 日本在线a一区视频| 精品国产乱码久久久久久婷婷| 99精品人妻少妇一区二区| 国产成人午夜福利在线观看| 国产精品污www一区二区三区| 欧美日韩免费做爰大片人| 国产免费av片在线播放唯爱网| 激情国产av做激情国产爱| 人妻一本久道久久综合久久鬼色| 乱中年女人伦av一区二区| 他掀开裙子把舌头伸进去添视频| 啦啦啦www播放日本观看| 男人靠女人的免费视频| 亚洲av无码片在线观看| 国产精品一在线观看| 国产精品亚洲欧美大片在线观看 | 国产精品无码专区av在线播放| 青草视频在线观看综合| 国产精品 人妻互换| 中文字幕av在线有码| 人妻av中文系列| 国产精品丝袜高跟鞋| 18以下不能看的色禁网站| 国产午夜精品无码| 亚洲av无码精品色午夜app| 少妇爆乳无码av无码专区| 国产内射成人在线观看| 免费中文熟妇在线影片| 人妻换人妻仑乱| 暖暖 在线 日本 免费 中文|