⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inv_adctreatment.c

📁 SVPWM算法的DSP源码已通过硬件验证
💻 C
字号:
// TI File $Revision: /main/2 $
// Checkin $Date: June 24, 2010   15:37:05 $
//###########################################################################
//
// FILE:	pv20k_AdcTreatment.c
//
// TITLE:	
//
//###########################################################################
// $TI Release: DSP2803x C/C++ Header Files V1.10 $
// $Release Date: June 24, 2010 $
//###########################################################################

#include "DSP280x_Device.h"     // DSP2803x Headerfile Include File
#include "DSP280x_Examples.h"   // DSP2803x Examples Include File
#include "Global.h"

#define	SLIP_RAM_LENGTH		20

Uint16	uiAdTemp;

Uint16	uiAdVGnd;
Uint16	uiAdVSDU;

Uint16	uiVBat;
Uint16	uiAdVBat;
Uint32	ulVBatRam[SLIP_RAM_LENGTH+1];
long	lVBatSum;

Uint16	uiIBat;
Uint16	uiAdIBat;
Uint32	ulIBatRam[SLIP_RAM_LENGTH+1];
long	lIBatSum;

Uint16 	uiAdcPoint;
Uint16 uiVacAvg;
Uint16 EPwm1TimerIntCount; 
Uint16 uiSampleVolValueAdj;
Uint32 ulSumVol;
Uint16 uiCntVol;


Uint16 uiVacRms;


void vAdcSlipFlt(void)
{
	// 电池电压采样值滤波
    ulVBatRam[SLIP_RAM_LENGTH] = uiAdVBat;
    lVBatSum += (int32)ulVBatRam[SLIP_RAM_LENGTH] -(int32)ulVBatRam[uiAdcPoint];
    ulVBatRam[uiAdcPoint] = ulVBatRam[SLIP_RAM_LENGTH];
			
	// 电池电流采样值滤波
    ulIBatRam[SLIP_RAM_LENGTH] = uiAdIBat;
    lIBatSum += (int32)ulIBatRam[SLIP_RAM_LENGTH] -(int32)ulIBatRam[uiAdcPoint];
    ulIBatRam[uiAdcPoint] = ulIBatRam[SLIP_RAM_LENGTH];
	// 输出电压采样值滤波
	// 按键值采样值滤波
	// 温度采样值滤波

	uiAdcPoint++;
	if( uiAdcPoint >= SLIP_RAM_LENGTH)
	{
		uiAdcPoint = 0;
	}

	uiVBat = (Uint16)(lVBatSum / 20);
	uiIBat = (Uint16)(lIBatSum / 20);

}

void vGetAdResult(void)
{
	
   uiAdVRef = AdcMirror.ADCRESULT8;
	//uiAdVGnd = AdcResult.ADCRESULT2;
	//uiAdVSDU = AdcResult.ADCRESULT3;
   uiVolNB_W = AdcMirror.ADCRESULT3;
   uiVolNB_V = AdcMirror.ADCRESULT4;
   uiVolNB_U = AdcMirror.ADCRESULT12;
   uiVolSD_W = AdcMirror.ADCRESULT0;
   uiVolSD_V = AdcMirror.ADCRESULT1;
   uiVolSD_U = AdcMirror.ADCRESULT2;
  
  
  
}




/*Uint32  uiGetRms(Uint16 uiSampleVolValue)
{  
   
   //EPwm1TimerIntCount++;
   //

    if(uiSampleVolValue > uiAdVRef)
   {
		uiSampleVolValueAdj = uiSampleVolValue - uiAdVRef;
   } 
   else
   {
		uiSampleVolValueAdj = uiAdVRef - uiSampleVolValue;
   }
   
  
   //vGetSum(&msg_1,uiSampleValueAdj,0); //对电压进行320次采样求和
   ulSumVol += (Uint32)uiSampleVolValueAdj;

   
   
  
  //uiVacRms = (uiVacAvg * 84)>>8 +7;
  return ulSumVol;
}
*/
//===========================================================================
// End of file.
//===========================================================================

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -