Using odd harmonics creat a sine wave (square) for 1khz

24 ビュー (過去 30 日間)
Nabeel Ahmed
Nabeel Ahmed 2021 年 6 月 28 日
コメント済み: Stephen23 2021 年 6 月 30 日
Using MATLAB

回答 (1 件)

Bhavya Chopra
Bhavya Chopra 2021 年 6 月 30 日
Please note, Frequency of square wave is same as the fundamental frequency (F0), we initialize F0 as 1000. The Sampling Frequency (samplingRate) and time for which the sound is produced (secs) can also be adjusted. A square wave for 1kHz can be created in MATLAB using odd harmonics as follows:
samplingRate = 48000; % Sampling Frequency
F0 = 1000; % Fundamental Frequency
secs = 10; % Time for which the sound will play
t = linspace(0, secs, samplingRate*secs); % Create time vector
w = 2*pi*F0; % Radian value to create tone with Frequency F0
s = sin(w*t) + sin(3*w*t)/3 + ... % Create Square Wave using odd harmonics
sin(5*w*t)/5 + sin(7*w*t)/7;
sound(s, samplingRate) % Producing sound
The square wave can also be plotted as follows:
plot(t(1:100), s(1:100)); % Plotting the square wave for 100 samples
title("Square Wave Plot");
xlabel("Time");
ylabel("Amplitude");
Generated plot:
Square Wave (1kHz) Amplitude-Time plot

カテゴリ

Help Center および File ExchangeSpectral Measurements についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by