亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SylixOS調試方法詳解——綜合案例分析

發布時間:2020-07-23 20:00:04 來源:網絡 閱讀:465 作者:Esc120 欄目:軟件技術

1. SylixOS調試方法介紹

SylixOS實現了一個功能強大的調試stub(樁),可在設備或模擬器上在線調試應用程序,RealEvo-IDE也提供配套的調試插件。目前RealEvo-IDE既支持自動推送調試、也支持傳統的手動啟動gdbserver的調試方式。在官方公布的使用手冊中沒有詳細寫出在日常開發中非常實用的幾種調試方式,本文主要介紹一個由底層到應用層的綜合調試方法。

2. SylixOS綜合案例調試步驟詳解

2.1      綜合案例演示demo

綜合案例demo包括三個部分:user_app(應用層)、calc_lib(中間層動態庫)、pwm_driver(底層驅動模塊)。本篇文檔通過介紹應用層對TTY接口(pwm_driver )和calc_lib的調用來全面的展示系統的使用方式。user_app主要是打開PWM設備并調用動態庫中的算法,代碼如程序清單 21所示;calc_lib是一個動態庫,代碼如程序清單 22所示;程序pwm_driver是一個TTY設備接口函數。

程序清單  21  user_app代碼

#include <stdio.h>

 

int main (int argc, char **argv)

{

   int  icalc_result;

     /*

      *  打開PWM設備

      */

   int  pwm_fd = open("/dev/pwm/pwm", O_RDWR);

 

     /*

      *  打開設置步進速度

      */

   ioctl(pwm_fd,1,2);

 

   while  (1) {

      /*

       *  獲取算法結果

       */

      icalc_result  = lib_func (10);

      malloc(100);

 

      /*

       *  控制PWM輸出

       */

      write(pwm_fd,  &icalc_result, sizeof(icalc_result));

 

      sleep(1);

   }

 

     return  (0);

}

 

程序清單  22 calc_lib代碼

#include <stdio.h>

int lib_func (int ivalue)

{

   int  iresult = 0;

   iresult  += 100;

     return iresult;

}

 

2.2      中間層calc_lib(動態庫)調用

右擊應用程序,選擇Properties,將動態庫添加至應用程序中并進行關聯,如圖 21所示。

SylixOS調試方法詳解——綜合案例分析                            

圖 21  添加動態庫

關聯后將user_app(應用層程序)、calc_lib(中間層動態庫)、pwm_driver(底層驅動模塊)部署到模擬器上。

2.3      加載驅動模塊(pwm_driver)

在“ /lib/modules ”下查看驅動模塊是否上傳成功,如圖 22所示。

SylixOS調試方法詳解——綜合案例分析

圖 22  驅動模塊上傳成功

用“modulereg”指令加載驅動模塊,如圖 23所示。

SylixOS調試方法詳解——綜合案例分析

圖 23  加載驅動模塊

運行應用程序,結果如圖 24所示,調用了動態庫中的算法。

SylixOS調試方法詳解——綜合案例分析

圖 24  應用程序運行結果

3. 總結

在SylixOS中可以使用多種調試方式進行相關調試,根據實際情況對程序進行調試,本節主要通過一個完整的工程文件來描述從從應用層到底層的基本使用流程。

4. 參考資料

《SylixOS應用程序開發手冊》

《RealEvo-IDE使用手冊》

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苍溪县| 司法| 金乡县| 伊春市| 横峰县| 新竹县| 霍林郭勒市| 阿合奇县| 巩留县| 阳谷县| 石嘴山市| 新昌县| 韶关市| 潼南县| 道孚县| 华池县| 察雅县| 天峻县| 麻栗坡县| 灵丘县| 锦州市| 峡江县| 正阳县| 溧水县| 安龙县| 惠水县| 罗田县| 西乌珠穆沁旗| 莱州市| 庆元县| 花莲市| 拉萨市| 潮安县| 四平市| 隆安县| 阳东县| 大渡口区| 吉林省| 石河子市| 莱西市| 上思县|