接修一台三星数码王DX-668B中九接收机,故障现象是开机没有任何反应。打开机器外壳,没有发现电容鼓包之类的明显故障,电源板20V、15V和3.3V三路电压输出均正常,测量主板上两路由+3.3V经低压降稳压芯片1117C18C降压获得的+1.8V电压也正常,怀疑是升级失败造成的故障。
        该主板采用的是Hi2023EC+Hi3121 +RDA5812双晶10芯方案,机器后面是5针接口,通过观察PCB板上的走线发现接口定义依次是:TX、RX、Vcc、GND和BL(从高频头处开始),用万用表测其电压分别是:3.3V 3.6V、5V、0V和0V,明显RX和BL电压异常。试着用刷机小板将机器与电脑相连,再打开ABS_Flasher_V1.6软件,给接收机通电后无法联机,又将Vcc与BL短路,再在软件里点“复位”按钮还是无效,看来Flash芯片U103(MX25L8005)内的BootLoader程序已彻底损坏。

        修复此机的关键就是向MX25L8005中写人正确的Bin固件。通过查找资料得知可以通过“借鸡下蛋”的方法来解决,即找一- 台比较容易与电脑联机的国芯中九接收机,再将待写入程序的MX25L8005安装到国芯机子上去,借助国芯刷机软件将正确的Bin固件写人,最后重新安装好MX25L8005即可,可是笔者手里现在没有国芯芯片的机器。在网上一番搜索后发现,可以先自制如图1所示的25系列并口编程器,然后借助SPI Flash软件写人Bin固件来修复“砖机”。

        SPI( Serial Peripheral Interface串行外设接口)总线系统是一种同步串行外设接口,是Motorola公司首先在MC68HCXX系列处理器上定义的,它可以使MCU与各种外围设备以串行方式进行通信以交换信息SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,,该接口一般使用4条线:串行时钟线(SCLK)、主机输人/从机输出数据线MISO、主机输出/从机输人数据线MOSI和低电平有效的从机选择线SS。从图1中可以看出:25系列Flash芯片只有TMS(同时通过上拉电阻接到Vcc)、TDO、TDI和TCK四根线通过串联1802电阻与计算机并口相应的引脚相连,外加公共地才五根线,而WP和hOLD引脚都是直接接至Vcc,串联两只二极管的作用是将+5V电压降至+3.3V左右,因此电路还是比较简单的,于是动手自制编程器:并口是来自一台旧计算机加密狗上,1802电阻不易找,用1000电阻代替。考虑到拆下MX25L8005搭线焊接不方便,于是决定把MX25L8005芯片不从原主板上拆下,直接利用主板上的电路来为MX25L8005进行供电,只用很短的电缆将TMS、TDO、TDI和TCK四根线与并口连接。又查看了该接收机的主板,发现MX25L8005与Hi2023EC是通过RM13(47Ω)排阻相连,正是对应MX25L8005的TMSTDO、TDI和TCK四个引脚,如图2所示,为减少烧录程序时Hi2023EC对MX25L8005芯片的影响,将该RM13排阻拆除,用导线和100Ω电阻将TMS、TDO、TDI、TCK及地线与并口上对应引脚连接,如图3所示。

       硬件准备好后,接下来就是烧录程序了。首先要选择适合三星数码王DX-668B中九接收机的Bin固件,从网上下载到与原机硬件配置完全一致的天成TCD-299ABS接收机Bin固件,由于下载的Bin固件较早,所以还必须用最新版海尔自搜修改工具软件处理成能够自动升级的软件才能使用。Bin固件文件准备好后,将制作好的简单编程器插到电脑并口上,同时给主板接上电源板,运行SPI并口编程器软件SPI Flash V1.8 (注:SPI Flash软件目前版本较多,不过V1.8稳定且容易与编程器连接),在软件右上角的端口选项中选择LPT1,右边的芯片类型中选择EON EN25T (若无法识别也可以根据实际情况选择其他类型的芯片试试),当选择好芯片的型号后,软件会弹出如图4所示的对话框,点"确定”按钮以便进行下一步操作。打开接收机电源,再点击软件上标有ID字样的图标,这时弹出“SPI器件信息"对话框,正确地显示出该机器上的25系列Flash芯片的型号和大小,同时软件下方也显示“Device read OK"字样,如图5所示,说明计算机与MX25L8005芯片间的通信正常,点“确定”退出“SPI器件信息”对话框。接下来点击“擦除器件”按钮清空MX25L8005内的数据,然后单点“打开”按钮并选择刚才制作好的Bin文件,如图6所示,这时软件主界面中显示的便是Bin文件的数据,点击工具栏中的“编程器件”按钮软件便向MX25L8005中写入数据,如图7所示。当显示"DeviceProgrammed OK"字样时,表示编程完毕。

       由于SPI Flash软件在通信时没有指定流控制,也没有应答机制确认是否接收到数据,因此还必须进行校验操作以保证写人的数据与原文件-一致,单击“校验’按钮即可实现对数据的校验,如图8所示,若软件底栏中出现"Device Verified OK"字样代表数据写入准确无误。

        当数据校验无法通过时,可以重新擦除器件中的数据再次写人并进行校验,一般多操作几次就正常了。笔者重复操作了四五次才将数据正确无误地写入到MX25L8005芯片中。写好数据后关闭接收机电源,拆除五根引线,将RM13排阻重新焊回主板,再次接通接收机电源,机器已经能正常启动了,接上电视机和室外馈线,开机后便自动搜索节目,搜索完毕后46套节目收看正常。至此,三星数码王DX-668B中九“砖机”成功修复。