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

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

?? dtk-fft.c

?? 開發平臺ccs5000 tms320vc5416的fft程序
?? C
字號:
/*********************************************************************************
*  MCPSB.C	v1.00   測試MCBSP同步串口測試的主程序	                             *
*  版權(c) 	2003-		北京合眾達電子技術有限責任公司			                 *
*  設計者:	段立鋒								                                 *
**********************************************************************************/
#include "type.h"
#include "codec.h"
#include "uart.h"
#include "sysreg.h"
#include "mcbsp54.h"
#include "memory.h"
#include "comm.h"

#include "math.h"
#include "stdio.h"
#include "tms320.h"
#include "dsplib.h"

/*幀長度的設定*/
#define  FRAMLONGTH    0x104

#define  DataLongth   0x100

typedef struct _UartForDec5416{
	unsigned int Length;
	unsigned int Type;
	unsigned int Mutul;
	unsigned int Data[DataLongth];
	unsigned int Check;
}UartForDec5416, *PuartForDec5416; 

HANDLE uart_a =0;
HANDLE codec_command =0;
HANDLE codec_data=0;
unsigned int audiodata =0;
PuartForDec5416 precieve =0;	
unsigned int i= 0,r = 0;
unsigned int k= 0;
int uart_s=0,uart_err=0,fifostatus=0;
unsigned long flashbaddr=0;
unsigned long flashaddr = 0;
PuartForDec5416 psend=0;
PAdConfig padset = 0;
unsigned int datasendlong = 0;
unsigned int datasendlength = 0;
unsigned int sendcount = 0;
unsigned int errorsend = 0;
unsigned int adset[4] ={1024,0xd,0,0};
DATA dataleft[1536] ={0};
unsigned int dataright[1536] ={0};
unsigned int uart[0x104] ={0};
unsigned int uarts[0x104] = {0};

#pragma DATA_SECTION (fft_data,".result")
DATA    fft_data[1024];
unsigned int    mod[512];
ushort  datacbrev=0;
    int  m=0;
    double  n;
	double p,q;



