Ardiuno: Tone Pitch Follower
Jump to navigation
Jump to search
Sumber: https://www.arduino.cc/en/Tutorial/tonePitchFollower
This example shows how to use the tone() command to generate a pitch that follows the values of an analog input. Using a photoresistor your Arduino or Genuino board becomes a simplified light theremin.
Hardware Required
- Arduino or Genuino board
- 8 ohm speaker
- photoresistor
- 4.7K ohm resistor
- 100 ohm resistor
- hook-up wires
- breadboard
Rangkaian
Code
/* Pitch follower Plays a pitch that changes based on a changing analog input circuit: * 8-ohm speaker on digital pin 9 * photoresistor on analog 0 to 5V * 4.7K resistor on analog 0 to ground created 21 Jan 2010 modified 31 May 2012 by Tom Igoe, with suggestion from Michael Flynn This example code is in the public domain. http://www.arduino.cc/en/Tutorial/Tone2 */ void setup() { // initialize serial communications (for debugging only): Serial.begin(9600); } void loop() { // read the sensor: int sensorReading = analogRead(A0); // print the sensor reading so you know its range Serial.println(sensorReading); // map the analog input range (in this case, 400 - 1000 from the photoresistor) // to the output pitch range (120 - 1500Hz) // change the minimum and maximum input numbers below // depending on the range your sensor's giving: int thisPitch = map(sensorReading, 400, 1000, 120, 1500); // play the pitch: tone(9, thisPitch, 10); delay(1); // delay in between reads for stability }