在iphone上顯示電池電量,需要用到AT command,實現電池電量顯示需要在PSKEY_USR3中添加ATcommand,并修改PSKEY_USR9中的第9個word。
首先,用e2cmd、configtool等工具配置好所需要的應用,然后打開pstool,找到以下PSKEY:
內容為(長度為0x55+8):
3404 3405 1a05 2105 ad05 41055305 0000 002b 004d 0049 0043 0054 0045 0053 0054 0000 004f 004b 000d 0000 002b0058 0041 0050 004c 003d 0069 0050 0068 006f 006e 0065 002c 0037 0000 004f 004b000d 0000 0041 0054 002b 0058 0041 0050 004c 003d 0030 0030 0031 0032 002d 00300030 0030 0031 002d 0030 0031 0030 0030 002c 0033 000d 0000 0041 0054 002b 00490050 0048 004f 004e 0045 0041 0043 0043 0045 0056 003d 0032 002c 0031 002c 0081002c 0032 002c 0030 000d 0000 0000
當然,這只是一個參考內容,以下內容也是可以的(長度為0x6c+8):
3404 3405 1a05 2105 ad05 41055305 0000 002b 004d 0049 0043 0054 0045 0053 0054 0000 0041 0054 002b 004d 00490043 0054 0045 0053 0054 003d 0031 000d 0000 002b 0058 0041 0050 004c 003d 00690050 0068 006f 006e 0065 002c 0000 0041 0054 002b 0049 0050 0048 004f 004e 00450041 0043 0043 0045 0056 003d 0031 002c 0032 002c 0030 000d 0000 0041 0054 002b0058 0041 0050 004c 003d 0030 0030 0031 0032 002d 0031 0032 0033 0034 002d 00300031 0030 0030 002c 0033 000d 0000 0041 0054 002b 0049 0050 0048 004f 004e 00450041 0043 0043 0045 0056 003d 0031 002c 0031 002c 0082 000d 0000 0000
然后,切換到PSKEY_USR9,修改第9word的內容為“PSKEY_USR3的長度-8”,如PSKEY_USR3的內容為上面段的話,則是0x0055,如是第二段,則是0x006c:
(上圖PSKEY_USR9的內容:0004 0001 0009 0005000c 0029 0004 0000 006c 0f0f)
以上的PSKEY_USR9比較好理解,改的就是PSKEY_USR3中AT command的長度(USR3中第9words開始為ATcommand內容,所以之前設置長度的時候需要USR3減去8)。
我們拆分一下第二段USR3:
事件:34043405 1a05 2105 ad05 4105 5305 0000
AT command 00:002b004d 0049 0043 0054 0045 0053 0054 0000
AT command 01:00410054 002b 004d 0049 0043 0054 0045 0053 0054 003d 0031 000d 0000
AT command 02:002b0058 0041 0050 004c 003d 0069 0050 0068 006f 006e 0065 002c 0000
AT command 03:00410054 002b 0049 0050 0048 004f 004e 0045 0041 0043 0043 0045 0056 003d 0031 002c0032 002c 0030 000d 0000
AT command 04:00410054 002b 0058 0041 0050 004c 003d 0030 0030 0031 0032 002d 0031 0032 0033 0034002d 0030 0031 0030 0030 002c 0033 000d 0000
AT command 05:00410054 002b 0049 0050 0048 004f 004e 0045 0041 0043 0043 0045 0056 003d 0031 002c0031 002c 0082 000d 0000 0000
USR3的前8bytes是配置事件(事件需參考蘋果相關文檔),如第三個word 0x1a05,1a代表EventLow Battery,05代表執行的是第六條AT command(條為00),當Low Battery被觸發的時候,會發送AT command 05給手機。
每一個AT+command寫完后需要再加一個\\0(0x0000)作為結束符,后一個需要加兩個\\0。
后提醒一下,這樣修改以后,就不能用config tool直接往芯片里面寫配置了,在config tool中修改相關內容后,必須要另存為psr文件,在用pstool merge進去,否則可能會導致無法開機。
其中AT command 05中的倒數第四個word 0x0082表示的是電量。