在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python在實時嵌入式系統開發中的主要應用

STM32嵌入式開發 ? 來源:搜狐網 ? 作者:搜狐網 ? 2020-09-23 10:55 ? 次閱讀

由于Python有強大的社區支持,且是一款比容易入門的腳本語言,因此一些非IT領域的人都選它作為入門語言。但是它不能進行一些底層的操控,在硬件領域并不起眼。然而那都是若干年之前的事情了。隨著硬件性能的不斷提升,編程開發語言的優劣開始變得不那么明顯。

如今在硬件圈同樣非常關注Python

如下是樹莓派的板子,樹莓派能干啥?

在這部分內容開始之前,先帶大家回顧一段《生活大爆炸》里的情節。在第一季開播時,這部劇里就有非常炫酷的一幕——幾個室友湊在一起用電腦遠程控制了家里的家居。提到的遠程控制都是指自己控制自己的設備,而不是別人的,請注意千萬不要非法操作。

樹莓派和Arduino應用Python的的例子實在是多,比如,利用Raspberry Pi的硬件和Python語言來完成一個機器人制作。實際上如今,Python可以直接進行單片機的開發了!

用Python語言開發STM32單片機

MicroPython基于ANSI C,語法跟Pyton 3基本一致,可以通過Python腳本語言開發單片機程序。它擁有自家的解析器、編譯器、虛擬機和類庫等。我們熟悉的ARM處理器,像STM32F405、STM32f407等上面可以直接運行Python語言。用戶完全可以實現硬件底層的訪問和控制,LED流水燈、LCD顯示、電壓檢測電機控制SD卡訪問等都是輕松玩轉。

Python應用在在實時嵌入式系統

眾所周知,Python跑在Linux與Windows上都沒問題,諸如Raspberry Pi等單板計算機也不在話下。這么牛?在實時嵌入式系統中是否也有Python的一席之地?答案是肯定的。

Python在實時嵌入式系統開發中的主要應用如下:

設備調試和控制

嵌入式軟件開發過程中,開發人員常常需要分析總線通信量,如USB、SPI或I2C。有的分析僅僅是出于調試目的,但有時則需要控制總線分析儀并發送信息至嵌入式系統。許多總線分析儀和通信工具都有友好的用戶接口,可以用來控制工具。他們通常還提供一種方法來開發腳本,也可以用來控制工具。Python是一種普遍支持的腳本語言,有時則是一些工具的接口,或是用來控制工具。

自動化測試

通過Python控制工具在嵌入式系統中發送和接收消息的能力,使得利用Python構建自動化測試(包括回歸測試)成為可能。Python腳本可以設置嵌入式系統進入不同的狀態,設置配置文件,并測試所有可能的干擾以及系統與外部環境的相互作用。使用Python開發自動化測試的好處是,回歸測試可以開發持續測試并訓練系統。任何的代碼變動導致的bug或不合格的結果都將被實時的檢測出來。

數據分析

通過Web簡單地搜索Python庫,你會發現,有許多免費強大的Python庫都可以用來開發應用程序。Python可以用來接收非常重要的嵌入式系統數據,然后存儲到數據庫或是本地進行分析。開發者還可以使用Python開發實時可視化功能來展現臨界參數,或是存儲這些參數用于后續分析。使用Python進行數據分析的優點之一是當基礎性工作完成之后,新功能的植入會顯得比較簡單。

實時軟件

Python已經證實了自己的強大性和易使用性,甚至發現它是作為一門編程語言進入實時嵌入式系統。是的,嵌入式軟件本身就是用Python寫的而不是C/C++。用于實時軟件最廣泛的Python版本是MicroPython,大多是設計在ARM Cortex-M3/4微控制器上運行。MicroPython并不孤立。Synapse和OpenMV公司在嵌入式系統中既使用MicroPython也使用他們自己的Python port。對MicroPython感興趣的讀者可能對DesignNews(EDN的姐妹機構)的繼續教育課程也感興趣。

學習面向對象編程

Python是一門免費的編程語言,可以跨多個平臺使用,對于學生和非編程人員而言比較簡單。該語言與C語言不同,它也是現代式的,并且可以在自由形態的腳本類型中結構化,或是作為一個復雜的面向對象的體系結構。Python本身也很靈活。甚至還有這種情景:沒有編程經驗的電氣工程師可以利用Python寫出有用的測試腳本或用最少的時間實施電板檢查。

Python的學習曲線并不陡峭,熟悉Python學習曲線的開發人員發現,當你有了其它語言的基礎之后,學習Python比學習任意其他的編程語言都要簡單。出于這些原因,當開發人員看到Python扮演著編程孵化器角色,并吸收其它缺乏經驗的工程師對宜早不宜遲的設計周期做出貢獻時,不應該感到驚訝。

Python+FPGA

據說是有人用Digilent的PYNQ-Z1板卡實現了超強的加速性能。

FPGA的開發都是基于硬件描述語言,從開始的VHDL到現在更為流行的Verilog,軟件應用也從由最開始的匯編語言發展到現在的C/C++實現,這些都是目前為大多數FPGA開發者所熟悉的FPGA發展路程。

然而最近IEEE收錄了一篇關于使用Python開發FPGA應用的論文。

各位教授就基于Python的開發結果與已經存在的基于C語言的開發及手動開發結果進行了比較分析。在論文中,各位教授還對PYNQ開發環境的優缺點進行了闡述:

首先來說,PYNQ應用開發框架是一個開源的開發環境,提供了標準的可以約束芯片I/O引腳的“Overlay”比特流,同時,開發人員可以在此開發環境中,利用Python對FPGA進行快速編程開發。

