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

📄 relative.m

📁 基于PN序列的同步仿真链路(simulink+m files)
💻 M
字号:
function [y] = Relative(u,PARA1)

PNLocal = [1,-1,-1,-1,-1,-1,-1,1,-1,-1,-1,-1,-1,1,1,-1,-1,-1,-1,1,-1,1,-1,-1,-1,1,1,1,1,-1,-1,1,-1,-1,-1,1,-1,1,1,-1,-1,1,1,1,-1,1,-1,1,-1,-1,1,1,1,1,1,-1,1,-1,-1,-1,-1,1,1,1,-1,-1,-1,1,-1,-1,1,-1,-1,1,1,-1,1,1,-1,1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,1,1,-1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,-1,-1,1,1,-1,-1,1,-1,1,-1,1,-1,1,1,1,1,1,1,0];

for slip = 0:255
    for i = 1:4
        for j = 1:128
            ReceiveSquence(j,i) = u(4*(j+slip)-(4-i));
        end
        %%% 计算接受序列与本地序列的相关值
        Relative_Real(i) = PNLocal*real(ReceiveSquence(:,i));
        Relative_Imag(i) = PNLocal*imag(ReceiveSquence(:,i));
        Relative(i) = Relative_Real(i)*Relative_Real(i) + Relative_Imag(i)*Relative_Imag(i);

        %%% 计算接受序列的自相关
        PowerSum(i) = ReceiveSquence(:,i)'*ReceiveSquence(:,i);
        PowerSum(i) = PowerSum(i)*PARA1;
        
        y = 0;
        
        %%% 判断互相关是否大于门限
        if (Relative(i) > PowerSum(i) && PowerSum(i) > 0)
            %% Find Max
            RelativeFindMax(1) = Relative(i);
            for k = 2:4
                for j = 1:128
                    FindMaxSquence(j,k) = u(4*(j+slip)-(4-i)+k-1);
                end
                Relative_Real(k) = PNLocal*real(FindMaxSquence(:,k));
                Relative_Imag(k) = PNLocal*imag(FindMaxSquence(:,k));
                RelativeFindMax(k) = Relative_Real(k)*Relative_Real(k) + Relative_Imag(k)*Relative_Imag(k);
            end
            [C,I] = max(RelativeFindMax);
            y = 4*(1+slip)-(4-i)+I-1;
            break;
        end
    end
    if (Relative(i) > PowerSum(i) && PowerSum(i) > 0)
        break;
    end
end

⌨️ 快捷键说明

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