qpskmain .c

来自「一个用于通信的QPSK调制解调程序」· C语言 代码 · 共 63 行

C
63
字号
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include "QpskParameter.h"
#include "QpskFunction.h"

//------------main()-------------------------------------------------

void main()
{
	int xcorrOutLen = 1200;
	int i;
	int maxPoint,sigStart;
	float *xcorrOut;

	xcorrOut = (float*)malloc(xcorrOutLen * sizeof(float));

	//---------信源产生随机二进制数-----------------------
	randint(infoBit,bitNum,2);

	//---------Qpsk调制-------------------------------

	QpskMod();

	//---------产生同步信号---------------------------
	chirp(lfm,fs,6000,Tsyn,12000);

	//----------形成帧-------------------------------
	rightLink(txSignal,lfm,QpskSignal,1,lfmLen,QpskLen);

	//----------通过信道-----------------------------

	channel(rxSignal,txSignal,sigLen,snr);

	//----------找同步--------------------------------

	xcorr(xcorrOut,rxSignal,lfm,sigLen,lfmLen,xcorrOutLen);

	maxPoint = MAX(xcorrOut,xcorrOutLen);

	free(xcorrOut);
	sigStart = maxPoint - sigLen + lfmLen+1;

	for(i=0;i<QpskLen;i++)
	{
		rxQpskSig[i] = rxSignal[i+sigStart];
	}	

	//----------Qpsk解调------------------------------
	QpskDemod();

	biterr();
	printf("ber = %f\n",ber);



}




⌨️ 快捷键说明

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