www.gusucode.com > GPS信号捕获程序,信号源为东方联星Newstar210M采集到的中频数字信号(含GUI界面)- > sourcode/sampleCAcode.m
function SampSequence=sampleCAcode(svnum,sampleFrequence,sampleTime) %sample a given C/A sequence with a high sample frequence %svnum is the ID of SV's PRN %sampleFrequence is the sample frequence %sampleTime is the millisecond number %Created 4/15/05, Hao Yu, sendtoyuhao@yahoo.com.cn %Copy right olinkstar corp. Bejing China %*********C/A of sat # sampled at sampleFrequence for sampleTime ms % %use for debug % clear;clc; % svnum=12; sampleFrequence=16367667; % sampleTime=2; UnitTime=1.0; % time's unit is 1 second; CACyc=UnitTime/(1023*1000); %c/a code period SampCyc=UnitTime/(sampleFrequence); %sampled period totalTime=sampleTime; %total time n=totalTime; catemp=generatecacode(svnum); caseque=catemp; for counter=2:n, caseque=[caseque catemp]; end SampPoint=fix(sampleFrequence*n/1000); %the sampled points'number in n ms SampSequence=zeros(1,SampPoint); %define the sample sequence %sample the C/A sequence by a higher frequence CASNo=1; for SSNo=1:1:SampPoint, if SSNo*SampCyc>CASNo*CACyc, CASNo=CASNo+1; end SampSequence(SSNo)=caseque(CASNo); end