亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? calculate.c

?? 此代碼應用與f2812的通訊程序!!方便用戶編程!
?? C
字號:
#include "Device.h"

#pragma DATA_SECTION(fft, "Var");
CFFT32  fft = CFFT32_32P_DEFAULTS;

//FFT計算三相電壓,三相電流
void CalcAll(void)
{  
	Calc_Complex(ID_Yc_Ua, ID_Yc_Ub, &Yc_Temp[ID_Yc_Ua], &Yc_Temp[ID_Yc_Ub],
		EEPROM_Data[ID_PARM_K_Ua], EEPROM_Data[ID_PARM_K_Ub]);

	Calc_Complex(ID_Yc_Uc, ID_Yc_I1a, &Yc_Temp[ID_Yc_Uc], &Yc_Temp[ID_Yc_I1a], 
		EEPROM_Data[ID_PARM_K_Uc], EEPROM_Data[ID_PARM_K_I1a]);	
	
	Calc_Complex(ID_Yc_I1b, ID_Yc_I1c, &Yc_Temp[ID_Yc_I1b], &Yc_Temp[ID_Yc_I1c],
		EEPROM_Data[ID_PARM_K_I1b], EEPROM_Data[ID_PARM_K_I1c]);

	Calc_Complex(ID_Yc_I0, ID_Yc_I2a, &Yc_Temp[ID_Yc_I0], &Yc_Temp[ID_Yc_I2a],
		EEPROM_Data[ID_PARM_K_I0], EEPROM_Data[ID_PARM_K_I2a]);

	Calc_Complex(ID_Yc_I2b, ID_Yc_I2c, &Yc_Temp[ID_Yc_I2b], &Yc_Temp[ID_Yc_I2c], 
		EEPROM_Data[ID_PARM_K_I2b], EEPROM_Data[ID_PARM_K_I2c]);
}

//計算三相有無功率
void GetUIPQ() 
{   
	GetPQ(ID_Yc_Ua,ID_Yc_I1a, ID_Yc_P1a, ID_Yc_Q1a, ID_K_PQ1_A);
	GetPQ(ID_Yc_Ub,ID_Yc_I1b, ID_Yc_P1b, ID_Yc_Q1b, ID_K_PQ1_B);
	GetPQ(ID_Yc_Uc,ID_Yc_I1c, ID_Yc_P1c, ID_Yc_Q1c, ID_K_PQ1_C);

	GetPQ(ID_Yc_Ua,ID_Yc_I2a, ID_Yc_P2a, ID_Yc_Q2a, ID_K_PQ2_A);
	GetPQ(ID_Yc_Ub,ID_Yc_I2b, ID_Yc_P2b, ID_Yc_Q2b, ID_K_PQ2_B);
	GetPQ(ID_Yc_Uc,ID_Yc_I2c, ID_Yc_P2c, ID_Yc_Q2c, ID_K_PQ2_C);
	
	Yc_Temp[ID_Yc_P1z] = Yc_Temp[ID_Yc_P1a] + Yc_Temp[ID_Yc_P1b] + Yc_Temp[ID_Yc_P1c];//P1z
	Yc_Temp[ID_Yc_Q1z] = Yc_Temp[ID_Yc_Q1a] + Yc_Temp[ID_Yc_Q1b] + Yc_Temp[ID_Yc_Q1c];//Q1z
	Yc_Temp[ID_Yc_P2z] = Yc_Temp[ID_Yc_P2a] + Yc_Temp[ID_Yc_P2b] + Yc_Temp[ID_Yc_P2c];//P2z
	Yc_Temp[ID_Yc_Q2z] = Yc_Temp[ID_Yc_Q2a] + Yc_Temp[ID_Yc_Q2b] + Yc_Temp[ID_Yc_Q2c];//Q2z

}


