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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? main_edma1.c

?? DSP67xx下2進(jìn)制相移鍵控的“解碼”實(shí)現(xiàn)代碼。可應(yīng)用在軟件無(wú)線電上。
?? C
字號(hào):
/********************************************************************************/
/* b_perph.c                                                                    */
/* written by David Bell                                                        */
/*         on 01/09/01                                                          */
/*                                                                              */
/* b_perph uses a single EDMA channel to service an external AFE. Channel 4 is  */
/* used to burst a frame of data for every EXT_INT4 event received. The data is */
/* transferred from the AFE to L2 memory.                                       */
/********************************************************************************/
/***********************6713初始化(xt1029)************************/
#define CHIP_6713 1

#include <stdio.h>
#include <csl_cache.h>
#include <csl_timer.h>
#include <csl_irq.h>
#include <csl.h>
#include <csl_edma.h>

#include <c6x.h>
#include "c6211dsk.h"
#include "math.h"


/* definitions */
#define MEM_SRC     0x8000              /* Source address for transfer      */
#define MEM_DST     0xB0280000          /* Switch(2..0) = 001     0xB0000000  Switch(2..0) =000  */
#define EL_COUNT    2049                  /* Element count for transfer       */
#define FR_COUNT    1


/* PLL configuration */    //屏蔽pll(xt1029)
/*#define PLL_DIV0  0
#define PLL_DIV1  1
#define PLL_DIV2  2
#define PLL_DIV3  3
*/
  
#include <math.h>
//#include "DspRegDefine.h"
#define InputLength 25/*設(shè)有25個(gè)數(shù)字序列*/
#define SineLength 64/*一個(gè)周期正諧波的長(zhǎng)度*/
#define p1 0  /*零相位*/
#define p2 SineLength/2 /*pi相位*/
#define OutputLength InputLength*SineLength/*輸出數(shù)據(jù)的總長(zhǎng)度*/
#define pi 3.1416      

int w;
int m=0;
static int BPSK[OutputLength];/*輸出數(shù)據(jù)的數(shù)組*/
static int data_squence[InputLength]={1,0,1,0,1,1,0,0,1,0,1,0,0,1,1,0,1,1,0,0,1,0,1,0,1};
static int sin_data[SineLength*2];/*共有2個(gè)正諧波*/
static int multiply[OutputLength];/*和本地載波相乘后的結(jié)果*/
static int de_BPSK[InputLength];/*判決后的結(jié)果*/

void submit_qdmas(void);
void submit_qdma(void);
void wait(void);

//void startPLL();
//void delay();
extern far void vectors();
void setupInterrupts(void);

/***********************************submit_qdma**********************************/
/* Submit a QDMA request to transfer the data.                                  */
/********************************************************************************/
void
submit_qdma(void)
{
EDMA_Config config;

      config.opt = (Uint32)                          /* 0x21200001 */
                   ((EDMA_OPT_PRI_HIGH     << _EDMA_OPT_PRI_SHIFT   )
                  | (EDMA_OPT_ESIZE_32BIT  << _EDMA_OPT_ESIZE_SHIFT )
                  | (EDMA_OPT_2DS_NO       << _EDMA_OPT_2DS_SHIFT   )
                  | (EDMA_OPT_SUM_INC      << _EDMA_OPT_SUM_SHIFT   )
                  | (EDMA_OPT_2DD_NO       << _EDMA_OPT_2DD_SHIFT   )
                  | (EDMA_OPT_DUM_NONE     << _EDMA_OPT_DUM_SHIFT   )
                  | (EDMA_OPT_TCINT_NO     << _EDMA_OPT_TCINT_SHIFT )
                  | (EDMA_OPT_TCC_DEFAULT  << _EDMA_OPT_TCC_SHIFT   )
#if (C64_SUPPORT)
                  | (EDMA_OPT_TCCM_DEFAULT << _EDMA_OPT_TCCM_SHIFT  )
                  | (EDMA_OPT_ATCINT_NO    << _EDMA_OPT_ATCINT_SHIFT)
                  | (EDMA_OPT_ATCC_DEFAULT << _EDMA_OPT_ATCC_SHIFT  )
                  | (EDMA_OPT_PDTS_DISABLE << _EDMA_OPT_PDTS_SHIFT  )
                  | (EDMA_OPT_PDTD_DISABLE << _EDMA_OPT_PDTD_SHIFT  )
#endif
                  | (EDMA_OPT_LINK_NO      << _EDMA_OPT_LINK_SHIFT  )
                  | (EDMA_OPT_FS_YES       << _EDMA_OPT_FS_SHIFT    ));

      config.src = (unsigned int)MEM_SRC;             /* 0x80000000 */
      config.cnt = (unsigned int)EL_COUNT;            /* 0x00000100 */ 
      config.dst = (unsigned int)MEM_DST;             /* 0x00002000 */
      config.idx = (unsigned int)0;                   /* 0x00000000 */

      EDMA_qdmaConfig(&config);
      
} /* end submit_qdma */

