1. <delect id="hbm07"><option id="hbm07"></option></delect><s id="hbm07"><option id="hbm07"><bdo id="hbm07"></bdo></option></s>
    <s id="hbm07"></s>

      1. <p id="hbm07"><option id="hbm07"><bdo id="hbm07"></bdo></option></p>

        英創Linux主板上運行Python, C#應用程序

         2020-9-24     作者:Emtronix    

          英創公司的工控主板支持Linux和Windows CE兩種軟件平臺。隨著Linux系統的不斷發展完善,它已成為嵌入式系統開發的主流平臺。傳統的嵌入式Linux平臺的應用程序均采用C/C++語言來開發,包括Qt本質上都是C/C++的。C/C++屬于較為底層的語言,相對說來入門門檻較高,因此能熟練掌握C/C++編程技術的工程師也就變成了“稀缺資源”。而在實際應用中,一旦產品目標確定,都需要盡快完成開發,以最短的時間把產品投入市場。這時C/C++編程的固有難度,就往往成為整個產品開發的瓶頸,延緩客戶經營目標的實現。


          針對客戶在產品開發中的C/C++編程問題,結合當前多種編程語言的發展情況,英創將在其主要的Linux平臺主板型號ESM8000、ESM7000和ESM6800H上,配置Python和C#兩種語言的運行環境,即支持客戶采用標準Python或C#來開發應用程序。相對C/C++,Python和C#是更為高級、安全的編程語言,因為更接近人的自然語言,因此學習難度大大降低,或者說入門門檻很低。Python幾乎成Linux系統的主流語言,在計算機應用的方方面面都有廣泛的使用,在高校也大量教授,這讓企業很容易獲得Python工程師。而C#則在過去多年的工業PC應用中,受到廣大從事工業控制的工程師的認可,包括大量使用英創WinCE主板的老客戶,他們可通過C#自然過渡到Linux平臺的應用程序開發來。


        Python的情況


          在ESM8000、ESM7000和ESM6800系列主板上的Python運行環境,是以yocto項目的Python 3為基礎,并針對主板的各個接口,包括網絡、串口、GPIO、SPI、I2C等,配置了相關接口的class庫,并通過了基本測試。


          客戶可在Linux開發主機上安裝微軟的開源工具Visual Studio Code,并在VS Code中安裝Python插件,就構成了基本的Python應用程序開發環境。為了提高程序編寫過程的效率,針對各個接口,還需要安裝以下class庫:

          串口:pyserial

          GPIO、SPI、I2C:python-periphery


          在Linux開發主機上開發均可用pip命令進行安裝:

          #>pip install pyserial

          #>pip install python-periphery


          安裝這些插件的目的是為了編寫Python代碼有在線幫助以及函數聯想功能,提高編程效率,但與實際應用無關。在英創的主板上已配置安裝的對應Python庫,將支持實際的程序運行。


          以上就構成了基本的Python應用程序開發環境。開發流程大致為:


          1、為即將開發的應用程序創建一個目錄(對應一個App project),并用VS Code打開這個目錄,例如:

          #>mkdir step1_file

          #>cd step1_file

          #>code .   

          2、在VS Code的下添加相應的文件(如:step1_file.py),并在代碼窗口編寫代碼。


          代碼編寫完成后,即可直接在英創的板卡上運行。如:

          #root@ESM8000>python3 step1_file.py

          利用Python進行嵌入式開發,其優點是主機開發環境易于搭建,僅需要一個編輯代碼的環境即可,無需搭建交叉編譯的環境,客戶易于上手,方便盡快完成應用程序的開發。采用Python編程的另一個重要優點是,總是可以找到成熟穩定的功能庫,來滿足實際應用需求,這必然大大加快應用程序的開發。


        C#的情況


          這兩年微軟以開源模式,推出了跨平臺的.NET Core環境,可以支持在Linux平臺上的console類型的C#應用程序的運行。目前已發布.NET 5 rc1(release candidate 1),預計2020年底前會有.NET 5正式版發布。在ESM8000、ESM7000和ESM6800系列主板上已配置了.NET 5核心系統,以及針對各個應用接口,包括網絡、串口、GPIO、SPI、I2C等,的class庫,并通過了基本測試。


          客戶可在Windows或Linux開發主機上安裝微軟的開源工具Visual Studio Code,并在VS Code中安裝C#插件,就構成了基本的C#應用程序開發環境。C#應用程序基本開發流程大致為


          1、為即將開發的應用程序創建一個目錄(對應一個App project),并用VS Code打開這個目錄。

          2、在VS Code的Terminal窗口執行”dotnet new console”,創建一個C# Project。

          3、在VS Code的Terminal窗口執行”dotnet add package …”,來添加所需要的各種接口、計算類庫,dotnet會自動從微軟NuGet網站中下載這些庫,并添加到本工程項目中。

          4、在VS Code的代碼窗口編寫應用程序代碼。這是應用程序開發的主體。

          5、在VS Code的Terminal窗口執行”dotnet publish –r linux-arm …”,編譯并構成針對具體目標運行環境的代碼。ESM7000和ESM6800的運行架構是linux-arm,而ESM8000則為linux-arm64。


          通過網絡掛載,是Linux系統最通用的調試方法。在Linux主機的NFS服務器通常都是缺省配置的,只要在目標板(ESM8000、ESM7000或EM6800H)上運行mount命令,即可完成掛載。對Windows開發主機,可運行開源的WinNFSd,來啟動一個NFS服務器,就可在英創主板上掛載Windows主機,并運行上面的應用程序了。


          相比在WinCE平臺上應用開發,轉移到Linux平臺后,客戶獲得的主要利益,是能充分利用Linux平臺對新技術、新功能的大量成果,典型的有:

          ● 性能穩定的高速WiFi通訊,且成本低廉;

          ● 高速PCIe接口的應用,包括NVMe大容量高速存儲等;

          ● 基于USB的低成本接口擴展,如Audio播放、多路網口等;


        顯示


          目前在ESM8000、ESM7000和ESM6800H上配置的Python和C#運行環境,還不能支持圖形顯示。對需要顯示的應用,可利用主板上豐富的串口資源,采用串口屏方案來彌補。串口屏成本低廉,形式多樣,很多都帶有觸摸屏功能,因此可很容易滿足大部分工業控制的應用需求。對需要更好用戶體驗的人機交互界面(HMI)的應用,估計還是需要采用Qt/C/C++來開發應用程序。


        我們能做什么?


          在客戶采用Python,C#開發應用程序的過程中,我們為客戶提供的服務主要在以下幾個方面:

          1、協助客戶配置其開發主機,對C#編程來說,可選擇Windows10或Linux Ubuntu;對Python編程來說,則推薦Linux Ubuntu。代碼編輯工具推薦Visual Studio Code。這是一款開源的IDE環境,可支持Python和.NET C#的程序開發。

          2、根據客戶在開發過程中的一般性需求,幫助尋找合適的功能class庫,并進行可用性測試,加快客戶的開發進度。

          3、對具有明確市場前景的特殊需求,通常涉及接口的實時應用,可采用C/C++來開發后端(back end)類庫的方式來實現,使客戶應用程序可保持一致的Python或C#形式,便于程序的維護升級。

          4、為了加快客戶編程入門,分別以Python和C#提供了2套功能相同的Demo程序,每套Demo由9個簡單程序組成,介紹各個接口的應用,以及多線程、數據庫的應用,后續會有更多的文章介紹這些Demo實例。

        酥酥影院18禁止-日本三级吹潮在线观看-国产成人亚洲日韩欧美-无码中文天天av天天爽-欧美人与动牲交A-一本之道高清在线不卡视频-久久99热只有频精品 2021年国产精品青青草原-三级香港三级韩国三级-又色又爽又黄的视频还免费-亚洲老熟女-特级婬片女子高清视频-国产午夜福利1000集-无码AV无码天堂资源网 在线播放国产不卡免费视频-国第一产在线精品亚洲区-人妻少妇久久中文字幕-成 人影片 毛片免费观看-亚洲国产在线精品一区在线观看-亚洲精品国产第一区二区 2021超清国产小视频-亚洲城人在线视频-国产乡下三级-人妻少妇精品无码专区无码-国产在线视频一区二区三区-2021中文一卡二卡三卡-国产在线精品亚洲一区 2021超清国产小视频-亚洲城人在线视频-国产乡下三级-人妻少妇精品无码专区无码-国产在线视频一区二区三区-2021中文一卡二卡三卡-国产在线精品亚洲一区 国产 日产 欧美最新-人妻少妇精品专区性色av-欧美性色av性色在线观看-日本三级韩国-国产真实迷奷学生在线-国产一级特黄高清大片自怕-黑粗硬大欧美在线视频 国产国产人免费人成免费视频-日本三级香港三级人妇电影99-人妻熟女精品视频专区-色综合久久无码中文字幕-人妻丰满熟妇AV无码区影片资源-欧美av色爱综合网欧美av 亚洲va不卡在线-日本A级视频在线播放-亚洲国产精品无码中文字幕-久久无码高潮喷水-欧美老熟妇喷水-丰满巨臀大屁股BBw-JAPANESE55丰满熟妇-亚洲欧美日韩高清一区 久久爱在线播放视频-免费播放观看在线视频-卡通动漫图片-中文字幕熟女人妻一区二区-AV无码AV在线A∨天堂-欧美国产日产一区二区-人妻无码-人人澡人人播色屋av
        2021最新国产在线不卡A-国产精品专区第5页-亚洲图揄拍自拍另类图片-无码专区国产精品-欧美特黄三级免费视频-特级毛片A片全部免费-国产在线视精品在亚洲 免费A级毛片无码A∨-子夜精品视频在线-国产免费精品美女视频-免费人妻少妇精品-日韩人妻无码潮喷中文视频在线-欧美老妇牲交视频-无码少妇一级AV片在线观看 国产好大好硬好爽免费视频-香港三级片电影-免费韩伦影院在线观看-日本熟妇人妻高清无码视频-国产一级伦奷毛片未删减版-国产学生a片-AV爆乳无码专区-浓毛少妇a片 2021超清国产小视频-亚洲城人在线视频-国产乡下三级-人妻少妇精品无码专区无码-国产在线视频一区二区三区-2021中文一卡二卡三卡-国产在线精品亚洲一区 国产精品永久免费-单亲乱L仑视频在线观看-无码 人妻 在线视频-被公侵犯玩弄漂亮人妻-女人高潮抽搐潮.I喷视频-国产成年无码AV片在线观看-亚洲日本无码一区二区 久久爱视频-青青青国产费观看-成年片黄网站色大全男女-国产高清在线看AV片-av无码播放一级毛片免费-97人人超碰国产精品最新-亚洲乱码中文字幕综合-中国丰满熟妇av 120秒试看无码体验区-99国产免费-日本制服美女-中文字幕乱码免费-日韩成视频在线精品-久久婷综合五月-永久免费AV无码网站打屁股-国模无码视频一区 一个人看免费视频WWW-日本三级成本人网站-日本老熟妇无码色视频网站-AV天堂中AV世界中文在线播放-波多野结衣一区二区三区AV高清-成年美女黄网站色奶头大全 亚洲精品熟女国产-五月婷之久久综合丝袜美腿-女神高潮喷水正在播放-少妇人妻系列无码专区视频-亚洲人成网站18禁止-国产一级A片免费无码-av无码在线