Plotting a square wave

8 views (last 30 days)
Ahmed Adel
Ahmed Adel on 16 Jun 2017
How can I plot a square wave of period 2 seconds, with step 0.01 second ,amplitude from -1 to 1 and 50% duty cycle?
  3 Comments
dpb
dpb on 16 Jun 2017
stairs will be easier for square wave; it does the "doubling up" needed by plot automagically (or builds the vectors for plot)
Muhammad Wasim Akhtar Khan
duty = 50;
t = 0:0.01:8;
f = 0.5;
x = square(2*pi*f*t,duty);
plot(t,x)
axis([0 8 -1.5 1.5])
grid on

Sign in to comment.

Answers (1)

dpb
dpb on 16 Jun 2017
Edited: dpb on 16 Jun 2017
If you have Signal Processing TB, then use square function. Without, you'll have to compute the transition spacings ( linspace should be helpful there) and then stairs will do a plot or create the filled-in x- y- vectors including the "doubled-up" values at the breakpoints.

Community Treasure Hunt

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

Start Hunting!