Converting a signal to baseband after resampling
Show older comments
Hello,
After resampling a passband signal, how can I convert it back to the baseband domain? In particular, I have the following code in MATLAB:
v=d.*exp(1i*2*pi*fc.*t);
z=resample(v,p,q);
where d and t are the signal and time vector respectively,and fc is the carrier frequency. In this case z after resampling has a different length than v, and hence I cannot write:
zBP=z.*exp(-1i*2*pi*fc.*t);
How can I handle this then?
Thanks
Answers (1)
Rick Rosson
on 3 Jun 2014
Nz = length(z);
Nv = length(v);
r = Nz/Nv;
dt_old = t(2) - t(1);
dt_new = dt_old/r;
t_old = t;
t_new = dt_new*(0:Nv-1);
zBP=z.*exp(-1i*2*pi*fc.*t_new);
1 Comment
S. David
on 3 Jun 2014
Categories
Find more on Multirate Signal Processing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!