Использование функции tone() для озвучив

Arduino ( Freeduino )
Использование функции tone() для озвучивания данных

Код очень прост
Этот пример показывает, как использовать команду tone(), чтобы сгенерировать питч, соответствующий данным аналогового входа.

Цепь:



Схема:



Код:

Код этого примера очень прост. Просто назначьте данным аналогового входа диапазон частот. Люди могут слышать звуки частотой от 20 до 20 000 Гц. А для нашего скетча лучше всего подойдёт диапазон 100 — 1000 Гц.

Вы должны будете получить фактический диапазон частот аналогового входа для назначения. В показанной схеме, значения аналогового входа расположились в диапазоне приблизительно от 400 до 1000. Измените значения в команде map(), чтобы было соответствие с диапазоном Вашего датчика.

Непосредственно код:

/*
  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
 by Tom Igoe 
 
 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(0);
  // print the sensor reading so you know its range
  Serial.println(sensorReading);
  // map the pitch to the range of the analog input.
  // change the minimum and maximum input numbers below
  // depending on the range your sensor's giving:
  int thisPitch = map(sensorReading, 400, 1000, 100, 1000);

  // play the pitch:
  tone(8, thisPitch, 10);

}


Оригинал
technik 21.02.2010 в 16.04 (обновлен 21.02.2010 в 16.07) комментарии 0 0

комментарии(0)

Комментировать

Для добавления комментария авторизируйтесь.
Последние комментарии:
© 2012 pobot.ru