subo1710 发表于 2023-6-12 14:47:31

分享在实际项目中积累的硬件调试经验 - 调试方法,以及常

文章目录
一、硬件调试的四个目标
二、硬件调试心得
三、一块新的板子的调试思路
四、硬件调试,一些网络资料
五、单片机硬件调试中常见的案例(杂记)
往期系列文章:

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

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

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

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

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

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

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

一、硬件调试的四个目标
1、元器件焊接正确(错焊、漏焊、虚焊);多练,能事半功倍;

2、电路的框架连接正否正确;(跳线,挑线);

3、各处的电压是否正确;(器件的好坏、焊接的质量问题);

4、引脚的电平变化是否正确(示波器捉取);

二、硬件调试心得
1、良好的焊接能力是硬件调试基础;

2、调试的前提是必须了解好设计原理以及设计注意;

3、切记不要被自己的潜意识蒙骗,理所当然(多点动手,没有什么是必然的)
  1)低功耗FLASH有时拉低有效,有时拉高有效;
  2)LED闪烁功耗为1毫安,潜意识告诉自己LED功耗很小;
  3)触摸芯片损坏,潜意识告诉自己触摸芯片是好的;

4、调试考验的是心态因素以及技术问题;

5、参考成熟的电路的设计十分重要;

6、对比排除法十分适合新手入门(充分利用手上的硬件资源);

7、积累判断器件的好坏能力以及快速拆换技巧;

8、检测是否有电压差来验证电路是否正常;

9、信号注入法,熟悉各个节点的电压分析,善于利用电压表、示波器;

10、绝大多数的错误一般都是短路、断路或者错件;

11、虚焊的现象:完全不导通、导通不良;

12、只有通路情况下才会产生电流和电压;

13、工作条件讲电压;功耗讲电流;(先考虑电压,再考虑电流);

14、清晰万用表的电压测量(并联)、电流测量原理(串联);

15、外购模块的一些固件缺陷以及硬件问题;

16、电源设计部分很重要:1)电源纹波 ; 2)尖峰脉冲;

三、一块新的板子的调试思路
调试前提
  1)必须熟悉掌握原理图以及PCB图;各个元器件的特性,外围电路的了解(如最小系统、触摸电路的灵敏度电路、读卡天线匹配电路)等;
  2)调试步骤:最小系统、UART、GPIO、其它单片机控制逻辑电路;
  3)望闻看切;
  4)最根源的地方是理解原理图的每一个器件特性;

第一:检查程序是否可以下载
  1)检查相关的下载引脚是否正常(存在电压差)
  2)检查芯片是否供电正常
  3)有时用万用表通一通,有时电路就行了

第二:串口调试
  1)出现乱码可能波特率错误
  2)硬件出错,建议多按几次复位;
  3)有时多次几次,不断摸索就会成功;

第三:分模块调试
  1)找出各模块的相关电路;
  2)逐个检查,排除错误;
  3)首先确保元器件无焊接错误;然后判断器件的好坏;最后用示波器或者万用表检测运行状态;

四、硬件调试,一些网络资料
1、8051调试实例(keil 2 版本): 单片机软件仿真与调试的方法 - 单片机_电工学习网

2、几点建议:单片机程序调试几点经验-电子工程世界

3、硬件调试步骤: 单片机开发过程中硬件调试技巧 - 单片机 - 电子发烧友网

4、匠人笔记: 单片机程序调试小技巧 - 百度文库

五、单片机硬件调试中常见的案例(杂记)
1、原理图出错;电流过大(芯片电源与地引脚接反);

2、程序烧写不进去;(SWD引脚接反);

3、电路短路,焊接好后尽量用万用表测试是否短路(欧姆档);
  1)检查主要IC脚位是否对应;
  2)电源电路是否正常,放大以及开关电路;
  3)二极管特性情况,极有可能是IC脚位不对(封装出错);

4、串口调试不通,原因IC虚焊;

5、调试射频芯片时晶振不起振
  1)直插晶振供不起,需换四角芯片;

6、射频模块读取不了卡片,原因可能有
  1)电感值不对
  2)电容电阻精度不够
  3)联系商家解决(产品提供商)

7、线阻也是影响因素之一;当电流只有几百mA时;重要的影响因素之一

8、射频问题,即使很小的影响因素也会导致功能失效(连接线)

9、指纹头放置在金属板上有干扰,中断输出不了
  1)联系商家解决(一般都是合作商);
  2)电源不稳定(生地、纹波);
  3)固定板不要动;
  4)指纹头版本不对;

10、射频问题:再次回归原理图,PCB图出错;
  1)检查原题图,PCB图;
  2)电压差是否正常;
  3)元器件的好坏;
  4)回归原理图;

11、电源线环布太乱导致很多杂波;

13、运行电流过大(一般是短路)

14、单片机引脚分配时,注意引脚是否为开漏引脚,是的话必须加上拉电阻(103电阻)
  1)LCP824串口选用了开漏脚,导致通讯不良;

15、有些时候,必须自己去设计实现一定的电路;才会发现理论与实践的差别;

善于实践,善于分析问题(经验越多,直觉越准);请牢记一点:实践的重要性“学会了骑单车,十年后你还会骑;昨天学会的单词,今天可能记不起来了。“

16、天线的调谐:振幅不一定与距离成正比;

17、焊接技术直接影响调试的进度;

18、电机芯片(MX08)容易烧坏;

19、语音芯片(NV170D),跳线太长导致不能正常工作;

21、语音IC电源干扰到指纹效果;(相互干扰问题是最常见的问题);

22、线材导致通讯不良:指纹头(串口通讯);读卡IC通讯(SPI通讯);

