📄 rxdetector.h
字号:
/*****************************************************************************
Module : Detector
******************************************************************************
Function :
Procedures :
Author : $Author: Adrian $
Revision : $Revision: 6 $
Modified : $Modtime: 05-05-28 12:25 $
File : $Workfile: rxdetector.h $
******************************************************************************
KTH, Royal Institute of Technology, S3, Stockholm
*****************************************************************************/
#ifndef RX_DETECTOR_H
#define RX_DETECTOR_H
/*--- Include files --------------------------------------------------------*/
#include <csl_stdinc.h>
#include "../common/commondef.h"
/*=== End of include files =================================================*/
/*--- Global defines -------------------------------------------------------*/
/*=== End of global defines ================================================*/
/*--- Global types declaration ---------------------------------------------*/
/* Communication method */
typedef enum
{
eRX_ML,
eRX_ZF,
eRX_JMMSE
} typRX_DetectorMethod;
typedef struct
{
/* pointer to the received symbols in antenna 1 */
typCOM_fCPLXBUFF *pfCplxSymbBuff_1;
/* pointer to the received symbols in antenna 2 */
typCOM_fCPLXBUFF *pfCplxSymbBuff_2;
/* number of symbols in the buffer */
unsigned int uiNoOfSymb;
/* lenght of the circular symbol buffer */
unsigned int uiBufLen;
/* index of next symbol to detect */
unsigned int uiNextSymb;
/* pointer to the data buffer */
char *pcDataBuff;
/* which byte to write (even or odd) */
int iWhichByte; // 0 = even, 1 = odd
/* index of next byte to write in the data buffer */
unsigned int uiNextWriteByte;
/* which part of the byte to write */
unsigned int nibble; // 0 = 'low', 1 = 'high'
/* which detect type we use */
typRX_DetectorMethod detect_type;
/* number of bytes written to the data buffer */
unsigned int uiBytesWritten;
} typRX_DETECTORSTATE;
/*=== End of global types declaration ======================================*/
/*--- Global variables declaration -----------------------------------------*/
extern float pH_hat_r[2][2];
extern float pH_hat_i[2][2];
/*=== End of global variables declaration ==================================*/
/*--- Global constants declaration -----------------------------------------*/
/*=== End of global constants declaration ==================================*/
/*--- Global functions declaration -----------------------------------------*/
void detection(typRX_DETECTORSTATE *pDetectorStat);
/*=== End of global functions declaration ==================================*/
#endif
/*--- AUTOMATICALLY GENERATED VERSION HISTORY --------------------------------
$Log: /MIMO/Receiver/rxdetector.h $
*
* 6 05-05-28 12:38 Adrian
* added a state variable to be able to use the circular symbol buffer
*
* 5 05-05-24 17:25 Anders
* Finished and tested with matlab
*
* 4 05-05-20 19:36 Anders
* enum was added
*
* 3 05-05-17 12:01 Anders
* Introduce the variabel nibble in the structure typRX_Detectorstate
*
* 1 05-05-11 17:00 Adrian
* created and added to VSS
===== END OF AUTOMATICALLY GENERATED VERSION HISTORY =======================*/
/**** End of file ***********************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -