Sabitler
Sabitler Arduino dilinde önceden tanımlanmış ifadelerdir. Programların okunmasını kolaylaştırmak için kullanılırlar.
Sabitleri gruplar halinde sınıflandırırız:
Mantıksal Düzeyleri Tanımlama: true ve false (Boolean Sabitleri)
Arduino da doğru yada yanlışı göstermek için kullanılan mantıksal tanımlamadır.
false
0 (sıfır) olarak tanımlanır.
true
1 olarak tanımlanır, ancak doğru olanın daha geniş bir tanımı vardır.
Boolean anlamında, sıfır olmayan herhangi bir tam sayı doğrudur. Dolayısıyla -1, 2 ve -200 tümüyle Boolean anlamında doğru olarak tanımlanır.true
ve false
sabitlerinin HIGH
, LOW
, INPUT
ve OUTPUT
aksine küçük harflerle yazıldığına dikkat edin.
Pin Seviyelerini Tanımlama: HIGH ve LOW
Bir dijital pini okurken veya yazarken, bir pinin alabileceği / ayarlayacağı iki olası değer vardır:
HIGH
HIGH (bir pine referans olarak) bir pinin INPUT
veya OUTPUT
ayarlanmasına bağlı olarak biraz farklıdır. pinMode()
ile bir INPUT
olarak konfigüre edildiğinde ve digitalRead()
ile okunduğunda,
Arduino (Atmega) aşağıdaki durumlarda HIGH
bildirir:
- pinde 3.0V’dan büyük bir voltaj mevcut ise (5V kartlar);
- pinde 2.0V’dan büyük bir voltaj meccut ise (3.3V kartlar);
Bir pin, pinMode()
ile bir INPUT
olarak yapılandırılabilir ve daha sonra, digitalWrite()
ile HIGH
yapılır. Bu, dahili 20K’luk pullup dirençleri ve harici devre tarafından LOW
‘a çekilmediği sürece giriş pinini HIGH
bir okuma çekecektir.
INPUT_PULLUP
bu şekilde çalışır ve aşağıda daha ayrıntılı olarak açıklanmıştır. Bir pin pinMode()
ile OUTPUT
için yapılandırıldığında ve digitalWrite()
ile HIGH
olarak ayarlandığında, pin şu değerdedir:
- 5 volt (5V kartlarda);
- 3.3 volt (3.3V kartlarda);
Bu durumda pine bağlanacak seri bir direnç ve led ile ledimizi aydınlatabiliriz.
LOW
LOW
‘un anlamı, bir pinin INPUT
veya OUTPUT
olarak ayarlanmasına bağlı olarak farklı bir anlam taşır. Pin pinMode()
ile bir INPUT
olarak yapılandırıldığında ve digitalRead()
ile okunduğunda, Arduino (Atmega) şu durumlarda LOW
bildirir:
- pinde 1.5V’dan daha düşük bir voltaj mevcut ise (5V kartlarda);
- pinde 1.0V’dan daha düşük bir voltaj mevcut ise (3.3V kartlarda);
Pin pinMode()
ile OUTPUT
için yapılandırıldığında ve digitalWrite()
ile LOW
olarak ayarlandığında, pin 0 volttur (her ikisi de 5V ve 3.3V kartlar). Bu durumda ledimizi kapatabiliriz.
Dijital Pin modlarını tanımlama:
INPUT, INPUT_PULLUP ve OUTPUT
Dijital pinler INPUT
, INPUT_PULLUP
veya OUTPUT
olarak kullanılabilir. Bir pinin pinMode()
ile değiştirilmesi pinin elektriksel davranışını değiştirir.
INPUT olarak yapılandırılan pinler
pinMode()
ile INPUT
olarak yapılandırılmış Arduino (Atmega) pinlerinin yüksek empedanslı bir durumda oldukları söylenir. INPUT
olarak yapılandırılan pinler, örnekleme aşamasında, pin önünde 100 Megohms’lık bir seri dirençle eşdeğer olarak, son derece küçük talepler üretirler. Bu, onları bir sensör okumak için yararlı kılar.
PIN
‘inizi INPUT
olarak yapılandırdıysanız ve bir anahtar okuyorsa, anahtar açık durumda iken, giriş pini “floating” olur ve bu da öngörülemeyen sonuçlara neden olur. Anahtar açıkken uygun bir okumayı sağlamak için bir pull-up veya pull-down direnci kullanılmalıdır.
Bu direncin amacı, anahtar açıkken pini bilinen bir duruma çekmektir. 10 K ohm direnç genellikle floating bir girişin güvenilir şekilde önlenmesi için yeterince düşük bir değer olduğu ve anahtar kapatıldığında çok fazla akım çekmemesi için yeterince yüksek bir değer olduğu için seçilir.
Bir pull-down direnç kullanılırsa, anahtar açıkken giriş pini LOW
olur ve anahtar kapatıldığında HIGH
olur. Bir pull-up direnci kullanılırsa, anahtar açıkken giriş pini HIGH
ve anahtar kapalıyken LOW
olacaktır.
INPUT_PULLUP olarak yapılandırılan pinler
Bu şekilde yapılandırılan pinlerde INPUT
‘dan farklı olarak Atmega işlemcisine içerden dahili olarak bağlıpull_up
dirençler bulunur. INPUT_PULLUP
kullandığımızda harici bir dirence gerek kalmaz.
NOT: INPUT
veya INPUT_PULLUP
ile giriş olarak yapılandırılan pinlere; (ground)(-) veya kartın türüne göre pozitif(+) (5V veya 3V)’dan fazlaysa zarar görebilir !
Örnek:
OUTPUT olarak yapılandırılan pinler
pinMode()
ile OUTPUT
olarak yapılandırılan pinin düşük empedanslı bir durumda olduğu söylenir. Bu, diğer devrelere önemli miktarda akım sağlayabilecekleri anlamına gelir. Atmega pinleri, diğer cihazlara / devrelere 40 mA’a (miliamp) kadar akım sağlar.
Bu, onları LED’ler için kullanışlı kılar, çünkü LED’ler tipik olarak 40 mA’den daha azını kullanır. 40 mA’dan daha büyük yükler (örn. Motorlar) bir transistör veya başka bir arabirim devresini gerektirecektir.
NOT: OUTPUT
olarak yapılandırılan pinler, toprak(ground) veya pozitif güç uçlarına bağlıysa zarar görebilir !
Dahili bileşenleri tanımlama: LED_BUILTIN
Çoğu Arduino kartı, bir dirençle seri olarak bağlı bir LED’ye bağlı bir pime sahiptir. Sabit LED_BUILTIN
, yerleşik LED’in bağlandığı pimin numarasıdır. Çoğu sürücünün bu LED’i dijital pin 13’e bağlanmıştır.
Örnek:
NOT: Buradaki bilgiler arduino.cc sitesinden Türkçeye çevrilmiştir.
Türkçe çevirinin tüm hakları saklıdır.
Bu web sayfası sadece link olarak paylaşılabilir.
Sayfada herhangi bir hata, öneri ve yorumlarınız için iletişim kurmanızı bekleriz.