⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lianghua.sci

📁 基于scilab软件的gmsk信号的调制
💻 SCI
字号:
function y=g(t);
//global a T B

T=1/270833;
B=0.3/T;
a=sqrt(log(2)/2)/B;
s1=4*T;
y=erfc(%pi*(t-T/2)/a)/s1-erfc(%pi*(t+T/2)/a)/s1;

endfunction;

f=270833;
dt=1/f;
times=100;
Na=10;
yang=8;
M=Na*times;
N=M*yang;
%f=270833;
T=1/f;
B=0.3/T;
Q=10;
jifen=zeros(1,5);
q=zeros(1,5);
c=zeros(1,5);
cossum=zeros(1,1024);
sinsun=zeros(1,1024);
xiangwei=zeros(1,1024);
 for n=0:31  
   for L=0:3
        
        m=n;                
            n1=fix(m/16);
            if n1,m=n-16;end;
            n2=fix(m/8);
            if n2,m=m-8;end;
            n3=fix(m/4);
            if n3,m=m-4;end;
            n4=fix(m/2);
            if n4,m=m-2;end;
            n5=m;
            
            b1=n1;              
            if b1==0,b1=-1;end;
            b2=n2;
            if b2==0,b2=-1;end;
            b3=n3;
            if b3==0,b3=-1;end;
            b4=n4;
            if b4==0,b4=-1;end;
            b5=n5;
            if b5==0,b5=-1;end;
         
           for ii=1:8
            jifen(1)=intg(-2.5*T,1.5*T+T*ii/8,g);
            jifen(2)=intg(-2.5*T,0.5*T+T*ii/8,g);
            jifen(3)=intg(-2.5*T,-0.5*T+T*ii/8,g);
            jifen(4)=intg(-2.5*T,-1.5*T+T*ii/8,g);
            jifen(5)=intg(-2.5*T,-2.5*T+T*ii/8,g);
            q=b1*jifen(1)+b2*jifen(2)+b3*jifen(3)+b4*jifen(4)+b5*jifen(5);
            x=n*32+L*8+ii;
           
            xiangwei(x)=%pi*q+L*%pi/2;
            cossum(n*32+L*8+ii)=cos(xiangwei(n*32+L*8+ii));
            sinsum(n*32+L*8+ii)=sin(xiangwei(n*32+L*8+ii));
            
        end;
    end;
end;
 xiangwei;
 
 cos_bin=zeros(10,1024);
sin_bin=zeros(10,1024);

for ii4=1:1024
    cos_1=cossum(ii4);                   //  %cos量化开始
    cos_2=(1+cos_1)*511.5;                 // %量化的0-1023
    mmm=cos_2;
    
    nnn1=fix(mmm/512);                   //   %将这个数10bit量化
    if nnn1,mmm=mmm-512;end;
    cos_bin(1,ii4)=nnn1;
    
    nnn2=fix(mmm/256);
    if nnn2,mmm=mmm-256;end;
    cos_bin(2,ii4)=nnn2;
    nnn3=fix(mmm/128);
    if nnn3,mmm=mmm-128;end;
    cos_bin(3,ii4)=nnn3;
    
    nnn4=fix(mmm/64);
    if nnn4,mmm=mmm-64;end;
    cos_bin(4,ii4)=nnn4;
    
    nnn5=fix(mmm/32);
    if nnn5,mmm=mmm-32;end;
    cos_bin(5,ii4)=nnn5;
    
    nnn6=fix(mmm/16);
    if nnn6,mmm=mmm-16;end;
    cos_bin(6,ii4)=nnn6;
    
    nnn7=fix(mmm/8);
    if nnn7,mmm=mmm-8;end;
    cos_bin(7,ii4)=nnn7;
    
    nnn8=fix(mmm/4);
    if nnn8,mmm=mmm-4;end;
    cos_bin(8,ii4)=nnn8;
    
    nnn9=fix(mmm/2);
    if nnn9,mmm=mmm-2;end;
    cos_bin(9,ii4)=nnn9;
    
    nnn10=fix(mmm);
    cos_bin(10,ii4)=nnn10;
end

for ii5=1:1024
    sin_1=sinsum(ii5);                //     %sin量化开始
    sin_2=(1+sin_1)*511.5;              //    %量化的0-1023
    mmm=sin_2;
   
    nnn1=fix(mmm/512);                  //    %将这个数10bit量化
    if nnn1,mmm=mmm-512;end;
    sin_bin(1,ii5)=nnn1;
    
    nnn2=fix(mmm/256);
    if nnn2,mmm=mmm-256;end;
    sin_bin(2,ii5)=nnn2;
    nnn3=fix(mmm/128);
    if nnn3,mmm=mmm-128;end;
    sin_bin(3,ii5)=nnn3;
    
    nnn4=fix(mmm/64);
    if nnn4,mmm=mmm-64;end;
    sin_bin(4,ii5)=nnn4;
    
    nnn5=fix(mmm/32);
    if nnn5,mmm=mmm-32;end;
    sin_bin(5,ii5)=nnn5;
    
    nnn6=fix(mmm/16);
    if nnn6,mmm=mmm-16;end;
    sin_bin(6,ii5)=nnn6;
    
    nnn7=fix(mmm/8);
    if nnn7,mmm=mmm-8;end;
    sin_bin(7,ii5)=nnn7;
    
    nnn8=fix(mmm/4);
    if nnn8,mmm=mmm-4;end;
    sin_bin(8,ii5)=nnn8;
    
    nnn9=fix(mmm/2);
    if nnn9,mmm=mmm-2;end;
    sin_bin(9,ii5)=nnn9;
    
    nnn10=fix(mmm);
    sin_bin(10,ii5)=nnn10;
end

cos_low=zeros(1,1024);
for ii6=1:1024                   //   %cos低8位
    cos_low(ii6)=cos_bin(3,ii6)*128+cos_bin(4,ii6)*64+cos_bin(5,ii6)*32+cos_bin(6,ii6)*16+cos_bin(7,ii6)*8+cos_bin(8,ii6)*4+cos_bin(9,ii6)*2+cos_bin(10,ii6);
end

sin_low=zeros(1,1024);
for ii7=1:1024                    //   %sin低8位
    sin_low(ii7)=sin_bin(3,ii7)*128+sin_bin(4,ii7)*64+sin_bin(5,ii7)*32+sin_bin(6,ii7)*16+sin_bin(7,ii7)*8+sin_bin(8,ii7)*4+sin_bin(9,ii7)*2+sin_bin(10,ii7);
end

cos_sin=zeros(1,1024);
for ii8=1:1024                     //   %cos和sin的高2位
    cos_sin(ii8)=sin_bin(1,ii8)*128+sin_bin(2,ii8)*64+cos_bin(1,ii8)*2+cos_bin(2,ii8);
end

cos_low_bin=zeros(1,8192);            
sin_low_bin=zeros(1,8192);
cos_sin_bin=zeros(1,8192);
for ii9=1:1024
    cos_low_bin(8*ii9-7)=cos_low(ii9);      //    %每个数据间插入7个0
    sin_low_bin(8*ii9-7)=sin_low(ii9);
    cos_sin_bin(8*ii9-7)=cos_sin(ii9);
end

fid_cos=mopen('cos.bin','w');           //    %生成bin文件
mput(cos_low_bin,fid_cos);             //   %数据写入bin文件
mclose(fid_cos);

fid_sin=mopen('sin.bin','w');
mput(sin_low_bin,fid_sin);
mclose(fid_sin);
 
 
 
 
 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -