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.
您好!
我对 InstaSPIN 项目和实验室有疑问。
具体而言、它位于 Lab10a (过调制)和 Lab10c (带 fpu32的 Lab10a)上。
我发现 mainISR()在 Lab10a 和 Lab10c 之间有一些差异。
------------------------------------------------------------------
Lab10a 的 mainISR()中的代码片段如下:
if (measurableShuntThisCycle > two_PHASE_measurable)
{
gAdcData.I.value[0]= gIavg.value[0];
gAdcData.I.value[1]= gIavg.value[1];
gAdcData.I.value[2]= gIavg.value[2];
}
我对该代码片段的分析 如下:
(1) measableShuntThisCycle 的变量具有枚举的数据类型。 two_phase 可测量的常量等于2、而 all_phase 可测量的常量等于1。
(2)因此、除非 针对 高负载电流激活过调制、否则大多数情况下都不能执行上述代码片段。 在这里、 我的 PCB 具有三个低侧分流电流测量的配置。
同时,Lab10c mainISR()中的代码片段如下:
if (忽略 ShuntThisCycle > USE_ALL)
{
gAdcData.I.value[0]= gIavg.value[0];
gAdcData.I.value[1]= gIavg.value[1];
gAdcData.I.value[2]= gIavg.value[2];
}
我对该代码片段的分析 如下:
(1) ignoreShuntThisCycle 的变量具有枚举的数据类型。 use_all 的常量等于0。
(2)因此、始终执行上面列出的代码片段。
----------------------------------------------------------------
请评论我对这些代码段的分析。
为什么 Lab10a 和 Lab10c 使用与上述代码片段相关的不同 mainISR()函数?
感谢您的指导。
此致、
JS Yoo
没错。 lab10a 使用了更新算法、但 lab10c 没有这样做。 如果要使用过调制函数、可以参阅 lab10a。
罗燕明、您好!
感谢您的指导。
此问题已解决。
使用平地机、
JS Yoo