Generates a square wave of the specified frequency (and 50% duty cycle) on a pin. A duration can be specified, otherwise the wave continues until a call to noTone(). The pin can be connected to a piezo buzzer or other speaker to play tones.

Only one tone can be generated at a time. If a tone is already playing on a different pin, the call to tone() will have no effect. If the tone is playing on the same pin, the call will set its frequency.

NOTE: if you want to play different pitches on multiple pins, you need to call noTone() on one pin before calling tone() on the next pin.



tone(pin, frequency)
tone(pin, frequency, duration)



pin: the pin on which to generate the tone

frequency: the frequency of the tone in hertz – unsigned int

duration: the duration of the tone in milliseconds (optional) – unsigned long





See also


Reference Home