1. debug_all_en巨集開關
#define debug_all_en
#undef debug_all_en
//#define debug_all_en
2. dev_debug_printf()和dev_debug_printformat()函式的定義
void dev_debug_printf(const s8 *fmt,...)
dev_com_write(debug_port_no, (u8 *)string, length);
va_end(ap); //結束可變引數的獲取
} /*用於列印16進製制數*/
void dev_debug_printformat(u8 *str, u8 *wbuf, s32 wlen)
for(i=0; i3. debug_all_en巨集開關控制dev_debug_printf()函式的宣告
#ifdef debug_all_en
void dev_debug_printf(const s8 *fmt,...);
void dev_debug_printformat(u8 *str, u8 *wbuf, s32 wlen);
#else
#define dev_debug_printf(...)
#define dev_debug_printformat(...)
#endif
4. 定義自定義模組的除錯開關
#ifdef debug_sm_en //自定義
#define sm_debug(format,...) dev_debug_printf("%s(%d):"format, __func__, __line__, ##__va_args__)
#define sm_debughex dev_debug_printformat
#else
#define sm_debug(...)
#define sm_debughex(...)
#endif
#ifdef debug_sm_en
#define sm_debug dev_debug_printf
#define sm_debughex dev_debug_printformat
#else
#define sm_debug(...)
#define sm_debughex(...)
#endif
debug_all_en巨集定義控制了dev_debug_printf()函式的宣告。
測試程式是除錯的重要手段,掌握好測試程式的編寫非常重要,對除錯過程會有很大的幫助。
以dev_icc_test()函式為例,模板**如下所示:
void dev_icc_test(s32 nslot)
/*判斷是否有按鍵按下*/
if(dev_keypad_read(&key) > 0) //有按鍵按下
else
break;
case digital2:
ret = dev_icc_reset(nslot, rbuf);
dev_debug_printf("ret=%d\r\n", ret);
if(ret > 0)
break;
case esc:
*** = 1; //重新顯示選單
//return; //不讓退出
break;}}
}}
5.當無lcd時,可以修改disp_type的巨集定義,改為串列埠顯示,如下所示:
#define disp_type disp_com //disp_physic
6.硬體除錯時,要注意機器、儀器的多樣性,否則很容易陷入死迴圈;
7.使用硬體管腳來拉高、拉低,在示波器中測量時間,來做除錯用;
8.串列埠列印除錯資訊時,如果時間太短,串列埠工具不能顯示出時間,可以在程式中列印timeid,來
計算時間差;
vc 除錯資訊輸出 列印除錯資訊
1.cdumpcontext 該類沒有基類。這個類支援面向流的診斷輸出,以人能夠閱讀的文字。該類過載了 操作符。afxdump是乙個預宣告的cdumpcontext物件,可以方便使用。該物件只在mfc的debug版中有效。可以將調式資訊輸出到除錯輸出視窗或除錯終端。example for afxdu...
Logcat列印除錯資訊
android logcat除錯中的v d i w e的分別代表什麼?log.v 黑色 verbose info log.d 藍色 debug info log.i 綠色 info log.w 橙色 warn log.e 紅色 error info 斷言 的除錯顏色為黑色的,任何訊息都會輸出,這裡的...
串列埠列印除錯資訊(乾貨)
上 這裡用到的是hal庫,標準庫改以下函式就行。include intfputc int ch,file f hal uart transmit huart1,temp,1,5 huart1需要根據實際配置 return ch int fgetc file f 因為上面這段 我有經常使用到,所以可以...