www.gusucode.com > MATLAB编程伽利略和北斗的BOC捕获跟踪和解算程序 > MATLAB编程伽利略和北斗的BOC捕获跟踪和解算程序/gnss_sw_radio2/Acquisition_tb.m

    clear all; close all;

samples = Samples('E5b',...
									'/home/ondrej/wnav/snapshots/snapshot_mem_01_e5b.dat');
E5aI_sc = SecondaryPRNCode('E5bI');
NumberOfSamples = floor(E5aI_sc.ChipPeriod/samples.SamplingPeriod);
NumberOfPeriods = 20;
E5aI_pc = PrimaryPRNCode('E5bI', NumberOfSamples, 1); 
E5aQ_pc = PrimaryPRNCode('E5bQ', NumberOfSamples, 1); 
samples.loadSamples(NumberOfSamples*(NumberOfPeriods+1));
acq = Acquisition('E5b', samples.FrequencyOffset);
for SVID = 1:50
	fprintf(1, 'Acquiring E5b PRN %d ... \n', SVID);
	acq.Acquire(samples, NumberOfPeriods, 1e-5, SVID, E5aI_pc, E5aQ_pc);
	if (acq.DetectionStatus)
		fprintf(1, 'E5b PRN %d successfully acquired! \n', SVID);
		figure(SVID); clf;
		[m n] = size(acq.CCF);
		plot((1:m)*samples.SamplingPeriod, abs(acq.CCF),...
				 (1:m)*samples.SamplingPeriod, repmat(acq.Threshold, m, 1));
		xlabel('Time [s]');
		ylabel('CorrOut [-]');
		legend('CCF','Threshold');
	end
end