從路由器真機提取韌體包(二)

2023-10-18 12:01:49

前言

自寫完 從路由器真機提取韌體包(一)介紹如何通過 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