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.

请问ISR.asm中VloopCtr的作用是什么?

Volt_Loop_Begin:
;Execute Vloop every VoltCurrLoopExecRatio times, defined in Settings.h file ratio=8
MOVW DP,#(VloopCtr)
INC @VloopCtr
CMP @VloopCtr,#VoltCurrLoopExecRatio ;
B VL_SKIP,LT ;
MOV @VloopCtr,#0

以上这段话出现在电压环当中,在调用2P2Z函数之前,先进行这段话的判断。

请问VloopCtr是什么,这段话的作用和目的是什么呢?

  • 您好!

    根据代码的注释可以大概判断,VloopCtr应该是用来设置电压环算法每几次ISR执行一次的计数变量。

  • 您好,

    谢谢您的解答,那么请问这种计数产量是怎么设置的呢?数值去哪里找呢?

    另外请问您设置每几次执行的ISR目的是什么呢?是否链接了电网后面有判断~不清楚这里目的是什么(・・?)

  • 您好!

    例程里已写明:defined in Settings.h file ratio=8

    ;Execute Vloop every VoltCurrLoopExecRatio times, defined in Settings.h file ratio=8

    设置这个ratio的主要目的应该是不一定需要每次进入ISR都执行电压环的计算。

    一般电压环相比于电流环变化不是特别快所以可以设置多次进ISR后执行一次计算,以减小ISR整体计算时间。

  • 非常感谢您的解答,我明白了,祝愉快

x 出现错误。请重试或与管理员联系。