PWMSoundOutput

This example shows how to use the PWMOut
to generate notes. It plays three tones repeatedly.
What you need
SwiftIO board
Jumper wires
Buzzer
SwiftIO shield (optional)
Circuit

Code
// Produce different notes by changing the frequency of PWM signal.
// Import the library to enable the relevant classes and functions.
import SwiftIO
// Initialize a PWM output pin the speaker is connected to.
let speaker = PWMOut(Id.PWM2B)
// Specify several frequencies to produce different sound.
let fre = [262, 294, 330]
/// Play recurrently these notes.
while true {
for f in fre {
// Set the frequency and the duty cycle of output to produce each note.
speaker.set(frequency: f, dutycycle: 0.5)
// Play each note for one second.
sleep(ms: 1000)
}
}
Instruction
The code above uses a Frequency as musical pitches. For example, NOTE_C4 is middle C, whose frequency is 262 Hz. Latter example MidiPlayer we will markdown all this musical note in a file. This file contains all the pitch values for typical notes. You may find it useful whenever you want to make musical notes.
See Also
PWMOut - The PWMOut class is used to change the time of high voltage during one period to simulate different output.
References
Last updated
Was this helpful?