rxpowercal.cpp
来自「在vc上做的802.16d ofdm phy的仿真」· C++ 代码 · 共 93 行
CPP
93 行
#include "typedef.h"
#include "global_var.h"
#include "measure.h"
void RxPowerCal(Uint8 rxPwrCalMode,
ChannelEstResult preambleChEstRes64,
ChannelEstResult preambleChEstRes128,
ChannelEstResult *preambleChEstResStc,
RxPowerParam *pRxSignalNoise,
ChannelEstResult *pPreambleChEstRes)
{
int i;
switch (rxPwrCalMode)
{
case 0x01:
{
for (i = 0; i < PREAMBLE_FREQ_FULL_SIZE; i++)
{
pPreambleChEstRes[0].ChEstOut[2*i] = preambleChEstRes64.ChEstOut[2*i];
pPreambleChEstRes[0].ChEstOut[2*i+1] = preambleChEstRes64.ChEstOut[2*i+1];
}
pPreambleChEstRes[0].rxNoisePower = preambleChEstRes64.rxNoisePower;
pPreambleChEstRes[0].rxSignalPower = preambleChEstRes64.rxSignalPower;
(*pRxSignalNoise).rxPower = preambleChEstRes64.rxSignalPower;
(*pRxSignalNoise).rxPowerDb = getDecibel(pRxSignalNoise->rxPower);
(*pRxSignalNoise).rxNoise = preambleChEstRes64.rxNoisePower;
(*pRxSignalNoise).rxNoiseDb = getDecibel(pRxSignalNoise->rxNoise);
break;
}
case 0x02 :
case 0x04 :
{
for (i = 0; i < PREAMBLE_FREQ_FULL_SIZE; i++)
{
pPreambleChEstRes[0].ChEstOut[2*i] = preambleChEstRes128.ChEstOut[2*i];
pPreambleChEstRes[0].ChEstOut[2*i+1] = preambleChEstRes128.ChEstOut[2*i+1];
}
pPreambleChEstRes[0].rxNoisePower = preambleChEstRes128.rxNoisePower;
pPreambleChEstRes[0].rxSignalPower = preambleChEstRes128.rxSignalPower;
(*pRxSignalNoise).rxPower = preambleChEstRes128.rxSignalPower;
(*pRxSignalNoise).rxPowerDb = getDecibel(pRxSignalNoise->rxPower);
(*pRxSignalNoise).rxNoise = preambleChEstRes128.rxNoisePower;
(*pRxSignalNoise).rxNoiseDb = getDecibel(pRxSignalNoise->rxNoise);
break;
}
case 0x08:
{
for (i = 0; i < PREAMBLE_FREQ_FULL_SIZE; i++)
{
pPreambleChEstRes[0].ChEstOut[2*i] = preambleChEstResStc[0].ChEstOut[2*i];
pPreambleChEstRes[0].ChEstOut[2*i+1] = preambleChEstResStc[0].ChEstOut[2*i+1];
pPreambleChEstRes[1].ChEstOut[2*i] = preambleChEstResStc[1].ChEstOut[2*i];
pPreambleChEstRes[1].ChEstOut[2*i+1] = preambleChEstResStc[1].ChEstOut[2*i+1];
}
pPreambleChEstRes[0].rxNoisePower = 0;
pPreambleChEstRes[0].rxSignalPower = 0;
pPreambleChEstRes[1].rxNoisePower = 0;
pPreambleChEstRes[1].rxSignalPower = 0;
(*pRxSignalNoise).rxPower = 0;
(*pRxSignalNoise).rxPowerDb = 0;
(*pRxSignalNoise).rxNoise = 0;
(*pRxSignalNoise).rxNoiseDb = 0;
break;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?