专注于武汉中小企业服务解决方案提供商

电脑维修、布线、安防监控、数据恢复、采购、回收

所属分类 > 家电维修 > 正文

从HackRF规划失误中,学习工程师Debug的思路!(下)

编辑:rootadmin
上回书说到,大量的HackRF被检查出“先天顽疾”——在生产的过程中,部分HackRF不能通过USB下载固件。而作者发现,似乎存在问题的板子,上面都有一个不能点亮的LED……

整理分享从HackRF规划失误中,学习工程师Debug的思路!(下) ,希望有所帮助,仅作参考,欢迎阅读内容。

内容相关其他词:,内容如对您有帮助,希望把内容链接给更多的朋友!

从HackRF规划失误中,学习工程师Debug的思路!(下)

这个LED灯是用来指示HackRF的发射的。和想象中的有所不一样,这个LED直接地连接在了HackRF射频部分的电源上面。电源电压为3.3V时,LED完全导通;而当电源电压为1.5V以下时,LED完全截止。处于两者之间的电压都会使得LED微弱发光,但这样的电压不够以推动射频部分工作。为什么这样的状态就能使得Flash下载正常完成呢?

经过一番搜索,我发现该部分电路理论上应该将供电VAA与总体电源Vcc断开,但在MOSFET上有时会透过一些微弱的电流。不管是移除控制VAA的MOS管Q3、滤波器FB2都能够使得不能烧写的问题消失,也就是说,如果你将射频部分完全断电,不能下载程序的问题就不存在了!——这听起来和我们一开始估计的“Flash芯片导致烧写错误”相距甚远,不过距离*越来越近了!控制MOS从而控制VAA的信号是低电平使能的VAA_ENABLE,它由单片机的一个GPIO口控制,用来控制这块软件定义*电板的射频部分。为了复现问题,我短暂地拉低这个引脚,问题便如期而至。看起来这个引脚的变化就是罪魁祸首,不过我仍搞不清楚为什么有些时候这个引脚会被启动。我将好板上的单片机和坏板上的单片机进行交换,问题依旧——看起来像是纯硬件的问题而非单片机的问题。我尝试着在VAA和VCC之间增加一个1千欧的电阻以部分充电VAA开关部分内的电容,大部分电路板都通过这种方式搞定了问题,但我仍未找到为什么VAA会被意外触发。为了调查这个问题,我在程序里再次布下Watch,观察GPIO寄存器以确定第一次触发GPIO写*作的程序位置——令我感到吃惊的是,第一次触发的位置并不是由厂商提供的DFU下载程序,而是我自己写的固件,在RAM中执行的程序指针位置。明明RAM已经被*了,为什么它还会执行?我忽然意识到,RAM被*可能只是漏洞所带来的结果,而非引发漏洞的原因!

检查过自己的代码之后,现在我们就可以还原事情的*:在电路驱动的时候,初始化的过程会拉低VAA_ENABLE,使得射频部分的MOSFET导通,对后级C电容充电,这个过程会使得Vcc短暂地下降,而下降的幅度因板而异——实际上,在原型和前几批电路板中,这个问题都没有出现。当充电完成后,LED会完全亮起。但在这批板的某一些型号中,Vcc下降的幅度更多,使得单片机由于电压降的原因而重新启动,使得VAA_ENABLE信号被意外拉高,此时,C电容的充电不充分,LED会微弱地亮起。而此时,单片机的重新启动会使得RAM中部分数据遗失,造成了“RAM*导致了Flash下载失败”的假象。而当LED已经微弱亮起、电容部分充电后,再次手动重新启动单片机时,拉低VAA_ENABLE的*作的充电电流所造成的电压降就不会使得单片机再次重新启动。

想搞定这个问题,首要的就是减少充电电流过大导致电压下降太多的问题。最终,HackRF的固件通过多次切换VAA_ENABLE,分批多次对电容小电流充电的方式搞定了这个问题。电子规划的迷人(烦人)之处正是如此,看上去针对某个器件的Bug的产生并不一定是这个器件本身的问题——甚至有可能都不是硬件的问题。搞定这样的问题一方面需要细心、另一方面也需要多做、多调、充分的调试经验和发散思维!本文为监听电*微信公众平台文章。详细内容及高清大图请查阅《*电》*。版权所有,欢迎个人转发至朋友圈。公众号、报刊等转载请联系授权。…………………………………………………

