chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內(nèi)不再提示

Python在實時嵌入式系統(tǒng)開發(fā)中的主要應用

STM32嵌入式開發(fā) ? 來源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-09-23 10:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

如今在硬件圈同樣非常關(guān)注Python

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

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

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

用Python語言開發(fā)STM32單片機

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

Python應用在在實時嵌入式系統(tǒng)

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

Python在實時嵌入式系統(tǒng)開發(fā)中的主要應用如下:

設(shè)備調(diào)試和控制

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

自動化測試

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

數(shù)據(jù)分析

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

實時軟件

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

學習面向?qū)ο缶幊?/p>

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

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

Python+FPGA?

據(jù)說是有人用Digilent的PYNQ-Z1板卡實現(xiàn)了超強的加速性能。

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

然而最近IEEE收錄了一篇關(guān)于使用Python開發(fā)FPGA應用的論文。

各位教授就基于Python的開發(fā)結(jié)果與已經(jīng)存在的基于C語言的開發(fā)及手動開發(fā)結(jié)果進行了比較分析。在論文中,各位教授還對PYNQ開發(fā)環(huán)境的優(yōu)缺點進行了闡述:

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

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

Python軟件實現(xiàn)和FPGA性能潛力的結(jié)合是一個非常有意義的工作,將會開創(chuàng)出一個類似于樹莓派和Arduino的廣大的開發(fā)者社區(qū)。

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

    關(guān)注

    41

    文章

    3683

    瀏覽量

    131399
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86760

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Linux嵌入式實時操作系統(tǒng)開發(fā)與設(shè)計

    Linux嵌入式實時操作系統(tǒng)開發(fā)與設(shè)計
    發(fā)表于 08-04 10:10

    Python開發(fā)實時嵌入式系統(tǒng)的作用

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

    嵌入式系統(tǒng)實時系統(tǒng)開發(fā)的關(guān)鍵工藝

    實時系統(tǒng)的關(guān)鍵特性,并探討選擇或開發(fā)硬件和軟件組件的基礎(chǔ)上開發(fā)高效嵌入式
    發(fā)表于 07-11 07:53

    嵌入式系統(tǒng)實時系統(tǒng)開發(fā)的關(guān)鍵工藝是什么?

    實時系統(tǒng)的關(guān)鍵特性,并探討選擇或開發(fā)硬件和軟件組件的基礎(chǔ)上開發(fā)高效嵌入式
    發(fā)表于 08-23 06:45

    實時仿真和嵌入式系統(tǒng)開發(fā)有什么方法?

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

    Python實時嵌入式系統(tǒng)中有什么作用?

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

    Python實時嵌入式系統(tǒng)開發(fā)中有何作用

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

    Python開發(fā)實時嵌入式系統(tǒng)的作用是什么

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

    Linux嵌入式實時操作系統(tǒng)開發(fā)與設(shè)計教程

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

    Matlab RTW實時仿真與嵌入式系統(tǒng)開發(fā)

    Matlab RTW實時仿真與嵌入式系統(tǒng)開發(fā) 引 言    日益激烈的競爭,
    發(fā)表于 11-17 17:13 ?3414次閱讀

    OMAP的嵌入式系統(tǒng)開發(fā)

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

    Linux+嵌入式實時操作系統(tǒng)開發(fā)與應用

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

    (網(wǎng)盤)ARM嵌入式Linux系統(tǒng)開發(fā)詳解

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

    嵌入式系統(tǒng)開發(fā)設(shè)計

    嵌入式系統(tǒng)開發(fā)設(shè)計嵌入式系統(tǒng)設(shè)計的主要任務是定義系統(tǒng)的功能、決定
    發(fā)表于 11-03 11:06 ?20次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)開發(fā)</b>設(shè)計

    Python嵌入式系統(tǒng)的應用場景

    你想把你的職業(yè)生涯提升到一個新的水平?Python嵌入式系統(tǒng)中正在成為一股不可缺少的新力量。盡管傳統(tǒng)上嵌入式開發(fā)更多地依賴于C和C++語言
    的頭像 發(fā)表于 03-19 14:10 ?714次閱讀