最近國內MicroPython風靡程式界,是什麼原因導致它這麼火爆呢?是因為他功能強大,遵循Mit協定開源麼?
Micropython的由來,這要歸功於Damien George這位偉大的電腦工程師,Damien George每天都會使用Python工作,他有一天冒出一個大膽的想法:能否用Python來控制單片機,從而實現對機器人的操作呢?
那麼micropython適合開發嗎?
Python語言本身就是一款簡單上手的腳本語言,一些非電腦專業的愛好者都選Python語言作為入門語言,但是美中不足(中國跟美國為什麼不參加世界盃),它不能實現一些底層的操作,在硬體領域毫不起眼。所以,Damien George利用6個月時間打造了MicroPython,這就是MicroPyhton的由來。
MicroPython它是基於ANSIC,語法跟Python3基本一致,擁有獨立的解析器、編譯器、虛擬機器和類別函式庫等。目前他支援基於32-bit的ARM處理器,比如說STM32F401、STM32F405、STM32F407。
使用組譯、C、MicroPython這3種語言做了以下幾點比較,來說明micropython適合開發嗎?
1.編譯環境
C語言、組譯語言在編寫程式之前,需要下載編譯環境,然而Micropython不需要任何編譯環境,只需將開發板U口插入電腦,便可在電腦上出現一個盤符,跟插入U盤似得,然後打開U盤,直接記事本編輯main.py就行,它的舒服在於MicroPython不需要任何工具和環境,任何文本工具1塊開發板即可開發編譯,可以給它取個綽號--口袋程式設計計算機。 。 。國內做的比較好的就是TPYBoard v102開發板,有興趣的可以去學習了解一下,它資料齊全,有視頻學習資料,還是不錯的,我就是這麼入坑的哦。
2.操作難度
組合語言基本操作簡單,但是要實現複雜的專案目標相對較難,程式碼冗長,調試查錯困難;C語言有了語句和大量的函式庫函數,相對彙編來說簡單了;MicroPython有了比C更多的函式庫函數,程式碼格式不只變得簡潔,在函式庫的支援下很多函數和方法都不用自己再寫,直接import xx就可以,把類別庫導入就ok。以前點一燈要五、六行程式碼,現在只要1行程式碼就可以點亮LED,So Easy。
3.程式結構
組合語言整體使用跳轉結構,不管是子程式的呼叫或循環或散轉理論上都是用跳轉的方式,中斷運算或強行出程式段的操作都需要對壓棧有有精確的控制,要求非常嚴格;C語言總體使用循環結構或順序結構,不再需要到處跳來執行程序,中斷操作會自動進行壓棧不需要人為幹預,在時序要求高時可嵌入彙編提高效率;MciroPython可以使用C的程式結構或使用執行緒結構,執行緒結構要求的是嚴格且合理的分配好執行緒工作時間不能出現衝突,對資源要有很好的把控,不能空掛線程浪費資源,理論上多線程可以更有效率的運行,雖然單核同時只能運行單線程但是從宏觀角度來說是同步的,在時間要求不嚴格的情況下可以有效的降低程序的編寫難度。
4.寫方式
彙編在不使用巨集的情況下,通常都是指令直接操作單元,需要記憶大量的資料單元用途,且由於程式行數較多(可能會到一兩千行)需要來回翻看程式碼,整個編寫流程比較繁瑣。而且由於都是8位元的單元複雜的資料運算需要嵌套C語言來完成;C語言使用使用任何變數都需要先定義,相較不用刻意去記憶變數名稱,整體結構清晰多數程式軟體都有跳躍子程式功能,尋找程式區塊非常方便。有大量的成品頭檔包含各種常用函數,相對少了很多複雜的程式碼編寫;MicroPython繼承了C的編寫優點,且不需要預先定義,不需要任何結束符號,只需要換行即可繼續編寫,但是要注意一些特殊情況下Tab鍵的使用。
5.易讀性
彙編本身難讀因為標記少且直接操作單元,視覺結構上不僅就兩列程式碼而且需要不停的跳轉所以本身在讀取上就很難;C語言簡單的操作程式碼比較清晰,但是複雜的就會方法中找方法,很多複雜的程式碼非本人去找,就讓人感到非常頭疼;MicroPython相比C有更好的易讀性,而且由於取消了很多特殊符號整體感覺也比較清晰,很多方法都是單獨寫成單獨的庫,直接調用即可,每個功能都有單獨的類庫,看起來極其方便,一目了然。
以上是micropython適合開發嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!