26 lines
1010 B
Matlab
26 lines
1010 B
Matlab
function [t, tx_mask] = generate_waveform_timing(RadarParams)
|
|
% RadarParams 기반 시간 벡터와 TX 활성화 마스크 생성
|
|
% 시간 벡터와 TX 활성화 마스크를 생성합니다.
|
|
%
|
|
% 입력:
|
|
% - RadarParams: 메인 파라미터 구조체
|
|
%
|
|
% 출력:
|
|
% - t: 시간 벡터 (초)
|
|
% - tx_mask: TX 활성화 마스크 (0 또는 1)
|
|
|
|
Timing = RadarParams.Waveform.Timing;
|
|
NumChirps = RadarParams.Waveform.NumChirps;
|
|
T_chirp = Timing.IdleTime + Timing.RampEndTime;
|
|
T_frame = T_chirp * NumChirps; % 전체 프레임 시간
|
|
fs = RadarParams.Waveform.fs_waveform;
|
|
N_samples = round(T_frame * fs);
|
|
% 시간 벡터 (초 단위) 생성
|
|
t = linspace(0, T_frame, N_samples);
|
|
% 각 처프 내부에서의 상대적 시간(t_mod) 계산 (초 기준)
|
|
t_mod = mod(t, T_chirp);
|
|
% TX 활성화 마스킹
|
|
tx_mask = zeros(1, N_samples);
|
|
tx_start_abs = Timing.IdleTime + Timing.TxStartTime;
|
|
tx_mask(t_mod >= tx_start_abs) = 1;
|
|
end |