main()
{	
  //  int  i,r;
	
	/*設置系統時鐘*/
	sys_clk(CLK160);
	/*初始化DEC5416板卡*/
	dec5416_init();
	for(i= 0; i<0x104;i++)
	{
		uart[i] = 0x5555;
		uarts[i] = 0x5555;
	}
	/*打開codec數據接口*/
	codec_data = codec_open(CODEC_DATA);
	/*打開codec命令接口*/
	codec_command = codec_open(CODEC_COMMAND);

	/*設置波特率,輸入與輸出均為8K*/
	codec_sample_rate(codec_command,0xd);
	
	/*獲取有效的串口句柄*/
	uart_a = uart_open(UART_A);
	/*初始化串口*/
	uart_setup(uart_a,    /*串口A*/
			   buad_19k2,  /*串口的波特率設置*/
			   data_w8,   /*數據長度為8*/ 
			   data_s1,   /*數據停止位為1*/ 
			   //uart_parity,    /*設置奇較驗位*/	 
			   0,
			   (fifo_enable+fifo_txdip16+fifo_rxdip16),/*FIFO設置*/ 
			   0);       /*設置自閉環方式*/		   
	/*串口A中斷設置*/		   
	uart_interrupt_control( uart_a, uartint_rhr, uart_enable);
	/*設置接收長度*/
	uart_reclong_set(uart_a,FRAMLONGTH);
	/*打開系統的串口中斷*/
	sysint_enable(0x2);
	
	/*配置系統存儲器*/	
	memory_set(0x80);
	
	/*實驗主控程序*/
	psend =  (PuartForDec5416)(&uarts[0]);
	padset = (PAdConfig)(&adset[0]);
	/*通知主機,系統準備好*/
	psend->Length = FRAMLONGTH;
	psend->Type = UARTCOMMAND;
	psend->Data[0] = INITOVER;
	psend->Mutul = UARTCONT;
	uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
	for(;;)
	{	
		uart_recive(uart_a,&uart[0]);
		/*判斷串口的狀態*/
		uart_s =uart_status(uart_a);
		if( uart_s == 2)
		{
			/*讀RHR清 RHR interrupt*/
			uart_read_reg(uart_a,rhr);
			/*復位FIFO指針*/
			fifostatus = uart_read_reg(uart_a,fcr);
			uart_write_reg(uart_a,fcr,fifo_rreset);
			uart_write_reg(uart_a,fcr,fifostatus);
			continue;	
		}
		/*串口出錯*/
		if(uart_s == ERROR)
		{
			/*讀狀態寄存器*/
			uart_err = uart_read_reg(uart_a,lsr);
			/*復位FIFO指針*/
			fifostatus = uart_read_reg(uart_a,fcr);
			uart_write_reg(uart_a,fcr,fifo_rreset);
			uart_write_reg(uart_a,fcr,fifostatus);
			
			continue;
		}
		/*數據較驗出錯*/
		if(uart_s == 3)
		{
			/*通知主機程序通訊出錯,準備重發*/
			psend->Length = FRAMLONGTH;
			psend->Type = UARTCOMMAND;
			psend->Data[0] =  RECIEVEERROR;
			psend->Mutul = UARTCONT;
			uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
			continue;	
		}
		/*數據未準備好*/
		if(uart_s == 0)
		{
			precieve = (PuartForDec5416)(&uart[0]);
			/*不是命令幀*/
			if(precieve->Type != UARTCOMMAND)
			{
				/*無效命令*/
				psend->Length = FRAMLONGTH;
				psend->Type = UARTCOMMAND;
				psend->Data[0] =  COMMANDNODO;
				psend->Mutul = UARTCONT;
				uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
				precieve->Data[0] = 0;	
			}
			continue;
		}
		
    	
		/*接收從主機的數據*/
		precieve = (PuartForDec5416)(&uart[0]);
		switch(precieve->Data[0])
		{
			/*AD設置*/
			case FFTSET:
				for(i=0;i<3;i++)
				{
					adset[i] = precieve->Data[i+1];
				}
				/*設置數據發送長度*/
				datasendlong = padset->SampleLong;
				datasendlength= 3*datasendlong/2;
				/*AD前向增益調整*/	
				codec_lineain_gain(codec_command, padset->GainSet);
				/*AD采樣率*/
				codec_sample_rate(codec_command, padset->SampleRate);
				precieve->Data[0] = 0;
				break;
				
			/*啟動AD采樣*/	
			case FFTSTART:
			sendcount = 0;
			datasendlength= 3*datasendlong/2;
			for(i = 0;i<padset->SampleLong;)
				{
					/* Wait for sample from handset */
	   				while (!MCBSP_RRDY(CODEC_DATA)) {};
	   				/* Read sample from and write back to handset codec */
	   				/*左通路數據*/
					dataleft[i] = *(volatile u16*)DRR1_ADDR(CODEC_DATA); 
		            
					/* Wait for sample from handset */
	   				while (!MCBSP_RRDY(CODEC_DATA)) {};
	   				/*右通路數據*/
					dataright[i] =  *(volatile u16*)DRR1_ADDR(CODEC_DATA);
					fft_data[i] = dataright[i];
					i = i+1;
				}
				/*fft轉換*/
				for(i=0;i<datasendlong;i++)
				{
					fft_data[i] = dataleft[i];
				}	
			
		       switch(datasendlong)
		       {
		         case 256:
		         	
				 /*256 point*/
				     cbrev(fft_data,fft_data,128);
                     rfft(fft_data,256,256);
                     break;
                 case 512: 
                  /*512 point*/  
                     cbrev(fft_data,fft_data,256);
                     rfft(fft_data,512,512);
                     break;
                 case 1024:  
                  /*1024 point*/  
                     cbrev(fft_data,fft_data,512);
                     rfft(fft_data,1024,1);
                     break;
               }      
                    
                 /*求模*/   
                   m=0;
                for(i=0;i<datasendlong;i+=2)
                {  
                   p=fft_data[i];
                   q=fft_data[i+1];                      
                   n=p*p+q*q;  
                   mod[m]=sqrt(n);	
                	m++;                           
                }
                r= datasendlong;    
                 /* dataleft(dataright)[]=addata[]+mod[]*/
                for(i=0;i<datasendlong/2;i++)
                     {
                       dataleft[r]=mod[i];
                       dataright[r]=mod[i];
                       r++;
                       }
				/*AD采樣結束*/
				psend->Length = 1;
				psend->Type = UARTCOMMAND;
				psend->Data[0] =  FFTOVER;
				psend->Mutul = UARTCONT;
				uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
				precieve->Data[0] = 0;
				break;
					
			/*AD數據傳送*/		
			case FFTDATASEND:
			    if(datasendlength <=256)
				{
					for(i = 0;i<datasendlength;i++)
					{
						/*確定通路*/
						if(padset->DataLeft == ADDATALEFT)
						{
							psend->Data[i] = dataleft[i+sendcount*256];
						}
						else
						{
							psend->Data[i] = dataright[i+sendcount*256];
						}
					}
					psend->Length = datasendlength;
					psend->Type = UARTDATA;
					psend->Mutul = UARTCONT;
					uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
					precieve->Data[0] = 0;
					break;	
				}
			    for(k = 0; k<256 ; k++)
			    {
			    	/*確定通路*/
					if(padset->DataLeft == ADDATALEFT)
					{
						psend->Data[k] = dataleft[k + sendcount*256];
					}
					else
					{
						psend->Data[k] = dataright[k+ sendcount*256];
					}
			    }
			    psend->Length = 256;
				psend->Type = UARTDATA;
				psend->Mutul = UARTMUTL;
				uart_send(uart_a,FRAMLONGTH, (unsigned int *)psend);
			
			  	datasendlength = datasendlength - 256;
			  	sendcount++; 
			    precieve->Data[0] = 0;
				break;
			case RECIEVEERROR:
				datasendlength= datasendlength + 256;
				sendcount--;
				precieve->Data[0] = FFTDATASEND;
				break;
				 					
			/*系統復位*/
			case SYSRESET:
				sys_set(0x4);
				precieve->Data[0] =0;
				break;
			
			default:
				break;
		} 		
	}							     
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区小说| 一区二区三区高清在线| 综合色中文字幕| 久久精品国产亚洲一区二区三区 | 亚洲免费观看高清在线观看| 亚洲成人tv网| 不卡一区二区三区四区| 91精品在线免费| 亚洲影院理伦片| 成人一区在线观看| 久久夜色精品国产欧美乱极品| 夜夜嗨av一区二区三区| 成人免费的视频| 26uuu亚洲| 老司机精品视频一区二区三区| 欧洲av一区二区嗯嗯嗯啊| 欧美激情一区二区三区全黄 | 国产精品伦理一区二区| 麻豆成人久久精品二区三区红 | 成人网在线免费视频| 日韩欧美黄色影院| 天堂va蜜桃一区二区三区漫画版| 97精品久久久久中文字幕| 久久久久久久久久久久电影| 麻豆精品一区二区三区| 日韩一区二区三区高清免费看看| 亚洲成av人片一区二区三区| 欧洲视频一区二区| 亚洲成人精品一区二区| 欧美日韩国产一级二级| 丝袜美腿高跟呻吟高潮一区| 91麻豆精品国产91久久久久久| 午夜伦欧美伦电影理论片| 欧美日韩视频在线第一区| 亚洲成人一二三| 欧美日韩国产美女| 蜜臀国产一区二区三区在线播放| 欧美一级一区二区| 国产综合成人久久大片91| 亚洲精品一区二区三区99| 国产一区二区三区黄视频| 国产午夜精品美女毛片视频| 国产不卡在线一区| 亚洲同性gay激情无套| 在线亚洲一区二区| 天天色综合天天| 欧美大片国产精品| 高清在线观看日韩| 亚洲老司机在线| 91精品国产91热久久久做人人| 麻豆精品一区二区av白丝在线 | 91精品一区二区三区久久久久久| 免费看日韩a级影片| 久久久综合精品| www.在线成人| 午夜精品福利视频网站| 欧美大度的电影原声| 成人一级黄色片| 亚洲一区二区免费视频| 精品国产区一区| 99久久久精品| 日本va欧美va瓶| 国产精品热久久久久夜色精品三区 | 亚洲欧美另类在线| 日韩精品自拍偷拍| 粉嫩绯色av一区二区在线观看| 亚洲精选视频免费看| 91精品福利在线一区二区三区 | 日本在线不卡视频| 国产精品丝袜黑色高跟| 在线欧美一区二区| 国产一区在线观看麻豆| 亚洲免费av在线| 久久五月婷婷丁香社区| 一本久道久久综合中文字幕| 麻豆精品国产传媒mv男同 | 日日噜噜夜夜狠狠视频欧美人 | 3d成人动漫网站| 成人激情视频网站| 美腿丝袜亚洲一区| 亚洲欧美日韩久久| 欧美mv日韩mv亚洲| 欧美丝袜自拍制服另类| 成人福利视频在线看| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产精品视频在线看| 精品国产免费一区二区三区四区| 欧美曰成人黄网| 99精品视频在线免费观看| 久久66热偷产精品| 午夜欧美一区二区三区在线播放| 亚洲欧洲日韩av| 日本一区二区三区电影| 日韩精品一区二区三区视频在线观看| 色婷婷av一区二区| 成人激情免费电影网址| 国产美女视频91| 美腿丝袜亚洲综合| 视频一区视频二区在线观看| 一区二区三区免费| 136国产福利精品导航| 国产午夜精品一区二区三区四区 | 免费一级片91| 图片区小说区国产精品视频| 樱桃国产成人精品视频| 成人欧美一区二区三区1314| 国产色产综合色产在线视频| 欧美精品一区二区三区蜜臀| 精品免费99久久| 欧美一区二区精品| 欧美一区二区三区四区高清| 精品视频免费看| 欧美在线视频你懂得| 欧美在线观看一区二区| 在线观看91精品国产入口| 欧美性视频一区二区三区| 欧洲精品在线观看| 欧美日韩一区二区不卡| 在线不卡欧美精品一区二区三区| 欧美午夜精品电影| 欧美日韩久久不卡| 欧美精品1区2区| 日韩免费成人网| www久久久久| 国产精品视频看| 亚洲精品免费看| 亚洲成av人影院| 捆绑变态av一区二区三区| 精品一区二区三区香蕉蜜桃| 国产精一品亚洲二区在线视频| 国产最新精品免费| 99精品国产热久久91蜜凸| 一本久久综合亚洲鲁鲁五月天| 欧美在线不卡视频| 欧美一激情一区二区三区| 久久久亚洲精品一区二区三区 | 日韩精品综合一本久道在线视频| 精品久久久久久亚洲综合网| 久久午夜色播影院免费高清| 中文在线资源观看网站视频免费不卡| 亚洲精品国产第一综合99久久| 亚洲高清在线视频| 国产资源在线一区| 99在线精品免费| 欧美福利电影网| 亚洲国产精品激情在线观看| 一区二区三区在线免费视频| 麻豆精品在线播放| 99亚偷拍自图区亚洲| 91精品国产91久久久久久一区二区| 久久这里只有精品6| 夜夜精品浪潮av一区二区三区| 久久99精品国产麻豆婷婷洗澡| 成人v精品蜜桃久久一区| 欧美日韩国产精品成人| 久久精品一区二区三区不卡牛牛| 夜夜亚洲天天久久| 国产精品一区二区不卡| 欧美人妇做爰xxxⅹ性高电影| 久久久99免费| 亚洲va中文字幕| jvid福利写真一区二区三区| 欧美一区二区三区在线观看| 国产精品蜜臀在线观看| 免费国产亚洲视频| 在线区一区二视频| 国产无一区二区| 免费高清在线一区| 欧美伊人久久久久久久久影院| 97久久久精品综合88久久| 91美女精品福利| 不卡一区二区在线| 日韩精品资源二区在线| 亚洲成人自拍偷拍| 91视频免费观看| 国产三级欧美三级| 美女尤物国产一区| 欧洲色大大久久| 亚洲婷婷在线视频| 国产麻豆精品视频| 日韩天堂在线观看| 性感美女久久精品| 91亚洲男人天堂| 国产女人18毛片水真多成人如厕| 免费观看91视频大全| 8x8x8国产精品| 午夜视频在线观看一区二区 | 香蕉成人啪国产精品视频综合网 | 韩日精品视频一区| 91麻豆精品国产91久久久久| 亚洲免费在线视频| 一本大道av伊人久久综合| 国产精品久久久久久福利一牛影视 | 日韩一区二区三区电影 | 亚洲欧美一区二区久久| 成人毛片老司机大片| 日本一区二区三区dvd视频在线| 狠狠色综合色综合网络| 欧美一卡二卡在线| 极品少妇xxxx精品少妇偷拍|