function [ output_args ] = Untitled1( input_args )
clear;
hold off;
% define
A = 1; % 单位幅度
NUMBER = 10000; % 试验总数
FC = 4; %%载波频率
FC2 = 2;
RESOLUTION = 64; % 载波每个周期用RESOLUTION个点表示
SNRdB = 0:1:10;%%%%%%%%%
FR = FC * RESOLUTION;
% 理论曲线
Pe = 1/2 * erfc( sqrt( 0.5*10.^(SNRdB/10) ) );
plot(SNRdB, Pe, 'R');hold on;grid on;
% create signal
n = 1:NUMBER*FR;
xn = rand(1,NUMBER)>0.5;
wc1 = cos(n/RESOLUTION*2*pi);
wc2 = cos(n/RESOLUTION*2*pi/2);
x = wc1.*xn(ceil(n/FR)) + wc2.*(1-xn(ceil(n/FR)));
Vt = 0;
for i=1:length(SNRdB)
y = awgn(x, SNRdB(i)-10*log10(FR/2), 'measured');
for j=1:NUMBER
z1 = y([(j-1)*FR+1:j*FR]); % 取出点
z1 = conv(z1, wc1([1:FR])); %匹配滤波器
z1 = z1 .* wc1([1:length(z1)]);
z1 = sum(z1([FR-RESOLUTION/2+1:FR+RESOLUTION/2]))/RESOLUTION;
z2 = y([(j-1)*FR+1:j*FR]);
z2 = conv(z2, wc2([1:FR]));
z2 = z2 .* wc2([1:length(z2)]);
z2 = sum(z2([FR-RESOLUTION/2+1:FR+RESOLUTION/2]))/RESOLUTION;
yn(j) = (z1-z2)>Vt;
end
ErrorCount=length(find(xor(xn,yn)));
Pe(i) = ErrorCount/NUMBER;
end
plot(SNRdB, Pe);
legend('理论值','实验值');
xlabel('信噪比');
ylabel('误码率');
没有合适的资源?快使用搜索试试~ 我知道了~
FSK,ASK,PSK调制与解调的Matlab程序
共6个文件
m:6个
5星 · 超过95%的资源 需积分: 48 149 下载量 59 浏览量
2009-06-11
13:23:44
上传
评论 13
收藏 4KB RAR 举报
温馨提示
用Matlab实现调制解调的模拟,详细介绍了FSK,ASK,PSK三种调制与解调的对比,加入了信噪比,比较了相干与非相干解调的特点
资源推荐
资源详情
资源评论
收起资源包目录
fsk_ask_psk.rar (6个子文件)
fsk_ask_psk
ask_1.m 849B
fsk_1.m 1KB
psk_1.m 833B
ask_2.m 901B
fsk_2.m 1KB
dpsk_1.m 958B
共 6 条
- 1
资源评论
- quq88482012-04-30实现得有点过于简单了
- kandyjiang2012-05-19没有调制和解调的程序,仅有误码率的程序,有两种解调的误码率
- Jason0123160152015-07-27程序可运行,过于简单
zhzstc1988
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功