X-Git-Url: http://git.piffa.net/web?a=blobdiff_plain;f=piezo%2Fpiezo_1_tonePitchFollower%2Fpiezo_1_tonePitchFollower.ino;fp=piezo%2Fpiezo_1_tonePitchFollower%2Fpiezo_1_tonePitchFollower.ino;h=e74c7b343449a5c366c457ebb127c5887d99dcc4;hb=54de1d245a98a8032e8c41089158321f6be58b1c;hp=0000000000000000000000000000000000000000;hpb=ca9bc9014acdfae3ee07d19650c547f02b796994;p=sketchbook_andrea diff --git a/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino b/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino new file mode 100644 index 0000000..e74c7b3 --- /dev/null +++ b/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino @@ -0,0 +1,47 @@ +/* + Pitch follower + + Plays a pitch that changes based on a changing analog input + + circuit: + * 8-ohm speaker on digital pin 8 + * 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://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 +} + + + + + +