內容簡介
在默認的headset工程中,當系統進行關機的時候,會讓芯片進入到dormant狀態,本文介紹如何在關機后讓芯片進入到Off狀態。
測試工具
MDE:MDE_WIN_2.8.0.37_x64
Toolkit:ADK Toolkit 1.2.16.21_x64
QACT:NULL
Bluesuite:NULL
Hardware:Qualcomm QCC3084
Software:adk-src-1-0_qtil_standard_oem_qcc518x-qcc308x,ADK-23.1-CS1-r00593.1 headset
Here we go
分析
從芯片的datasheet中可以看到,芯片的狀態有No Power state、Active state、Shallow Sleep state、Deep Sleep state、Dormant state和Off state,除了No Power state以外,其他的狀態都是芯片通電時正常的工作狀態。這里我們主要看Dormant和Off狀態:
從以上的描述很容易發現,Off state比Dormant state功耗更低,隨之而來的代價就是在Off狀態下只能通過SYS_CTRL和VCHG兩個引腳才能喚醒。但是為了能讓耳機更省電,很多產品都會選擇讓其進入Off狀態。
高通默認的headset程序在關機后進入的的Dormant狀態,這個可以通過實際測量關機后的功耗得到。
經過分析代碼后log,我們可以得知在進入最后的關機狀態時,程序會運行到shutdown_table的位置:
在finalPowerOffSleepStep函數中可以看到調用了進入dormant的接口函數:
這也印證了默認程序并沒有進入到Off狀態。
解決方法
要讓程序關機后進入到Off狀態也很簡單,只要修改finalPowerOffSleepStep里面的調用(用appPowerDoPowerOff替換appPowerEnterDormantMode)即可:
這樣修改后,沒記錯的話會讓芯片在關機狀態下的功耗達到微安級別。
審核編輯:劉清
-
sys
+關注
關注
0文章
9瀏覽量
9165 -
SRC
+關注
關注
0文章
60瀏覽量
17999
原文標題:如何讓QCC517x518x的headset工程在關機后進入到Off state
文章出處:【微信號:TalkBT,微信公眾號:藍牙】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論