This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F280039C:有什么方法可以减少 CLA 中的执行时间?

Guru**** 2778245 points

Other Parts Discussed in Thread: TMS320F280039C

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1419004/tms320f280039c-any-way-to-reduce-execution-time-in-cla

器件型号:TMS320F280039C

工具与软件:

您好!  

我使用 TMS320F280039C 制作相移全桥转换器。

我将按如下所示在 CLA 中运行电压控制器。

电压控制器执行时间为3 μ s。  运行 CLA 的频率为300kHz。

我想缩短电压控制器执行时间、以提高 CLA 频率。

当我检查执行时间时、需要很长时间才能得到 ADC"filter1Result[0]= PSFB_LVBUS_FB"

有什么方法可以减少 CLA 中的执行时间?

__attribute__(( interrupt )) void Cla1Task1 ( void )

//取消注释以在连接到调试器时调试 CLA
//___ mdebugstop();

filter1Result[0]= PSFB_LVBUS_FB;

PSFB_vLVBus_sensed_pu_cla =((float32_t) filter1Result [0]* PSFB_ADC_PU_SCALE_FACTOR;

PSFB_ERROR_vLVBus_pu_CLA = PSFB_vcommand_set_pu - PSFB_vLVBus_sensed_pu_cla;

//运行补偿器
PSFB_ICommand_Set_PU_CLA = DCL_runDF22_L2 (&PSFB_gv_cla、PSFB_error_vLVBus_pu_cla);

PSFB_saturation_flag_cla = DCL_runClamp_L1 (&PSFB_ICommand_Set_PU_CLA、PSFB_cntlMax_CLA、PSFB_cntlMin_CLA);

如果(0 = PSFB_saturation_flag_cla)

DCL_runDF22_L3 (&PSFB_gv_cla、PSFB_error_vLVBus_pu_cla、PSFB_icommand_Set_pu_cla);
}


PSFB_irampmax_set_cla = PSFB_ICommand_Set_pu_CLA *(PSFB_IRAMPMAX_SET_RATIO);


PSFB_HAL_clearPWMInterruptFlag (PSFB_PWM8_CLA_BASE);
}

谢谢你。

此致、

Sangmo、Kim。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您可以打开反汇编视图并查看此代码行使用了哪些 CLA 指令/多少条指令? 这可能表明该行执行所需时间太长的原因。

    此致、

    Delaney