📄 receive.c
字号:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "Setting.H"
#include "RS.H"
#include "TxRx.H"
extern WordType FrameRx;
extern WordType RxFirstFrame;
extern int DemoduFlag;
extern int buffer4[];
extern int Voltage3[];
extern int DemoduFrame;
extern int *pADCModuData;
extern int *ModuDatapoint;
extern int *ModuFindFrame;
int DataBuffer[NullSampleSize / 2 + NullSampleSize + SymbolSize * 3];
RS_OFDM_Demod()
{
//int i,j;
/* Buffer for received data */
//float ModuData[SymbolSize * (SymPerFrame + 2) + NullSampleSize + HeaderSize];
int *DecoData = buffer4;
ModuDatapoint = pADCModuData;
if (FrameRx == TotalFrame) /* Meet the head of a frame */
{
ModuDatapoint = ModuDatapoint + 176;
}
/* Save the data used in FindFrame for next OFDM frame
if (FrameRx == 3)
{
for (i = 0; i < NullSampleSize / 2; i++)
{
DataBuffer[i] =
abs(DeModuData[SymPerFrame * SymbolSize - NullSampleSize / 2 + i]);
}
}*/
/* Proceed demodulation & channel decode */
DemoduFrame = (int)Receive(ModuDatapoint, DecoData);
if(pADCModuData == Voltage3)
pADCModuData = Voltage3 + 1040;
else
pADCModuData = Voltage3;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -