Difference between revisions of "Arduino: Tone di kontrol oleh analog input"

From OnnoWiki
Jump to navigation Jump to search
Line 7: Line 7:
 
   
 
   
 
   circuit:
 
   circuit:
   * 8-ohm speaker on digital pin 9
+
   * 8-ohm speaker on digital pin 10
 
   * potensio on analog input A0
 
   * potensio on analog input A0
 
   * 4.7K resistor on analog 0 to ground
 
   * 4.7K resistor on analog 0 to ground
Line 39: Line 39:
 
   
 
   
 
   // play the pitch:
 
   // play the pitch:
   tone(9, thisPitch, 10);
+
   tone(10, thisPitch, 11);
 
   delay(1);        // delay in between reads for stability
 
   delay(1);        // delay in between reads for stability
 
  }
 
  }

Revision as of 07:02, 29 October 2017

Code

/*
  Pitch follower

 Plays a pitch that changes based on a changing analog input

 circuit:
 * 8-ohm speaker on digital pin 10
 * potensio on analog input A0
 * 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(10, thisPitch, 11);
  delay(1);        // delay in between reads for stability
}