通信基础-Matlab数字调制
数字信号调制
参数及之间的关系
- :载波频率
- :采样频率
- :一个符号采样多少个点
- :表示截断的符号范围,对滤波器取了几个符号的长度
其中,,
基带信号产生
产生随机数,阶数
msg=randi([0 M-1],1,100);
星座图映射
msgmod=pskmod(msg,M);
成型滤波
插值
msgmod = [msgmod;zeros(sps-1, length(msgmod))];
msgmod = reshape(msgmod, 1, sps*length(msgmod));
设计滤波器
h = rcosdesign(0.35, span, sps);
滤波
msgmod = filter(h, 1, msgmod);% 使用filter函数滤波
上变频
t=(0:1:length(msgmod)-1)/fs;
carry_c=exp(1i*2*pi*fc*t); %载波信号
y=real(msgmod.*carry_c); %上变频
Result
clear;clc;close all;
%% BPSK 调制
M=2; %BPSK
fc=7000; %载波频率
sps = 4;
span = 6;
fb = 1000; % 符号速率1e4
fs = sps*fb;
snr_dB=2000; %信噪比
msg=randi([0 M-1],1,100);
msgmod=pskmod(msg,M); %基带2-PSK调制
% figure(1)
% plot(abs(fft(msgmod)));
msgmod = [msgmod;zeros(sps-1, length(msgmod))];
msgmod = reshape(msgmod, 1, sps*length(msgmod));
h = rcosdesign(0.35, span, sps);
msgmod = filter(h, 1, msgmod);% 使用filter函数滤波
t=(0:1:length(msgmod)-1)/fs;
carry_c=exp(1i*2*pi*fc*t); %载波信号
y=real(msgmod.*carry_c); %上变频
figure(1)
plot((-length(y)/2:length(y)/2-1)/length(y)*fs, fftshift(abs(fft(y))))
本文作者: Joffrey-Luo Cheng
本文链接: http://lcjoffrey.top/2022/05/09/modualtion-matlab/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!