📄 codegen.m
字号:
%codegen.m generates one of the 32 C/A codes
function [ca_used]=codegen(svnum)
%ca_used: a vector containing CA code sequence bit stream
%the g2s vector holds the appropriate shift of the G2 code
%generate the C/A code (ex. for SV#19-use G2 shift of G2S(19)=471)
%svnum: satellite number
g2s=[ 5 ; 6; 7; 8; 17; 18;139;140;
141;251;252;254;255;256;257;258;
469;470;471;472;473;474;509;512;
513;514;515;516;859;860;861;862];
g2shift = g2s(svnum,1);
%*******generate G1 code***************
reg = -1*ones(1,10);
for i=1:1023
g1(i)=reg(10);
save1=reg(3)*reg(10);
reg(1,2:10)=reg(1:1:9);
reg(1)=save1;
end
%********generate G2 code**************
reg = -1*ones(1,10);
for i= 1:1023
g2(i)=reg(10);
save2=reg(2)*reg(3)*reg(6)*reg(8)*reg(9)*reg(10);
reg(1,2:10)=reg(1:1:9);
reg(1)=save2;
end
%********shift G2 code****************
g2tmp(1,1:g2shift)=g2(1,1023-g2shift+1:1023);
g2tmp(1,g2shift+1:1023)=g2(1,1:1023-g2shift);
g2=g2tmp;
%generate C/A code sample by multipying G1 and G2
ca_used=g1.*g2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -