目次
五、TPS73625チップ負荷調整率テスト
1. 試験原理
電圧レギュレータを選択するとき、多くの場合、その重要なパラメータの 1 つである負荷容量に注意を払います。負荷容量とは、実際の出力電圧と理論上の出力電圧の間の限られた偏差範囲内で最大電流を出力する LDO の能力です。しかし、実際には、図に示すように、負荷が大きくなるほど、LDO の出力への影響も大きくなります。負荷レギュレーション率は、異なる /OUT によって引き起こされる出力電圧変化の比率 (理論上の出力電圧に対する) を特徴付けるために使用されます。LDO の負荷レギュレーション レートが小さいほど、負荷外乱を抑制する LDO の能力が高くなります。
2. 試験概要図
3. テスト手順
(2) PPMU リソースを使用して EN ピンに 2V を印加します
(3) DPS リソースを使用して、IN ピンに 3.5V を印加します。
(4) BPMU の「FIMV」動作モードを使用して、OUT ピンに -1mA の電流を流して、その電圧 stMeasValue1 を測定します。
(5) BPMU の「FIMV」動作モードを使用して、OUT ピンに -10mA の電流を流して、その電圧 stMeasValue2 を測定します。
(6) K4 を閉じて 6.25Ω 負荷を選択し、この時の OUT 端子電圧値 stMeasValue3 を測定します。
(7) オームの法則に従って最大出力電流を計算します。
(8) 負荷変動の計算
4. テストコード
USER_CODE void LDR_TEST() {
TEST_BEGIN
// TODO Edit your code here
//定义变量存储测试结果
vector<ST_MEAS_RESULT> stMeasValue1,stMeasValue2,stMeasValue3;
//使用PPMU资源给EN引脚提供2V电压
ppmu.Signal("EN").SetMode("FVMI").VoltForce(2.0).CurrRange(40e-3).Execute();
//使用DPS资源给IN引脚施加3.5V电压
dps.Signal("IND").SetMode("FVMI").VoltForce(3.5).CurrRange(40e-3).CurrClamp(0.5, -0.5).Execute();
//使用BPMU资源向OUT引脚施加-1mA电流并测量输出电压
bpmu.Signal("OUTB").SetMode("FIMV").CurrForce(-1.0e-3).CurrRange(2.5e-3).Clamp(6.5, -2.0).Execute();
//测量OUT引脚电压值
sys.DelayUs(1000);
bpmu.Signal("OUTB").Measure(stMeasValue1);
//使用BPMU资源向OUT引脚施加-10mA电流并测量输出电压
bpmu.Signal("OUTB").SetMode("FIMV").CurrForce(-10.0e-3).CurrRange(40e-3).Clamp(6.5, -2.0).Execute();
//测量此时OUT引脚的电压值
sys.DelayUs(1000);
bpmu.Signal("OUTB").Measure(stMeasValue2);
//复位
bpmu.Signal("OUTB").SetMode("FIMV").CurrForce(0.0).Execute();
bpmu.Signal("OUTB").SetMode("FNMV").Execute();
sys.DelayUs(10000);
//闭合K4选择6.25Ω负载
cbit.Signal("K4").SetOn();
sys.DelayUs(8000);
//测量此时OUT引脚电压
bpmu.Signal("OUTB").Measure(stMeasValue3);
//计算最大输出电流
double IMAX = stMeasValue3[0].dbValue / 6.25*1000;
//计算负载调整率
stMeasValue1[0].dbValue = ((stMeasValue3[0].dbValue - stMeasValue1[0].dbValue)/(stMeasValue1[0].dbValue*IMAX))*100;
stMeasValue2[0].dbValue = ((stMeasValue3[0].dbValue - stMeasValue2[0].dbValue)/(stMeasValue2[0].dbValue*IMAX))*100;
//对计算的结果进行分BIN操作
binObj.CheckResultAndBin(0, stMeasValue1, 1);
binObj.CheckResultAndBin(1, stMeasValue2, 1);
//对EN,IN引脚进行复位
dps.Signal("IND").SetMode("FVMI").VoltForce(0.0).Execute();
dps.Signal("IND").SetMode("FNMV").Execute();
ppmu.Signal("EN").SetMode("FVMI").VoltForce(0.0).Execute();
ppmu.Signal("EN").SetMode("FNMV").Execute();
sys.DelayUs(10000);
//闭合K4
cbit.Signal("K4").SetOff();
sys.DelayUs(8000);
TEST_ERROR
binObj.HandlerException(0);
TEST_END
}