Summary of Simple keyboard using the tone() function using Arduino
This project demonstrates using the Arduino tone() function to play different pitches based on which of three analog sensors (FSRs) is pressed. Each sensor connects to analog inputs and, when pressed beyond a threshold, triggers a corresponding note through an 8-ohm speaker connected to digital pin 8. The setup includes resistors to form proper sensor voltage dividers, allowing the Arduino to detect sensor activation and produce distinct sounds accordingly.
Parts used in the Simple Keyboard Project:
- 8-ohm speaker
- 3 force sensing resistors (FSRs)
- 3 10k ohm resistors
- 1 100 ohm resistor
- Breadboard
- Hook-up wire
This example shows how to use the tone() command to generate different pitches depending on which sensor is pressed.
Circuit
Connect one terminal of your speaker to digital pin 8 through a 100 ohm resistor, and its other terminal to ground.
Power your three FSRs (or any other analog sensor) with 5V in parallel. Connect each sensor to analog pins 0-2, using a 10K resistor as a reference to groud on each input line.
image developed using Fritzing. For more circuit examples, see the Fritzing project page
Schematic
Code
The sketch below reads three analog sensors. Each corresponds to a note value in an array of notes. IF any of the sensors is above a given threshold, the corresponding note is played.
Here’s the main sketch:
keyboard
Plays a pitch that changes based on a changing analog input
circuit:
* 3 force-sensing resistors from +5V to analog in 0 through 5
* 3 10K resistors from analog in 0 through 5 to ground
* 8-ohm speaker on digital pin 8
created 21 Jan 2010
modified 9 Apr 2012
by Tom Igoe
This example code is in the public domain.
http://arduino.cc/en/Tutorial/Tone3
*/
Hardware Required
- 8-ohm speaker
- (3) force sensing resistors
- (3) 10k ohm resistors
- (1) 100 ohm resistor
- breadboard
- hook up wire