/**************************************wait**************************************/
/* Wait until the transfer completes, as indicated by the status of the low-    */
/* priority queue in the queue status register (QSR).                           */
/********************************************************************************/
void
wait(void)
{
      while (!(EDMA_getPriQStatus() & EDMA_OPT_PRI_HIGH));

} /* end wait */

/******************************以上為6713所需初始化(xt1029)****************/

    


/************************子函數(shù)和子程序定義***************************/

void main()
{
 int i=0,j=0;
 void PhaseSelection(int a);/*相位選擇函數(shù)聲明*/

  void multiply_and_decision();/*本地載波相乘和判決聲明*/

/***********************原6713中所需的配置(xt1029)************/
/* DSP initialization                                                       */
  CSR=0x100;                           /* Disable all interrupts              */
  IER=1;                               /* Disable all interrupts except NMI   */
  ICR=0xffff;                          /* Clear all pending interrupts        */


// PLL Configuration
  // startPLL();
 //  delay();


  *(unsigned volatile int *)EMIF_GCR = 0x3778;
  *(unsigned volatile int *)EMIF_CE0 = 0x30;    	/* EMIF CE1 control, 32bit  */
  *(unsigned volatile int *)EMIF_CE1 = CE1_8;    	/* EMIF CE1 control, 32bit  */
  *(unsigned volatile int *)EMIF_CE2 = 0x30;    	/* EMIF CE1 control, 32bit  */
  *(unsigned volatile int *)EMIF_CE3 = CE1_32;    	/* EMIF CE1 control, 32bit  */
  *(unsigned volatile int *)EMIF_SDCTRL = 0x07126000; 	/* EMIF SDRAM control   */ 
  *(unsigned volatile int *)EMIF_SDRP = 0x61a;    	/* EMIF SDRM refresh period */
  *(unsigned volatile int *)EMIF_SDEXT= 0x54529;  	/* EMIF SDRM extension      */

  /* Configure L2 for 64K Cache and enable caching of external memory*/
    for(i=0;i<5;i++)
  {
	  *(short int *)(0xB0040000) =  0x000;  

  }  
    for(i=0;i<5;i++)
  {
	  *(short int *)(0xB0040000) =  0x001;  

  }





   submit_qdma();
   wait();
   i=0;
   submit_qdma();
   wait();
   i=0;

    for(i=0;i<5;i++)
  {
	  *(short int *)(0xB0040000) =  0x000;  

  }

    for(i=0;i<5;i++)
  {
	  *(short int *)(0xB0040000) =  0xFFFFFFFF;  
	  *(short int *)(0xB004000C) =  0xFFFFFFFF;  
	  *(short int *)(0xB0040010) =  0xFFFFFFFF;  

  } 

	IRQ_setVecs(vectors);     
	IRQ_globalEnable();        
	IRQ_nmiEnable();             
	IRQ_map(IRQ_EVT_EXTINT4, 4); 
	IRQ_reset(IRQ_EVT_EXTINT4);  
	IRQ_enable(IRQ_EVT_EXTINT4);




/*************************配置完畢(xt1029)****************************/



 for(i=0;i<SineLength;i++)/*在sin_data[]里面存儲(chǔ)一個(gè)正弦波*/
 {
  sin_data[i]=(int)(32*sin(2*pi*i/(SineLength)));/*調(diào)用sin函數(shù)*/
  }

 for(j=0;j<SineLength;j++)/*再往sin_data[]里存儲(chǔ)一個(gè)sin波形,這樣sin_data[]里有兩個(gè)sin波行*/
  {
   sin_data[i++]=sin_data[j];
   } 

 for(j=0;j<InputLength;j++)         //BPSK相位選擇
 {
  if(data_squence[j]==1)/*I碼片與Q前半個(gè)碼片組合進(jìn)行相位選擇*/
    PhaseSelection(p1);
  else
    PhaseSelection(p2);
   } 
 multiply_and_decision();/*本地載波相乘和判決調(diào)用*/ 
   for(i=0;i< OutputLength+8;i++)
  // for(i=0;i<20;i++)
{ *( int *)(0x30000+4*i) = de_BPSK[i];//把數(shù)據(jù)給一個(gè)地址,然后從這個(gè)地址看結(jié)果(xt1029)

}   
 for(;;); 
}
/***************相位選擇函數(shù)定義開(kāi)始*******************/
void PhaseSelection(int a)
{int count=0;
 for(m;m<OutputLength;m++) //主意:此處m已經(jīng)確定,無(wú)需賦初值,盡管在該處出現(xiàn)編譯警告
  {
   BPSK[m]=sin_data[a++];/*從a點(diǎn)開(kāi)始讀入*/
   if(count++==SineLength)
     {break;}
   }
}               
/***************相位選擇函數(shù)定義結(jié)束*******************/

