在過去的幾年裡,Python已經成為一種熱門的程式語言。以著名的Monty Python喜劇小組命名,該語言是面向對象和解釋(未編譯)。該屬性導緻Python在Linux和Windows等平台上以及Raspberry Pi等單闆計算機上被采用。随着這種廣泛且不斷增長的采用,人們可能想知道在實時嵌入式系統中是否存在Python的位置。以下是開發人員可能會發現Python在實時嵌入式系統中扮演的五個角色。
裝置控制和調試
在嵌入式軟體開發過程中,開發人員經常發現自己在分析總線流量,如USB,SPI或I2C。有時,分析僅用于調試目的,但有時需要實際控制總線分析器并将消息發送到嵌入式系統。許多總線分析器和通信工具具有使用者友好的界面,可用于控制工具。它們通常還提供了一種開發可用于控制工具的腳本的方法。Python是一種腳本語言,通常支援(有時僅用于)與工具接口和控制。
自動化測試
控制可以通過Python從嵌入式系統發送和接收消息的工具的能力開啟了使用Python建立自動化測試的可能性,包括包括回歸測試。可以開發Python腳本,将嵌入式系統設定為不同的狀态,設定配置,并測試系統與外部世界可能存在的所有幹擾和互動。使用Python進行自動化測試的一個優點是可以開發回歸測試,不斷測試和運作系統。将立即發現導緻錯誤或不符合的任何代碼更改。
資料分析
在Web上對Python庫的簡單搜尋表明,有許多免費且功能強大的庫可用于開發Python應用程式。Python可用于接收關鍵的嵌入式系統資料,然後可以将這些資料存儲在資料庫中或本地進行分析。然後,開發人員可以使用Python開發顯示關鍵參數的實時可視化,或者存儲和儲存這些參數以供以後分析。使用Python進行資料分析的好處是基礎工作已經完成; 功能很簡單。
實時軟體
事實證明,Python本身就是如此強大和易于使用,以至于Python甚至可以作為程式設計語言進入實時嵌入式系統。是的,嵌入式軟體本身是用Python而不是C / C ++編寫的。實時最廣泛使用的Python版本是MicroPython端口,設計用于在ARM Cortex-M3 / 4等微控制器上運作。MicroPython并不孤單。Synapse和OpenMV等公司在嵌入式系統中使用Micro Python或自己的Python端口。有興趣了解更多有關MicroPython的讀者可能對DesignNews(EDN姊妹刊物)的持續教育課程感興趣。還有一些概述文章可以在EDN的其他地方找到。
學習面向對象程式設計
Python是一種免費的程式設計語言,可以在多個平台上使用,學生和非程式設計類型可以輕松學習如何程式設計。與C不同,該語言也是現代的,并且能夠以自由形式的腳本類型方式或作為複雜的面向對象的體系結構進行結構化。Python也被證明非常通用。有些情況下,沒有程式設計經驗的電氣工程師能夠利用Python編寫有用的測試腳本或以最少的時間投入執行電路闆檢查。
Python的學習曲線并不陡峭,熟悉它的開發人員發現它是一種易于從其他語言切換的語言。語言本身靈活,并且可以适應在基于微控制器的環境中工作。