//
void DoYcSum()
{  
 /*	int    i ,*pYc;
	long   *pYcSum; 
	
  	//int f_phase;
	//long a, b;
	pYc    = Yc_Temp;
	pYcSum = Yc_Sum ;
		
	for(i = 0; i < YC_NUM; i++)
	{
		if (YcTab[i] == -1) break;
		*(pYcSum + YcTab[i]) += *(pYc + YcTab[i]);
	}

	sumi++;

	if(sumi == 16)
	{
		sumi   = 0;
		pYc    = Yc_Ave;
		pYcSum = Yc_Sum;
		
		for(i = 0; i < 65; i++)
		{
			if (YcTab[i] == -1) break;
			if (YcTab[i] == ID_Yc_Fre) continue;
			
			*(pYc + YcTab[i]) = *(pYcSum + YcTab[i])>>4;//求平均(除16)
			*(pYcSum + YcTab[i]) = 0;//清零			
		}
*/		
		
/*
		//===============相位補償=========================
		//相位補償公式  
		//(P+iQ)Exp(iA) = (P + iQ)*(CosA + iSinA) 
		//              = (P*CosA - Q*SinA) + i(P*SinA+Q*CosA)/
		//================================================
		for (i = 0; i < 4; i++)
		{
			f_phase = K_Phase[i] + 100;
			if (f_phase > 200)  f_phase = 200;//phase =  100;
			if (f_phase < 0)    f_phase = 0;  //phase = -100;
			
			a = ((long)Yc_Ave[ID_Yc_P1a+i]*CosTab[f_phase] - (long)Yc_Ave[ID_Yc_Q1a+i]*SinTab[f_phase]) >> 14;
			b = ((long)Yc_Ave[ID_Yc_P1a+i]*SinTab[f_phase] + (long)Yc_Ave[ID_Yc_Q1a+i]*CosTab[f_phase]) >> 14;
			Yc_Ave[ID_Yc_P1a+i] = a;
			Yc_Ave[ID_Yc_Q1a+i] = b;
		}
		//第二路
		for (i = 0; i < 4; i++)
		{
			f_phase = K_Phase[i+4] + 100;
			if (f_phase > 200)  f_phase = 200;//phase =  100;
			if (f_phase < 0)    f_phase = 0;  //phase = -100;
			
			a = (long)(Yc_Ave[ID_Yc_P2a+i]*CosTab[f_phase] - (long)Yc_Ave[ID_Yc_Q2a+i]*SinTab[f_phase]) >> 14;
			b = (long)(Yc_Ave[ID_Yc_P2a+i]*SinTab[f_phase] + (long)Yc_Ave[ID_Yc_Q2a+i]*CosTab[f_phase]) >> 14;
			Yc_Ave[ID_Yc_P2a+i] = a;
			Yc_Ave[ID_Yc_Q2a+i] = b;
		}
		*/

//	}
}

void DDcount()
{   
	//DD_ONE   3,60,000L
  //  static int  bcdd = 0;      //  保存電度標志 
	
	if( Yc_Temp[ID_Yc_P1z] > 10)//第一路正向有功
	{	
		DDu_Temp[ID_DD_DPP1] += Yc_Temp[ID_Yc_P1z];
		if( DDu_Temp[ID_DD_DPP1] > DD_ONE )
		{
			DDu[ID_DD_DPP1]++;
			DDu_Temp[ID_DD_DPP1] -= DD_ONE;
		//	bcdd=1;
		}		
	}
	
	if( Yc_Temp[ID_Yc_P1z] < -10)//第一路反向有功
	{	
		DDu_Temp[ID_DD_DPN1] -= Yc_Temp[ID_Yc_P1z];
		if( DDu_Temp[ID_DD_DPN1] > DD_ONE )
		{
			DDu[ID_DD_DPN1]++;
			DDu_Temp[ID_DD_DPN1] -= DD_ONE;
		//	bcdd=1;
		}		
	}
	
    if(Yc_Temp[ID_Yc_P2z] > 10)//第二路正向有功
	{	
		DDu_Temp[ID_DD_DPP2] += Yc_Temp[ID_Yc_P2z];
		if( DDu_Temp[ID_DD_DPP2] > DD_ONE )
		{
			DDu[ID_DD_DPP2]++;
			DDu_Temp[ID_DD_DPP2] -= DD_ONE;
		//	bcdd=1;
		}		
	}
	
	if(Yc_Temp[ID_Yc_P2z] < -10)//第二路反向有功
	{	
		DDu_Temp[ID_DD_DPN2] -=Yc_Temp[ID_Yc_P2z];
		if(DDu_Temp[ID_DD_DPN2] > DD_ONE)
		{
			DDu[ID_DD_DPN2]++;
			DDu_Temp[ID_DD_DPN2] -= DD_ONE;
		//	bcdd=1;
		}
	}
	
	if(Yc_Temp[ID_Yc_Q1z] > 10)//第一路正向無功
	{
		DDu_Temp[ID_DD_DQP1] += Yc_Temp[ID_Yc_Q1z];
		if( DDu_Temp[ID_DD_DQP1]> DD_ONE)
		{
			DDu[ID_DD_DQP1] ++;
			DDu_Temp[ID_DD_DQP1] -= DD_ONE;
		//	bcdd=1;
		}
	}
	if(Yc_Temp[ID_Yc_Q1z] < -10)//第一路反向無功
	{
		DDu_Temp[ID_DD_DQN1] -= Yc_Temp[ID_Yc_Q1z];
		if( DDu_Temp[ID_DD_DQN1] > DD_ONE)
		{
			DDu[ID_DD_DQN1] ++;
			DDu_Temp[ID_DD_DQN1] -= DD_ONE;
		//	bcdd=1;
		}
	}
	
	if(Yc_Temp[ID_Yc_Q2z] > 10)//第二路正向無功
	{
		DDu_Temp[ID_DD_DQP2] += Yc_Temp[ID_Yc_Q2z];
		if( DDu_Temp[ID_DD_DQP2]> DD_ONE)
		{
			DDu[ID_DD_DQP2] ++;
			DDu_Temp[ID_DD_DQP2] -= DD_ONE;
		//	bcdd=1;
		}
	}
	if(Yc_Temp[ID_Yc_Q2z] < -10)//第二路反向無功
	{
		DDu_Temp[ID_DD_DQN2] -= Yc_Temp[ID_Yc_Q2z];
		if( DDu_Temp[ID_DD_DQN2] > DD_ONE)
		{
			DDu[ID_DD_DQN2] ++;
			DDu_Temp[ID_DD_DQN2] -= DD_ONE;
		//	bcdd=1;
		}
	}	
}


