在实际做项目的过程中,我创造电路和代码可以在短韶光内完成,绝大部分韶光是用在了打消故障上面。连续好几天找不到故障缘故原由是非常常见的。
因此,节制必要的调试技巧是十分有必要的。我根据自己的事情履历,总结出七条调试规则。

一,联系FAE

FAE全称Field Application Engineer,也叫现场技能支持工程师、售前售后做事工程师,是芯片或者模块厂家为了方便开拓者利用产品而设置的岗位。他们长年累月地处理客户反馈的问题。如果能和他们取得联系,会非常有利于开拓者定位问题。
比如,我曾经利用合泰的一款单片机。在更新程序的时候,我创造有时候烧录正常,有时候烧录不进去。打消了软件版本的问题,焊接的问题,打仗不良的问题等等,依旧如此。
后来我就和合泰的FAE取得联系,我把实际情形见告了FAE。不到两分钟他就帮我找到了缘故原由,原来是下载用的杜邦线过长了。如果没有他的帮助,我还得花费更长的韶光来办理这个问题,乃至可能办理不了。
二,熟习调试工具
如果对调试工具熟习,会非常有利于定位问题。反之,如果对工具不熟习,不仅发挥不了工具的浸染,乃至带来新问题。
比如,我曾经调试一个串口通讯函数。通过电脑上的串口助手软件发送数据至单片机。调试了良久,单片机依旧不能精确处理我发送的数据。
找了良久,原来串口助手软件有一个选项——“发送新行”。当这个选项被勾选的时候,会在发送的数据末端加上“0x0d”和“0x0a”。以是,实际发送的数据并不是我设定的数据,单片机当然不能精确地处理。
以是,对付常见的工具必须非常熟习才可以。
三,找人谈论
纵然别人不能帮忙办理问题,找人谈论也是有代价的。
比如,我曾经调试一个单片机的I2C通讯。由于我对那款单片机以及I2C协议不足精通,导致我很永劫光实现不了数据的正常通讯。越来越焦虑,越来越焦急,更找不出故障缘故原由。
我找同事一起谈论,同事虽然也没有想到故障缘故原由,但是他提出了可以不用I2C,改用串口通讯。后来顺利地完成了任务,争取了韶光。
碰着故障的时候,尤其是韶光很紧迫的情形下,会让人有压力,难以跳出自己的思路。如果能和别人一起谈论的话,纵然办理不了问题,也会有不一样的视角。
四,检讨焊接
硬件正常是产品正常事情的条件。从正规渠道购买的器件,芯片在出厂时都经由了出厂测试,一样平常不会有问题。如果设计也采取了厂家推举的设计方案,那么硬件的故障大概率涌如今焊接上面。
这就须要担保电路板表面清洁、干净,焊点没有突出等等。可以用万用表检讨焊接是否正常,用洗板水洗濯电路板表面。
五,各个击破
在接项目的时候,我创造很多客户喜好把功能做的非常全面。比如,我最近做的一个电炉项目,客户给电炉上添加了蓝牙音响、手机充电、手机APP掌握等功能。
当功能越来越多的时候,全体设备就会变得臃肿。涌现问题更加难以定位。这就须要把产品分成一个个的小部分。每个部分只管即便做到独立,接口清晰。
当全体系统涌现问题的时候,先去定位到哪个小的部分出了问题,然后再去办理这个部分涌现的问题。这就把大的问题分解成小的问题,更有利于办理。
六,理解基本事理
要想顺利办理产品的故障,就有必要理解每个器件的基本事情事理。反之,纵然通过更换或者不断考试测验办理了问题,也是治标不治本,有可能还会涌现。
比如,我调试一个单片机ADC功能的时候,输出的数据和理论值并不一致。由于我知道ADC的事理,以是立时就能想到是参考电压的问题。
器件那么多,手册那么厚,资料看不完,知识学不尽。若何才能捉住重点,快速地理解基本事理呢?
我的履历是,至少要弄清楚器件常见技能参数的意义。比如,运放的共模抑制比,三极管的集电极电流,电源的开关频率等等。
七,阅读手册
碰着技能问题的时候,很多人喜好通过搜索引擎来获取答案。搜索出来的信息质量参差不齐,有的乃至是缺点的。
比如,曾经利用Atmega的一款单片机。在烧录过程中涌现问题。我通过百度找到了很多资料,但是很多都很宽泛。比如,检讨接线、检讨电源是否正常等等。
后来我阅读烧录器AVR ISP的技能手册。上面先容了每个指示灯的详细浸染,闪几下代表什么意思,以及每个报错的可能缘故原由等等。有了这个威信并且详确资料的帮助,很快地就定位了问题。比用搜索引擎快了很多。
结语
总之,对一个工程师来说,调试能力是必不可少的基本功。只有多总结调试履历,不断提升办理故障的能力,才能让自己在职业发展的路上越走越远。






![[转好文]某产品GPS接口浪涌故障整改案例—— 单向和双向TVS的选择_浪涌_电流 [转好文]某产品GPS接口浪涌故障整改案例—— 单向和双向TVS的选择_浪涌_电流](http://www.iirqv.cn/zb_users/cache/ly_autoimg/m/MzQ1NTc.png)

