From 3af536aeadb354f5a63959633f0833b3e53721be Mon Sep 17 00:00:00 2001 From: Andrea Manni Date: Mon, 14 Dec 2015 23:47:12 +0100 Subject: [PATCH] Pith follower --- .../photo_7_tonePitchFollower_ino.ino | 64 ------------------- .../button_state_4_state.ino | 2 +- .../piezo_1_tonePitchFollower.ino | 7 +- 3 files changed, 5 insertions(+), 68 deletions(-) delete mode 100644 basic/analog_input/photo_7_tonePitchFollower/photo_7_tonePitchFollower_ino/photo_7_tonePitchFollower_ino.ino diff --git a/basic/analog_input/photo_7_tonePitchFollower/photo_7_tonePitchFollower_ino/photo_7_tonePitchFollower_ino.ino b/basic/analog_input/photo_7_tonePitchFollower/photo_7_tonePitchFollower_ino/photo_7_tonePitchFollower_ino.ino deleted file mode 100644 index 31d41a6..0000000 --- a/basic/analog_input/photo_7_tonePitchFollower/photo_7_tonePitchFollower_ino/photo_7_tonePitchFollower_ino.ino +++ /dev/null @@ -1,64 +0,0 @@ -/* -Pitch following - -The input from a photo resistor dictates the pitch of a piezo. - - - */ - -// These constants won't change: -const int sensorPin = A0; // pin that the sensor is attached to -const int ledPin = 9; // pin that the LED is attached to -int thisPitch ; - -// calibration variables: -int sensorValue = 0; // the sensor value -int sensorMin = 1023; // minimum sensor value -int sensorMax = 0; // maximum sensor value - - -void setup() { - // turn on LED to signal the start of the calibration period: - pinMode(13, OUTPUT); - digitalWrite(13, HIGH); - - // calibrate during the first five seconds - while (millis() < 5000) { - sensorValue = analogRead(sensorPin); - - // record the maximum sensor value - if (sensorValue > sensorMax) { - sensorMax = sensorValue; - } - - // record the minimum sensor value - if (sensorValue < sensorMin) { - sensorMin = sensorValue; - } - } - - // signal the end of the calibration period - digitalWrite(13, LOW); -} - -void loop() { - // read the sensor: - sensorValue = analogRead(sensorPin); - - // apply the calibration to the sensor reading - thisPitch = map(sensorValue, sensorMin, sensorMax, 120, 1500); - // map the analog input range (in this case, min - max 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: - - // in case the sensor value is outside the range seen during calibration - thisPitch = constrain(sensorValue, 120, 1500); - - - - // play the pitch: - tone(ledPin, thisPitch, 10); // Tone is built in function - delay(1); // delay in between reads for stability -} - diff --git a/basic/buttons/button_state_4_state/button_state_4_state.ino b/basic/buttons/button_state_4_state/button_state_4_state.ino index 4e06d42..d21f27e 100644 --- a/basic/buttons/button_state_4_state/button_state_4_state.ino +++ b/basic/buttons/button_state_4_state/button_state_4_state.ino @@ -20,7 +20,7 @@ void setup() { } void loop(){ - statoAttuale = digitalRead(buttonPin); // Legge lo stato del bottone e lo resistra in val + statoAttuale = digitalRead(buttonPin); // Legge lo stato del bottone e lo registra in val delay(20); // riduce l'effetto bounce if (statoAttuale != ultimoStato) { // lo stato del bottone e' cambiato if (statoAttuale == HIGH) { // il bottone e' stato premuto diff --git a/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino b/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino index 9ceda24..671f539 100644 --- a/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino +++ b/piezo/piezo_1_tonePitchFollower/piezo_1_tonePitchFollower.ino @@ -13,8 +13,9 @@ by Tom Igoe, with suggestion from Michael Flynn This example code is in the public domain. - - http://arduino.cc/en/Tutorial/Tone2 + +- http://www.dummies.com/how-to/content/how-to-make-an-instrument-with-the-arduino.html +- https://www.arduino.cc/en/Tutorial/tonePitchFollower */ @@ -38,7 +39,7 @@ void loop() { // 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, sensorMin, sensorMax, 220, 3500); + int thisPitch = map(sensorReading, 300, 900, 220, 3500); // play the pitch: tone(ledPin, thisPitch, 10); -- 2.39.2