diff --git a/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/OFDM_TX_FRAME.m b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/OFDM_TX_FRAME.m new file mode 100755 index 0000000000000000000000000000000000000000..f78e9077daf03a140cc40921583916e329d9163a --- /dev/null +++ b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/OFDM_TX_FRAME.m @@ -0,0 +1,22 @@ +function sig = OFDM_TX_FRAME(num_carriers,num_zeros,prefix_length,num_symbols_frame,preamble_length) + +% sig - output signal +% sig_length - output signal length +% num_carriers - number of sub-carriers +% num_zeros - number of zero carriers minus 1 (DC) +% prefix_length - length of cyclic prefix +% num_symbols_frame - number of symbols per OFDM frame +% preamble_length - length of 4-QAM preamble + +num_useful_carriers = num_carriers - num_zeros -1; + +sig = []; +for k=1:preamble_length + QAM4_preamble = QAM_MOD(4,floor(256*abs(rand(1,num_useful_carriers/4)))); + sig = [sig OFDM_TX(num_carriers,num_zeros,prefix_length,QAM4_preamble)]; +end + +for k=1:(num_symbols_frame - preamble_length) + QAM_data = QAM_MOD(256,floor(256*abs(rand(1,num_useful_carriers)))); + sig = [sig OFDM_TX(num_carriers,num_zeros,prefix_length,QAM_data)]; +end