标签: 从HackRF规划失误中,学习工程师Debug的思路!(下)


本文链接地址:https://www.iopcc.com/jiadian/50781.html转载请保留说明!

上一篇:这个618这台电脑可以带回家——火影X9 PLUS体验 (618买电脑划算吗)

下一篇:比较三种PCB接地方式 (pcb中的接地的部分怎么处理)

推荐内容:

pwm直流电源控制器电路图详解 (pwm直流调速电源)

pwm直流电源控制器电路图详解 (pwm直流调速电源)

时器IC周围的电路根据公式产生:占空比=((R1+(VR1/2)/(R1+R2+VR1))x%二极管D1用于旁路电阻R2和VR1“下部”部分有 ...

美的MC-SY1913电磁炉,上电后出现“报警不加热”维修故障 (美的mc一ep208电磁炉原理图)

美的MC-SY1913电磁炉,上电后出现“报警不加热”维修故障 (美的mc一ep208电磁炉原理图)

上电后出现“报警不加热”【故障】:测LM第8脚反相输入端对地电压偏低,(正常为+1.2V)经检查后发现电容器C漏电 ...

荣耀终于要发布新手机了!但新手机却不是荣耀20 (荣耀预计发布手机)

荣耀终于要发布新手机了!但新手机却不是荣耀20 (荣耀预计发布手机)

北京发布荣耀i,注意是i,而不是网友们期待已久的荣耀。从官方宣传*可以看出这款荣耀i主打的是它强大的*功能,前 ...

京东物流居然给员工配置外骨骼机器人 (京东物流准不准)

京东物流居然给员工配置外骨骼机器人 (京东物流准不准)

事局*兼执行官刘强东发布了一则*,晒出京东物流研发的一套酷炫“外骨骼机器人”,据称可以减轻一线员工的劳作强 ...

怎么重启路由器ip地址(路由器的ip的设置方法) (笔记本怎么重启路由器)

怎么重启路由器ip地址(路由器的ip的设置方法) (笔记本怎么重启路由器)

由器怎么设置路由器亮红灯哪种故障路由器登录入口和光猫的区别路由器怎么重启路由器怎么连接路由器桥接教程详 ...

一个猫怎样能连接三个路由器(猫有三个接口怎么连路由器) (一个猫怎样能连两台电脑)

一个猫怎样能连接三个路由器(猫有三个接口怎么连路由器) (一个猫怎样能连两台电脑)

由器怎么设置路由器亮红灯哪种故障路由器登录入口和光猫的区别路由器怎么重启路由器怎么连接路由器桥接教程详 ...

采用STV6888机芯彩色显示器屏显不正常的检修思路 (st8007机芯)

采用STV6888机芯彩色显示器屏显不正常的检修思路 (st8007机芯)

OSD菜单一闪即逝,无法调整相应设置内容这类问题多是因为显示器内部的CPU引脚氧化生锈引起的,这种方法解决起来 ...

手机厂商最高快充对比 苹果、三星被完爆 (手机最快的运行速度是多少g)

手机厂商最高快充对比 苹果、三星被完爆 (手机最快的运行速度是多少g)

充电五分钟,通话两小时”相信很多人都听过这句广告词。这对日常离不开定位器的用户来说,巴不得一分钟充满*电 ...

小白一键重装系统安装失败怎么维修 (小白一键重装系统win10)

小白一键重装系统安装失败怎么维修 (小白一键重装系统win10)

败该如何维修呢?不要担心,如果一键重装*失败了,大家其实可以换一种重装方法再尝试一次的,比如使用U盘重装*等 ...

独立显卡排行榜天梯图2022最新 (独立显卡排行榜天梯图2022)

独立显卡排行榜天梯图2022最新 (独立显卡排行榜天梯图2022)

了正常,这时候也是重新入手显卡最好的时机。今天小编就给大家带来了*显卡排行榜天梯图。这个天梯图可以很直观 ...

Copyright © 2023 武汉电脑维修 All Rights Reserved.

鄂ICP备2023003026号

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢!邮箱: opceo@qq.com