Sabitler

Tanımı

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:doğru(true)ve yanlış(false)(Mantıksal Sabitler)

Arduino dilinde doğruyu ve yanlışı temsil etmek için kullanılan iki sabit vardır:"true"ve"false".

Yanlış(false)

"false"sabiti ikisi arasında tanımlanması en kolay olanıdır."false"nin sayı değeri 0(sıfır)olarak tanımlanır.

Doğru(true)

Çoğu zaman "true" sabiti 1 olarak tanımlandığı söylenir, ki bu doğrudur.Ancak doğrunun daha geniş bir tanımı vardır.Mantıksal olarak sıfır olmayan herhangi bir tamsayı "true" olarak kabul edilir.Yani -1, 2 ve -200 sayıları mantıksal anlamda da doğru olarak tanımlanır.

Pin Seviyelerini Tanımlama:HIGH(YÜKSEK)ve LOW(DÜŞÜK)

HIGH(YÜKSEK)

"HIGH" sabitinin anlamı bir "Pin"in "INPUT" veya "OUTPUT" olarak ayarlanıp ayarlanmadığına bağlı olarak değişkenlik gösterir.Bir "pin", (pinMode)ile "INPUT"olarak yapılandırıldığında, ve (digitalRead()) ile okunduğunda, Arduino(ATmega) aşağıdaki durumlarda "HIGH"sabitini bildirir:

"Pin"de 3.0v'den daha büyük bir voltaj var(5V boards)

"Pin"de 2.0v'den daha büyük bir voltaj var(3.3V boards)

Bir "Pin",(pinMode) ile "INPUT" olarak,ve daha sonra (digitalWrite) ile de "HIGH" olarak da yapılandırılabilr.Bu dahili 20K "pullup" direncini etkinleştirecek,harici devre tarafından "pullup" uygulanmadığı sürece "INPUT" "pin"ini "HIGH" bir okumaya çekecektir.Alternatif olarak (pinMode()) işlevine argüman olacak şekilde "INPUT_PULLUP" ileterek ,aşağıdaki "Dijital (PİN) Modları"nı tanımlama:"INPUT,INPUT_PULLUP VE OUTPUT" bölümünde daha ayrıntılı olarak açıklandığı şekilde yapılabilir.

Bir "pin",(pinMode()) ile "OUTPUT" olarak yapılandırıldığına ve (digitalWrite()) ile "HIGH" olarak ayarlandığında,pin şu şekilde konumlanır:

5 volt(5 boards)

3.3 volt(3.3 boards)

Bu durumda bir akım kaynağı olabilir.Örneğin; bir seri dirençle toprağa bağlı bir LED yakmak.
LOW(DÜŞÜK)

"LOW"un anlamı bir "PIN" in "INPUT" veya "OUTPUT" olarak ayarlanmış olmasına bağlı olarak değişiklik gösterebilir.Bir "PIN",(pinMode()) ile "INPUT" olarak yapılandırıldığında ve (digitalRead()) ile okunduğunda Arduino(ATmega) aşağıdaki durumlarda "LOW" etiketini gösterir:

"PIN" de 1.5V'den daha düşük bir voltaj var(5V boards)

"PIN" de 1.0V'den (Yaklaşık) daha düşük bir voltaj var (3.3V boards)

Bir "PIN", (pinMode()) ile "OUTPUT" olarak yapılandırıldığında ve (digitalWrite()) ile "LOW" olarak ayarlandığında, "PIN" 0(sıfır) voltajındadır(hem 5v hem de 3.3v boards için).Bu durumda akımı düşürebilir,örneğin; +5V'ye (veya +3.3V'ye) seri dirençle bağlı bir "LED" i yakmak.

Dijital "PIN" modlarını tanımlama:INPUT,INPUT_PULLUP ve OUTPUT

