在实际开发项目中总结的硬件调试经验分享 - 调试目标、方法,以及常见调试问题解决

目录

一、硬件调试的四个目标

二、硬件调试心得

三、一块新的板子的调试思路

四、硬件调试,一些网络资料 

五、单片机硬件调试中常见的案例(杂记)


往期系列文章:

1、裸机项目开发经验分享 - 完整开发流程介绍(项目规划与执行、器件选型、资料检索、产品测试思路等)

2、裸机项目代码设计与管理 - 项目程序的组织管理、设计优化思路等经验分享

3、裸机编程与调试 - 在项目中遇到的各类问题,解决经验分享(常见新手问题)

4、在实际开发项目中总结的硬件调试经验分享 - 调试目标、方法,以及常见调试问题解决

5、基于AltiumDesigner软件的PCB,原理图设计完整介绍,项目经验分享 [硬件开发设计]

6、硬件开发设计 - 焊接电路板,介绍焊接概念,焊接步骤,常见错误,难点等

7、电池供电应用中的电源设计:干电池特性了解、LDO与DC-DC选型设计、电流检测方案要点

 

一、硬件调试的四个目标

1、元器件焊接正确(错焊、漏焊、虚焊);多练,能事半功倍;
2、电路的框架连接正否正确;(跳线,挑线);
3、各处的电压是否正确;(器件的好坏、焊接的质量问题);
4、引脚的电平变化是否正确(示波器捉取);
 

二、硬件调试心得

1、良好的焊接能力是硬件调试基础;
2、调试的前提是必须了解好设计原理以及设计注意;
3、切记不要被自己的潜意识蒙骗,理所当然(多点动手,没有什么是必然的)
    a、低功耗FLASH有时拉低有效,有时拉高有效;
    b、LED闪烁功耗为1毫安,潜意识告诉自己LED功耗很小;
    c、触摸芯片损坏,潜意识告诉自己触摸芯片是好的;
4、调试考验的是心态因素以及技术问题;
5、参考成熟的电路的设计十分重要;
6、对比排除法十分适合新手入门(充分利用手上的硬件资源);
7、积累判断器件的好坏能力以及快速拆换技巧;
8、检测是否有电压差来验证电路是否正常;
9、信号注入法,熟悉各个节点的电压分析,善于利用电压表、示波器;
10、绝大多数的错误一般都是短路、断路或者错件;
11、虚焊的现象:完全不导通、导通不良;
12、只有通路情况下才会产生电流和电压;
13、工作条件讲电压;功耗讲电流;(先考虑电压,再考虑电流);
14、清晰万用表的电压测量(并联)、电流测量原理(串联);
15、外购模块的一些固件缺陷以及硬件问题;
16、电源设计部分很重要:1)电源纹波 ; 2)尖峰脉冲;
 
 

三、一块新的板子的调试思路

1:必须熟悉掌握原理图以及PCB图;各个元器件的特性,外围电路的了解(如最小系统、触摸电路的灵敏度电路、读卡天线匹配电路)等;
2:调试步骤:最小系统、UART、GPIO、其它单片机控制逻辑电路;
3:望闻看切;
4:最根源的地方是理解原理图的每一个器件特性;
 
第一:检查程序是否可以下载
    a、检查相关的下载引脚是否正常(存在电压差)
    b、检查芯片是否供电正常
    c、“有时用万用表通一通,有时电路就行了”
 
第二:串口调试
    a、出现乱码可能波特率错误
    b、硬件出错,建议多按几次复位;
    c、有时多次几次,不断摸索就会成功;
 
第三:分模块调试
    a、找出各模块的相关电路;
    b、逐个检查,排除错误;
    c、首先确保元器件无焊接错误;然后判断器件的好坏;最后用示波器或者万用表检测运行状态;
 

四、硬件调试,一些网络资料 

 
1、8051调试实例(keil 2 版本):  http://www.diangon.com/wenku/rd/danpianji/201309/00005986.html
 
