武汉家电维修网 www.whjdw.com 欢迎您的光临!
当前位置: 主页 > 家庭影院 > 卫视设备维修 >

中九接收机极速刷机原理解析

时间:2010-10-07 16:50来源:未知 作者:admin 点击:
标准的刷机软件一般是全刷或者刷整块儿数据,明白了刷机的过程后,我们就可以想刷哪些地方就刷哪些地方,当然在刷前先要进行擦除,这地址一定要算好,得是同一个地方。

虽然1MB FLASH共有4096页空间(每页256字节),但是擦除的命令只支持扇区擦除,据EON官网资料的介绍,1MB的分16扇区,每扇区是64K字节。所以一擦就是64K。

(注:因原资料为英文,本人的英文水平太菜,没太看明白,也许是4K一页,共256页,详情见官方手册的5-6页前面部分)

好在擦除完了以后就全是FF了,所以刷机软件碰到整块是FF的数据可以直接跳过,而不进行发送,这也是大家看到刷机软件的进度时快时慢的原因。

如果我们知道要修改的地方,比如说位于50000和60000间的节目表,直接擦除00 05 00 00扇区,然后发送新的数据即可,整块是FF略过不发,应该很快就能完成。

另一个提高速度的方法是,省掉前面的波特率协商,直接设置为115200(STB的默认速度是38400,这个需要改造BIN文件),然后设置较高的速度,理论上计算,280000bps,每秒能写入20多K,刷个节目表,也就几秒的事儿。
(BIN的改造方法是将12B、12E、132、134处的D3和05分别改为79和11,均为16进制)

原理应该说明白了,下面说一下BOOT2。

BOOT2 是刷机软件的搭档,必须进行精密的配合才能完成正确的刷机作业,据我对BOOT2的分析,海尔的共有两种,一种是2023,一种是2023E,其区别在于带E的用的是串行FLASH,就是8脚的那种,不带E的用的是并口FLASH,其BOOT2要简单一些,因为串行操作起来比较麻烦。

这些BIN可以直接取自海尔的刷机程序,就在cmd文件夹中。

附上2023E的BOOT2的部分重要地址,想完善刷机软件,或者想修改BOOT2可以参考。

L0F0000: 程序开始
L0F0039: 长整数加
L0F0046: 长整数是否相等
0057: 右移
6A:左移
AA:memcpy
10A:写使能
125:是否完成写操作
187:读厂商信息
1A6:读设备信息
1E3:芯片初始化
2B5:接收数据包
3E3:擦除
4E2:写入数据
5B1:读芯片数据
628:计算CRC32
6B1:设置串行口速率(收发同速)
6E7-最后:共1KB的CRC32表,BOOT2通过查表法计算CRC的值。
------分隔线----------------------------
栏目列表
推荐内容