Dijital "PIN" ler "INPUT","INPUT_PULLUP" veya "OUTPUT" olarak kullanılabilir.(pinMode()) ile bir "PIN" in değiştirilmesi,"PIN" in elektriksel hareketini değiştirir.
"INPUT" olarak yapılandırılan "PIN" ler

(pinMode()) ile "INPUT" olarak yapılandırılmış Arduino (ATmega) pinlerinin yüksek empedans(high-empedance) durumunda olduğu söylenir."INPUT" olarak konfigüre "pin" ler,örnekleme yaptıkları devre üzerinde,"pin" in önündeki 100 Megohm'luk(100 Meghoms) bir seri rezistöre eşdeğer,son derece küçük taleplerde bulunur.

"PIN" inizi "INPUT" olarak yapılandırıp bir anahtar(switch) okuyorsanız (anahtardan girdi almak),anahtar(switch) açık durumdayken giriş "pin" i "floating" durumuna gelir ve bu da öngörülemeyen sonuçlara yol açar.Anahtar açık durumdayken doğru bir okuma sağlamak içim bir "pull-up" veya "pull-down" direnci kullanılmalıdır.Bu direncin amacı anahtar"swtich" açık durumda iken "pin"i bilinen bir duruma çekmektir.10K "ohm" değerinde bir direnç, "floating input" u güvenilir bir şekilde önlemek için yeterince düşük bir değer ve aynı zamanda anahtar kapatıldığında çok fazla akım çekmemek için yeterince yüksek olduğundan genellikle tercih edilir.

Eğer bir "pull-down" direnci kullanılıyorsa,anahtar "switch" açıkken "INPUT" "pin"i "LOW" ve anahtar kapalıyken "HIGH" olacaktır.

Eğer bir "pull-up" direnci kullanılıyorsa, anahtar açıkken "INPUT" "pin" i "HIGH" ve anahtar kapalıyken "LOW" olacaktır.

"INPUT_PULLUP" Olarak Yapılandırılan "Pin"ler

Arduino üzerindeki ATmega mikrodenetleyici,erişebileceğiniz dahili "pull-up" dirençlerine (dahili olarak bağlanan dirençler) sahiptir.Bunları harici "pull-up" dirençleri yerine kullanmayı tercih ederseniz,(pinmode()) içindeki "INPUT_PULLUP" argümanını kullanabilirsiniz.

"INPUT" veya "INPUT_PULLUP" ile giriş olarak yapılandırılan pinler,toprak altındaki(negatif voltajlar) veya pozitif güç rayının (5V ya da 3V) üzerindeki voltajlara bağlanırlarsa zarar görebilir veya bozulabilir.


"OUTPUT" Olarak Yapılandırılan "pin" ler

(pinMode()) ile "OUTPUT" olarak yapılandırılan "pin" lerin düşük empedans "low-impedance" durumunda olduğu söylenir.Bu, diğer devrelere önemli miktarda akım sağlayabilecekleri anlamına gelir.ATmega "pin" leri, diğer cihazlara/devrelere 40ma(miliamper) kadar akım sağlayabilir veya akımı emebilir.Bu "LED" lere güç sağlamak için onları kullanışlı hale getirir, çünkü "LED" ler genel olarak 40mA(miliamper) dan daha az kullanır.40mA'dan büyük yükler (örneğin;motorlar) bir başka transistör veya başka bir arayüz devresi gerektirir.

"OUTPUT" olarak konfigüre edilen "pin" ler, toprağa veya pozitif güç raylarına bağlanırsa hasar görebilir veya bozulabilir.


Yerleşikleri Tanımlama:"LED-BUILTIN"

Çoğu Arduino kartında (boards), bir dirençle seri olarak yerleşik bir "LED" e bağlı bir "pin" bulunur.Sabit "LED_BUILTIN",yerleşik "LED" in bağlı "pin" sayısıdır.Çoğu panoda (boards) bu "LED", (digital pin 13) e bağlıdır.