A:可查看機器里/data/vendor/audiohal/audio_param/路徑下PlaybackVolAna_AudioParam.xml文件:
Default,Others,SPK參數設置的param_id對應的值為平臺數字增益設置,18對應平臺設置0db,17對應1db。param_id每減小1對應平臺數字增益增大1db。
注意:如果用MTK UI在線修改過平臺增益,此xml里設置的增益會被覆蓋掉。即兩種設置方式沖突,只可選用一種方式修改平臺增益。
A:整機懸空完成SAR Sensor校準后,各通道的diff值一般穩定在±300以內,存在部分機器在校準后出現diff值很大(10000+)或者靜置一段時間diff值變大,遠超觸發閾值導致誤觸發,針對該情況建議進行如下排查:
1、確認異常通道是否有貼TVS管,如有貼TVS管,摘掉TVS管后看是否依舊有該問題
2、確認異常通道接的天線是否有Tuner,如果有Tuner,需確認Tuner接天線的公共端是否有加對地電感
3、逐段斷開異常通道到天線的鏈路,排查是否某一段走線受到干擾
4、檢查VDD的供電是否有串磁珠,磁珠更換0R后是否依舊有此問題
A:中斷異常信號波形如圖所示。
中斷信號異常原因:AW9523B的0x11寄存器中bits[3:2]默認值為reserve,未給出實際默認值,客戶將bits[3:2]均設置為1,此時中斷信號頻率恰好與OSC輸出一致,因此導致了芯片中斷信號異常。
當中斷異常信號波形有規律變化時,可排查客戶設置的寄存器值與規格書中寄存器reserve值是否存在沖突。
A:會改變。因為IC內部的POR模塊受VDDI2C和VDDP共同控制,當VDDI2C下電也會觸發POR。如下圖所示,P1_2原始狀態設置為高電平,將VDDI2C下電過程中,P1_2會變為低電平,改變了其原始高電平狀態。
A:會改變。
測試一:IO端口配置為輸出模式且為高電平,外部將P0_4端口強制接地,測試P0_4端口的電平狀態
寄存器配置如下:
0x02, 0xFF, //P0端口為高電平
0x03, 0xFF, //P1端口為高電平
0x06, 0xFF, //P0端口為輸出模式
0x07, 0xFF, //P1端口為輸出模式
讀取配置后的P0端口寄存器值為0xFF,P0_4短接地后再讀取P0端口值為0xEF,說明P0_4端口被拉低。
測試二:IO端口配置為輸出模式且為低電平,外部將P0_4端口強制拉高至VDD,測試P0_4端口的電平狀態
寄存器配置如下:
0x02, 0x00, //P0端口為低電平
0x03, 0x00, //P1端口為低電平
0x06, 0xFF, //P0端口為輸出模式
讀取配置后的P0端口寄存器值為0x00,P0_4拉高至VDD后再讀取P0端口值為0x10,說明P0_4端口被拉高。
總結:外部強制接地或拉高會改變AW95016A原本IO端口的配置狀態。
一些客戶在mcu系統上編碼時,反饋i2c讀chip_id操作正常,寫操作也無異常日志打印。
1.某客戶對i2c設備地址0x5a ,0x03寄存器寫入0x59數據異常操作。
【i2c設備地址寫操作+寄存器地址+i2c設備地址寫操作+數據】,不符合i2c寫規范,無實際有效數據寫入到寄存器
2.艾為測試正常寫時序【i2c設備地址寫操作+寄存器地址+數據】
A:首先我們要清楚Class D/K類型的PA輸出是方波形式(通常頻率300KHz-800KHz左右)。如下圖
但是AP本身的模擬輸入端口相當于一個DAC轉換器,會將該輸入電壓DAC轉換成數字信號,然后做后續的分析處理。但是AP模擬輸入端口的采樣帶寬遠小于常規示波器,如下是APx525的采樣帶寬,1-channel時是1MHz,2-channel時是500KHz。
由于Class D/K 輸出的方波頻率一般在300KHz-800KHz左右,但是AP的模擬轉換帶寬只有500KHz或1MHz,所以如果Class D/K的輸出直接輸入給AP的模擬輸入口時,根據香農定理,AP無法采樣到幾百KHz級別的信號,導致信號失真。
因為AP分析的都是音頻范圍內的信號,為了解決該問題需要將Class D/K的幾百KHz的載波頻率給濾除掉。一般AP都會選配硬件濾波器,如AUX-0025。AUX-0025是25K的硬件低通濾波器,可以濾除25K以上的信號,加上濾波器后輸入給AP的就只有音頻信號了。
上圖是IIC總線協議對于Clock Stretching的定義,簡單理解:
IIC總線的時鐘延展(Clock Stretching)指的是,IIC總線上的從機在接收主機數據時,從設備因為處理數據或其他原因而無法及時響應主設備的時鐘信號,此時從設備可以通過拉低SCL時鐘暫停主機的時鐘信號,以便從機可以處理數據,一旦從機準備好繼續處理數據時,便會釋放SCL時鐘,這種暫停時鐘的行為被稱為時鐘延展(Clock Stretching),這也是IIC總線上,從機唯一有權限控制SCL的時候。
一般來說當主機是CPU或者MCU時,從機是傳感器、處理器等需要將一些運算結果返回給主機的設備時,可能會出現從機正在處理數據而無法響應主機的命令,所以會拉低SCL,等數據處理完畢后再釋放SCL。
A:驅動代碼中沒有判斷中斷觸發方向的函數。AW95016A的IO中斷使能且配置為輸入,INT腳檢測到輸入端口有電平變化就會上報中斷,具體的IO電平變化可通過讀取對應寄存器(0x00或0x01)來實現,平臺端可根據讀取的寄存器值來判斷實際中斷觸發方向。
A:AW21024完成自主呼吸次數后不能通過APSE進入省電模式,常亮模式可以通過APSE進入省電模式。自主呼吸模式可以通過拉低EN引腳進入關機模式,此時功耗最小在10uA左右。