📄 walshcode.m
字号:
%3-8walsh码产生器
function y=walshcode(n)
sourcedataI=n;
%***分别在sourcedataI、sourcedataQ两路转换成3列矩阵以进行3-8walsh码正交变换***%
rownumber=ceil(length(sourcedataI)/3); %ceil(x)为取整,即大于或等于x的整数
walshindataI=zeros(rownumber,3);
%walshindataQ=zeros(rownumber,3);
for var1=1:rownumber;
var2=1:3;
walshindataI(var1,var2)=sourcedataI(1,(var1-1)*3+var2);
% walshindataQ(var1,var2)=sourcedataQ(1,(var1-1)*3+var2);
end
walshG=[0,0,0,0,1,1,1,1;0,0,1,1,1,1,0,0;0,1,1,0,0,1,1,0];
walshoutdataI=mod(walshindataI*walshG,2);% mod是取模函数
%walshoutdataQ=mod(walshindataQ*walshG,2);
%将walsh码输出数据矩阵转为单行矩阵%
for var4=1:rownumber
var5=1:8;
walshdataI(1,(var4-1)*8+var5)=walshoutdataI(var4,var5);
% walshdataQ(1,(var4-1)*8+var5)=walshoutdataQ(var4,var5);
end
y=walshdataI;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -