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

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

?? post_common.c

?? ADI 公司的DSP ADSP21369 EZ-KIT LITE開發板的全部源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
//
//          Connect DAC1 to SPORT1, using data output A
//          Connect DAC2 to SPORT1, using data output B
//          Connect DAC3 to SPORT2, using data output A
//          Connect DAC4 to SPORT2, using data output B
//
//          Connect the clock and frame sync inputs to SPORT1 and SPORT2
//          should come from the ADC on DAI pins 7 and 8, respectively
//
//          Connect the ADC BCLK and LRCLK back out to the DAC on DAI
//          pins 13 and 14, respectively.
//
//          All six DAC connections are always outputs from the SHARC
//          so tie the pin buffer enable inputs all high.
//

//------------------------------------------------------------------------
//  Connect the pin buffers to the SPORT data lines and ADC BCLK & LRCLK

    SRU(SPORT2_DB_O,DAI_PB09_I);
    SRU(SPORT2_DA_O,DAI_PB10_I);
    SRU(SPORT1_DB_O,DAI_PB11_I);
    SRU(SPORT1_DA_O,DAI_PB12_I);

//------------------------------------------------------------------------
//  Connect the clock and frame sync input from the ADC directly
//    to the output pins driving the DACs.

    SRU(DAI_PB07_O,DAI_PB13_I);
    SRU(DAI_PB08_O,DAI_PB14_I);
    //SRU(DAI_PB17_O,DAI_PB06_I); // comment out for external pll

//------------------------------------------------------------------------
//  Connect the SPORT clocks and frame syncs to the clock and
//    frame sync from the SPDIF receiver

    SRU(DAI_PB07_O,SPORT1_CLK_I);
    SRU(DAI_PB07_O,SPORT2_CLK_I);
    SRU(DAI_PB08_O,SPORT1_FS_I);
    SRU(DAI_PB08_O,SPORT2_FS_I);

//------------------------------------------------------------------------
//  Tie the pin buffer enable inputs HIGH to make DAI pins 9-14 outputs.
    SRU(HIGH,PBEN06_I);
    SRU(HIGH,PBEN09_I);
    SRU(HIGH,PBEN10_I);
    SRU(HIGH,PBEN11_I);
    SRU(HIGH,PBEN12_I);
    SRU(HIGH,PBEN13_I);
    SRU(HIGH,PBEN14_I);
}


void Config_SRU_UART(void)
{
	// connect the pin buffer output signal to the UART0 receive
	SRU2(DPI_PB10_O,UART0_RX_I);
	SRU2(LOW,DPI_PB10_I);
	SRU2(LOW,DPI_PBEN10_I)

	// UART transmit signal is connected to DPI pin 9
	SRU2(UART0_TX_O,DPI_PB09_I);
	SRU2(HIGH,DPI_PBEN09_I);
}


void Config_SRU_AT25F2048(void)
{
	SRU(SPI_CLK_O,DPI_PB03_I);
	SRU(HIGH,DPI_PBEN03_I);

	// for the flag pins to act as chip select
	SRU(FLAG4_O, DPI_PB05_I);
	SRU(HIGH, DPI_PBEN05_I);
}

void Config_SRU_INTS(void)
{
	//Pin Assignments in SRU_PIN3 (Group D)
    SRU(LOW,DAI_PB19_I);//assign pin buffer 19 low so it is an input
    SRU(LOW,DAI_PB20_I);    //assign pin buffer 20 low so it is an input

    //Route MISCA singnals in SRU_EXT_MISCA (Group E)
    SRU(DAI_PB19_O,MISCA1_I);//route so that DAI pin buffer 19 connects to MISCA1
    SRU(DAI_PB20_O,MISCA2_I);//route so that DAI pin buffer 20 connects to MISCA2

    //Pin Buffer Disable in SRU_PINEN0 (Group F)
    SRU(LOW,PBEN19_I);//assign pin 19 low so it is an input
    SRU(LOW,PBEN20_I);//assign pin 20 low so it is an input
}



