I cant generate a square wave in matlab using the square wave command

59 vues (au cours des 30 derniers jours)
Rapheal
Rapheal le 16 Mai 2012
Commenté : Arabinda le 8 Jan 2024
hello, i tried to create a square wave using the following command:
t = 0:0.001:0.1; y = square(2*pi*100*t,50); plot(t,y); axis([0 0.1 -1.5 1.5]); xlabel('Seconds'); ylabel('Amplitude');
i keep getting an error with the square wave:
error message: Error in Untitledsqwave (line 2) y = square(2*pi*100*t,50);
is there an error because i dont have the signal processing toolbox. and what command can i use to see if i have the signal processing toolbox.
thanks

Réponses (3)

Dr. Seis
Dr. Seis le 16 Mai 2012
If you dont have the Signal Processing Toolbox, will the following work as an alternative:
y = sign(sin(2*pi*100*t));
  5 commentaires
hajar
hajar le 27 Mar 2023
thanks
Arabinda
Arabinda le 8 Jan 2024
Thank you sir

Connectez-vous pour commenter.


Wayne King
Wayne King le 16 Mai 2012
You can enter
>>ver
at the command line to see what is installed. If you see the Signal Processing Toolbox listed try:
license('test','signal_toolbox')
to see if you have a license checked out
  1 commentaire
Daniel Shub
Daniel Shub le 16 Mai 2012
Also
which -all square
should return something like
.../toolbox/signal/signal/square.m

Connectez-vous pour commenter.


Daniel Shub
Daniel Shub le 16 Mai 2012
You can get similar functionality with
square = @(M, N, duty)repmat([ones(floor(N/duty), 1); -ones(ceil(N/duty), 1)], M, 1);
where M is the number of periods, N is the samples per period, and duty is the duty cycle.
  2 commentaires
Dr. Seis
Dr. Seis le 16 Mai 2012
I wasn't able to get similar functionality without some modifications. I.e.,
squarez = @(M, N, duty)repmat([ones(floor(N*duty/100), 1); -ones(ceil(N*(100-duty)/100), 1)], M, 1);
Daniel Shub
Daniel Shub le 18 Mai 2012
@Elige, you are correct. Thank you for the fix, my answer is sloppy and wrong.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by