主题中讨论的其他器件:TMS320F28379D、 controlSUITE、 SFRA
大家好、
我们的客户在 TMS320F28379D 电路板上生成正弦信号时遇到问题。 请参阅下面的输出波形作为参考。
根据我们的客户、
"我的目标是在 TMS320F28379D LaunchXL 板中使用 SVGEN 宏。 该宏的输入信号必须采用正弦波形的形式
我正在使用我的代码生成波形:
#include "IQmathLib.h"
#include
#include
int whilecount=0;
#define GLOBAL_Q 24.
_iq24 angl1;
float t=0;
双 Ualpha 1;
Double Ubeta1;
双 TA1、TB1、TC1;
浮点 x、y、z、angl、pi = 3.14156;
双 x1、y1、z1;
_iq24 si、co;
_IQ24 _IQsin (_IQ angl1);
double abc1、abc2、abc3、abc4;
float i1、aaa[600];
INT J1 = 0;
/*void main (void)
{
}
*
SVGENDQ svgen_dq1 = SVGENDQ_DEFAULTS;
void main (void){
// void 中断 periode_interrupt_isr ();
while (1)
{
abc1 = sin (0);
abc2 = sin (pi/6);
abc3 = sin (pi/2);
abc4 = sin (3*pi/2);
ANGL=(sin ((180*t)/PI));
Si =_IQ (angl);
CO =_IQ (angl);
DelayU(2000*1000);
SVGENDQ svgen_dq1;
SVGEN_MACRO (svgen_dq1);
Ualpha 1 =_IQ (11.101);
Ubeta1 =_IQ (10.110);
svgen_dq1.Ualpha = Ualpha1;//将输入传递到 svgen_dq1
svgen_dq1.Ubeta = Ubeta1;//将输入传递到 svgen_dq1
//svgen_dq2.Ualpha = Ualpha2;//将输入传递到 svgen_dq2
//svgen_dq2.Ubeta = Ubeta2;//将输入传递到 svgen_dq2
SVGEN_MACRO (svgen_dq1);//调用 svgen_dq1的计算宏
//SVGEN_MACRO (svgen_dq2);//调用 svgen_dq2的计算宏
TA1 = svgen_dq1.Ta;//访问 svgen_dq1的输出
Tb1 = svgen_dq1.TB;//访问 svgen_dq1的输出
TC1 = svgen_dq1.TC;//访问 svgen_dq1的输出
t = t+0.01;
whilecount++;
}
//返回;
}"
即使 abc1、abc2、abc3和 abc4也不会给出正确的值。 它们始终返回0
我还包括"math.h"库
此致、
Danilo