![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/361582/image.png)
How to create a square wave pulse
162 次查看(过去 30 天)
显示 更早的评论
How do I create a square wave pulse, I don't really mind the gap between pulses but it must go on for 10ms. I dont mind the freauency or anything I just want to know how to create a square wave pulse that happens say 3 times in the 10ms
0 个评论
回答(2 个)
Star Strider
2020-9-16
Without the Signal Processing Toolbox:
t = linspace(0, 10E-3); % Time Vector (0 - 10ms)
f = 3/max(t); % Desired Frequency (Cycles/Timespan)
sqwv = sign(sin(2*pi*t*f)); % Signal
figure
plot(t, sqwv, 'LineWidth',1.5)
grid
ylim(ylim*1.1)
xlabel('Time (s)')
ylabel('Amplitude')
producing:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/361582/image.png)
.
0 个评论
Ameer Hamza
2020-9-16
编辑:Ameer Hamza
2020-9-16
If you have signal processing toolbox
T = 0.01; % 10 milliseconds timeperiod, 1 square wave in 10 milliseconds
t = linspace(0, T*10, 1000);
y = square(t/T*2*pi);
plot(t, y);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/361426/image.png)
If you want to generate the waveform in Simulink, then you can use a pulse generator block and use the following settings.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/361432/image.png)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Waveform Generation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!