通過C/C++實現這項研究的一般圖像處理管道性能,以及定制的硬件加速器和Python實現的性能結果,幫助我們更好地理解了Python + FPGA開發環境的性能和能。結果,通過PYNQ實現較c實現速度提高了30倍之多,當Python實現時有更加有效的可用庫時,比如OpenCV,其性能可以增長更多。

Python軟件實現和FPGA性能潛力的結合是一個非常有意義的工作,將會開創出一個類似于樹莓派和Arduino的廣大的開發者社區。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式系統
    +關注

    關注

    41

    文章

    3620

    瀏覽量

    129681
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    84975

原文標題:Python用于硬件開發?文末掃碼送課程

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux嵌入式實時操作系統開發與設計

    Linux嵌入式實時操作系統開發與設計
    發表于 08-04 10:10

    Python開發實時嵌入式系統的作用

    Raspberry Pi等單板計算機上被采用。隨著這種廣泛且不斷增長的采用,人們可能想知道實時嵌入式系統是否存在
    發表于 01-11 18:22

    嵌入式系統實時系統開發的關鍵工藝

    實時系統的關鍵特性,并探討選擇或開發硬件和軟件組件的基礎上開發高效嵌入式
    發表于 07-11 07:53

    嵌入式系統實時系統開發的關鍵工藝是什么?

    實時系統的關鍵特性,并探討選擇或開發硬件和軟件組件的基礎上開發高效嵌入式
    發表于 08-23 06:45

    實時仿真和嵌入式系統開發有什么方法?

    日益激烈的競爭系統開發周期顯得尤為重要,但開發時間與系統安全性、可靠性又有一定沖突,如果
    發表于 03-06 07:20

    Python實時嵌入式系統中有什么作用?

    如何用Python語言去控制單片機?Python實時嵌入式系統中有什么作用?
    發表于 07-14 06:33

    嵌入式系統開發環境主要包括什么

    嵌入式系統開發環境主要包括:集成開發工具交叉編譯器批處理文件makefileLink Script調試工具下載工具其它工具(Offline Tools)模擬器版本控制工具接下來分別講解
    發表于 11-08 06:09

    Python實時嵌入式系統開發中有何作用

    如何用Python語言去控制單片機呢?Python實時嵌入式系統開發中有何作用?
    發表于 11-10 06:42

    Python開發實時嵌入式系統的作用是什么

    Raspberry Pi等單板計算機上被采用。隨著這種廣泛且不斷增長的采用,人們可能想知道實時嵌入式系統是否存在
    發表于 12-14 06:41

    Linux嵌入式實時操作系統開發與設計教程

    Linux嵌入式實時操作系統開發與設計教程 伴隨著科技不斷的日新月異推陳出新。信息家電,手持設備,無線設備等個性化設備的出現,相應的硬件和軟件的迅
    發表于 03-01 14:44 ?74次下載

    Matlab RTW實時仿真與嵌入式系統開發

    Matlab RTW實時仿真與嵌入式系統開發 引 言    日益激烈的競爭
    發表于 11-17 17:13 ?3280次閱讀

    OMAP的嵌入式系統開發

    OMAP的嵌入式系統開發
    發表于 10-31 08:30 ?7次下載
    OMAP的<b class='flag-5'>嵌入式</b><b class='flag-5'>系統開發</b>

    Linux+嵌入式實時操作系統開發與應用

    Linux+嵌入式實時操作系統開發與應用(嵌入式開發項目實戰)-Linux+嵌入式實時操作
    發表于 07-30 13:28 ?21次下載
    Linux+<b class='flag-5'>嵌入式</b><b class='flag-5'>實時</b>操作<b class='flag-5'>系統開發</b>與應用

    (網盤)ARM嵌入式Linux系統開發詳解

    (網盤)ARM嵌入式Linux系統開發詳解(python嵌入式開發 - csdn博客)-(網盤)ARM嵌入式Linux
    發表于 08-04 12:35 ?74次下載
    (網盤)ARM<b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>系統開發</b>詳解

    嵌入式系統開發設計

    嵌入式系統開發設計嵌入式系統設計的主要任務是定義系統的功能、決定
    發表于 11-03 11:06 ?20次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統開發</b>設計
    主站蜘蛛池模板: 亚洲成人高清在线观看 | 午夜国产视频 | 国产在线视频不卡 | 欧美成人亚洲欧美成人 | 伊人久操| 欧美爱爱帝国综合社区 | 人操人碰 | 免费一级视频在线播放 | 男男gay污小黄文 | 中国农村一级片 | 97一本大道波多野吉衣 | 四虎精品影院永久在线播放 | 女人爽到喷水的视频大全在线观看 | 野外啪啪抽搐一进一出 | 性喷潮久久久久久久久 | 国产在线麻豆自在拍91精品 | 又潮又黄的叫床视频 | 天天干夜夜操 | 亚洲亚洲人成网站在线观看 | 久久99精品久久久久久野外 | 亚洲综合一 | 97午夜理伦片在线影院 | 国产伦精品一区二区三区在线观看 | 91极品女神私人尤物在线播放 | 中文字幕色网站 | 日日爽夜夜爽 | 亚洲电影在线播放 | 欧洲成品大片在线播放 | 黄网站在线观看 | 欧美456| 天堂网www中文在线资源 | 亚欧乱色束缚一区二区三区 | 午夜影视啪啪免费体验区入口 | 美女一级一级毛片 | 久青草国产观看在线视频 | yy6080亚洲半夜理论一级毛片 | 欧美黄色片 一级片 | 天天干天天曰天天操 | 美女天天操 | 狼人狠狠干 | 888午夜不卡理论久久 |