<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>
  • 英創主板Python, C#實例之二 SQLite數據庫

     2020-10-16     作者:Emtronix         

      本文主要介紹在英創Linux工控主板(ESM8000、ESM7000和ESM6800H)上,采用Python和C#編程,實現SQLite數據庫訪問的方法。數據庫為應用程序展現的是純粹的數據,更便于像Python、C#這樣的高級語言處理。而數據的獲取則通過Linux系統的后端程序(Backend),采用效率更高的C來實現,以滿足數據采集過程中的協議需求和時序需求。從系統程序架構上看,SQLite數據庫把上層的Python, C#應用程序與后端的C程序連接在一起。


      本文的Python和C#實例,均采用Visual Studio Code作為基本的編程工具,其代碼可在主板 + ESMARC評估底板上運行,其基本的硬件環境采用采用ESM8000工控主板 + 評估底板構成,如下圖所示:


    esm8000套件側面2.png


      本文實例中SQLite數據庫包含以下信息:


    無標題文檔

    IDNameValue簡要說明
    INTTEXTTEXT字段數據類型
    0refresh-數據更新周期,ms單位
    1cpu-temperature-CPU芯片溫度,℃單位
    2cpu-payload-CPU當前負載率,包括各個核的負載率
    3eth0-網口信息,包括名稱、類型(RJ45、WiFi、4G等)、IP參數、連接狀態(down、up、信號強度)
    4eth1-
    5eth2-
    6-更多網口信息


      SQLite數據庫文件保存在”/mnt/mmc/sysinfo.db”。


      系統的程序架構由客戶應用程序、數據庫、后端程序組成,它們與硬件環境的關系如下圖所示:


    英創Linux主板的Python, C#實例之二 SQLite數據庫.png


      對簡單的接口操作,Python,C#可通過各自的通用IO庫來實現,如在《英創Linux主板的Python, C#實例簡介之一》一文中介紹的那樣。若接口通訊需要滿足特定的協議,或有特殊的實時性要求,則可采用C編程的后端程序來實現,訪問硬件獲得所需數據,更新至SQLite數據庫中。上層的Python,C#應用程序則直接訪問數據庫,無需關心數據獲取過程的細節。


    Python應用程序


      應用程序負載創建SQLite數據庫。


    英創Linux主板的Python, C#實例之二 SQLite數據庫.png


    C#應用程序


      創建工程后,需要從NuGet添加Microsoft.Data.SQLite類庫。


    英創Linux主板的Python, C#實例之二 SQLite數據庫.png


    英創Linux主板的Python, C#實例之二 SQLite數據庫.png


    后端C程序


      后端C程序打開已創建的SQLite數據庫,根據更新率,周期性地把CPU和網絡端口信息提交至數據庫。


      后端C程序源碼test_emdb.c可點擊下載,對不同主板需要相應的GCC編譯工具如下:


    主板類型GCC
    ESM6800cortexa7hf-neon-poky-linux-gnueabi
    ESM7000cortexa7hf-neon-poky-linux-gnueabi
    ESM6802cortexa9hf-neon-poky-linux-gnueabi
    ESM8000aarch64-poky-linux


      相對說來,后端C程序比上層的Python,C#程序要復雜得多,這也正好體現了Python,C#的高效簡潔的特性。

    国产亚洲精品美女久久久| 国产精品亚洲а∨无码播放| 亚洲热线99精品视频| 国产精品网址你懂的| 国产叼嘿久久精品久久| 亚洲国产精品专区| 国产精品亚洲专区一区| 亚洲国产综合精品中文第一区| 欧洲精品免费一区二区三区| 国产精品国色综合久久| 国产精品情侣自拍| 无码国产精品一区二区免费式芒果| 精品72久久久久久久中文字幕 | 777午夜精品久久av蜜臀| 无码国内精品人妻少妇蜜桃视频| 国产成人精品曰本亚洲79ren| 亚洲精品蜜夜内射| 国产精品亚洲综合一区在线观看 | 三上悠亚日韩精品| 欧美日韩精品一区二区在线观看| 国产伦精品免编号公布| 成人精品一区久久久久| 99无码精品二区在线视频| 国产乱子伦精品无码专区| 亚洲精品无码中文久久字幕| 国产乱码精品一区二区三区中文| 国产九九久久99精品影院| re99热久久这里只有精品| 久久精品国产亚洲AV天海翼| 久久91精品国产91久久小草 | 国产亚洲精品资源在线26u| 国产精品高清久久久久久久| 亚洲精品一区二区三区四区乱码 | 麻豆国产精品无码视频| 国产精品美女久久久m| 日韩美女18网站久久精品| 亚洲精品无码久久久久APP| 精品一区二区三区波多野结衣| 亚洲精品成人片在线播放| 麻豆精品久久久一区二区| 精品亚洲一区二区三区在线播放 |