美文网首页电子电脑技术
路由器基本调试一 UART定位

路由器基本调试一 UART定位

作者: 看雪学院 | 来源:发表于2019-07-16 18:10 被阅读0次

在做IoT分析的时候,拿到设备的UART接口然后进行调试,这是一个很常见的操作。

UART至少包含4个引脚公共引脚GND、电源引脚VCC、输出引脚TXD、接收引脚RXD。我们需要用到其中的3个引脚TXD、RXD、GND。

如果找到UART,通过SecureCRTPortable就可以在PC上得到路由器得控制shell。

那么有业界朋友就会好奇了,定位个UART还需要写一篇文章吗?如果UART被厂商做了手脚,不能输入或者显示数据怎么办?这个就是我今天要和大家分享的内容。

第一步 定位找UART引脚

这里用Tplink某个型号为例,该路由有很明显的接口,判断相对容易。下面介绍通用的方法。

1、定位GND

GND和至少和一根外接天线是连接相通的,将万用表的档位调整至蜂鸣档,一只表笔置于天线的焊锡点,一只表笔置于串口,如果发出蜂鸣声,就是GND。

2、定位VCC

给路由器通电,VCC是供电引脚,路由器的VCC电压始终未3.30不会发生变化,找到它可以帮助我们排除RXD、TXD。

将万用表调整到直流20V上。将一只表笔放在GND上,测试其他哪只引脚电压为3.3V, 该引脚就为VCC。

3、定位TXD

输出引脚TXD,每次有数据传输的时候该引脚电压都会发生变化。什么时候有数据传输呢?根据个人经验路由器开机的时候有启动信息会从这个引脚输出,这时候电压就会发生变化,此引脚即为TXD。

4、定位RXD

输入引脚RXD,每次有外部数据传输到路由器的时候,RXD的电压都都会发生变化。这里其他3个引脚都确定了就剩下一个很容易的确定了RXD。

有时候会遇见有多个引脚的情况,不能确定RXD,有个最笨,但有效的方法,GND和TXD引脚连接到TTL,然后插在电脑上,一个个测试不能确定的引脚(注意不要接入VCC),输入有回显示的就是RXD引脚。

第二步 将UART引脚通过TTL接入电脑

USB到TTL接线方法:

GND引脚对应TTL的GND

RXD引脚对应TTL的TXD

TXD引脚对应TTL的RXD

第三步 疑难排查

找到引脚后,焊好排针, 然后用USB转TTL连接到电脑。

打开Serial,选择COM口,填写波特率,启动路由,正常的显示出了启动信息,但是发现有正常的启动路由信息输出,但输入却没有响应,检查路由硬件。

这款路由芯片是MT7628AN,找到了芯片的DataSheet。发现147、148分别对应TXD和RXD。

观察

首先,RXD、TXD等引脚最终都会接入CPU,在物理上来说,串口引脚和芯片引脚有一条处于通路的电路。怀疑厂商在出厂时,将RXD到芯片的电路做了断路处理。

1、验证猜想

前面已经找到了TXD的芯片引脚,拿出万用表开始检查电路吧。

将万用表调整到蜂鸣档位,将万用表的表笔一只放在芯片147引脚另一只放在找到的TXD引脚,这时传来持续的滴滴声响,表示线路是相通的,前面的都是正确的。再用相同的方法测试芯片148和RXD的时候则没有声响,果然被厂商做了处理。

2、找出问题

观察调试引脚附近一共有三个电阻R89、R18、R288。将万用表调至蜂鸣档测试。

R89电阻属于TXD线路,R18电阻属于GND线路,R288有二个焊点,但没有焊上电阻。芯片148 号RXD引脚到第一个焊点线路为通路,UART引脚(RXD)到第二个焊点为通路。第一个电阻和第二个焊点为断路,问题很简单了,这里有一个电阻未焊接。

3、解决问题

这里电阻的主要作用为分压。由于我手上并没有电阻,用点简单粗暴的办法,点上一点焊锡吧。拿出电烙铁和焊锡丝将R288的二个焊点焊接上。给路由通电,接入电路,正常输入。

启动信息 

输入

看雪ID:maxk

https://bbs.pediy.com/user-449241.htm

本文由看雪论坛 maxk 原创

转载请注明来自看雪社区

往期热门回顾

1、C/C++反混淆方法

2、APICloud解密本地资源到逆向APP算法到通用资源解密

3、我的微信数据监控研究发展过程

4、网络沙场大点兵!2019 WCTF世界黑客大师赛鸣锣开战

5、如何实现 Https拦截进行 非常规“抓包”

京华结交尽奇士,意气相期矜豪纵。今夏与君相约看雪,把酒言欢,共话安全技术江湖梦。

10大议题正式公布!第三届看雪安全开发者峰会重磅来袭!

相关文章

  • 路由器基本调试一 UART定位

    在做IoT分析的时候,拿到设备的UART接口然后进行调试,这是一个很常见的操作。 UART至少包含4个引脚公共引脚...

  • Android UART触摸框调试

    在Android系统里调试UART口触摸框时,需要使用到Linux内核的SERIO框架,涉及的配置项为CONFIG...

  • lldb常用命令与调试技巧

    一、基本介绍 LLDB是个开源的内置于XCode的调试工具,它能帮助我们在开发中更快的定位和调试bug,无论正向和...

  • 树莓派:通过红外控制蓝牙音乐播放

    【参考资料】树莓派学习笔记——UART使用linux下串口调试(只用shell) 本文的目的是在上一篇文章(树莓派...

  • UART接口

    认识UART接口UART详解---简单的讲:(UART与COM) 嵌入式里面说的串口,一般是指UART口, 但是我...

  • 小白硬件常识——URAT总线

    UART是通用异步串行数据总线,是一种全双工传输总线。 UART在单片机中是最基本的配置,作为单片机的串口,它有T...

  • 【HAL库】STM32上手体验 之 UART 串口应用

    【HAL库】STM32上手体验 之 UART 串口应用 串口是非常方便的调试工具,如果没有串口很多程序只能根据可见...

  • Nginx基本属性配置详解

    . Nginx服务的基本配置 1.1 用于调试进程和定位问题的配置项 是否以守护进程的方式运行nginx # 默认...

  • GPIO 模拟Uart 通信 (soft uart/serial

    GPIO 模拟Uart 通信 (soft uart/serial) 在Uart不够用的时候可以通过GPIO 来模拟...

  • 12.19每日总结

    今天上午老师为我们讲了是关于一些怎么用Python,平常都是用窗口调试的,那个还是不太了解,下午老师讲的是UART...

网友评论

    本文标题:路由器基本调试一 UART定位

    本文链接:https://www.haomeiwen.com/subject/vgztlctx.html