在手機,平板等個人移動產品中,我們經常會關注電池容量的多少,TI的BQ27426,BQ27Z561等電池電量監測芯片可以通過檢測電池電壓,電流以及溫度,從而計算出電池容量,并且兩者均是單節電池電量計,廣泛應用于上述場景。在實際使用過程中,需要配置好各種參數,生成GMFS文件再交給客戶生成.h文件結合到客戶的代碼之中。
1.1 修改流程介紹
一般來說,當客戶需要修改配置并且生成新的GMFS文件時,需要客戶提交CHEMID以及GMFS文件,提交給產品線進行修改,耗費時間較長,尤其是當客戶只需要修改1-2bit時,此流程可能會延緩項目開發進度,影響客戶體驗。下文中以最常遇到的DMCODE修改為例,介紹如何快速的進行修改。修改流程主要為: 找到DMCODE寄存器位置->找到校驗位位置并快速計算->修改并驗證。
1.2 快速修改DMCODE
在客戶的程序中,一般會通過判斷我們BQ27426里內置的DMCODE這一bit來區分不同的配置程序,如果DMCODE保持一致,客戶的軟件中可能會有所沖突,就需要我們幫助客戶快速的修改。
本文是基于GMFS文件直接進行修改,沒有在上位機界面進行修改,在上位機界面進行修改后可能還會涉及到新生成的GMFS文件不包含ChemID的問題,同樣需要產品線幫我們添加ChemID信息到GMFS文件,具體方式不在贅述。
在進行修改前,我們需要理解GMFS文件。可以參考《GMFS文件解析》來簡單了解下GMFS文件。
DMCODE在TRM中有如下描述,但是我們的BQStudio軟件并未將這一位寄存器開放出來,經過跟產品線確認,我們的DM CODE位于Subclass ID的第5位。也就是Table 7-2中,Subclass 64, offset為5的位置。(Table 7-2并未完整顯示所有寄存器).
圖1.1 DMCODE定義
Subclass 64這里的64是DEC下的64,如果切換到HEX也就是0x40. 那么我們就需要在gmfs文件中找到0x40寫入的指令:
圖1.2 代碼例程
同樣根據《GMFS文件解析》,第一行代表的是找到Subclass 64的地址,第二行表示寫入數據,第三行表示寫入校驗和,第四行表示等待,第五行和第六行為校驗和相關驗證。
我們的DMCODE的offset為5,在上述代碼中找到offset為5的位置,也就是01的位置(為方便理解,圖中已經標紅)。
在接下來就是尋找校驗位的位置以及如何快速計算,這里代碼中已經標紅,就是第三行的0D和第六行的0D。接下來介紹如何快速修改。
關于checksum的計算可以看BQ27426 TRM的第四章節,其中這里有詳細的描述:
圖1.3 checksum計算過程
如果每一次都需要完整計算會耗費較多時間,這里的快速修改方法就是將想要修改的值和修改前作比較,將變化的值取負號也加入到checksum中。
舉個例子,由上圖可知,我們的DMCODE為01,如果我們像將其改為02,變化的值為+1,因此checksum的值就需要-1,目前Checksum的值為0D,DMCODE修改完后Checksum的值應該為0C.
這里的這張截圖是通過上位機修改得到的對比表,可以發現,DMCODE改為2后,Checksum值從0D變為了0C。
圖1.4 DMCODE結果對比
本文提供的是基于GMFS文件直接修改DMCODE的方法,如果需要修改其他寄存器的值,請咨詢FAE確認是否可以修改該值。有的值修改后可能會對Gauge的預測算法產生影響。
審核編輯:郭婷
-
芯片
+關注
關注
456文章
51266瀏覽量
427754 -
寄存器
+關注
關注
31文章
5369瀏覽量
121275 -
電池
+關注
關注
84文章
10690瀏覽量
131493
發布評論請先 登錄
相關推薦
快速修改BQ27426 GMFS文件的方法
BQ27426 bq27426 具有集成感應電阻的系統端 Impedance Track? 電量監測計
![<b class='flag-5'>BQ27426</b> <b class='flag-5'>bq27426</b> 具有集成感應電阻的系統端 Impedance Track? 電量監測計](https://file.elecfans.com/web1/M00/53/B1/pIYBAFshIqWAEDinAAASZowRP5I318.jpg)
BQ27426 GMFS文件修改流程介紹
![<b class='flag-5'>BQ27426</b> <b class='flag-5'>GMFS</b><b class='flag-5'>文件</b><b class='flag-5'>修改</b>流程介紹](https://file.elecfans.com/web2/M00/30/90/pYYBAGILEGGAMOXlAAAz9CyHRSs375.png)
以BQ27426為例,對GMFS文件進行解讀
![以<b class='flag-5'>BQ27426</b>為例,對<b class='flag-5'>GMFS</b><b class='flag-5'>文件</b>進行解讀](https://file.elecfans.com/web2/M00/30/88/poYBAGILEGmAQBVTAACKaRT7xc0318.png)
一款單節電池電量監測計BQ27426介紹
系統側Impedance Track?電量監測計BQ27426數據表
![系統側Impedance Track?電量監測計<b class='flag-5'>BQ27426</b>數據表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
bq27426在動態電池電壓下的性能,適合便攜式音頻應用
![<b class='flag-5'>bq27426</b>在動態電池電壓下的性能,適合便攜式音頻應用](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論