/***************本地載波相乘和判決函數(shù)定義開(kāi)始*********/
void multiply_and_decision()
{
 int i=0,j=0,sum=0,h=0;
 for(i=0;i<OutputLength;i++)
 {
  multiply[i]=BPSK[i]*sin_data[j];/*調(diào)制信號(hào)與cos相乘*/
  j++;
  if(j==SineLength)
   j=0;
  }
  
 for(i=0;i<InputLength;i++)
 {
  for(j=0;j<SineLength;j++)
  {
   if(multiply[h++]>=0)
    sum++;
   }
   
  if(sum>=SineLength/2) de_BPSK[i]=1;
  else  de_BPSK[i]=0;
  sum=0;
 }
} 
/***************本地載波相乘和判決函數(shù)定義結(jié)束*********/

  
  

/************************函數(shù)輸出(xt1029)***********************/



 


/******************* 主函數(shù)到此(xt1029)*****************************/


/*  
 for(i=0;i<10;i++)
    {
              a =*(int *)(0x30000+i);
              *( int *)(0x8000)=a;
} 
for(;;)
   {
    submit_qdma();
	wait();
   }
 

*/



  
/***********************************屏蔽PLL等(原因:編譯時(shí)地址出錯(cuò))(xt1029)***********/
/******************************************************************************\
* PLL initial Programm
\******************************************************************************/
/*
void startPLL()
{
	//PLL_bypass();
	delay();
	PLL_reset();
	delay();
	PLL_setPllRatio(PLL_DIV0,0x1);   /* DIVD0  Ndiv */      //clock_in = 40MHz
/*	PLL_enablePllDiv(PLL_DIV0);	

    PLL_setMultiplier(20);            /* Mmul Multiply by the number */
    	                                // system_clock=(clock_in/Ndiv)* Mmul
    	                                // system_clock=(40/1)*5=200MHz
/*	PLL_setOscRatio(0x0);               // clock out3
	PLL_enableOscDiv();
	delay();
	
			
//	PLL_operational();
	PLL_setPllRatio(PLL_DIV1,0x1);   // system_clk1  for DSP core
									 // DSPcore = system_clock/1 = 200MHz  
	PLL_enablePllDiv(PLL_DIV1);      /* dsp core divide bu the number+1*/ 
/*	delay();
	PLL_setPllRatio(PLL_DIV2,0x09);   /* peripheral sysclk2 divide by the number+1*/
/*	PLL_enablePllDiv(PLL_DIV2);      //  Peripherals   R62 測(cè)量
	                                 // peripheral sysclk2 = system_clock/(9+1) = 20MHz
	delay();
	PLL_setPllRatio(PLL_DIV3,0x4);   /* sysclk3 divide bu the number+1*/