void Calc_Complex(int chn_1, int chn_2, int* pResult1_xb1, int* pResult2_xb1, int k1, int k2)
{
	long a,b,resSqrt; 
	  
	fft.ipcbptr = fri;
	fft.init(&fft);

	CFFT32_brev2(Ach[chn_1], fri, N/2);
	CFFT32_brev2(Ach[chn_2], fri+1, N/2);  //PRE-HALF OF INPUT
	CFFT32_brev2(Ach[chn_1]+1, fri+N, N/2);
	CFFT32_brev2(Ach[chn_2]+1, fri+N+1, N/2);  //BACK-HALF OF INPUT
	
	//fft運算及譜分析
	fft.calc(&fft);
	
	LineComplex[chn_1][REAL] = (int)(fri[2] + fri[62]) >> 1;//fr[k]=fri[2*K];fi[k]=fri[2*K+1];
	LineComplex[chn_1][IMAG] = (int)(fri[63]- fri[3] ) >> 1;
	LineComplex[chn_2][REAL] = (int)(fri[3] + fri[63]) >> 1;
	LineComplex[chn_2][IMAG] = (int)(fri[2] - fri[62]) >> 1; 
	
	//調零
	if(LineComplex[chn_1][REAL] > -100 && LineComplex[chn_1][REAL] < 100) LineComplex[chn_1][REAL] = 0;
	if(LineComplex[chn_1][IMAG] > -100 && LineComplex[chn_1][IMAG] < 100) LineComplex[chn_1][IMAG] = 0;
	if(LineComplex[chn_2][REAL] > -100 && LineComplex[chn_2][REAL] < 100) LineComplex[chn_2][REAL] = 0;
	if(LineComplex[chn_2][IMAG] > -100 && LineComplex[chn_2][IMAG] < 100) LineComplex[chn_2][IMAG] = 0;
	
	a = (long)LineComplex[chn_1][REAL] * LineComplex[chn_1][REAL];
	b = (long)LineComplex[chn_1][IMAG] * LineComplex[chn_1][IMAG];
	resSqrt = qsqrt(a + b);
	*pResult1_xb1 = (resSqrt * k1) >> 13;
	

	a = (long)LineComplex[chn_2][REAL] * LineComplex[chn_2][REAL];
	b = (long)LineComplex[chn_2][IMAG] * LineComplex[chn_2][IMAG];
	resSqrt = qsqrt(a + b);	
	*pResult2_xb1 = (resSqrt * k2) >> 13;
	
	return ;
}

