I'm supposed to generate a 6 seconds long sine wave that has amplitude of 1.0, frequency of 400Hz at a 8KHz sampling frequency, but I'm not sure how to control how long the wave lasts for.

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 7 Oct 2014

5 votes

f=400
Amp=1
ts=1/8000;
T=6
t=0:ts:T;
y=sin(2*pi*f*t);
plot(t,y)

3 commentaires

Kay Wonderley
Kay Wonderley le 26 Mar 2018
Modifié(e) : Image Analyst le 26 Mar 2018
Hi I have done this (below).
How do I turn it into a function?
f=100;
Amp=10;
fs = 44100;
ts=1/44100;
T=10;
t=0:ts:T;
y=sin(2*pi*f*t);
sound(y,fs)
Add a function line:
function [t, y] = PlaySound()
f=100;
Amp=10;
fs = 44100;
ts=1/44100;
T=10;
t=0:ts:T;
y=sin(2*pi*f*t);
sound(y,fs)
Mohamad
Mohamad le 4 Avr 2019
f=400
Amp=1
ts=1/8000;
T=6
t=0:ts:T-ts; % I modified this line to make signal duration 6 seconds
y=sin(2*pi*f*t);
plot(t,y)

Connectez-vous pour commenter.

Plus de réponses (1)

Image Analyst
Image Analyst le 7 Oct 2014
Hint: 6 seconds at 8000 times per second means that the vector (row array) will be 48000 elements long.
sineWave = sin(2*pi*freq*timeVector);
See if that's enough hints.

3 commentaires

Well it looks like Azzi did it all for you. Though if you ever want to change the amplitude you should use
y = Amp * sin(2*pi*f*t);
Dick Rusell
Dick Rusell le 10 Oct 2014
Is there a way to zoom outt? Because I get a blue box when I plot it from the frequency.
Akpabio Ekpewoh
Akpabio Ekpewoh le 11 Juil 2019
Yes, just use the icons on the top of the plot

Connectez-vous pour commenter.

Catégories

En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by