23、电源供电出错。。。。影响功耗;RX TX引脚常供电,功耗达700uA;

24、读卡与指纹头的互相干扰: 解决,各自处理程序隔离处理;

25、降压芯片输出非标准3.3V; 调节相应下拉电阻;

26、电源滤波很重要;
  1)外加铝电解电容;
  2)NPN控制通断;

27、无法复位;复位电路没接上;

28、AD采样问题:每次上电AD重新初始化,获取新的参考电压;稳压电路以及采样电路的稳定与精确十分重要;

29、AD采样:电压飘逸问题;ADC时钟频率过高;(参考电源不稳定,外接铝电解电容)

30、AD IO口不能用万用表测试,会导致失准;

31、AD例程有误,初始化顺序问题导致AD不稳;

34、天线调谐(需要软硬联调):
  1)接收电路、匹配电路调节读卡距离;
  2)电路设计、天线设计必须符合设计要求(严格把控);
  3)调节天线的规律:寻找匹配点,根据匹配点向周边扩散;
  4)天线阻抗不匹配问题:a、不断校验失败;b、放置金属壳与外部环境不相同;
  5)LPCD调节灵敏度;

36、TSM12芯片复位电路没接,导致读取数据失败;(注意PS:数据手册上可能没有接复位电路,看需求而定);

37、线性差压LDO电源输出不稳定(TL431);

38、J-link下载问题(芯片深度睡眠了)(每台电脑不一致);

39、IIC接口:
  1)IIC时序问题:读与写必须间隔3ms以上;
  2)硬件IIC卡死在等待应答中 - 解决办法:IIC等待超时复位;
  3)IIC复用问题(延时问题):IIC接口OLED,靠卡出现花屏问题;

40、低功耗的那些事:
  1)AD电路电阻焊件出错(导致AD输入参考电压过大,MCU睡眠不了);
  2)中断唤醒脚的配置问题;
  3)干簧管(相当于按键一直按下),导致睡眠功耗大;解决:外加上拉电阻(205);

42、不同牌子的24C64内存地址不相兼容;

43、焊接工艺导致问题,电气特性错乱,功能絮乱;

44、低温导致房门锁不断初始化;原因是某些电容、电阻达到极限温度;

45、死机的原因:a、程序跑飞;b、操作内存导致指针、数组越界;

46、示波器的周期设置:决定捕捉波形能力,需要用户调节到合适频率;

47、电源供电问题:
  1)电压不稳定导致器件不稳定;例:3.3V供电给wifi模块,纹波太大导致发送接收存在问题;
  2)电压不够,单片机运行异常;IIC时行时不行;

48、按键不断触发唤醒:
  1)软件调控:按键唤醒后无操作马上睡眠;
  2)硬件调控:外加上拉电阻、对地滤波电容;

49、烧录问题,JLink烧录不入,原因是复位电源不稳定;

51、OLED模块端子地线没接好,导致主板一直在复位状态;

53、J-link烧录速度过快导致程序烧录不成功;

54、滤波电容的重要性:AD影响、天线影响;

55、恒流源可以设置输出功率:P=U*I;

56、继电器串了个电阻限流了,导致通电后也不能正常吸合;

57、三极管接上/下拉电阻:三极管开关电路中接下拉电阻都有哪些作用?-电源网

58、低功耗处理:
  1)当IO需要长时间接地的应用场景时,可以通过外加上拉电阻(大阻值),此时IO应设计为悬浮输入;
  2)上拉电阻对部分引脚不存在功耗损耗问题,但是对部分引脚存在功耗问题!

59、红外管的调试注意避开可见光;

60、24C64读写不能超过8字节;

61、蜂鸣器:
  1)不同伏数对应不同阻抗的蜂鸣器;体积越大,发声体越好;
  2)驱动电路一定要按照手册的走(S8050接至IO的电阻应为475Ω)!;
  3)通电的时长也决定鸣响大小;

63、串口调试:
  1)出现乱码可能波特率错误;
  2)硬件出错,建议多按几次复位;

64、IO调试无非就是高低电平的转换;善于分析波形;

65、蓝牙模块连接速度慢,重新选型蓝牙模块;

66、指纹模块触摸不灵,电源优化,发指令控制:睡眠前发送指令复位,唤醒复位等措施;

67、AD检测电压不稳定,原因是参考电压不稳定,稳压模块作为参考电压的输入;

68、简单的PNP NPN的组合电路,实践起来也会困难重重,所以设计电路一定要参考成熟的电路图;

69、设置IC的IO口低电平时可能会输出0.8V的电压(理论上也是低电平;每个单片机都有自己的判决电压);

70、驱动电路产生的电流不足?重新设计电路(更换更优良的方案处理);

71、问题:小概率死机;临时解决:加看门狗;

72、问题:串口引脚TX RX接了单片机开漏脚,出现RX正常,TX不正常;解决:外加上拉电阻后正常;

73、新接指纹模块失灵 - 指纹头固件版本出错,更新版本即可;
结束!

heming2216 发表于 2023-6-12 15:16:44

leslie_aqiang 发表于 2023-6-12 21:02:57

lf2k2022 发表于 2023-6-13 08:37:13

cy_ygs 发表于 2023-6-13 08:40:15

lqsgg 发表于 2023-6-13 08:53:41

xiaolinge 发表于 2023-6-13 09:12:09

13213727957 发表于 2023-6-14 08:54:02

shakencity 发表于 2023-6-14 11:20:41

学习学习

shakencity 发表于 2023-6-14 11:20:48

谢谢
页: [1] 2 3
查看完整版本: 分享在实际项目中积累的硬件调试经验 - 调试方法,以及常