ipark.c
来自「用freescale公司的DSP56F8013芯片实现的PMSM的SVPWM 驱」· C语言 代码 · 共 45 行
C
45 行
#include "Cpu.h"
#include "Events.h"
#include "Ipark.h"
extern int d1; /* Q6 */
extern int q1; /* Q6 */
extern int alfa; /* Q6 */
extern int beta; /* Q6 */
extern int theta;
extern int sina[180];
extern int cosa[180];
extern bool negative;
void Ipark(void) /* Q6 */
{
int temp16;
int temp17;
long int temp32;
if(theta>=180)
{
theta=theta-180;
negative=1;
}
temp32=(L_mult(d1,cosa[theta]))>>16; /* Q6 */
temp16=(int)temp32;
temp32=(L_mult(q1,sina[theta]))>>16; /* Q6 */
temp17=(int)temp32;
alfa=temp16-temp17; /* Q6 */
temp32=(L_mult(d1,sina[theta]))>>16; /* Q6 */
temp16=(int)temp32;
temp32=(L_mult(q1,cosa[theta]))>>16; /* Q6 */
temp17=(int)temp32;
beta=temp16+temp17; /* Q6 */
if(negative==1)
{
alfa=-alfa;
beta=-beta;
negative=0;
theta=theta+180;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?