2、几点建议: http://www.eeworld.com.cn/mcu/2015/1102/article_23456.html
 
3、硬件调试步骤:  http://www.elecfans.com/emb/danpianji/20120601274722.html
 
4、匠人笔记:       https://wenku.baidu.com/view/fdb4fd7101f69e31433294b6.html
 
 

五、单片机硬件调试中常见的案例(杂记)

1、原理图出错;电流过大(芯片电源与地引脚接反);
 
2、程序烧写不进去;(SWD引脚接反);
 
3、电路短路,焊接好后尽量用万用表测试是否短路(欧姆档);
      a、检查主要IC脚位是否对应;
      b、电源电路是否正常,放大以及开关电路;
      c、二极管特性情况,极有可能是IC脚位不对(封装出错);
 
4、串口调试不通,原因IC虚焊;
 
5、调试射频芯片时晶振不起振
       a、直插晶振供不起,需换四角芯片;
 
6、射频模块读取不了卡片,原因可能有
       a、电感值不对
       b、电容电阻精度不够
       c、联系商家解决(产品提供商)
7、线阻也是影响因素之一;当电流只有几百mA时;重要的影响因素之一
 
8、射频问题,即使很小的影响因素也会导致功能失效(连接线)
 
9、指纹头放置在金属板上有干扰,中断输出不了
      a、联系商家解决(一般都是合作商);
      b、电源不稳定(生地、纹波);
      c、固定板不要动;
      d、指纹头版本不对;
 
10、射频问题:再次回归原理图,PCB图出错;
       a、检查原题图,PCB图;
       b、电压差是否正常;
       c、元器件的好坏;
       d、回归原理图;
 
11、电源线环布太乱导致很多杂波;
 
13、运行电流过大(一般是短路)
 
14、单片机引脚分配时,注意引脚是否为开漏引脚,是的话必须加上拉电阻(103电阻)
      a、LCP824串口选用了开漏脚,导致通讯不良
 
15、有些时候,必须自己去设计实现一定的电路;才会发现理论与实践的差别;
善于实践,善于分析问题(经验越多,直觉越准);请牢记一点:实践的重要性“学会了骑单车,十年后你还会骑;昨天学会的单词,今天可能记不起来了。“
 
16、天线的调谐:振幅不一定与距离成正比;
 
17、焊接技术直接影响调试的进度;
 
18、电机芯片(MX08)容易烧坏;
 
19、语音芯片(NV170D),跳线太长导致不能正常工作;
 
21、语音IC电源干扰到指纹效果;(相互干扰问题是最常见的问题);
       *指纹头固件版本出错,更新版本即可;
 
22、线材导致通讯不良:指纹头(串口通讯);读卡IC通讯(SPI通讯);
 
23、电源供电出错。。。。影响功耗;RX TX引脚常供电,功耗达700uA;
 
24、读卡与指纹头的互相干扰: 解决,各自处理程序隔离处理;
 
25、降压芯片输出非标准3.3V; 调节相应下拉电阻;
 
26、电源滤波很重要;
    a、外加铝电解电容;
    b、NPN控制通断;
 
27、无法复位;复位电路没接上;
 
28、AD采样问题:每次上电AD重新初始化,获取新的参考电压;稳压电路以及采样电路的稳定与精确十分重要;
 
29、AD采样:电压飘逸问题;ADC时钟频率过高;(参考电源不稳定,外接铝电解电容)
 
30、AD  IO口不能用万用表测试,会导致失准;
 
31、AD例程有误,初始化顺序问题导致AD不稳;
 
34、天线调谐(需要软硬联调):
    a、接收电路、匹配电路调节读卡距离;
    b、电路设计、天线设计必须符合设计要求(严格把控);
    c、调节天线的规律:寻找匹配点,根据匹配点向周边扩散;
    d、天线阻抗不匹配问题:a、不断校验失败;b、放置金属壳与外部环境不相同;
    e、LPCD调节灵敏度;
 