void Config_SRU_LEDS(void)
{
//Setting the SRU and route so that Flag pins connects to DPI pin buffers.
//Use Flags 4 to 15 only. Flags 0 to 3 are reserved
	SRU(FLAG4_O,DPI_PB06_I);	//DPI => We can use flags.
	SRU(FLAG5_O,DPI_PB07_I);	//DPI => We can use flags.
	SRU(FLAG6_O,DPI_PB08_I);	//DPI => We can use flags.
	SRU(FLAG7_O,DPI_PB13_I);	//DPI => We can use flags.
	SRU(FLAG8_O,DPI_PB14_I);	//DPI => We can use flags.
	SRU(LOW,DAI_PB15_I);		//DAI => We can't use flags. Value has to be set low or high.
	SRU(LOW,DAI_PB16_I);		//DAI => We can't use flags. Value has to be set low or high.

//Enabling the Buffer using the following sequence: High -> Output, Low -> Input
	SRU(HIGH,DPI_PBEN06_I);
	SRU(HIGH,DPI_PBEN07_I);
	SRU(HIGH,DPI_PBEN08_I);
	SRU(HIGH,DPI_PBEN13_I);
	SRU(HIGH,DPI_PBEN14_I);
	SRU(HIGH,PBEN15_I);		//default format to enable the buffer using DAI
	SRU(HIGH,PBEN16_I);
}

void Config_SRU_SPDIF(void)
{
    // Disable the pull-up resistors on all 20 pins
    *pDAI_PIN_PULLUP = 0x000FFFFF;

//------------------------------------------------------------------------
//  Connect the SPDIF Receiver
    SRU(DAI_PB18_O, DIR_I);

//------------------------------------------------------------------------
//  Connect the SPDIF Receiver outputs.

    SRU(DIR_DAT_O, SPORT0_DA_I);
    SRU(DIR_FS_O, SPORT0_FS_I);
    SRU(DIR_CLK_O, SPORT0_CLK_I);

//------------------------------------------------------------------------
//  Connect the SPDIF Transmitter Inputs

    SRU(SPORT3_DA_O, DIT_DAT_I);
    SRU(DIR_FS_O, DIT_FS_I);
    SRU(DIR_CLK_O, DIT_CLK_I);
    SRU(DIR_CLK_O, SPORT3_CLK_I);


    SRU(DIR_FS_O, SPORT3_FS_I );


    SRU(DIR_TDMCLK_O, DIT_HFCLK_I); // also used in external pll code

    //SRU(DIR_TDMCLK_O,DAI_PB03_I);
    //SRU(DAI_PB02_O,DIT_HFCLK_I);
    //SRU(HIGH,PBEN03_I);
	//SRU(LOW,PBEN02_I);



//------------------------------------------------------------------------
//  Connect the SPDIF Transmitter Output.
    SRU(DIT_O, DAI_PB01_I);

//------------------------------------------------------------------------
//  Tie the pin buffer inputs LOW for DAI pin 18.  Even though
//    these pins are inputs to the SHARC, tying unused pin buffer inputs
//    LOW is "good coding style" to eliminate the possibility of
//    termination artifacts internal to the IC.  Note that signal
//    integrity is degraded only with a few specific SRU combinations.
//    In practice, this occurs VERY rarely, and these connections are
//    typically unnecessary.

    SRU(LOW, DAI_PB18_I);

//------------------------------------------------------------------------
//  Tie the pin buffer enable inputs LOW for DAI pin 18 so
//    that they are always input pins.

    SRU(LOW, PBEN18_I);

//-----------------------------------------------------------------------------

//------------------------------------------------------------------------
//  Tie the pin buffer enable inputs HIGH to make DAI pin 1 an output.
    SRU(HIGH,PBEN01_I);
}


volatile bool g_bLeftRight = 1;
volatile int  g_iSampleIndex = 1;
volatile int  g_iSampleCount = 0;

volatile float g_fSineWaveOut[MAX_SAMPLES];
volatile float g_fSineWaveIn_Left[MAX_SAMPLES];
volatile float g_fSineWaveIn_Right[MAX_SAMPLES];


