% 生成π/4-DQPSK的调制映射表 mapping_table = exp(j*[pi/4, 3pi/4, -3pi/4, -pi/4]);

% 生成输入序列 input_seq = [0, 1, 1, 0, 0, 1, 1, 0];

% 将输入序列分为两个分支 branch1 = input_seq(1:2:end); branch2 = input_seq(2:2:end);

% 对每个分支进行π/4-DQPSK调制 phase1 = cumsum(branch1)pi/2; phase2 = cumsum(branch2)pi/2; modulated_symbols = mapping_table(rem(round(phase1/pi2+1)+round(phase2/pi2+1), 4)+1);

% 将调制后的符号串转换为连续的信号波形 upsampled_symbols = upsample(modulated_symbols, 8); tx_signal = real(ifft(upsampled_symbols));

% 绘制调制前的输入序列波形和频谱图 subplot(2, 1, 1); stem(input_seq); title('Input Sequence'); xlabel('Time'); ylabel('Amplitude'); xlim([0, length(input_seq)+1]); subplot(2, 1, 2); plot(abs(fft(input_seq))); title('Input Sequence Spectrum'); xlabel('Frequency'); ylabel('Magnitude');

% 绘制调制后的信号波形和频谱图 figure; subplot(2, 1, 1); plot(tx_signal); title('π/4-DQPSK Modulated Signal'); xlabel('Time'); ylabel('Amplitude'); xlim([0, length(tx_signal)]); subplot(2, 1, 2); plot(abs(fft(tx_signal))); title('π/4-DQPSK Modulated Signal Spectrum'); xlabel('Frequency'); ylabel('Magnitude');

π/4-DQPSK 调制:MATLAB 代码生成 [01100110] 序列的波形和频谱

原文地址: https://www.cveoy.top/t/topic/ntMK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录