从路由器真机提取固件包(二)

前言

自写完 从路由器真机提取固件包(一) 介绍如何通过 UART提取固件之后,一直没时间来写如何通过编程器提取固件。正好最近在看一款设备的时候,发现无法从官网下载到他的固件包,也无法通过串口拿到他的 shell,只能通过编程器提取他的固件。于是想起这篇算是鸽了很久的文章,现在来补写一下。

所用到的工具及设备

  • CH341A编程器
  • 转接板
  • 芯片夹
  • xxx 路由器
  • 热风枪(x

前置知识

ROM芯片

固件一般存储在ROM中,ROM是只读存储器(Read-Only Memory)的简称,是一种只能读出事先所存数据的固态半导体存储器。其特性是一旦储存资料就无法再将之改变或删除。通常用在不需经常变更资料的电子或电脑系统中,并且资料不会因为电源关闭而消失。

编程器

读取Flash芯片,需要借助编程器,编程器又称烧录器、写入器、写码器,是专门用来对IC芯片进行读写、编程/烧录的仪器。本文会用 CH341A编程器读取此设备的固件。

编程器读取方式

(1)直接将导线连接到芯片的引脚,在通过导线连接编程器读取固件;

(2)把芯片拆下来,再连接编程器读取固件。

实操

找到flash并确定1号引脚

值得一提的是,有些flash不在开发板正面,因此可稍作留意。例如上面两幅图中样机的flash便是在PCB背面。1号引脚附近应该会有小标记,如图这个便是有一个小三角指向1号引脚,及偏右下角的那个引脚。

组装芯片夹、转接板与编程器

我这里用的是 SOP8的芯片夹。与转接板连接时,红色的线对准1号位置。再按图中位置固定到编程器上。

提取固件

最后把编程器插到电脑上,芯片夹夹住 flash 即可(红线对准有标记的部分)。此时如果设备的电源灯亮,即说明已经正确连接。此时打开 CH341A 编程器相对应的软件自动识别并提取固件即可,如果无法自动识别则可以通过 flash上印着的型号手动确定芯片类型即可。

参考链接

https://zhuanlan.zhihu.com/p/33527131

https://mp.weixin.qq.com/s?__biz=MzUzNDYxOTA1NA==&mid=2247491223&idx=4&sn=39016ad70598e64c0a74b4bf08d223c9&chksm=fa90a856cde7214079b273bba8997e9c4cbabfde2fc1ff287fd6dd0d175223b3954fe37f9a88&scene=27

https://blog.csdn.net/weixin_39224267/article/details/124661034