36、TSM12芯片复位电路没接,导致读取数据失败;( 注意PS:数据手册上可能没有接复位电路,看需求而定);
 
37、线性差压LDO电源输出不稳定(TL431);
 
38、J-link下载问题(芯片深度睡眠了)(每台电脑不一致);
 
39、IIC接口:
    a、IIC时序问题:读与写必须间隔3ms以上;
    b、硬件IIC卡死在等待应答中 - 解决办法:IIC等待超时复位;
    c、IIC复用问题(延时问题):IIC接口OLED,靠卡出现花屏问题;
 
40、低功耗的那些事:
    a、AD电路电阻焊件出错(导致AD输入参考电压过大,MCU睡眠不了);
    b、中断唤醒脚的配置问题;
    c、干簧管(相当于按键一直按下),导致睡眠功耗大;解决:外加上拉电阻(205);
 
42、不同牌子的24C64内存地址不相兼容;
 
43、焊接工艺导致问题,电气特性错乱,功能絮乱;
 
44、低温导致房门锁不断初始化;原因是某些电容、电阻达到极限温度;
 
45、死机的原因:a、程序跑飞;b、操作内存导致指针、数组越界;
 
46、示波器的周期设置:决定捕捉波形能力,需要用户调节到合适频率;
 
47、电源供电问题:
    a、电压不稳定导致器件不稳定;例:3.3V供电给wifi模块,纹波太大导致发送接收存在问题;
    b、电压不够,单片机运行异常;IIC时行时不行;
 
48、按键不断触发唤醒:
    a、软件调控:按键唤醒后无操作马上睡眠;
    b、硬件调控:外加上拉电阻、对地滤波电容;
 
49、烧录问题,JLink烧录不入,原因是复位电源不稳定;
 
51、OLED模块端子地线没接好,导致主板一直在复位状态;
 
53、J-link烧录速度过快导致程序烧录不成功;
 
54、滤波电容的重要性:AD影响、天线影响;
 
55、恒流源可以设置输出功率:P=U*I;
 
56、继电器串了个电阻限流了,导致通电后也不能正常吸合;
 
57、三极管接上/下拉电阻: http://www.dianyuan.com/article/32346.html
 
58、低功耗处理:
    a、当IO需要长时间接地的应用场景时,可以通过外加上拉电阻(大阻值),此时IO应设计为悬浮输入;
    b、上拉电阻对部分引脚不存在功耗损耗问题,但是对部分引脚存在功耗问题!!!!
 
59、红外管的调试注意避开可见光;
 
60、24C64读写不能超过8字节;
 
61、蜂鸣器:
    a、不同伏数对应不同阻抗的蜂鸣器;体积越大,发声体越好;
    b、驱动电路一定要按照手册的走(S8050接至IO的电阻应为475Ω)!!!;
    c、通电的时长也决定鸣响大小;
 
63、串口调试:a、出现乱码可能波特率错误;b、硬件出错,建议多按几次复位;
 
64、IO调试无非就是高低电平的转换;善于分析波形;
 
65、蓝牙模块连接速度慢,重新选型蓝牙模块;
 
66、指纹模块触摸不灵,电源优化,发指令控制:睡眠前发送指令复位,唤醒复位等措施;
 
67、AD检测电压不稳定,原因是参考电压不稳定,稳压模块作为参考电压的输入;
 
68、简单的PNP NPN的组合电路,实践起来也会困难重重,所以设计电路一定要参考成熟的电路图;
 
69、设置IC的IO口低电平时可能会输出0.8V的电压(理论上也是低电平;每个单片机都有自己的判决电压);
 
70、驱动电路产生的电流不足?重新设计电路(更换更优良的方案处理);
 
71、死机问题,加看门狗;
 
72、串口引脚TX RX接了单片机开漏脚,出现RX正常,TX不正常;解决:外加上拉电阻后正常;
 
 

你可能感兴趣的:(裸机开发)