تبلیغات
" /> باران الکترونیک - مطالب ابر فیلتر

برنامه M-file برای تغییر نرخ نمونه برداری سیگنال

اکنون می­خواهیم با نوشتن چند خط برنامه متلب یک سیگنال سینوسی با فرکانس KHz 1/5 که با نرخ KHz‏‏8   نمونه برداری شده است را تولید می­ کنیم. سپس نرخ نمونه برداری سیگنال را به KHz‏ 9/6 افزایش میدهیم.

مقدار دهی اولیه برنامه

%% Initialization

up_sample = 6;

down_sample = 5;

Fs= 8000;                       % Sampling frequency

T = 1/Fs;                       % Sample time

L = 1000;                       % Length of signal

t = (0:L-1)*T;                  % Time vector

1) تولید سیگنال سینوسی با فرکانس ‏KHz‏ 5/1 و نرخ نمونه برداری ‏KHz‏‏8‏

%% Produce input: sin 1.5 KHz, sample rate 8000

x=round(2^15*sin(2*pi*1500*t));

i=find(x>2^15-1);

x(i)=2^15-1;

i=find(x<-2^15);

x(i)=2^15;

plot(1000*t(1:50),x(1:50))

title('Sin 1.5 KHz, Sample Rate : 8KHz')

xlabel('time (milliseconds)')

% Plot frequency of signal

NFFT = 2^nextpow2(L); % Next power of 2 from length of y

X = fft(x,NFFT)/L;

f = Fs/2*linspace(0,1,NFFT/2+1);

% Plot single-sided amplitude spectrum.

figure

plot(f,2*abs(X(1:NFFT/2+1)))

title('Single-Sided Amplitude Spectrum of x(t)')

xlabel('Frequency (Hz)')

ylabel('|X(f)|')

بقیه مقاله در ادامه مطلب


نظرات()       
آخرین پست ها