资源简介
用BP神经网络做分类器,提取信号的五个特征,并对信号进行识别。
代码片段和文件信息
clear all;
close all;
echo off;
fc=20000; %载波频率
fs=40000; %采样速率
k=2;
code_size=15*round(k*fs/fc); %信息码元长度
t0=5.5; %信号长度
Ns=256; %采样点个数
fd=200; %符号速率
ts=1/fs; %采样周期
M=64 %码元个数
ti=1/fd; %码元间隔
N=ti/ts
t=[0:ts:t0];
select=menu(‘调制方式‘‘2ASK‘‘2FSK‘‘2PSK‘‘4ASK‘‘4FSK‘‘4PSK‘);
switch select
case 1 % 2ASK signal
x=randint(1M);
m=sin(2*pi*fc*t);
y=ones(1M*N);
for i=1:M
for j=1:N
y((i-1)*N+j)=x(i)*m(j);
end
end
T=zeros(650);
T(11:50)=1;
case 2 %2FSK signal
x=randint(1M);
m1=sin(2*pi*fc*t);
m2=sin(2*pi*2*fc*t);
y=zeros(1M*N);
for i=1:M
if x(i)==1;
for j=1:N;
y((i-1)*N+j)=x(i)*m1(j);
end
elseif x(i)==0;
for j=1:N;
y((i-1)*N+j)=(1-x(i))*m2(j);
end
end
end
T=zeros(650);
T(21:50)=1;
case 3 %2PSK signal
x=randint(1M);
m1=sin(2*pi*fc*t);
m2=sin(2*pi*fc*t+pi);
y=zeros(1M*N);
for i=1:M
if x(i)==1;
for j=1:N;
y((i-1)*N+j)=x(i)*m1(j);
end
elseif x(i)==0;
for j=1:N;
y((i-1)*N+j)=(1-x(i))*m2(j);
end
end
end
T=zeros(650);
T(31:50)=1;
case 4 % 4ASK signal
x=randint(1M4);
m=sin(2*pi*fc*t);
y=ones(1M*N);
for i=1:M
if x(i)==0;
for j=1:N
y((i-1)*N+j)=x(i)*m(j);
end
elseif x(i)==1;
for j=1:N
y((i-1)*N+j)=x(i)*m(j);
end
elseif x(i)==2;
for j=1:N
y((i-1)*N+j)=x(i)*m(j);
end
elseif x(i)==3;
for j=1:N
y((i-1)*N+j)=x(i)*m(j);
end
end
end
T=zeros(650);
T(41:50)=1;
case 5 % 4FSK signal
x=randint(1M4);
m1=sin(2*pi*fc*t);
m2=sin(2*pi*2*fc*t);
m3=sin(2*pi*3*fc*t);
m4=sin(2*pi*4*fc*t);
y=zeros(1M*N);
for i=1:M
if x(i)==0;
for j=1:N
y((i-1)*N+j)=(1-x(i))*m1(j);
end
elseif x(i)==1;
for j=1:N
y((i-1)*N+j)=x(i)*m2(j);
end
elseif x(i)==2;
for j=1:N
y((i-1)*N+j)=(x(i)-1)*m3(j);
end
elseif x(i)==3;
for j=1:N
y((i-1)*N+j)=(x(i)-2)*m4(j);
end
end
end
plot(y)
T=zeros(650);
T(51:50)=1;
case 6 %4PSK signal
x=randint(1M4);
m1=sin(2*pi*fc*t);
m2=sin(2*pi*fc*t+pi/2);
m3=sin(2*pi*fc*t+pi);
m4=sin(2*pi*fc*t+3*pi/2);
y=zeros(1M*N);
for i=1:M
if x(i)==0;
for j=1:N
y((i-1)*N+j)=(1-x(i))*m1(j);
end
elseif x(i)==1;
for j=1:N
y((i-1)*N+j)=x(i)*m2(j);
end
elseif x(i)==2;
for j=1:N
y((i-1)*N+j)=(x(i)-1)*m3(j);
end
elseif x(i)==3;
for j=1:N
y((i-1)*N+j)=(x(i)-2)*m4(j);
end
end
end
T=zeros(650);
T(61:50)=1;
end
SNR=5;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7897 2011-05-05 16:04 hao.m
----------- --------- ---------- ----- ----
7897 1
- 上一篇:三维-离散点-曲面光滑-拟合
- 下一篇:SOFC Matlab 仿真
相关资源
- SOFC Matlab 仿真
- 用MATLAB编写的混沌序列图像加密程序
- T-S模糊系统结论参数的MATLAB仿真研究
- Matlab2012a破解i包全部资源
- matlab实现sift提取特征点
- 啁啾光纤光栅
- Tight Binding处理Graphene能带的Matlab程序
-
MATLAB SIMUli
nk通信系统建模仿真讲解 - 分支定界法Matlab程序实现与验证.pdf
- pro+sail的计算matlab版本
- matlab版本频率估计
- 打靶法MATLAB程序
- hopfield神经网络matlab实现
- 基于matlab矩形阵波束形成
- 数字水印 攻击 JPEG压缩 matlab代码
- 快衰落matlab代码
- 一个笑脸的matlab程序
- 卫星图像读取
- MatLab Web Server在交互式网络课件开发中
- ssim.m结构相似性代码matlab
- SUSAN边缘检测的实现代码MATLAB
- 克里金插值 matlab
- 基于高斯拉普拉斯的HDR合成matlab代码
- 基于种子点8-邻域的区间生长算法的
- OTSU算法二维matlab实现
- 普通调幅AM信号的matlab编程及实现
- libsvm-3.23支持向量机类库,matlab版,可
- 非线性整数规划的遗传算法Matlab程序
- matlab元胞自动机代码
- matlab粒子群优化算法 非线性函数极值
评论
共有 条评论