Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2876919
  • 博文数量: 471
  • 博客积分: 10012
  • 博客等级: 上将
  • 技术积分: 5255
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-10 23:58
文章分类

全部博文(471)

文章存档

2011年(3)

2010年(61)

2009年(52)

2008年(212)

2007年(69)

2006年(74)

我的朋友

分类: LINUX

2009-05-19 08:46:24

JTAG是什么?我只知道是我刷机刷死后用来修复机器的。对于路由器来说也就是用来清除和写入闪存数据,不管路由是死的还是活的,只要硬件没有问题都可以。一般来说只要是刷死了或者说是输入一些错误参数导致路由启动不了的都可以用JTAG来修复,修复的思路就是清除错误的数据再写入正确的,(有的数据清除之后路由会自动建立)有必要说一下闪存存储数据的几个部分,分别为CFE(相当于电脑的BIOS),NVRAM(这是存储路由器的设置参数用的),kernel(也就是我们说的固件,相当于电脑的系统)这样说应该好理解吧。。。这里只针对850G来说,其它的路由器和这差不多。WRT54G的接线方法和这一样,大家举一反三就行。首先,你必须要有JTAG线,这个线其实很好做,动手能力稍微强一点的有材料的都可以自己做,可以参照下面的图。再就是要有JTAG的驱动和软件。到下面下载。
850G的JTAG接口如下图,焊盘顺序如下:
2  4  6  8  10  12  
1  3  5  7  9   11做JTAG线的时候用的四只电阻都是100欧姆。
大家不会做这个线的也可以看这里
PC并口     电阻        JTAG插头        功能
2          100欧姆         3                TDI
3          100               9                TCK
4          100               7                TMS
13        100               5                TDO
20/25     直连             6                地线
硬件连接好之后接下来来软的。具体步骤如下:第一件事是重启电脑,然后进入bios确认并口的模式:工作状态选择:ECP,中断选择:378,保存后重启。这步应该可以省,因为一般电脑的BIOS默认就是以上的工作状态。
1)把下载下来的“JTAG.rar”里面的JTAG文件夹解压到C般跟目录。
2)选择“开始”-“运行”,写入“%systemroot%\system32\drivers\”回车后系统将会打开一个文件夹,将“C:\jtag”目录里面的“giveio.sys”复制进去。
3)运行“C:\jtag”目录中的“loaddrv.exe”,在路径中填写“c:\windows\system32\drivers\giveio.sys”。(4和5步在下面的图中已说明)
6)选择“开始”-“运行”,写入“cmd”回车,在弹出的对话框中输入下列命令:
     cd c:\jtag回车。下面是我们常用的命令:
       jtag -backup:nvram   备份nvram,备份的nvram会生成在JTAG文件夹里。
       jtag -erase:nvram      清除nvram,这就是我们常用的。
       jtag -flash:nvram    写入nvram,待写入的nvram要放在JTAG文件夹里并更名为“NVRAM.BIN”这个一般不会用到,因为我会清除NVRAM之后,CFE会自动重建默认的NVRAM。
       jtag -backup:cfe         备份CFE,  同样,备份的CFE也会生成在JTAG文件夹里
       jtag -erase:cfe            清除CFE
       jtag -flash:cfe        写入CFE,这也是我们清除CFE之后必须要做的。待写入的CFE文件必须放到JTAG文件夹里并更名为“CFE.BIN”
       jtag -erase:kernel      清除固件。
      以上都是JTAG常用的命令。一般我们只要清除NVRAM之后路由就可以正常启动了,也可以清NVRAM和清kernel之后重新TFTP刷固件进去就行。有关如刷TFTP刷机请看这里
如果通过以上都不好,那就只有重写CFE,CFE文件我已经在下面附上,你的850G物体内存是16M就刷16M的CFE,刷32M的是启动不了的.物体内存是32M的可以刷16M的CFE,但是850G只能识别16M内存,可以用命令激活32M.激活方法是:telnet登陆到路由,复制下面的命令直接粘贴到命令窗口内:nvram set sdram_init=0x0008  然后回车,接着复制这段命令:nvram set sdram_ncdl=0x0000 再回车,nvram commit  再回车,reboot  最后一次回车,这次回车后AP会重启,重启完成后系统就能辨认出32M物理内存了.重写CFE之前一定要先把闪存里面所有的数据都清了,CFE写完之后192.168.10.1就可以PING通了。就可以用TFTP刷固件了。  有关清,写CFE,NVRAM,KERNEL的图片看下面.转载请注明出自中国无线论坛 ,
 
本贴地址:
阅读(3110) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~