/*	PLL_enablePllDiv(PLL_DIV3);      // EMIF interface clock
									 // EMIF sysclk = 200/2 =100MHz
	delay();
	delay();
	
	PLL_deassert();
	delay();
	delay();	
	PLL_enable();
	delay();
	delay();
	
	return;

}



void delay()
{
    int i;
    for(i=0;i<0xfff;i++){}
    return;
}


*/
/************************************************************************\
 name:      SetInterruptsEdma

 purpose:   Sets up interrupts to service EDMA transfers

 inputs:    void

 returns:   void
\************************************************************************/
void setupInterrupts(void)
{

     IRQ_setVecs(vectors);     /* point to the IRQ vector table	*/

     IRQ_nmiEnable();
     IRQ_globalEnable();
     
     IRQ_map(IRQ_EVT_EXTINT4, 4);
     IRQ_reset(IRQ_EVT_EXTINT4);
     
} /* End of SetInterruptsEdma() */

/************************************************************************\
 name:      Interrupt Service Routine c_int04

\************************************************************************/
interrupt void    
c_int04(void)    
{ 
    int i;
    IER = 0;
	IRQ_clear(IRQ_EVT_EXTINT4);

    submit_qdma();
	   w=!w;
   //*(short int *)(0x90080000) = w; 
//    wait();
    IRQ_enable(IRQ_EVT_EXTINT4); 
 
	return;
}


 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看欧美黄色| 蜜桃一区二区三区在线| 日韩欧美国产三级| 日韩丝袜情趣美女图片| 日韩视频免费观看高清在线视频| 在线观看亚洲成人| 欧美一卡在线观看| 久久一区二区三区四区| 国产欧美精品在线观看| 亚洲欧美韩国综合色| 国产精品电影院| 亚洲精品国产视频| 国产在线不卡视频| av一本久道久久综合久久鬼色| 91蜜桃网址入口| 91精品国产福利| 国产婷婷色一区二区三区在线| 中文字幕不卡在线| 免费人成黄页网站在线一区二区| 精品亚洲成a人在线观看| 色狠狠一区二区三区香蕉| 欧美一区二区精品久久911| 久久亚区不卡日本| 午夜久久久影院| 不卡在线观看av| 精品美女一区二区| 亚洲第一激情av| 在线看不卡av| 国产精品毛片a∨一区二区三区| 亚洲成av人片在线| 欧美日韩精品系列| 亚洲国产精品麻豆| 在线免费观看视频一区| 亚洲女与黑人做爰| 色丁香久综合在线久综合在线观看| 国产婷婷精品av在线| 国产一区在线精品| 国产午夜精品久久久久久免费视| 日本vs亚洲vs韩国一区三区二区| 欧美精品久久久久久久久老牛影院 | 成人av网址在线| 国产精品午夜久久| 欧美日韩中文一区| 日韩avvvv在线播放| 欧美一级久久久久久久大片| 日本最新不卡在线| 久久影院午夜片一区| 国产ts人妖一区二区| 亚洲精品视频免费看| 欧美日韩亚洲综合一区| 日日嗨av一区二区三区四区| 精品国产免费人成电影在线观看四季 | 成人午夜av影视| 亚洲国产一区视频| 久久久久久久电影| 欧美写真视频网站| 成人午夜视频福利| 香蕉成人伊视频在线观看| 欧美成人性战久久| 欧美日韩一区中文字幕| 精品夜夜嗨av一区二区三区| 国产精品国产自产拍在线| 欧美一级在线免费| 欧美日韩国产综合视频在线观看| 国产高清不卡一区二区| 午夜一区二区三区视频| 亚洲日本在线观看| 国产无人区一区二区三区| 欧美日韩国产乱码电影| 色视频欧美一区二区三区| 国产成人综合亚洲网站| 久久99精品国产麻豆婷婷| 亚洲精品国产成人久久av盗摄| 国产精品美女一区二区三区| 久久综合久久综合久久| 欧美精品一区二区三区蜜臀| 日韩一区二区三区电影在线观看 | 7777精品伊人久久久大香线蕉经典版下载 | 亚洲国产精品麻豆| 亚洲电影视频在线| 日韩精品亚洲专区| 免费看日韩精品| 成人伦理片在线| 色伊人久久综合中文字幕| 色婷婷综合久久久中文一区二区| 色诱亚洲精品久久久久久| 欧美酷刑日本凌虐凌虐| 欧美大片一区二区| 国产日韩欧美精品综合| 亚洲国产高清在线观看视频| 一区二区免费看| 国内成人免费视频| 欧美在线制服丝袜| 精品国产123| 亚洲国产一区二区在线播放| 久久精品国产**网站演员| 菠萝蜜视频在线观看一区| 91行情网站电视在线观看高清版| 欧美日韩不卡在线| 日本一区二区三区四区在线视频| 一区二区三区视频在线看| 麻豆91精品91久久久的内涵| 成人91在线观看| 久久久久高清精品| 日韩激情一二三区| 欧美久久久久久久久| 亚洲天堂久久久久久久| 国产成人精品三级| 精品国产乱码久久久久久1区2区 | 91精品办公室少妇高潮对白| 精品久久久久久久人人人人传媒| 亚洲国产日韩av| 欧美这里有精品| 亚洲午夜精品久久久久久久久| 99久久婷婷国产综合精品| 亚洲国产成人在线| 99国产精品久久久| 亚洲视频资源在线| 91亚洲精品久久久蜜桃| 综合欧美亚洲日本| 欧美视频一区二区三区| 五月天激情小说综合| 日韩欧美一区二区在线视频| 久久99日本精品| 国产视频一区在线播放| 在线观看www91| 狠狠色丁香久久婷婷综合丁香| 国产目拍亚洲精品99久久精品| av不卡在线播放| 免费在线观看成人| 中文字幕在线观看一区二区| 91黄色在线观看| 国产盗摄视频一区二区三区| 中文字幕在线一区| 日韩你懂的在线播放| 日本道精品一区二区三区| 裸体歌舞表演一区二区| 亚洲国产视频在线| 中文字幕一区二区5566日韩| 这里只有精品视频在线观看| 成人高清视频免费观看| 美国欧美日韩国产在线播放| 亚洲免费大片在线观看| 中文字幕第一区综合| 国产日韩欧美激情| 久久新电视剧免费观看| 2023国产精品自拍| 日韩精品在线一区| 日韩免费观看高清完整版| 欧美日韩久久一区| 欧美一级夜夜爽| 日韩精品一区二| 精品国产百合女同互慰| 日韩美女天天操| 久久久久久亚洲综合| 中文字幕av在线一区二区三区| 久久久www成人免费无遮挡大片| 精品国产一区二区三区四区四| 91精品黄色片免费大全| 欧美成人video| 欧美精品一区二区三区四区| 国产欧美日韩激情| 亚洲欧洲在线观看av| 亚洲综合久久av| 久久99精品一区二区三区三区| 国产呦萝稀缺另类资源| 99天天综合性| 日韩欧美二区三区| 成人欧美一区二区三区1314| 亚洲图片一区二区| 国产美女在线观看一区| 日本韩国精品在线| 国产色综合久久| 免费在线观看视频一区| 一本色道久久加勒比精品| 欧美日韩午夜在线视频| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美中文字幕亚洲一区二区va在线| 欧美日本一道本| 亚洲欧美日韩久久| 波多野结衣精品在线| 日韩一级二级三级精品视频| 亚洲一二三四在线| 99精品视频一区二区三区| 中文字幕精品三区| 国产91综合一区在线观看| 欧美成人r级一区二区三区| 亚洲与欧洲av电影| 在线观看亚洲精品| 亚洲男人的天堂一区二区| a级精品国产片在线观看| 中文字幕久久午夜不卡| 国产成人99久久亚洲综合精品| 在线播放国产精品二区一二区四区| 亚洲一区免费视频| 日韩视频免费观看高清完整版| 亚洲成a人片在线观看中文| 欧美私人免费视频| 午夜精品视频一区| 久久久久久黄色|