Site icon elektromanyetix

Arduino tone() ile Analog Giriş Takibi

Arduino tone() ile Analog Giriş Takibi

Arduino tone() ile Analog Giriş Takibi. Bu örnek, bir analog girişin değerlerini izleyen bir adım oluşturmak için tone () komutunun nasıl kullanılacağını gösterir. Bir photoresistor(LDR) kullanarak, Arduino veya Genuino anakartınız basitleştirilmiş bir ışık haline gelir.

Gerekli Donanım

  • Arduino veya Genuino
  • 8 ohm hoparlör
  • photoresistor(LDR)
  • 4.7K ohm direnç
  • 100 ohm direnç
  • Bağlantı Telleri
  • breadboard

“Arduino UNO, elektronik ve kodlamaya başlamak için en iyi tahtadır. Bu, platformla birlikte çalıştığınız ilk deneyiminizse, Arduino UNO, denemelere başlayabileceğiniz en iyi seçimdir. UNO, tüm Arduino ailesinin en çok kullanılan ve içeriği bulunan kartıdır.

Arduino Uno, ATmega328P tabanlı bir mikro denetleyici karttır. 14 adet dijital giriş / çıkış pini (6’sı PWM çıkışı olarak kullanılabilir), 6 analog giriş, 16 MHz kristali, bir USB bağlantısı, bir güç girişi, bir ICSP başlığı ve bir sıfırlama düğmesi vardır. Mikrodenetleyiciyi desteklemek için gereken her şeyi içerir; Başlamak için bir USB kablosuyla bir bilgisayara bağlayın ya da AC-DC adaptörü ya da pille çalıştırın. UNO’yu, yanlış bir şey yapmadan çok fazla endişe etmeden tamir edebilir, en kötü durum senaryosunu değiştirebilirsiniz. Birkaç dolara çip alır ve tekrar kullanabilirsiniz.”

Devre

Hoparlörünüzün bir terminalini 100 pin’lik bir dirençle dijital pin 9’a ve diğer terminalini toprağa(-) bağlayın. Photoresistor(LDR)’unuzu 5V ile güçlendirin ve toprağa(-) bir 4.7K rezistör ekleyerek analog 0’a bağlayın.

Kod

Bu örneğin için kod çok basit. Sadece bir analog giriş yapın ve okudğunuz değerleri bir dizi sese eşleyin. İnsanlar 20 – 20.000 Hz arasında ses duyabilir, ancak bu örnek için 120 – 1500 genellikle iyi çalışır.

Eşleme için analog girişinizin gerçek aralığını almanız gerekir. Gösterilen devrede, analog giriş değeri yaklaşık 400 ila yaklaşık 1,000 arasındadır. Sensörünüzün aralığını eşleştirmek için map () komutundaki değerleri değiştirin.

/*
Işık Takipçisi
Değişen analog girişe göre değişen bir adım çalar

devre:
- Dijital pim üzerinde 8 ohm hoparlör
- 0 - 5V analogunda fotodirenç
- Analog 0'da toprağa 4,7 kilohm direnç

21 Oca 2010 oluşturuldu
değiştirilmiş 31 Mayıs 2012
Michael Flynn’in önerisiyle Tom Igoe’nin

Bu örnek kod kamu malıdır.
http://www.arduino.cc/en/Tutorial/Tone2
* /

void setup() {
 // seri iletişimi başlat (yalnızca hata ayıklama için):
  Serial.begin(9600);
}

void loop() {
 // sensörü oku:
  int sensorReading = analogRead(A0);
  // sensör okumasını yazdırın, böylece aralığını biliyorsunuz
  Serial.println(sensorReading);
  // analog giriş aralığını eşleme (bu durumda, fotorezistörden 400 - 1000)
// çıkış aralığı aralığına (120 - 1500Hz)
// aralığa bağlı olarak aşağıdaki minimum ve maksimum giriş numaralarını değiştirin
// sensörünüzün verdiği:
  int thisPitch = map(sensorReading, 400, 1000, 120, 1500);

 // Nota Değeriyle oyna:
  tone(9, thisPitch, 10);
  delay(1);         // stabilite için okumalar arasında gecikme 
}

Kaynak:arduino.cc

Exit mobile version