int Test_Channel(float* pfRealIn, const int iMaxSamples, const int iSampleRate, const float fExpFreq, const float fFreqTol, const float fExpAmp, const float fAmpTol)
{
	const float fMaxFreq = (fExpFreq + (fExpFreq * fFreqTol));
	const float fMinFreq = (fExpFreq - (fExpFreq * fFreqTol));

	complex_float cfFFTOut[(MAX_SAMPLES/2)];
	float fTempFreq = 0;
	int nSampleNumber = 0;
	int nHighestFreqIndex = 0;
	float fSampledFrequency = 0;
	float fSlope = 0.0;
	int   iSlopeY1 = 0;


   	// Real input array fills from a converter or other source
	rfft256( pfRealIn, (complex_float*)cfFFTOut);

   	// Arrays are filled with FFT data
   	// scan the output array for the highest real value
   	fTempFreq = abs(cfFFTOut[0].re);
 	for (nSampleNumber=1; nSampleNumber < (iMaxSamples / 2); nSampleNumber++)
    {
		if( abs(cfFFTOut[nSampleNumber].re) > fTempFreq )
		{
			fTempFreq = abs(cfFFTOut[nSampleNumber].re);
			nHighestFreqIndex = nSampleNumber;
		}
    }

   // multiply the index of the array of the highest value with the sample rate value
   fSampledFrequency = nHighestFreqIndex * (iSampleRate / iMaxSamples);





   // make sure frequency is within acceptable ranges
   if( (fSampledFrequency < fMaxFreq) && (fSampledFrequency > fMinFreq) )
   {
   		// for now, take the point before, and after the max value
   		// average them, then find the distance between them

	    // the slope is given by b = (y2 - y1) / (x2 - x1) or b = y2-y1
	    if( 0 == nSampleNumber )
	    {	// roll around to the end of the array
	    	iSlopeY1 = iMaxSamples;
	    }
	    else if( iMaxSamples == nSampleNumber )
	    {
	    	iSlopeY1 = 0;
	    }
	    else
	    {
	    	iSlopeY1 = nSampleNumber - 1;
	    }

	    fSlope = (cfFFTOut[nHighestFreqIndex].re - cfFFTOut[iSlopeY1].re);

	    fSlope = abs(fSlope);


	    if( fSlope < fExpAmp )
	    {
	    	return 0;
	    }


	    //fDB = 10 * log10( fSNR );

   		return 1;
   }



	//asm("nop;"); // asm("emuidle;"); //
	return 0;	// test failed
}

void CreateSinTable(const float fAmp, const float fFreq, const float fSampleRate)
{
	int n;

	for(n = 0; n < MAX_SAMPLES; n++)
	{
		g_fSineWaveOut[n] = (float)(fAmp * sin( (2.0 * PI * fFreq * ( ((float)(n+1)) / fSampleRate))) );
	}
}










