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

📄 dlamc.c

📁 This is a OFDM wimax
💻 C
字号:
#include "allocation.h"#define DLAMC_GUARDLEFT 160#define DLAMC_GUARDRIGHT 159#define DLAMC_NC OFDMA_NC#define DLAMC_NUMSUBCARRIERS 48#define DLAMC_NUMSUBCHANNELS 32#define DLAMC_BINSIZE 9#define DLAMC_NUMBINS 6#define DLAMC_DATACARRIERS (DLAMC_NC - DLAMC_GUARDLEFT - DLAMC_GUARDRIGHT - 1)static int dlamc_setguard(char *cs) ;/********************************************************************** * Function: dlamc_setcarriers * Parameters: cs, symbolnum, idcell * * Note that the parameters are for the sake of uniformity, in reality * they are not used * *******************************************************************/int dlamc_setcarriers(char *cs, int symbolnum, int idcell){		int j,k,m,numbins;		int skip=0 ;		dlamc_setguard(cs) ;		numbins = DLAMC_DATACARRIERS/DLAMC_BINSIZE ;		/** Pilots are in the central tone of each bin of 9 tones **/		k = DLAMC_GUARDLEFT ; skip=0;		for (j=0; j<numbins; j++)		{				if (skip == 0 && (k+4 >= 1024)) { skip=1; k++ ;}				cs[k+4] = PILOT_MARK ;				k += DLAMC_BINSIZE ;		}		skip=0 ;		for (j=0; j<DLAMC_NUMSUBCHANNELS; j++)		{				for (k=0; k<DLAMC_NUMBINS; k++)				{					int offset = j*DLAMC_BINSIZE*DLAMC_NUMBINS + k*DLAMC_BINSIZE + DLAMC_GUARDLEFT ;					for (m=0; m<4; m++)					{						if (skip == 0 && (offset+m >= 1024)) skip = 1 ;						cs[offset+m+skip] = marker(j) ;					}					for (m=5; m<DLAMC_BINSIZE; m++)					{						if (skip == 0 && (offset+m >= 1024)) skip = 1 ;						cs[offset+m+skip] = marker(j) ;					}				}		}		return 1 ;}static int dlamc_setguard(char *cs){		int k;		for (k=0; k<DLAMC_GUARDLEFT; k++)		{			cs[k] =  GUARD_MARK ;		}		for (k=0; k<DLAMC_GUARDRIGHT; k++)		{				cs[DLAMC_NC - k - 1] = GUARD_MARK ;		}		cs[1024] = DC_MARK ;		return(0) ;}

⌨️ 快捷键说明

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