Android驅動除錯利器Busybox之初體驗

2021-09-22 17:09:22 字數 940 閱讀 7394

工欲善其事必先利其器,之前做wince開發時,經常寫一些小工具以提高開發除錯的效率,如wince驅動除錯助手、wince串列埠除錯助手、wince6.0暫存器訪問工具、wince遠端桌面助手和s3c2410 iic除錯助手等,雖然有些功能不算完善,但在實際工作中還是發揮了一些作用。現在搞android開發,基本不用自己造輪子了,linux下有瑞士軍刀美稱的busybox就足以處理大多數問題。

今天就以測試乙個字元裝置驅動為例簡單介紹下busybox的使用。

本例中主要使用了busybox的hexdump的功能,將從字元裝置中讀取的資料按照16進製制資料幀的方式顯示出來,具體過程請看下圖。

除錯過程中使用到的命令如下:

adb remount

adb push e:\busybox /system/bin

busybox --install /system/xbin

cat /dev/bonovo_key | hexdump -v -e '

"[" 6/1 "%02x " "]\n"

'echo -n "

\x22\x01\x12\x02\x00\x00

" > /dev/bonovo_key

echo -n "

\x22\x00\x12\x02\x00\x00

" > /dev/bonovo_key

說明:bonovo_key是乙個字元裝置,專門處理按鍵資訊,支援從串列埠裝置獲取遠端mcu發過來的按鍵資訊,也可以由上層應用寫入按鍵資訊,然後統一上報給按鍵處理的應用。利用echo、cat,配合busybox的hexdump,不用自己編寫測試應用就可以驗證驅動,真爽!本例只是牛刀小試,busybox更多強大功能有待發掘。不怕做不到,就怕想不到,各位看官發揮你們的想象力吧!

除錯利器 PHP debug backtrace

可能大家都知道,php中有乙個函式叫debug backtrace,它可以回溯跟蹤函式的呼叫資訊,可以說是乙個除錯利器。好,來複習一下。01one 02 03functionone 06 07functiontwo 10 11functionthree 14 15 16輸出 17array 18 1...

gdb 除錯利器

gdb是乙個由gnu開源組織公布的 unix linux作業系統下的 基於命令列的 功能強大的程式除錯工具。對於一名linux下工作的c 程式猿,gdb是不可缺少的工具 對c c 程式的除錯。須要在編譯前就加上 g選項 g g hello.cpp o hello 除錯可執行檔案 gdb progra...

專案開發除錯利器

在專案開發過程中避免不了除錯程式 我們除錯程式有很多辦法 借助除錯工具,打斷點,列印日誌等等 今天介紹一種最常用的除錯辦法 列印日誌 我們都會使用系統的方法 nslog 日誌輸出函式 我們應該知道 nslog 在我們程式執行過程中是很消耗效能的 因此我們應該適當使用nslog 如果在我們程式發布階段...