clc
clear
close all
%% 参数设置
Ta = 128; % 脉冲持续时间
Ka = -0.085; % 方位向调频率
alpha_OS = [5,0.25]; % 过采样因子
Delta_f_dop = abs(Ka*Ta); % 方位信号带宽
Fa = alpha_OS*Delta_f_dop; % 方位向采样率
N = 2*ceil(Fa*Ta/2); % 方位向采样点数
dt = Ta./N; % 采样时间间隔
df = Fa./N; % 采样频率间隔
%% 变量设置
t1 = -Ta/2:dt(1):Ta/2-dt(1); % 时间轴
t2 = -Ta/2:dt(2):Ta/2-dt(2);
f1 = -Fa(1)/2:df(1):Fa(1)/2-df(1); % 频率轴
f2 = -Fa(2)/2:df(2):Fa(2)/2-df(2);
%% 信号表达
st2 = exp(1j*pi*Ka*t2.^2); % 方位向欠采样chirp信号
omega_a = sinc(6*t2/Ta).^2; % 双程天线波束方向图
st = omega_a.*st2; % 天线方向图调制后的chirp信号
omega_a_nor = abs(omega_a)/max(abs(omega_a)); % 归一化
omega_a_nor_log = db(omega_a_nor); % 取分贝
% figure,plot(omega_a_nor_log),axis([0 350,-60 0])
% figure,plot(real(st)),xlim([100,250])
%% 脉冲压缩
parMatch.Tr = Ta;
parMatch.Br = Ta*Ka;
parMatch.Fr = Fa(2);
parMatch.Kr = Ka;
[peaks,data] = syncMatchFilter(st,parMatch)
% figure,plot(abs(data))
%% 绘图
subplot(311),plot(t2,real(st2))
subplot(312),plot(omega_a_nor_log),axis([0 350,-60 0])
subplot(313),plot(abs(data))
脉冲压缩结果不太对,用了个自己写的函数,也懒得查错误了,可以看我之前的脉冲压缩的三种方式来手动压缩,老了不想敲代码了