QCC51xx系列開發之synergy模塊log輸出控制

本文適用範圍

  
問題/功能描述

如何控制輸出synergy的調試信息


實現方案

藍牙協議更換為synergy後,經驗包需要更新下,先前的技能基本都要淘汰了,後面會有一系列文章對新協議使用做介紹。

本篇主旨是最基本也是使用頻率最高的如何控制調試信息輸出?

由於synergy以獨立軟體包適配到QCC平台,是一個獨立工程角色存在於項目中。和earbud、headset應用是同級。所以它的控制也獨立於應用層需要單獨控制的。

 

1.debug總開關

CSR_LOG_ENABLE,默認是已經打開的,通過編譯代入參數





2.profile log輸出等級設置

使用debug_log_level_synergy全局變量控制,允許調試時實時調整輸出等級。

默認等級SYNERGY_DEFAULT_LOG_LEVEL支持(0··~5)

 

 

 



3.Pydbg接口控制方式

apps1.fw.gbl.debug_log_level_synergy.value=5

value取值依然是0到5,日誌信息依次增多。這樣在調試狀態可以實時控制

 


常見問題

1.MDE中怎麼看不到SynergyLogPrint函數實現?

SynergyLogPrint函數所在源文件,默認沒有加載到工程中,所以MDE中找不到該函數的實現。不影響使用,此函數也無需關注修改

2.MDE中怎麼看不到CsrLogTextRegister2函數實現

原因同上

3.為什麼log列印都是顯示灰色不可用狀態

由於CSR_LOG_ENABLE是在編譯中自動導入,所以在MDE中看不到它的定義,代碼展示時會把相關代碼灰色顯示,容易產生誤解,可以顯式的在代碼中定義,方便代碼瀏覽

4.在調試時是不是可以調用這些接口

在synergy目錄下有文件synergy\tools\pydbg_script_loglevel.py,可以在pydbg調試將其加載上,可以提供一組log輸出控制接口使用。具體可以參看源碼文件注釋

 5.有沒有官方文檔介紹說明

有的可以參考文檔80_13827_1,80-34461-1

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論