?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产性天天综合网| 亚洲精品午夜久久久| 亚洲人吸女人奶水| 亚洲小说欧美激情另类| 久久99国产精品久久99果冻传媒| 国产福利91精品一区二区三区| 国产尤物一区二区| 国产一区在线精品| 欧美色区777第一页| 精品国产乱码久久久久久1区2区 | 国产成人综合自拍| 色婷婷综合久久久久中文一区二区| 欧美日韩午夜在线视频| 69久久99精品久久久久婷婷| 久久久欧美精品sm网站 | 欧美综合亚洲图片综合区| 欧美日韩国产一级二级| 亚洲国产成人自拍| 老汉av免费一区二区三区| 欧洲精品中文字幕| 国产欧美日韩在线观看| 日本不卡视频在线观看| 色综合亚洲欧洲| 国产视频在线观看一区二区三区| 亚洲一区二区三区四区中文字幕| 韩国欧美一区二区| 欧美日韩一区成人| 一区二区三区在线免费视频| 国产99久久精品| 欧美大片日本大片免费观看| 亚洲在线视频一区| 91欧美激情一区二区三区成人| 久久综合狠狠综合| 久久电影网电视剧免费观看| 8x8x8国产精品| 亚洲国产成人精品视频| 91色在线porny| 国产精品视频免费| 日本美女视频一区二区| 欧美日韩一区小说| 亚洲成人一区在线| 91麻豆国产福利在线观看| 中文天堂在线一区| 波多野结衣亚洲| 国产色爱av资源综合区| 国产自产视频一区二区三区| 99精品一区二区| 国产精品乱码人人做人人爱| 成人夜色视频网站在线观看| 欧美日韩国产大片| 亚洲成av人片在线观看| 成人av免费网站| 久久一区二区三区国产精品| 蜜桃精品在线观看| 精品久久久久av影院| 久久精品国产**网站演员| 欧美不卡在线视频| 麻豆精品国产91久久久久久| 欧美成人精品二区三区99精品| 蜜桃视频一区二区三区在线观看| 717成人午夜免费福利电影| 亚洲777理论| 欧美性大战久久久久久久蜜臀 | 日韩午夜在线播放| 久久成人av少妇免费| 26uuu精品一区二区三区四区在线| 另类小说色综合网站| 久久综合一区二区| 狠狠色丁香久久婷婷综合_中 | 在线一区二区三区四区| 亚洲午夜私人影院| 欧美性感一区二区三区| 裸体健美xxxx欧美裸体表演| 精品国产乱码久久久久久图片| 国产精品一区在线观看乱码| 欧美国产日产图区| 欧美日本一区二区三区四区| 美女一区二区三区在线观看| 精品国偷自产国产一区| 成人激情校园春色| 亚洲成人免费影院| 欧美一区二区三区视频在线| 久久机这里只有精品| 国产欧美日韩综合精品一区二区| 91香蕉视频mp4| 蜜桃视频一区二区| 亚洲女爱视频在线| 欧美丰满少妇xxxxx高潮对白| 九九在线精品视频| 亚洲精品乱码久久久久久| 日韩欧美国产wwwww| 99精品黄色片免费大全| 国内欧美视频一区二区| 欧美激情一区不卡| 91精品1区2区| 国产高清在线精品| 亚洲bdsm女犯bdsm网站| 国产精品成人免费| 欧美一级精品大片| 本田岬高潮一区二区三区| 久久国产尿小便嘘嘘尿| 亚洲国产综合91精品麻豆| 中文字幕av一区二区三区免费看| 777奇米四色成人影色区| 成人高清视频免费观看| 亚洲激情中文1区| 国产天堂亚洲国产碰碰| 日韩欧美成人激情| 91成人在线观看喷潮| 国产黄色精品网站| 久久99精品久久只有精品| 亚洲午夜视频在线| 日韩久久一区二区| 国产精品麻豆视频| 久久精品亚洲一区二区三区浴池| 欧美色图天堂网| 粉嫩嫩av羞羞动漫久久久| 黄色日韩网站视频| 精品一区二区三区影院在线午夜| 亚洲日本成人在线观看| 欧美激情一区二区三区四区| 精品美女被调教视频大全网站| 制服丝袜亚洲网站| 欧美日韩成人激情| av在线不卡免费看| 国产精品亚洲专一区二区三区| 蜜臀va亚洲va欧美va天堂| 日本成人在线看| 日本中文字幕一区二区视频| 日日夜夜精品免费视频| 亚洲chinese男男1069| 亚洲不卡av一区二区三区| 亚洲美女电影在线| 国产精品福利av| 欧美韩国日本综合| 国产精品免费视频一区| www国产成人| 欧美激情资源网| 综合精品久久久| 亚洲精品中文在线影院| 精品少妇一区二区三区在线播放| 一本到一区二区三区| 成av人片一区二区| 国产精一区二区三区| 国产精品18久久久久久久久久久久| 国产呦精品一区二区三区网站| 国产精品一区二区不卡| 久久9热精品视频| 一区二区三区四区不卡在线 | 国产欧美精品国产国产专区 | 欧美日韩专区在线| 91精选在线观看| 337p日本欧洲亚洲大胆精品| 久久久不卡网国产精品二区| 久久综合色婷婷| 欧美激情在线看| 亚洲国产成人porn| 国产一区二区看久久| 99re热这里只有精品免费视频| 在线精品观看国产| 欧美成人午夜电影| 国产精品盗摄一区二区三区| 亚洲电影你懂得| 黑人精品欧美一区二区蜜桃| 91超碰这里只有精品国产| 欧美亚洲国产一区二区三区va | 欧美日韩极品在线观看一区| 日韩一级片在线播放| 亚洲欧洲日产国码二区| 午夜精品福利一区二区三区av| 精品一区二区三区在线播放| youjizz国产精品| 日韩一区国产二区欧美三区| 中文字幕av在线一区二区三区| 亚洲一卡二卡三卡四卡五卡| 国产成人久久精品77777最新版本| 色哟哟一区二区在线观看| 欧美不卡一区二区三区四区| 中文字幕中文字幕一区二区| 国产揄拍国内精品对白| 欧美视频在线一区二区三区 | www日韩大片| 亚洲一区二区三区视频在线播放| 国产乱码字幕精品高清av| 欧美午夜精品久久久久久超碰| 欧美激情一区二区三区不卡| 日韩成人一级大片| 色94色欧美sute亚洲线路一ni| 精品成a人在线观看| 丝袜美腿亚洲一区| 色天天综合久久久久综合片| 日韩欧美一区二区三区在线| 亚洲精品福利视频网站| 成人午夜激情片| 久久综合99re88久久爱| 亚洲aⅴ怡春院| 欧美性大战久久久久久久| 亚洲天天做日日做天天谢日日欢 | 日日摸夜夜添夜夜添精品视频| 欧美性大战久久|