From c2c2ae545d43a8a878c225cf739106e32ee1e1fe Mon Sep 17 00:00:00 2001 From: Florian Kaltenberger Date: Mon, 12 Aug 2013 09:05:39 +0000 Subject: [PATCH] fix for get_frame for reciprocity measurements & other updates git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4071 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- .../EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc | 6 +++++- .../EXMIMO/USERSPACE/OCTAVE/oarf_send_frame.cc | 4 ++++ targets/ARCH/EXMIMO/USERSPACE/OCTAVE/rx_spec.m | 13 +++++++------ targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m | 15 +++++++++------ 4 files changed, 25 insertions(+), 13 deletions(-) diff --git a/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc index 04fe12ea52..bfd1b46ad8 100644 --- a/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc +++ b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc @@ -133,10 +133,14 @@ DEFUN_DLD (oarf_get_frame, args, nargout,"Get frame") ComplexMatrix dx (FRAME_LENGTH_COMPLEX_SAMPLES, numant); + /* // set the tx buffer to 0x00010001 to put switch in rx mode for (aa=0; aaframing.tdd_config & TXRXSWITCH_MASK) != TXRXSWITCH_TESTRX) + printf("Warning: tdd_config is not set to TXRXSWITCH_TESTRX! You better know what you are doing! :)\n"); // assign userspace pointers for (i=0; iframing.tdd_config & TXRXSWITCH_MASK) != TXRXSWITCH_TESTTX) + printf("Warning: tdd_config is not set to TXRXSWITCH_TESTTX! You better know what you are doing! :)\n"); + + nbits = args(2).scalar_value(); for (aa=0;aaSystem diff --git a/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m index 3da639114a..9bb708b129 100644 --- a/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m +++ b/targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m @@ -8,8 +8,8 @@ eNB_flag = 0; card = 0; limeparms; -rf_mode = (RXEN+TXEN+TXLPFNORM+TXLPFEN+TXLPF25+RXLPFNORM+RXLPFEN+RXLPF25+LNA1ON+LNAMax+RFBBNORM) * [1 1 0 0 ]; -rf_mode = rf_mode + (DMAMODE_TX)*[1 0 0 0]; +rf_mode = (RXEN+TXEN+TXLPFNORM+TXLPFEN+TXLPF25+RXLPFNORM+RXLPFEN+RXLPF25+LNA1ON+LNAMax+RFBBNORM) * [1 1 1 1]; +rf_mode = rf_mode + (DMAMODE_TX)*[1 1 1 1]; %rf_mode = RXEN+TXEN+TXLPFNORM+TXLPFEN+TXLPF25+RXLPFNORM+RXLPFEN+RXLPF25+LNA1ON+LNAByp+RFBBLNA1; %rf_local= [8253704 8253704 8257340 8257340]; %eNB2tx %850MHz %rf_local= [8255004 8253440 8257340 8257340]; % ex2 700 MHz @@ -31,20 +31,23 @@ syncmode = SYNCMODE_FREE; rffe_rxg_low = 61*[1 1 1 1]; rffe_rxg_final = 61*[1 1 1 1]; rffe_band = B19G_TDD*[1 1 1 1]; +autocal = [1 1 1 1]; -oarf_config_exmimo(card, freq_rx,freq_tx,tdd_config,syncmode,rxgain,txgain,eNB_flag,rf_mode,rf_rxdc,rf_local,rf_vcocal,rffe_rxg_low,rffe_rxg_final,rffe_band); +oarf_config_exmimo(card, freq_rx,freq_tx,tdd_config,syncmode,rxgain,txgain,eNB_flag,rf_mode,rf_rxdc,rf_local,rf_vcocal,rffe_rxg_low,rffe_rxg_final,rffe_band,autocal); amp = pow2(14)-1; n_bit = 16; -s = zeros(76800,2); +s = zeros(76800,4); select = 1; switch(select) case 1 - s(:,1) = floor(amp * real(exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); - s(:,2) = floor(amp * imag(exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); + s(:,1) = floor(amp * (exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); + s(:,2) = floor(amp * (exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); + s(:,3) = floor(amp * (exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); + s(:,4) = floor(amp * (exp(sqrt(-1)*.5*pi*(0:((76800)-1))))); case 2 s(38400+128,1)= 80-1j*40;