sinusoid with amplitude , frequency, samples, and sampling frequency?

how can i generate a sinusoid with amplitude 0.1 , frequency 100 Hz, with 100,000 samples, and sampling frequency 22,050 HZ? Please can anyone help me? thank you

 Réponse acceptée

Did you try this?
amplitude = 0.1;
frequency = 100 % Hz
numSamples = 100000 % samples
samplingFrequency = 22050 % Hz (per second)
numSeconds = numSamples / samplingFrequency
x = linspace(0, numSeconds, numSamples);
y = amplitude * sin(2 * pi * x * frequency);
plot(x, y, 'b-', 'LineWidth', 2);
grid on;
xlabel('X', 'FontSize', 15);
ylabel('Y', 'FontSize', 15);

5 commentaires

thank you very much, but when i save the signal in a .wav file , i do not have any tone.
wavwrite(y',"script.wav")
I hear something. Add this to the end of your code and turn up your speakers:
soundsc(y, samplingFrequency);
Also see attached demo on making a wav file.
thank you very much, it is working. and how can i plot the spectrum of the signal? the signal is on the file.
Call fft() or pwelch() followed by plot(), or call spectrogram().

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Audio I/O and Waveform Generation dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by