Site icon elektromanyetix

Arduino Switch Case Örneği (kullanımı)

Arduino Switch Case Örneği

Arduino Switch Case Örneği

Arduino Switch Case Örneği. Bir if deyimi, iki ayrık seçenek TRUE veya FALSE arasında seçim yapmanızı sağlar. İkiden fazla seçenek olduğunda, ifadelerde birden çok kez kullanabilirsiniz veya switch deyimini kullanabilirsiniz. Switch birkaç farklı seçenek arasında seçim yapmanızı sağlar. Bu öğretici, bir fotoğraf direncinin dört istenen durumu arasında geçiş yapmak için nasıl kullanılacağını gösterir: gerçekten karanlık, loş, orta ve parlak.

Bu program ilk önce fotorezistörü okur. Ardından, çıkışını dört değerden biriyle eşlemek için map() işlevini kullanır: 0, 1, 2 veya 3. Son olarak, hangisinin bağlı olduğuna bağlı olarak, dört iletiden birini yazdırmak için switch() deyimini kullanır. dört değer döndürülür.

Donanım

  • Arduino veya Genuino
  • photoresistor veya başka bir analog sensör
  • 10k ohm dirençler
  • 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

Photoresistor, bir voltaj bölücü devresi kullanılarak pim 0’da analoga bağlanır. 10K ohm direnç, Analog ayırıcıdan 0’a toprağa uzanan voltaj bölücünün diğer tarafını oluşturur. analogRead() işlevi, makul bir şekilde aydınlatılmış bir iç mekanda bu devrenin yaklaşık 0 ila 600 aralığını döndürür.

Kod

/*
Anahtar ifadesi

Bir anahtar ifadesinin kullanıldığını gösterir. Switch deyimi size izin verir
Bir değişkenin ayrık değerleri arasında seçim yapmak için. Öyle bir
ifadeler dizisi.

Bu çizimi eylem halinde görmek için panoyu ve sensörü iyi aydınlatılmış bir odaya koyun.
Seri Monitör'ü açın ve elinizi yavaş yavaş sensörün üzerine getirin.

Devre:
- 0'dan + 5V'a analogtan fotodirenç
- 0'dan 0'a analogtan 10K direnç

oluşturuldu 1 Tem 2009
değiştirilme tarihi 9 Nis 2012
Tom Igoe tarafından

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

// bu sabitler değişmeyecek. Onlar en düşük ve en yüksek okumalar
// sensörünüzden alın:
const int sensorMin = 0;      // sensör minimum, deneme yoluyla keşfedildi
const int sensorMax = 600;    // sensör maksimum, deneme yoluyla keşfedildi

void setup() {
  // seri iletişimi başlat:
  Serial.begin(9600);
}

void loop() {
  // sensörü oku:
  int sensorReading = analogRead(A0);
  // sensör aralığını dört seçenek aralığına eşleştirin:
  int range = map(sensorReading, sensorMin, sensorMax, 0, 3);

  // Aralık değerine bağlı olarak farklı bir şey yapın:
  switch (range) {
    case 0:    // eliniz sensörde
      Serial.println("dark");
      break;
    case 1:    // eliniz sensöre yakın
      Serial.println("dim");
      break;
    case 2:    // eliniz sensörden birkaç cm uzakta
      Serial.println("medium");
      break;
    case 3:    // eliniz sensörün yakınında değil
      Serial.println("bright");
      break;
  }
  delay(1);        // stabilite için okumalar arasında gecikme
}

Kaynak:arduino.cc

Exit mobile version