matlab 程序:s=[s -1*sin(2*pi*f0*t)]; 这样的语句表示什么意思,程序如下
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/12 23:28:52
matlab 程序:s=[s -1*sin(2*pi*f0*t)]; 这样的语句表示什么意思,程序如下
%%%%%直接序列扩频(DS)原理仿真
clc
clear all
%%-------信码——————
N_signal=10;%%%信号的长度
source=round(rand(1,N_signal));
disp(['原信码:']);disp(source);
%%-------伪码——————
N_false=8;%%%伪码的长度
p=zeros(2,N_false);
p(1,:)=round(rand(1,8));%%%%信息1的伪码
p(2,:)=round(rand(1,8));%%%%信息0的伪码
while(p(1,:)==p(2,:))%%%如果信息1和信息0的伪码一样的话就重新产生,直到两者不一样为止
p(1,:)=round(rand(1,8))%%%%信息1的伪码
p(2,:)=round(rand(1,8))%%%%信息0的伪码
end
disp('信息1的伪码:');disp(p(1,:));
disp('信息0的伪码:');disp(p(2,:));
%%----伪码展扩后的信号———
signal=[];
wei_signal=[];
for i=1:N_signal
if(source(i)==1)
wei_signal=[wei_signal p(1,:)];
signal1=not(p(1,:));
signal=[signal signal1];
else
wei_signal=[wei_signal p(2,:)];
signal=[signal p(2,:)];
end
end
disp('伪码展扩后的信号:');
disp(signal);
%%-------PSK已调波——————
f0=1000;
fs=20*f0;
Tp=1/f0;
t=0:1/fs:Tp-1/fs;
s=[];s1=[];
for i=1:N_signal*N_false
if(signal(i)==1)
s=[s -1*sin(2*pi*f0*t)];
s1=[s1 pi];
else
s=[s sin(2*pi*f0*t)];
s1=[s1 0];
end
end
plot(s);grid on;title('载频调制后的信号');
%%--接收端的调相器信号(仅取决于伪码)——
s2=[];
for i=1:N_signal*N_false
if(wei_signal(i)==1)
s2=[s2 pi];
else
s2=[s2 0];
end
end
%%-------中频相位——————
final_s=xor(s1,s2)
%%-------解调输出——————
for i=1:N_false:length(final_s)
out((i-1)/N_false+1)=sum(final_s(i:i+N_false-1))/N_false;
if(out((i-1)/N_false+1)>0.5)
out((i-1)/N_false+1)=1;
else
out((i-1)/N_false+1)=0;
end
end
disp('解调输出:');
disp(out);
%%%%%直接序列扩频(DS)原理仿真
clc
clear all
%%-------信码——————
N_signal=10;%%%信号的长度
source=round(rand(1,N_signal));
disp(['原信码:']);disp(source);
%%-------伪码——————
N_false=8;%%%伪码的长度
p=zeros(2,N_false);
p(1,:)=round(rand(1,8));%%%%信息1的伪码
p(2,:)=round(rand(1,8));%%%%信息0的伪码
while(p(1,:)==p(2,:))%%%如果信息1和信息0的伪码一样的话就重新产生,直到两者不一样为止
p(1,:)=round(rand(1,8))%%%%信息1的伪码
p(2,:)=round(rand(1,8))%%%%信息0的伪码
end
disp('信息1的伪码:');disp(p(1,:));
disp('信息0的伪码:');disp(p(2,:));
%%----伪码展扩后的信号———
signal=[];
wei_signal=[];
for i=1:N_signal
if(source(i)==1)
wei_signal=[wei_signal p(1,:)];
signal1=not(p(1,:));
signal=[signal signal1];
else
wei_signal=[wei_signal p(2,:)];
signal=[signal p(2,:)];
end
end
disp('伪码展扩后的信号:');
disp(signal);
%%-------PSK已调波——————
f0=1000;
fs=20*f0;
Tp=1/f0;
t=0:1/fs:Tp-1/fs;
s=[];s1=[];
for i=1:N_signal*N_false
if(signal(i)==1)
s=[s -1*sin(2*pi*f0*t)];
s1=[s1 pi];
else
s=[s sin(2*pi*f0*t)];
s1=[s1 0];
end
end
plot(s);grid on;title('载频调制后的信号');
%%--接收端的调相器信号(仅取决于伪码)——
s2=[];
for i=1:N_signal*N_false
if(wei_signal(i)==1)
s2=[s2 pi];
else
s2=[s2 0];
end
end
%%-------中频相位——————
final_s=xor(s1,s2)
%%-------解调输出——————
for i=1:N_false:length(final_s)
out((i-1)/N_false+1)=sum(final_s(i:i+N_false-1))/N_false;
if(out((i-1)/N_false+1)>0.5)
out((i-1)/N_false+1)=1;
else
out((i-1)/N_false+1)=0;
end
end
disp('解调输出:');
disp(out);
![matlab 程序:s=[s -1*sin(2*pi*f0*t)]; 这样的语句表示什么意思,程序如下](/uploads/image/z/17604255-39-5.jpg?t=matlab+%E7%A8%8B%E5%BA%8F%EF%BC%9As%3D%5Bs+-1%2Asin%282%2Api%2Af0%2At%29%5D%3B+%E8%BF%99%E6%A0%B7%E7%9A%84%E8%AF%AD%E5%8F%A5%E8%A1%A8%E7%A4%BA%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%2C%E7%A8%8B%E5%BA%8F%E5%A6%82%E4%B8%8B)
保留上次循环中s的值,
如第一个s=[1]
那么后面的就是:
s=[1,2]
s=[1,2,3]
s=[1,2,3,4]
……
如第一个s=[1]
那么后面的就是:
s=[1,2]
s=[1,2,3]
s=[1,2,3,4]
……
matlab 定积分程序如下:dx=0.1;x=-pi:dx:pi;y=(sin(x)*(cos(x))^(1/3);s
(sin(x)*cos(x))^(1/3)',x,-pi,pi))求积分的matlab程序!
我的matlab程序哪里错了? t=0:0.01:2*pi x=cos(t)^3 y=sin(t)^3 plot(x,y
MATLAB达人进~抽样引起的混叠频率为f0 Hz的正弦信号可表示为x(t)=2pi*f0*t按抽样频率fs=1/Ts对
以下是matlab中的语句,syms t y=sin(pi*t)*exp(-s.*t) z=int(y,t,0,1) 求
matlab问题,这个程序,a是数组,那s=a(ceil(10*t+0.01)).*g.*cos(2*pi*100*t)
matlab中语句 >>x=0:10/pi:2*pi; >>sinx=sin(x); >>figure,plot(x,s
MATLAB中 y=cos(2*pi*100*t);s=sin(4*pi*t);是什么意思啊?
matlab中x(t,1)=sin(0.01*pi*t)什么意思
matlab 对信号y = sin(pi*50*t)+3*cos(2*pi*100*t);什么意思
y=cos(10*t*pi)+cos(40*t*pi);t属于[0,1],求这个函数的EMD分解matlab程序,画出图
求sin(pi*t)/(pi*t)的fourier变换,用matlab或者直接算均可,最好有程序或者计算步骤