您好,登錄后才能下訂單哦!
MicroPython技術及應用定義是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
MicroPython極精簡高效的實現了Python3語言,包含Python標準庫的一小部分,在單片機和受限環境中運行。
1.1、MicroPython發展
由劍橋大學的理論物理學家喬治?達明設計,遵循MIT許可協議,與Arduino類似,擁有自己的解析器、編譯器、 虛擬機和類庫等,MicroPython更強大。目前它支持基于32-bit的ARM處理器,比如STM32F405、STM32f407等,也就是說ARM處理器STM32F405上直接可運行Python語言,用Python語言來控制單片機。在單片機上能運行Python,實際上Python已經完全脫離系統,也就是說,你可以通過Python腳本語言開發單片機程序。
1.2、MicroPython支持的芯片
支持的mcu系列有:stm32f405、stm32f407,也支持esp8266,接下來會增強stm32f103和esp32的穩定性,芯片將會擴展到FPGA和A7。
1.3、MicroPython固件
固件就是寫入EROM(可擦寫只讀存儲器)或EEPROM(電可擦可編程只讀存儲器)中的程序。是指設備內部保存的設備“驅動程序”,通過固件,操作系統才能按照標準的設備驅動實現特定機器的運行動作,比如光驅、刻錄機或手機等都有內部固件。
主要由以下構成:
py/--核心python實現,包括編譯器、運行時和核心庫。
mpy cross/--用于將腳本轉換為預編譯字節碼的Micropyhon交叉編譯器。
ports/unix/--在unix上運行的微星版本。
ports/stm32/--運行在Pyboard和類似的stm32板上的Micropyhon版本(使用st的cube-hal驅動程序)。
ports/minimal/--最小的Micropython端口。
tests/--測試框架和測試腳本。
docs/——sphinx格式的用戶文檔。呈現的HTML文檔可在http://docs.tpyboard.com上找到。
其他組件
ports/bare-arm/--用于ARM MCU的最小MicroPython版本。主要用于控制代碼大小。
ports/teensy/--運行在teensy 3.1上的MicroPython版本(初步但功能正常)。
ports/pic16bit/--16位pic微控制器的MicroPython版本。
ports/cc3200/--在TI的cc3200上運行的Micropython版本。
ports/esp8266/--運行在espressf的esp8266 soc上的MicroPython版本。
ports/esp32/--運行在espressf的esp32 soc上的MicroPython版本。
ports/nrf/--在nrf51和nrf52 mcu上運行的MicroPython版本。
extmod/--在C中實現的附加(非核心)模塊。
tools/--各種工具
example/--幾個Python腳本示例。
Micropython當前最新版本是1.94,TPYBoard增加了顯示屏,紅外等常用接口驅動程序,可以直接使用這些設備。
1.4、TPYBoard是什么?
TPYBoard是一塊能裸機運行MicroPython的緊湊型電路板,提供了用于控制各種單片機接口的底層Python操作系統。是蘿卜設計支持Micropython的開發板,國內第一塊有自主實用新型專利和商標,可運行MicroPython單片機。
MicroPython包含了諸如交互式提示,任意精度整數,關閉,列表解析,生成器,異常處理等高級功能。適合運行在只有256k的代碼空間和16k的RAM的芯片上。MicroPython旨在盡可能與普通Python兼容,讓您輕松將代碼從桌面傳輸到微控制器或嵌入式系統。
當前TPYBoard有
V10x—主要是基礎的TPYBoard開發板。
V201—局域網通信,有LAN網口的TPYBoard開發板。
V202—wifi通信,支持wifi模塊的TPYBoard開發板。
V702—遠距離通信的,支持SIM卡的TPYBoard開發板。
2、MicroPython能干什么
既然MicroPython是用Python語言能來控制單片機,那么單片機能做什么基本能反映出它能做什么。還是讓我們一起看一下單片機能干什么?
目前單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網絡通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表、醫療器械以及各種智能機械了。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。單片機廣泛應用于儀器儀表、家用電器、醫用設備、航空航天、專用設備的智能化管理及過程控制等領域,大致可分如下幾個范疇:
2.1、智能儀器
單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優點,廣泛應用于儀器儀表中,結合不同類型的傳感器,可實現諸如電壓、電流、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機控制使得儀器儀表數字化、智能化、微型化,且功能比起采用電子或數字電路更加強大。 例如精密的測量設備(電壓表、功率計,示波器,各種分析儀)。
2.2、工業控制
單片機具有體積小、控制功能強、功耗低、環境適應能力強、擴展靈活和使用方便等優點,用單片機可以構成形式多樣的控制系統、數據采集系統、通信系統、信號檢測系統、無線感知系統、測控系統、機器人等應用控制系統。例如工廠流水線的智能化管理,電梯智能化控制、各種報警系統,與計算機聯網構成二級控制系統等。在工業疏水閥檢測已經的到了實質性推廣應用。
2.3、家用電器
現在的家用電器廣泛采用了單片機控制,從電飯煲、洗衣機、電冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備和白色家電等。
2.4、網絡和通信
現代的單片機普遍具備通信接口,可以很方便地與計算機進行數據通信,為在計算機網絡和通信設備間的應用提供了極好的物質條件,現在的通信設備基本上都實現了單片機智能控制,從手機,電話機、小型程控交換機、樓宇自動通信呼叫系統、列車無線通信、再到日常工作中隨處可見的移動電話,集群移動通信,無線電對講機等。
2.5、醫用設備領域
單片機在醫用設備中的用途亦相當廣泛,例如醫用呼吸機,各種分析儀,監護儀,超聲診斷設備及病床呼叫系統等等。
2.6、模塊化系統
某些專用單片機設計用于實現特定功能,從而在各種電路中進行模塊化應用,而不要求使用人員了解其內部結構。如音樂集成單片機,看似簡單的功能,微縮在純電子芯片中(有別于磁帶機的原理),就需要復雜的類似于計算機的原理。如:音樂信號以數字的形式存于存儲器中(類似于ROM),由微控制器讀出,轉化為模擬音樂電信號(類似于聲卡)。 在大型電路中,這種模塊化應用極大地縮小了體積,簡化了電路,降低了損壞、錯誤率,也方便于更換。
2.7、汽車電子
單片機在汽車電子中的應用非常廣泛,例如汽車中的發動機控制器,基于CAN總線的汽車發動機智能電子控制器、GPS導航系統、abs防抱死系統、制動系統、胎壓檢測等。
2.8、其他
單片機在工商、金融、科研、教育、電力、通信、物流和國防航空航天等領域都有著十分廣泛的用途。
在教育方面利用Python語言特性在青少年編程教育也得到了實質性推廣應用。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。