使用软件:慧荣量产工具(以SM3257ENBB量产工具为例)、反汇编工具C32Asm。3 c6 z3 U0 L3 V" V
$ H: p" @6 J, k. J' x
方法原理:量产工具读取U盘固件信息之后,会在文件夹下生成ISPChecksumRead.bin这个文件,它的16进制代码前面部分就是ISP,可以用16进制编辑工具截取出来。
2 u7 m0 T' Z ?- I" d6 k) B8 E0 u4 r& W" L% \. a
方法演示:1 P+ m m9 N- w. k1 V9 W+ q' }
% m/ t( _! X, z' ]2 W0 L# w
1、打开量产工具文件夹,查看ISPChecksumRead.bin这个文件,修改日期是2016/3/12,这是旧文件,删除即可:5 y/ \3 o% W3 \, m
6 b4 M+ c9 H: M
9 b& j- q# q, R& ?* j' G* ^2、打开量产工具,点击“扫描USB”之后软件发现U盘,再点击下图红色方框位置的按钮,出现Dialog对话框,截图保存这些信息,以备量产出错之后恢复使用:
1 J, b" m( K o! X; R0 R- U4 @1 N9 U- Q$ W* z3 G6 t0 e
) I: U: O! G3 m/ X; \
# P1 u" s/ V0 V l0 j% d3、按照步骤2,打开Dialog对话框后,会自动在量产工具文件夹下生成新的ISPChecksumRead.bin文件(如下图,本教程写于2016/5/19,所以新的ISPChecksumRead.bin文件日期变成了2016/5/19)。- T F/ X0 W* l5 m, l o
5 G2 v/ d v, z5 ^$ c* i4 j
( k$ A9 d6 L# M
4、先用16进制编辑工具C32Asm打开其他的固件文件,参考发现固件的前半部分都有一堆圆点加一行数字/字母,而尾部代码则是位于最后的一堆圆点加一行数字/字母,以此规律来查找新的ISPChecksumRead.bin文件的尾部代码:
: i( B( W0 h1 f( d9 {" l; N: b
0 V- o. E) X( H
8 C- R; a" D* }, w5、顺次向下查找最后一堆圆点加一行数字/字母:
' d: E/ u" L% y- C! `
" T/ l6 i. m( F+ w( R3 o. s7 c
1 O/ r/ _1 l4 B m/ ?: D, |: O+ h! @/ u/ O4 X6 D B9 _1 S4 d! v
2 k. t _8 _, L8 i
6、前后对比发现下图m0822…这一行就是新固件最尾部的代码了:% a) X7 Z5 W+ j- i% I4 o
+ w D! n" v# l( ]3 O: g! ]* X) N* N1 V7 Z1 ^; w
7、把尾部代码之后的垃圾代码全部删除:
! q; H a2 c1 c4 N# v2 f B- q/ `/ r% x) C* K; }% x
! _! s" @2 ~1 i2 z# Q: M7 |. G2 F
8、剩下的部分就是真正的ISP固件文件,保存,提取固件步骤结束:
$ \0 Y |' J% }0 p$ C( x, f; D
9 ~" s' Y& p5 r4 ~" N+ M$ G3 {9 I
小结:
1 S+ c I4 M" d6 J8 _) n$ k U) T# A: y: \, j' \- X
本次演示得到的ISP和公开的ISP各方面属性都是一样的,量产也能成功……至于固件的命名可以参考其他固件,自己心里有数就行。这样就有了属于自己U盘的固件,以后就不怕量产失败不能恢复了。
% G) [& ]: w2 S8 {: J. M+ t6 X( Z0 |$ H; ^2 Y' k
|
|