void GetPQ(int chn_1, int chn_2, int ID_YcP, int ID_YcQ, int ID_K)
{
	long a, b;
	long p, q;
	
	//CALCULATE P
	a = (long)LineComplex[chn_1][REAL] * LineComplex[chn_2][REAL];
	b = (long)LineComplex[chn_1][IMAG] * LineComplex[chn_2][IMAG];
	a >>= 8;
	b >>= 8;
	p = (((a+b)>>2)*K_PQ[ID_K])>>12; //功率系數已經在開始已經移3位
	//p /=10;

	//CALCULATE Q
	a = (long)LineComplex[chn_1][REAL] * LineComplex[chn_2][IMAG];
	b = (long)LineComplex[chn_2][REAL] * LineComplex[chn_1][IMAG];
	a >>= 8;
	b >>= 8;
	q = (((a-b)>>2)*K_PQ[ID_K])>>12;
//	q /=10;
	
	Yc_Temp[ID_YcP] = p;
	Yc_Temp[ID_YcQ] = q;
}

/*
void AdjPhase(int group)
{
	int *pYcP,  *pYcQ, *pPhase;
	int i, j, temp1, temp2;
	long a, b;
	long p,q;    
	
	pYcP   = &Yc_Ave[ID_Yc_P1a] + 14*group;
	pYcQ   = &Yc_Ave[ID_Yc_Q1a] + 14*group;
	pPhase = &Yc_Parm_Phase[0] + 4*group;
	
	for(j = 0; j < 4; j++)
	{
		p = *pYcP;
		q = *pYcQ;
		//Auto Adjust Phase
		for(i = 0; i < SIN_NUM; i++)
		{
			temp1 = p - q;
			a = (p*CosTab[i] - q*SinTab[i]) >> 14;
			b = (p*SinTab[i] + q*CosTab[i]) >> 14;
			temp2 = a - b;
			
			if (temp1 < DIM && temp1 > -DIM)
			{
				*pPhase = 0;
				break;
			}
			if(temp1*temp2<=0 && temp2<=DIM && temp2>=-DIM)
			{
				*pPhase = i - 100;
				*pYcP = a;
				*pYcQ = b;
				break;
			}
		}
		pYcP++;
		pYcQ++;
		pPhase++;
	}
}*/
//======================== NO MORE ========================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线porny国产在线看| 国产成人午夜99999| 国产精品青草久久| 久久午夜电影网| 国产亚洲人成网站| 久久精品视频在线看| 久久网站最新地址| 国产精品污网站| 国产精品入口麻豆九色| 中文字幕va一区二区三区| 国产精品你懂的| 亚洲女性喷水在线观看一区| 亚洲免费观看高清完整| 亚洲一区影音先锋| 久久se这里有精品| 国产suv一区二区三区88区| 97se亚洲国产综合在线| 欧美在线观看一区二区| 欧美一级夜夜爽| 久久久精品日韩欧美| 国产精品进线69影院| 亚洲尤物在线视频观看| 麻豆久久久久久久| 丰满少妇久久久久久久| 色噜噜狠狠一区二区三区果冻| 欧美性一二三区| 欧美大片一区二区| 中文字幕第一区二区| 一区二区三区国产| 久久99精品一区二区三区三区| 国产精品综合一区二区三区| 99久久99久久免费精品蜜臀| 欧美色精品在线视频| 精品久久久久久久久久久院品网 | 免费成人在线观看| 成人免费视频网站在线观看| 欧美日韩一区小说| 中文字幕精品在线不卡| 日韩电影在线免费观看| 成人网男人的天堂| 欧美一区二区在线看| 国产精品久久久爽爽爽麻豆色哟哟| 午夜精品aaa| 成人黄色软件下载| 欧美精品一区二区三区四区| 一区二区三区鲁丝不卡| 国产精品一线二线三线精华| 欧美午夜一区二区| 中文字幕日本不卡| 国产精品99久久久| 欧美sm美女调教| 亚洲国产婷婷综合在线精品| 成人性生交大合| 日韩三级中文字幕| 性久久久久久久| 成人v精品蜜桃久久一区| 26uuu欧美| 美女视频黄 久久| 欧美日韩一级二级三级| 亚洲色图丝袜美腿| 成人在线综合网| 国产网站一区二区| 国产一区二区三区免费| 亚洲精品一区二区三区福利| 日韩成人一级片| 日韩欧美国产wwwww| 偷拍亚洲欧洲综合| 精品视频999| 亚洲午夜国产一区99re久久| 在线国产电影不卡| 亚洲综合网站在线观看| 欧美在线观看视频在线| 亚洲午夜av在线| 欧美日韩三级视频| 婷婷国产在线综合| 欧美一卡二卡三卡四卡| 久热成人在线视频| 欧美r级在线观看| 国产精品一卡二| 国产精品视频一二三区| 94-欧美-setu| 亚洲第一综合色| 欧美日韩电影在线| 男男视频亚洲欧美| 久久久午夜精品理论片中文字幕| 国产一区二区三区高清播放| 久久久久久久久99精品| 99精品一区二区三区| 一级日本不卡的影视| 欧美美女直播网站| 卡一卡二国产精品| 中文字幕欧美一| 在线观看视频一区二区| 日韩激情视频网站| 国产欧美一区二区精品婷婷| 99国产精品久| 午夜a成v人精品| 久久久久久99精品| 91福利精品视频| 国产在线不卡一区| 亚洲免费在线观看| 欧美一区二区三区四区高清 | 亚洲精品日日夜夜| 欧美日本在线一区| 黑人巨大精品欧美黑白配亚洲| 久久九九久精品国产免费直播| 色一区在线观看| 久久99这里只有精品| 综合婷婷亚洲小说| 日韩欧美国产高清| 欧美专区亚洲专区| 国产精品一二三四五| 亚洲午夜电影网| 国产精品久久久久久久岛一牛影视| 91超碰这里只有精品国产| 成人精品国产免费网站| 日本三级韩国三级欧美三级| 亚洲色图欧美激情| 26uuu成人网一区二区三区| 色吊一区二区三区 | 亚洲视频小说图片| 精品va天堂亚洲国产| 欧美揉bbbbb揉bbbbb| 成人激情免费电影网址| 精品一区二区三区在线观看| 亚洲狼人国产精品| 国产精品毛片久久久久久久| 日韩精品影音先锋| 欧美日韩国产一级片| 色综合天天综合狠狠| 国产精品99久久久久久久vr| 蜜臀av一区二区在线免费观看| 亚洲一区二区三区视频在线播放| 国产女人aaa级久久久级| 日韩一区二区三区视频在线观看 | 日韩美女在线视频 | 久久综合999| 91麻豆精品久久久久蜜臀| 色综合久久中文综合久久牛| 成人中文字幕合集| 国产激情一区二区三区四区| 精品一区二区久久| 久久99精品国产.久久久久久| 午夜a成v人精品| 日韩黄色一级片| 欧美96一区二区免费视频| 日韩二区三区在线观看| 石原莉奈在线亚洲三区| 日韩av在线免费观看不卡| 香蕉av福利精品导航| 亚洲大片免费看| 青青草国产精品亚洲专区无| 日韩av网站在线观看| 日韩经典一区二区| 久久99日本精品| 国产乱码精品一区二区三区av| 国产激情精品久久久第一区二区 | 欧美艳星brazzers| 欧美在线视频全部完| 欧美精品丝袜久久久中文字幕| 欧美日韩一区二区在线观看| 欧美日本一区二区| 日韩亚洲国产中文字幕欧美| 欧美成人一区二区三区在线观看| 日韩三级免费观看| 国产网红主播福利一区二区| 国产精品久久久99| 香蕉加勒比综合久久| 极品销魂美女一区二区三区| 国产福利91精品| 色悠悠久久综合| 日韩视频在线你懂得| 国产视频一区二区在线观看| 《视频一区视频二区| 亚洲成a人v欧美综合天堂下载 | 国产成人免费网站| 色综合网色综合| 制服丝袜亚洲网站| 久久精品免费在线观看| 夜夜操天天操亚洲| 精东粉嫩av免费一区二区三区| 成人精品高清在线| 欧美日韩日日骚| 国产日韩亚洲欧美综合| 夜夜嗨av一区二区三区四季av| 精品一区在线看| 欧美在线不卡一区| 久久伊99综合婷婷久久伊| ...av二区三区久久精品| 五月天一区二区| 国产高清成人在线| 欧美无乱码久久久免费午夜一区| 日韩欧美高清在线| 亚洲电影中文字幕在线观看| 国产一区二区免费在线| 欧美日韩国产免费一区二区| 国产精品拍天天在线| 久久电影网电视剧免费观看| 在线精品视频免费观看| 国产精品美女久久久久av爽李琼 |