概述
通用异步收发传输器( Universal AsynchronousReceiver/Transmitter), 通常称作UART,是一种异步收发传输器,是电脑硬件的一部分。它将要传输的资料在串行通信与并行通信之间加以转换。
对于路由器的串口调试,多数情况下指的就是通过UART串口进行数据通讯。
如上图,UART有4个引脚(VCC, GND, TX, RX),利用焊锡进行焊接。
VCC是电源
GND是接地
TX/RX分别是发送端和接收端
将万用表的黑笔接到COM口,并指到蜂鸣档。 黑笔触碰天线,红笔随意一个接口,如果哪个接口出现蜂鸣声,则代表这个接口就是GND。
将黑笔接到mA口。 指针指到如图所示之处。 将黑笔触碰天线,红笔随意一个接口,拔插设备电源,如果是RXD则电压大约在3V左右没什么大幅度的跳动,如果是TXD则会大幅度电压跳动。
利用上述方法就可以判断UART的4个引脚(VCC, GND, TX, RX)
Picocom是运行在linux上的一种串口调试工具
安装 1、在线安装
sudo apt-get install picocom
sudo picocom /dev/ttyUSB0 -b 115200 进入Picocom终端模式(Usb插口应该选择与虚拟机相连)
显示如下结果证明已经可以和串口进行通信了,证明连接成功
输入help查询可以执行的命令
flash是我们所关心的,输入flash命令查看固件相关的内容有哪些
输入flash -layout查看对应的结构
Fireware中存放的就是固件,大小为1848k,并且可以获取其起始地址以及终止地址
begin_addr = 0x00032000
end_addr = 0x00200001
接下来就可以进行固件的提取了,需要装好serial包,运行程序即可提取固件。
sudo python3 firmware_dump.py
成功提取!
最后
以上就是怕孤单猎豹为你收集整理的通过UART串口读取路由器固件的全部内容,希望文章能够帮你解决通过UART串口读取路由器固件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复