Matlab Code for Square wave
이전 댓글 표시
Hi,
I have to generate a square wave like the one shown in the fig below. Can any one please indicate the appropriate code for that?
Thanks,

댓글 수: 4
NURRUZAINI MOHD NASIR
2016년 5월 22일
how to generate this coding ?
Naga Sai
2017년 5월 21일
sir help me how to use this code as userdefinedfunction in matlab
shreyas kulkarni
2019년 6월 7일
function [z t] = square(n1,n2)
% n1=2 give similar value
% n2=4 give this value
z=[];
t=1:1:n2
x= [];
for i=1:5
for t1= 0.01:0.01:n1
a=1
z=[z a];
x=[x t1]
end
for t2=n1+0.01:0.01:n2
a=-1
z=[z a];
x=[x t2]
end
t=1:0.01:n2;
x=1:0.01:n2;
plot(z);
end
채택된 답변
추가 답변 (2개)
Ridwan Maassarani
2016년 2월 8일
편집: Ridwan Maassarani
2016년 2월 8일
% endCan it be done with this code ?
t = n*T:1:((n+1)*T);
%lengtht = length(t);
% Define x(t) and plot
if (mod(n,2) == 0)
%number is even
x = 1;
else
%number is odd
x = -1;
end
plot(x)
set(gcf, 'Units', 'Normalized', 'Outerposition', [0, 0, 1, 1]);
댓글 수: 17
Image Analyst
2016년 2월 8일
No. Evidently not. Just try it.
Naga Sai
2017년 5월 19일
here n is an undefined function
Naga Sai
2017년 5월 19일
sir what is n in above function sir please give me an explaination or a code to generate a square wave form without using function
Image Analyst
2017년 5월 19일
Like I said, this code doesn't work. Did you see my code (now hidden in the comments) with code that DOES work? https://www.mathworks.com/matlabcentral/answers/163673-matlab-code-for-square-wave#comment_251311
% Make one cycle.
oneCycle = [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1];
% Replicate 10 times.
squareWave = repmat(oneCycle, [1, 10]);
% Plot it.
plot(squareWave, 'bo-', 'LineWidth', 2);
grid on;
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'Outerposition', [0, 0, 1, 1]);
Naga Sai
2017년 5월 21일
sir help me how to use this code as a function to use it in another program
Image Analyst
2017년 5월 21일
Do you that you need to know how to use copy and paste? It's control-c and control-v. Or you need help in writing a function? I really don't know what you need help with.
Naga Sai
2017년 5월 22일
i want this above program to use it as a function to generate a square wave sir
Naga Sai
2017년 5월 22일
sir how to create a fft function please help me regarding this also sir
Naga Sai
2017년 5월 23일
sir pl respond to my question sir
Image Analyst
2017년 5월 23일
"how to create a fft function please help me regarding this also" <=== You don't need to create an fft function. There is an fft() function built into MATLAB.
Naga Sai
2017년 5월 23일
but i have some restrictions from my guide not to use that function it should be created by own
Image Analyst
2017년 5월 24일
I'm sure you can find fft() code on the internet somewhere. It should be readily available. Are you able to use that (someone else's low level code)?
Naga Sai
2017년 5월 25일
sir i am unable to find the code sir please help me in this concern
Image Analyst
2017년 5월 25일
Learning how to use Google would be a beneficial thing for you. I used it and look what I found:
There are more if you want them.
Naga Sai
2017년 5월 25일
Sir please clear the error in this code sir
function y = MYFFT(x)
a=size(x);
N=a(2);
n=log2(N);
l=1;
N2=N/2;
NU1=n-1;
k=0;
while(l<=n)
while(k<=N-1)
I=1;
while(I<=N2)
M=fix(k/(2^NU1));
b=dec2bin(M,n);
q=seqreverse(b);
P=bin2dec(q);
W=exp(-2*i*P*pi/N);
T1=W*(x(k+1+N2));
x(k+1+N2)=x(k+1)-T1;
x(k+1)=x(k+1)+T1;
k=k+1;
I=I+1;
end
k=k+N2;
end
end
Naga Sai
2017년 6월 8일
sir please clear error in above function sir
Image Analyst
2017년 6월 8일
Please give the link to your source code so I can compare your MATLAB code to the original, which presumably is in pseudocode or another language.
Daniel Robin
2019년 3월 13일
The following square wave function can be used just like sin(x) providing a phase argument and duty-cycle and getting a signal in the range -1 to 1 accordingly.
function y = square(x, D)
r = mod(x/(2*pi), 1); % generate a ramp over every cycle
y = 1 - 2*(r > D); % output result from -1 to 1
end
카테고리
도움말 센터 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

