TI中文支持网
TI专业的中文技术问题搜集分享网站

c280xx电机控制程序中关于电流电压采样的疑惑(_IQ12toIQ(AdcResult.ADCRESULT1x)

各位大神:

谁能帮忙解读一下,如下:

 clarke1.As = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT1)-offsetA); // Phase A curr.
 clarke1.Bs = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT2)-offsetB); // Phase B curr.
 CLARKE_MACRO(clarke1)

其中_IQ12toIQ(AdcResult.ADCRESULT1)是怎么来的,为什么是_IQ12toIQ而不是_IQ14toIQ或者_IQ16toIQ,

想不通啊,这个数据类型是 UINT16  AdcResult.ADCRESULT1 范围是0~65536,而实际取值时只能取到0~4096,这是什么意思呢?

请高手帮忙解读!

liming Liu:

回复 Jay:

谢谢Jay的解答,_IQ12toIQ(N)可以理解为先把N变成Q12格式,然后再从Q12变换成Q24,包含了两步运算!

另外,问个问题,IQMATH的这些函数比如,_IQ12toIQ(N),_IQmpy2等可以看到他们的源代码么?

各位大神:

谁能帮忙解读一下,如下:

 clarke1.As = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT1)-offsetA); // Phase A curr.
 clarke1.Bs = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT2)-offsetB); // Phase B curr.
 CLARKE_MACRO(clarke1)

其中_IQ12toIQ(AdcResult.ADCRESULT1)是怎么来的,为什么是_IQ12toIQ而不是_IQ14toIQ或者_IQ16toIQ,

想不通啊,这个数据类型是 UINT16  AdcResult.ADCRESULT1 范围是0~65536,而实际取值时只能取到0~4096,这是什么意思呢?

请高手帮忙解读!

Jay:

回复 liming Liu:

_IQ12toIQ(N)在头文件里就可以找到对应的源代码,因为这个很简单。

_IQmyp2没有Release源代码出来。

赞(0)
未经允许不得转载:TI中文支持网 » c280xx电机控制程序中关于电流电压采样的疑惑(_IQ12toIQ(AdcResult.ADCRESULT1x)
分享到: 更多 (0)