分享
TESTGUIDE(模块测试指南)
输入“/”快速插入内容
TESTGUIDE(模块测试指南)
用户4812
用户4812
开发测试模块背景
超级电容主控板验证成功后,需要进行多板制作,以满足两台步兵,一台英雄的需要,而以往的调试过程往往需要在代码行中寻找参数设计接口,这对于调试者来说,特别是不熟悉代码的调试者,往往会带来很多不便,不仅需要花费时间去进行代码学习,而且在修改参数的时候极有可能会不小心改动源代码的其他模块,综合导致调试效率的降低或者引发烧板的问题造成硬件资源的浪费,而且改动参数过多,甚至需要额外打表记录。
解决方案
基于以上背景,我设计了一个独立于上场版本的测试集,好处是在调试过程中只暴露参数接口和模块使能选项,可以一次性获取和设置全部参数,而不需要在多个文件中进行修改,按照HHL学长设计的调试路径,分为以下几个测试场景:(
所有测试场景都必须保证在辅助电源模块测试成功后才能进行,辅助电源模块测试为传统的电压测试和温度测试,包括12V,5V, 数字3.3V,基准3.3V,模拟3.3V ,温度在24-39左右都行)
调试问题种类划分
硬件类:
电源炸了
📍
1.
焊接连锡短路
2.
虚焊
3.
把板子放在导电体上测试导致的短路
4.
板子有问题(按照顺序可能性越来越小)
信号没有输出
🎼
1.
代码有问题
2.
测试不对(比如没有接地)
3.
板子测试点接触不良,焊油太多,表面氧化
4.
测试设备坏了(eg:万用表表笔接触不良)
在未焊接MOS的情况下,会出现mos驱动芯片有一般输出为0的情况,这是因为MOS没有焊接,高端MOS的D极和S级没有导通,sw节点浮空,高端的HO的电压没有被举起来,就等于G和S之间是空的
软件类:
debug进error了
🚅
1.
代码写错了(变量,宏,数组越界,堆栈溢出,函数参数,变量类型)
2.
代码没错,初始化/调用顺序错误,出现没有初始化直接调用的情况
3.
cubemx配置有问题(一般都是这个-…-)
debug一直有问题
🍞
有可能你编译了没有烧录,有可能既没有编译也没有烧录
调试电流环遇到的问题:
🐶
1.
一定要开FPU,25年12月27日,由于之前编译器崩溃,cmakelist重写,导致的FPU没了,然后程序一直在中断里面跑不出来,导致一直没有开PWM输出,
电容一直没被充电
,但是占空比一直被设置
2.
同样是25年12月27日,依旧是代码问题,已知在电容充电瞬间存在一个瞬间大电流,所以如果开过流保护,就会把mos再次关断,表现的情况也是
电容一直不充电
3.
由于电容组在调试过程中反向升压,将电池端电压抬高了,也可能导致TVS或者电源芯片被击穿,进而导致MOS驱动无法工作,进而导致mos关断,表现得情况也是
电容一直不充电
Ozone问题:
🦊
如果你的Ozone在调试的时候随机出现不同变量顶替,所有变量突然全部置零然后又恢复这一种情况,那么有很大概率,你的jlink接触不良,供电不好,或者连接你的jlink的USB不太好,建议换一条线调试