git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4711 818b1a75-f10b-46b9-bf7c-635c3b92a50f
This commit is contained in:
@@ -1,33 +1,35 @@
|
||||
dual_tx=0;
|
||||
card=0;
|
||||
limeparms;
|
||||
active_rf = [1 1 0 0];
|
||||
active_rf = zeros(1,4);
|
||||
active_rf = [1 1 1 1];
|
||||
autocal = [1 1 1 1];
|
||||
resampling_factor = [2 2 2 2];
|
||||
|
||||
%rf_mode = (RXEN+TXEN+TXLPFNORM+TXLPFEN+TXLPF25+RXLPFNORM+RXLPFEN+RXLPF25+LNA1ON+LNAMax+RFBBNORM)*[1 1 1 1];
|
||||
rf_mode = (RXEN+TXLPFNORM+TXLPFEN+TXLPF25+RXLPFNORM+RXLPFEN+RXLPF25+LNA1ON+LNAMax+RFBBNORM)*active_rf;
|
||||
rf_mode = rf_mode+(DMAMODE_RX*active_rf);
|
||||
rf_mode = rf_mode+((DMAMODE_RX+DMAMODE_TX)*active_rf);
|
||||
%freq_rx = 2540000000*[1 1 1 1];
|
||||
freq_rx = 1907600000*active_rf;
|
||||
%freq_rx = 1912600000*active_rf; %+ 2540000000*[0 1 0 0]; % + 859500000*[0 0 1 0];
|
||||
%freq_rx = 2680000000*active_rf; %+ 2540000000*[0 1 0 0]; % + 859500000*[0 0 1 0];
|
||||
%freq_rx = 1912600000*[1 1 1 1];
|
||||
%freq_rx = 859500000*[1 1 1 1];
|
||||
freq_tx = freq_rx;
|
||||
tx_gain = 0*[1 1 1 1];
|
||||
rx_gain = 0*[1 1 1 1];
|
||||
rf_local= rf_local*[1 1 1 1];
|
||||
rf_rxdc = rf_rxdc*[1 1 1 1];
|
||||
freq_tx = freq_rx-120000000*active_rf;
|
||||
tx_gain = 0*active_rf; %[1 1 1 1];
|
||||
rx_gain = 0*active_rf; %1 1 1 1];
|
||||
rf_local= rf_local*active_rf; %[1 1 1 1];
|
||||
rf_rxdc = rf_rxdc*active_rf; %[1 1 1 1];
|
||||
%rf_vcocal=rf_vcocal_859*[1 1 1 1];
|
||||
rf_vcocal=rf_vcocal_19G*[1 1 1 1];
|
||||
rf_vcocal=rf_vcocal_19G*active_rf; %1 1 1 1];
|
||||
eNBflag = 0;
|
||||
tdd_config = DUPLEXMODE_FDD + TXRXSWITCH_TESTRX;
|
||||
%tdd_config = DUPLEXMODE_FDD + TXRXSWITCH_LSB;
|
||||
syncmode = SYNCMODE_FREE;
|
||||
rffe_rxg_low = 63*active_rf;
|
||||
rffe_rxg_final = 31*active_rf;
|
||||
rffe_band = B19G_TDD*active_rf;
|
||||
autocal = [1 1 1 1];
|
||||
autocal = [1 1 1 1];
|
||||
rffe_rxg_low = 31*active_rf; %[1 1 1 1];
|
||||
rffe_rxg_final = 63*active_rf; %[1 1 1 1];
|
||||
rffe_band = B19G_TDD*active_rf; %[1 1 1 1];
|
||||
oarf_config_exmimo(card,freq_rx,freq_tx,tdd_config,syncmode,rx_gain,tx_gain,eNBflag,rf_mode,rf_rxdc,rf_local,rf_vcocal,rffe_rxg_low,rffe_rxg_final,rffe_band,autocal,resampling_factor)
|
||||
|
||||
oarf_config_exmimo(card,freq_rx,freq_tx,tdd_config,syncmode,rx_gain,tx_gain,eNBflag,rf_mode,rf_rxdc,rf_local,rf_vcocal,rffe_rxg_low,rffe_rxg_final,rffe_band,autocal)
|
||||
|
||||
gpib_card=0; % first GPIB PCI card in the computer
|
||||
gpib_device=28; % this is configured in the signal generator Utilities->System
|
||||
@@ -39,15 +41,84 @@ power_dBm = -95;
|
||||
|
||||
|
||||
s=oarf_get_frame(card);
|
||||
f = (7.68*(0:length(s(:,1))-1)/(length(s(:,1))))-3.84;
|
||||
if (resampling_factor(1)== 2)
|
||||
f0 = (7.68*(0:length(s(:,1))-1)/(length(s(:,1))))-3.84;
|
||||
axis([-3.84,3.84,40,200]);
|
||||
elseif (resampling_factor(1) == 1)
|
||||
f0 = (15.36*(0:length(s(:,1))-1)/(length(s(:,1))))-7.68;
|
||||
axis([-7.68,7.68,40,200]);
|
||||
else
|
||||
f0 = (30.72*(0:length(s(:,1))-1)/(length(s(:,1))))-15.36;
|
||||
axis([-15.36,15.36,40,200]);
|
||||
endif
|
||||
|
||||
|
||||
if (resampling_factor(2)== 2)
|
||||
f1 = (7.68*(0:length(s(:,2))-1)/(length(s(:,2))))-3.84;
|
||||
axis([-3.84,3.84,40,200]);
|
||||
elseif (resampling_factor(2) == 1)
|
||||
f1 = (15.36*(0:length(s(:,2))-1)/(length(s(:,2))))-7.68;
|
||||
axis([-7.68,7.68,40,200]);
|
||||
else
|
||||
f1 = (30.72*(0:length(s(:,2))-1)/(length(s(:,2))))-15.36;
|
||||
axis([-15.36,15.36,40,200]);
|
||||
endif
|
||||
|
||||
if (resampling_factor(3)== 2)
|
||||
f2 = (7.68*(0:length(s(:,3))-1)/(length(s(:,3))))-3.84;
|
||||
axis([-3.84,3.84,40,200]);
|
||||
elseif (resampling_factor(3) == 1)
|
||||
f2 = (15.36*(0:length(s(:,3))-1)/(length(s(:,3))))-7.68;
|
||||
axis([-7.68,7.68,40,200]);
|
||||
else
|
||||
f2 = (30.72*(0:length(s(:,3))-1)/(length(s(:,3))))-15.36;
|
||||
axis([-15.36,15.36,40,200]);
|
||||
endif
|
||||
|
||||
if (resampling_factor(4)== 2)
|
||||
f3 = (7.68*(0:length(s(:,4))-1)/(length(s(:,4))))-3.84;
|
||||
axis([-3.84,3.84,40,200]);
|
||||
elseif (resampling_factor(4) == 1)
|
||||
f3 = (15.36*(0:length(s(:,4))-1)/(length(s(:,4))))-7.68;
|
||||
axis([-7.68,7.68,40,200]);
|
||||
else
|
||||
f3 = (30.72*(0:length(s(:,4))-1)/(length(s(:,4))))-15.36;
|
||||
axis([-15.36,15.36,40,200]);
|
||||
endif
|
||||
|
||||
|
||||
spec0 = 20*log10(abs(fftshift(fft(s(:,1)))));
|
||||
spec1 = 20*log10(abs(fftshift(fft(s(:,2)))));
|
||||
spec2 = 20*log10(abs(fftshift(fft(s(:,3)))));
|
||||
spec3 = 20*log10(abs(fftshift(fft(s(:,4)))));
|
||||
|
||||
clf
|
||||
plot(f',spec0,'r',f',spec1,'b',f',spec2,'g',f',spec3,'m')
|
||||
axis([-3.84,3.84,40,160]);
|
||||
if (active_rf(1) == 1)
|
||||
hold off;
|
||||
plot(f0',spec0,'r');
|
||||
endif
|
||||
%hold on
|
||||
if (active_rf(2) == 1)
|
||||
hold off;
|
||||
figure;
|
||||
plot(f1',spec1,'b');
|
||||
endif
|
||||
%hold on
|
||||
if (active_rf(3) == 1)
|
||||
hold off;
|
||||
figure;
|
||||
plot(f2',spec2,'g');
|
||||
endif
|
||||
%hold on
|
||||
if (active_rf(4) == 1)
|
||||
hold off;
|
||||
figure;
|
||||
plot(f3',spec3,'m');
|
||||
endif
|
||||
%hold on
|
||||
|
||||
%hold off
|
||||
%axis([-3.84,3.84,40,160]);
|
||||
%gpib_send(gpib_card,gpib_device,'OUTP:STAT OFF'); % activate output
|
||||
legend('Antenna Port 0','Antenna Port 1','Antenna Port 2','Antenna Port 3');
|
||||
%legend('Antenna Port 0','Antenna Port 1','Antenna Port 2','Antenna Port 3');
|
||||
grid
|
||||
|
||||
Reference in New Issue
Block a user