<strike id="kiyse"></strike>
  • <tr id="kiyse"></tr>
  • <strike id="kiyse"></strike><samp id="kiyse"><tbody id="kiyse"></tbody></samp>
    <strike id="kiyse"><s id="kiyse"></s></strike>
    <tr id="kiyse"></tr>
    <noframes id="kiyse"><code id="kiyse"></code></noframes>
    <th id="kiyse"></th>
    <samp id="kiyse"></samp>
  • <th id="kiyse"><s id="kiyse"></s></th>
  • 英創(chuàng)Linux主板Python, C#實(shí)例之四 CAN總線

     2020-10-27     作者:Emtronix         

      本文主要介紹在英創(chuàng)Linux工控主板(ESM8000、ESM7000和ESM6800H)上,采用Python和C#編程,實(shí)現(xiàn)對(duì)CAN總線接口的訪問(wèn)。Python和C#實(shí)例,均采用Visual Studio Code作為基本的編程工具,其代碼可在主板 + ESMARC評(píng)估底板上運(yùn)行,其基本的硬件環(huán)境采用采用ESM8000工控主板 + 評(píng)估底板構(gòu)成,如下圖所示:


    英創(chuàng)Linux主板的Python, C#實(shí)例之四 CAN總線.png


      在Linux平臺(tái),CAN總線接口設(shè)備已納入網(wǎng)絡(luò)的socket架構(gòu)。英創(chuàng)的Linux主板有兩路CAN接口,網(wǎng)絡(luò)名稱為”can0”和”can1”。在本文后面的實(shí)例代碼中使用can0接口,評(píng)估底板上有相應(yīng)的CAN驅(qū)動(dòng)電路,與開(kāi)發(fā)主機(jī)的CAN適配器連接,就可進(jìn)行測(cè)試了。


      可選擇任何一款CAN調(diào)試模塊,如PCAN,作為CAN總線測(cè)試的對(duì)端,通過(guò)其APP可看到CAN數(shù)據(jù)幀的收發(fā)情況。


    Python應(yīng)用實(shí)例


      Python支持can接口操作庫(kù)文件Python-CAN已經(jīng)安裝在ESM8000板卡文件系統(tǒng)中,調(diào)用import can 即可調(diào)用API函數(shù)對(duì)于can接口進(jìn)行讀寫操作。對(duì)于socketcan的操作模式,一般需要調(diào)用ip 命令來(lái)激活can接口,并設(shè)置相應(yīng)的波特率。

      #>ip link set can0 type can bitrate 2500000

      #>ip link set can0 up


      Python CAN實(shí)例代碼如下:


    英創(chuàng)Linux主板的Python, C#實(shí)例之四 CAN總線.png


    C#應(yīng)用實(shí)例


      C#的實(shí)例是來(lái)自第三方的開(kāi)源案例:https://github.com/jormenjanssen/netcore-can-example。實(shí)例通過(guò)C#的InteropServices機(jī)制,直接調(diào)用Linux socket相關(guān)函數(shù),并不依賴于libsocketcan庫(kù)。目前還只有.NETCore3.1能支持該實(shí)例的正常運(yùn)行,.NET5.0的預(yù)發(fā)行版都還不能正常工作,希望在計(jì)劃的2020年11月的正式發(fā)布版中,微軟能解決System.Net.Sockets庫(kù)中的相關(guān)問(wèn)題。


      運(yùn)行程序前,需要通過(guò)Linux的ip link命令,讓can0接口up。具體操作參考Python實(shí)例中的說(shuō)明。


      鑒于本程序代碼較多(包含6個(gè)C#文件),僅例出main函數(shù)。感興趣的客戶可與英創(chuàng)技術(shù)部門聯(lián)系,獲取完整代碼。


    英創(chuàng)Linux主板的Python, C#實(shí)例之四 CAN總線.png

    亚洲精品一二三区| 日本精品视频在线观看| 无码8090精品久久一区| 任你躁在线精品免费| 精品国产无限资源免费观看| 日韩精品一区二区三区视频 | 国产精品无码无卡在线观看久| 日本精品久久久久影院日本| 久久久久亚洲精品日久生情| 热99re久久精品精品免费| 久久精品丝袜高跟鞋| 精品伊人久久大香线蕉网站| 精品国产福利在线观看一区| 亚洲精品夜夜夜妓女网| 91麻豆精品国产一级| 亚洲国产精品成人| 精品一久久香蕉国产二月| 久久精品一区二区影院| 久久福利资源国产精品999| 久久亚洲中文字幕精品一区四| 亚洲精品人成电影网| 亚洲精品无码人妻无码| 久久国产精品久久国产精品| 国产精品久久久精品三级| 亚洲欧洲精品在线| 国产成人精品日本亚洲专区61| 久久亚洲精品11p| 午夜精品久久久久久久| 国产精品九九久久免费视频| 久久精品视频免费播放| 国内精品免费久久影院| 在线精品亚洲一区二区小说| 麻豆国产精品入口免费观看| 91午夜精品亚洲一区二区三区 | 一区二区三区精品| 无码国内精品久久人妻麻豆按摩| 一本色道久久综合亚洲精品| 国产精品特级露脸AV毛片| 97久久久久人妻精品专区| 中文字幕一精品亚洲无线一区| 国产精品成人一区无码|