资源简介
产生16QAM源代码,产生iq两路信号,用于中品和基带信号处理
代码片段和文件信息
%16QAM中频调制
%升余弦窗成形,滚降系数0.35,符号率1MSybol/s中频频率21MHz
%给出各级滤波器的系数,时域/频域响应以及信号经过各滤波器的时域/频域图
%*************************产生QAM基带信号*************************%
%产生伪随机序列PN
N=500; %二进制数据长度,长度不足会造成星座点缺失
x=randint(1N2);
%数据分组串并变换
x1=x(1:2);
x2=x(3:4); %完成第一组转换
for i=1:(N/4-1) %完成所有点的转换
x1=[x1 (x(i*4+1:i*4+2))];
x2=[x2 (x(i*4+3:i*4+4))];
end
%二-十进制转换(00-001-110-211-3)
xi=x1(1)*2+x1(2);
xq=x2(1)*2+x2(2); %完成第一组转换
n=length(x1);
for i=1:n/2-1 %完成所有点的转换
xi=[xi (x1(i*2+1)*2+x1(i*2+2))];
xq=[xq (x2(i*2+1)*2+x2(i*2+2))];
end
%信号映射
for i=1:n/2
switch(xi(i))
case 0
xi(i)=-3;
case 1
xi(i)=-1;
case 2
xi(i)=1;
case 3
xi(i)=3;
end
switch(xq(i))
case 0
xq(i)=-3;
case 1
xq(i)=-1;
case 2
xq(i)=1;
case 3
xq(i)=3;
end
end
%绘制基带信号图
figure(1);
plot(xixq‘*‘)title(‘16AQM基带信号星座图‘);
axis([-44-44]);
%***************************脉冲成形*************************************%
%升余弦窗,符号率1MSym/s,设采样频率Fs=4MHz
Fs=4000000; %采样频率设为符号率4倍
t=1/Fs; %周期
R=0.35; %滚降系数0.35
N_T=7; %窗长,设置为标量7
RATE=4; %采样率
p=rcosfir(RN_TRATEt‘sqrt‘); %Design a raised cosine FIR filter,设计升余弦窗
figure(2); %绘制升余弦窗时域图
stem(p)title(‘升余弦窗时域图‘);
figure(3);
freqz(p)title(‘升余弦窗频域图‘);
%I路和Q路信号成形
xi=upsample(xi4); %信号内插
xq=upsample(xq4);
yi=conv(pxi); %I路信号与升余弦窗卷积
yq=conv(pxq); %Q路信号与升余弦窗卷积
figure(4); %绘制成形信号图
subplot(211);
plot(yi)title(‘I路成形信号‘);
subplot(212);
plot(yq)title(‘Q路成形信号‘);
figure(5);
plot(db(freqz(yi)/max(abs(freqz(yi)))))title(‘I路成形信号频谱‘)xlabel(‘频率/Hz‘)ylabel(‘幅度/db‘);
figure(6);
plot(db(freqz(yq)/max(abs(freqz(yq)))))title(‘Q路成形信号频谱‘)xlabel(‘频率/Hz‘)ylabel(‘幅度/db‘);
%********************************HBF********************************%
%设计半带滤波器,阶数为15。
B=firhalfband(140.01‘dev‘); %15阶半带滤波器时域响应
figure(7);
stem(B);
title(‘半带滤波器时域图‘);
figure(8);
plot(db(abs(freqz(B))));
title(‘半带滤波器频域图‘);
%I、Q两路信号分别与HBF卷积
%yi=upsample(yi4);
%yq=upsample(yq4);
yih=conv(Byi);
yqh=conv(Byq);
figure(9); %绘制经过HBF后的信号
subplot(211);
plot(yih)title(‘HBF滤波后I路信号‘); %时域信号
subplot(212);
plot(yqh)title(‘HBF滤波后Q路信号‘);
figure(10);
%freqz(yih);
plot(db(freqz(yih)/max(abs(freqz(yih)))))title(‘HBF滤波后I路信号频谱‘)xlabel(‘频率/Hz‘)ylabel(‘幅度/db‘) %频域信号
figure(11);
plot(db(freqz(yqh)/max(abs(freqz(yqh)))))title(‘HBF滤波后Q路信号频谱‘)xlabel(‘频率/Hz‘)ylabel(‘幅度/db‘);
%*****************************CIC******************************%
%设计CIC
Rc=3; %interpolation factor内插系数
Mc=1; %defferential delay延时
N=5; %number of sections 单元数量
Hm=mfilt.cicinterp(RcMcN);
%figure(12);
%stem(Hm);
%I、Q两路信号分别经过CIC滤波
y_fi=filter(Hmyih);
y_fq=filter(Hmyqh);
yih=double(yih); yic=double(y_fi); yic=yic/max(abs(yic));%数据类型转换,并归一化
yqh=double(yqh); yqc=double(y_fq); yqc=yqc/max(abs(y
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4639 2008-11-01 21:47 QAM.m
----------- --------- ---------- ----- ----
4857 2
评论
共有 条评论