📄 demodulate_frame.c
字号:
//demodulate_frame.c
//
// Project Red 2002: High Performance OFDM Modem
// Against Channel Imperfections
// Auther: Linus Falk
#include "put_data.h"
#include "demod.h"
#include "ofdm.h"
#include "bitload.h"
unsigned int frame_number = 0;
//use static bitload
void demodulate_frame_no_bitload(float *complex_frame){
int i;
unsigned char data;
unsigned char modulation;
if(frame_number == 128){
change_bitload_buffer(); //just to update buffers for viewing at host
frame_number = 0;
}
//increase frame number, 1..1024
frame_number++;
// extract data from frame
for(i=4; i<124; i++){
if((i-3)%8 != 0){
modulation = 4;
demod(complex_frame + i*2, modulation, &data);
put_data(modulation,(unsigned int)data); //put data to Host
}
}
}
/*
void demodulate_frame(float *complex_frame){
int i;
//int counter = 0;
unsigned char data;
unsigned char modulation;
//increase frame number, 1..1024
frame_number = frame_number%1024;
frame_number++;
//update bitloading
if(NextBitLoadBuffer->use_from_frame == frame_number){ //time to change bitload buffer
change_bitload_buffer();
}
// extract data from frame
for(i=4; i<127; i++){
if((i-3)%8 != 0){
modulation = CurrentBitLoadBuffer->channel_modulation[i];
demod(complex_frame + i*2, modulation, &data);
put_data(modulation,(unsigned int)data); //put data to Host
}
}
}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -