这次还真是少不了从论坛拿到的宝贝……
首先这便是曾经从论坛得到的无线小路由WR700N了,

楼主期待有一天能给它刷个openwrt。

话说我倒也不缺路由器,只是这两天闲下来,想起了这个事,于是来搞一个。
由于这个路由的Flash只有2MB,根本不敷以写入op,以是不得不给它换个flash啦。
楼主是纯软件出身,这个焊活,虽然只有8个脚,那也是个老大难问题了,以是一贯也没有做过考试测验,不过这次真是豁出来了,拿出来练练手吧。
提前准备好各种材料:W25Q64(8MB的Flash)芯片多少,相应的烧写座一个。
思来想去的,不买烧写器了,DIY嘛,就得自己动手,丰衣足食。OK,DIY一个大略的烧写器——烧写器,二楼见~
东西都得手,等到中秋节,咱沐浴换衣焚喷鼻香祷告,开始动手。
首先肯定是拆……拆WR700N这个东西,须要到网上参考一个内容(China[拆哪],破拆高手多,先请教一下机壳的卡点,避免破坏外壳)。于是根据指示开始暴力开壳。
得到了WR700N的核心,正面处理器和内存贴着签不拍照了,后面的SPI Flash开阔荡。
拆的话该当是比较随意马虎的……可是楼主还是很悲催的伤到了焊盘,5脚的焊盘就那样悬着…这家伙那可是数据输入旗子暗记啊……不会末了悲剧了吧。
步骤一,利用烧写器将拆下的Flash中,末了64K的数据取出来,留下备用。这个东西在路由界被称为art,里面存有路由旗子暗记有关的调度数据,没有了它,剩下的硬件就无法发挥它的最佳水平。
步骤二,从网高下载一个叫breed的东西,这个可以替代uboot启动路由器,而且利用它,可以随时随意刷路由的系统了。
步骤三,将breed烧写到Flash的0起始的位置上,内容并不大,以是可以再读出来,干脆读出来0x15000,和原始的breed比较一下,创造有效数据是同等的,OK可以连续了。
步骤四,(此步骤可省略,当时我不懂,之后我懂了。该步骤烧写art到Flash上,但实际breed可以直接写art,以是最好让breed来做这件事)
步骤五,接下来就把Flash焊回到板子上。我没做过这个,还是须要很小心的处理……
接下来就可以上电操作啦……所往后续就仅是调试过程了。
Orz起不来。
蓝色的指示灯亮了,但还是很暗,我乃至疑惑这个是不是板子坏掉了。事实证明,只是起不来,以是灯也是非常状态了。
于是插上逻辑剖析仪排错。这个过程中,我创造,电源电路到主板电路转换的过程中,留下了5V的测试TP,以是只须要找一个5V电源,接过来就可以方便的调试了,不必插在墙上看效果。事实上,我直接用测试夹夹在相连的电容脚上,很方便。
于是一个脚一个脚看,创造/Hold脚拉低了。查一查类似的路由器的电路图,创造这个脚是在外部利用电阻直接拉高利用的,以是……是不是我把焊盘焊坏了……
便是这么果断,急速找了个10K电阻焊上了。连续启动……还是起不来。
再检讨,创造逻辑剖析仪上是有精确数据的,这回惨了,看来板子出问题了。
喝了一杯酸奶压压惊,之后决定连续差错看看,结果很有时地,用万用表创造Flash的4脚(GND)旗子暗记上,电压不为0,而且还有浮动。
再一想,糟了个糕,我一贯关注的是Flash引脚上有没有数据,可是这样是不能担保焊盘上也能精确的得到这些数据的……也便是说,输入到Flash的旗子暗记,目前来看都是精确的,但是输出出去的旗子暗记,可能有虚焊!
以是,起初我所担心的5脚,竟然完备没问题~,再以是,/Hold脚大概也是虚连了以是看起来是拉低的……
于是用万用表使劲测4脚,创造确实和下面的焊盘虚连着,乃至稍使劲压,也打仗不到,看来是中间有松喷鼻香层阻碍电流了。
以是拿起烙铁,把这几个脚又焊一次,顺便把自己加的电阻摘除。这一次每个脚都稍用力往焊盘上压实一点。看来第一次焊太小心,虽然焊锡融得很俊秀,可是反倒是没有焊上。
之后再通电,终于统统正常,灯也亮了,接在PC上,PC网口也亮了。Oh Yeah~
再然后用PC上岸192.168.1.1,设置breed里的信息,紧张包括Mac地址和art上传,
之后找到可用的openwrt固件包,上传启动 ~
Orz,完备不能用。……
后来利用uart吸收主板上的TP数据,创造启动linux内核时,内存不敷,挂了。
按理说不应该的,网上说WR700N是2M ROM 16M RAM呀,该当可以啊……额,网上说??……起开内存上的贴签,创造这个货是8M内存。
以是……又要DIY改66pin的内存颗粒了??
好吧,暂且认为本次DIY完成,毕竟原始目标也便是换个大点的Flash。
换RAM的事情,就滚到下一期DIY再说吧。
总结了履历教训。第二天,楼主把其余一个路由的Flash给换了,很快就完成了。
恩,心情不错。
接下来说说用D21的板子做的烧写器,
对付SPI Flash来说,只要一个SPI,就可以进行读写等各种操作了。
以是D21绰绰有余。
装上AStudio,驱动SPI,找到读写代码(针对我买的Flash,我创造D21原带的那个AT25DFX驱动有点不匹配),做个试验,利用uart将读出来的东西发回到电脑上。为了避免滋扰,连接上我换了一个SPI
数据可以正常发送到PC,可是怎么能保存到文件呢?这个方向实在很好办理,利用强大的putty,利用串口办法连接,然后修正连接设定中的logging,选择保存全部的log,指定目标的文件,运用往后,串口收到的内容就会直接写到文件里啦。
经由测试,读和写都没有问题啦,那么就可以利用这个家伙把breed写到Flash中了。
可是楼主还是
烧写.JPG (48.05 KB, 下载次数: 0)
下载附件 保存到相册
2015-9-30 03:04 上传
于是可以连续利用了,通用的Flash烧写工具……还是往后再做吧。
可以看到,自己动手做的烧写器真的非常实用,而且还避免了板子吃灰,有效提升了板子的代价,特殊是这类体积小、功能多的佳构开拓板。
以是……如果不是有分外的需求,……
我劝你还是只管即便花几十块钱客岁夜TB买个烧写器吧……
DIY时,还无意中创造了自己刚进入事情的时候,不懂硬件不懂电子,为了大概学习一下,后来根据网上一个帖子,DIY的4位加法打算机……全是非门……
末了又帮朋友做了这么个东西……我只卖力供应线和加工,不卖力供应紧张质料,以是配色样式就无可挑剔了……
是个插笔的挂帘……
顺手给闺女做了副鞋垫,资源有限,也没给包个边……
严格遵守了老人的哀求:线要密要多,才结实……这下大家知足了吧
以上图文内容均是EEWORLD论坛网友:sjtitr 原创,在此感谢。
欢迎微博@EEWORLD
如果你也写过此类原创干货请关注微信公众号:EEWORLD(电子工程天下)回答“投稿”,也可将你的原创发至:bbs_service@eeworld.com.cn,一经入选,我们将帮你登上头条!
与更多行业内网友进行互换请上岸EEWORLD论坛。






