月考+Python在嵌入式系統中的崛起
Python部落(python.freelycode.com)組織翻譯,禁止轉載,歡迎轉發。
根據IEEE Spectrum的統計,Python在2017年的頂級編程語言中排名第一。Python從去年開始持續上升,兩度躍到排名第一的位置。雖然在Web和Enterprise應用中python穩居第一的位置,但是在基於Python的嵌入式開發平台(如Zerynth和MicroPython)中,python還需要大力發展。
上面的排名並不奇怪,現今絕大多數的嵌入式代碼仍然是用C編寫的。專家和熟練的C程序員認為這理所當然,他們說:「C語言生成一個更快,更緊湊,更可靠的代碼」。但是 ,如果你用彙編語言代替C語言,就會理解20年前那代程序員到底在說什麼了。
為什麼在嵌入式應用中使用python?
如果你用Google搜一下「嵌入式系統中的python」會找到許多類似下面的文章:
1、python比C語言更好!
2、嵌入式系統中python和C/C++的對比
3、嵌入式系統中Python的地位
4、未來嵌入式系統的編程語言還會是C語言嗎?
5、python對嵌入式系統的發展意義
我們可以用下面的一段話來總結上面的內容:
「如果一個問題可以在Python中解決,那麼也可以在C中解決,反之不一定成立。但是,如果問題可以在Python中解決,那麼:
——解決方案(源代碼)將比相應的C代碼簡單
——更加可靠
——也許更重要的是,可「可重複寫」(這一點容易被忽視)「
C / C ++編碼速度慢,容易出錯,而且經常是不可讀的,但Python以其可寫性,減少錯誤和可讀性而聞名。由於這些原因,最近的一項研究表明,Python不僅僅是介紹性CS程序和業餘興趣開發人員最受歡迎的語言,它也是嵌入式計算中增長最快的語言。有大量的專業人士熟練使用Python「潛在地」為物聯網中的「下一件大事」開發軟體,而且將會在短時間內發布新的驚人的嵌入式應用程序。
為什麼要使用Zerynth作為基於Python的嵌入式應用程序
Zerynth超越了專業的嵌入式開發人員,為高級程序員,產品設計師和IoT開發人員提供了一套完整的高品質嵌入式開發工具來創建互動式連接式的解決方案。
Zerynth允許使用任何32位微控制器設計嵌入式應用程序和IoT連接設備,來連接到任何雲基礎架構,而且可以實現Python和C 語言的混合編程。
初學者容易上手
一個詞來形容:簡單!與其他用於微控制器的Python實現不同,Zerynth不需要從不同的Web源複製/粘貼令人毛骨悚然的腳本。不需要拖放任何文件夾或FTP中的任何文件。無需在PC上安裝Python,無需安裝Putty或特殊驅動程序。使用Zerynth,您只需點擊幾下即可使您的設備在Python中編程!
在本教程中可以看到如何使用Zerynth編程NodeMCU板,您只需要按照如下步驟來即可:
1、下載安裝Zerynth Studio
2、連接,註冊並虛擬化ESP8266主板
3、克隆一個例子,並將其上傳到主板
只需遵循上面這些非常簡單的步驟,您就可以使用Python編程設備,而不必使用複雜的低級語言(如C或C ++)。對於新手編程的初學者來說,這是一個很好的選擇。
對於高級用戶,Zerynth允許在同一個項目中混合使用Python和C代碼。這種「混合」編程在項目需要關鍵任務的低級代碼時非常強大,同時保持Python對非關鍵部分的靈活性和可讀性。使用Zerynth,你可以同時擁有開發速度和運行時速度!你可以在官方文檔中了解有關Zerynth-C語言界面的更多信息。
一次編碼,多種場景使用
Zerynth虛擬機是Zerynth堆棧的核心元素,提供了一個真正的硬體抽象層,允許在大多數32位微控制器(嵌入式和IoT解決方案的核心)上重用代碼。
硬體的獨立性對許多方面至關重要:
1、對於產品設計師來說,由於在從原型轉換為生產過程中無需重寫代碼,因此可縮短上市時間;
2、對於系統集成商來說,它更容易集中在集成部分,並選擇更適合項目的主板,而不需要擔心低級功能和可編程性;
3、對於嵌入式生產者來說,它加速了新的嵌入式硬體的採用,並向龐大的Python程序員社區開放。
Zerynth虛擬機的開發是使Python可以在嵌入式世界中使用。為了做到這一點,Python的一些功能被丟棄,因為它們太佔用資源,而一些非Python功能被引入,因為它們在嵌入式設置中更具功能。可以參看官方文檔中Zerynth和Python之間的區別列表(不完整)
你可以用Zerynth做什麼
與其他IoT開發平台不同,Zerynth提供了一個完整的「生態系統」工具,可以讓您從固件開發到雲連接,這些都得益於大量的庫鏈接。
需要靈感嗎? Zerynth Academy網站部分提供了一系列教程,指導您使用Zerynth Stack開發Python中的嵌入式和IoT解決方案。你將學習:
1、如何使用Zerynth在Python中編程ESP8266,這是用於IoT和嵌入式應用的常用微控制器
2、如何使用Zerynth和Arduino MKR1000來啟用IoT Security;
3、如何創建一個使用Zerynth在Python中編程並連接到The Things Network的LoRa網路;
4、如何使用Zerynth和Matplotlib(一種非常受歡迎的Python繪圖庫)來獲取和可視化LoRa節點的感測器數據;
5、如何在Python中使用Zerynth程序為Hexiwear,最受歡迎的可穿戴式IoT開發平台之一
6、如何使用Zerynth在Python中為Nordic的nRF52832編程,這是支持藍牙低能耗(BLE)的藍牙5-ready SoC。
您還可以在此鏈接或Zerynth Studio的左側面板上直接找到有用的示例列表。
超越Arduino和樹莓派
如上所述,在無人機,機器人或其他項目的Python中,學生和業餘愛好者經常擁有樹莓派或Arduino背景。
Zerynth提供基於微處理器的一些優勢,如樹莓派:
1、使用python編程,必要的話可以和c語言混合
2、支持多線程
以及基於微控制器的電路板的巨大優勢:
1、相對於微處理器電路板的功耗更低
2、降低原型設計階段的硬體成本
3、在工業化階段硬體成本極低
而且擁有60k-80k的快閃記憶體以及3-5k的RAM.
應用廣泛
Zerynth已被公司和專業團隊用於在不同行業建立驚人的IoT和嵌入式解決方案:如零售,商業製冷,廢物管理,智能設備等等,這些都可以在「Built with Zerynth」中看到。
英文原文:https://www.zerynth.com/blog/the-rise-of-python-for-embedded-systems/
譯者:咋家
※用Python分析購物籃
※榨乾 Python 代碼的性能——第一部分之環境設置
※在Python中自定義類的創建方式
※在Python中使用其他語言的列印語句
※讓Python腳本成為守護進程
TAG:Python部落 |
※Python項目中跟蹤系統導入Zipkin
※1.5 讓VS Code擁有Python的Shell——「系統終端+IPython」
※滲透技巧——獲取Windows系統下DPAPI中的MasterKey
※Windows Phone系統在PCMag.com讀者選擇獎中排名第二
※今年5月起,iTunes停止支持XP/Vista系統
※在虛擬機VMware中安裝Linux系統
※iPhone 新系統將加入「防沉迷」功能,新 iPad Pro 將在下半年發布
※Steam:明年起不再支持Windows XP和Vista系統
※開源項目Safespaces想讓你在VR中使用Linux系統
※iTunes從今年5月開始停止支持XP/Vista系統
※The Nervous System 神經系統
※5.16 VR掃描:Oculus推出Sensor Bounds 感測測試器;首個SteamVR輸入系統發布
※MIT開發Flight Goggles VR系統訓練無人機
※如何在虛擬機中安裝Linux中的CentOS 7系統
※受AlphaGo啟發,AI重建量子系統新方法登上Nature Physics
※【Inside Xbox】Xbox One春季更新全新功能公布 支持Freesync技術新Avatar系統測試中
※在Windows 10的Linux子系統中安裝完整版kali
※可媲美Lighthouse,Occipital推高精度Inside-Out追蹤系統
※趁假期玩下這個精簡系統,Windows 10 Lean/CloudE系統ISO放出
※Windows系統的JScript組件被曝存在一個0day RCE