Mikro C derslerimiz tüm hızıyla devam ediyor. Bu dersimizde MikroC'de LED, Buton vb. nesnelerin eleman tanımlamasını işliyoruz. Hiç de karışık olmayan, projeleriniz de sıklıkla kullanacağınız bu nesneler sizlere büyük kolaylık sağlayacaktır.
Mikro C'de Buton ve LED Tanımlama
İkici dersimiz olan bu dersimizde Mikro C'de LED, Buton vs. gibi eleman tanımlamasını öğreneceğiz. Buton tanımlamak bir çok projede kullandığımız gibi basit elektronik projelerinde de kullanıyoruz. Peki bu nesneleri nasıl tanımlayacağız? Bunları tanımlarken nelere dikkat edeceğiz? Öncelikle buton tanımlarken Buton aktifleştiğinde bağlayacağımız Pin lojik-1 mi lojik-0 mı oluyor?, Ne kadar süre Butona basıldığında aktifleşecek? Bakalım bu ve benzeri ayrıntılarıyla beraber bir Buton nasıl tanımlanır?
#define basla buton (&porta,3,100,0)
Burada demek istediğimiz şu başla butonunu A portumuzun 3. pinine bağlı ve 100ms 0V(GND,toprak) gelirse Port A’nın 3. pini lojik-1 olur. Programının ileriki yerlerinde sadece “basla” komutunu kullanarak işlem yapabiliriz. Diğer bir komut ise şöyledir.
#define basla porta.f3
Buradaki çalışma yapısını ise şu şekilde tanımlayabiliriz. A portunun 3. Pinine bağlı bir buton vardır ve if ile sorgulanır. 1'e eşitse şu işlem yapılsın 0'a eşitse şu işlem yapılsın diye devam ederek program yazılır. Ve bir önceki komutta olduğu gibi sadece “basla” komutunu kullanarak işlem yaparız. Şimdi de ledi tanımlayacak olursak. Ledi kesinlikle tanımlayacağız diye bir şey söyleyemem. Ledi yakmak için şu iki örneği verebiliriz.
#define basla buton (&porta,3,100,0)
Burada demek istediğimiz şu başla butonunu A portumuzun 3. pinine bağlı ve 100ms 0V(GND,toprak) gelirse Port A’nın 3. pini lojik-1 olur. Programının ileriki yerlerinde sadece “basla” komutunu kullanarak işlem yapabiliriz. Diğer bir komut ise şöyledir.
#define basla porta.f3
Buradaki çalışma yapısını ise şu şekilde tanımlayabiliriz. A portunun 3. Pinine bağlı bir buton vardır ve if ile sorgulanır. 1'e eşitse şu işlem yapılsın 0'a eşitse şu işlem yapılsın diye devam ederek program yazılır. Ve bir önceki komutta olduğu gibi sadece “basla” komutunu kullanarak işlem yaparız. Şimdi de ledi tanımlayacak olursak. Ledi kesinlikle tanımlayacağız diye bir şey söyleyemem. Ledi yakmak için şu iki örneği verebiliriz.
Örnek
B portunun 2 ve 6. pinine birer led bağlanmış kabul edersek. Ledleri aktifleştirmek için 2 farklı yol vardır.

Bu komutları kullandığımızda LED'in hangi pine bağlı olduğuna her seferinde bakmamız gerekir birde birden fazla LED varsa işler daha da karmaşıklaşabilir.

Bu komutları programının üst kısmına tek sefer yazdığımızda artık portb.f2 yada port.f6 diye bir şeyi aklımızda tutmamıza gerek yok sadece yapmamız gereken tek şey
Uyarı=1;
Sinyal=1;
LEDleri pasifleştirmek için ise;
Uyarı=0;
Sinyal=0;
gibi komutları kullanarak basit bir şekilde işlemlerimizi gerçekleştirebiliriz. LED'i tanımlama veya kullanma kısmı da bu kadardı.
Ben 2. Komutu daha sık kullanıyorum. Neden derseniz? Çünkü uzun satırlı veya Lojik-0, lojik-1 gibi işlemlerin fazla olduğu programlarda karışıklığın çıkmaması elde değil. Her seferinden devremizde ledler nerelerdeydi gibisinden soruları kendimize sormaktansa programın üstünde tanımlarım ve LED'inin ismi ile kullanırım.

Bu komutları kullandığımızda LED'in hangi pine bağlı olduğuna her seferinde bakmamız gerekir birde birden fazla LED varsa işler daha da karmaşıklaşabilir.

Bu komutları programının üst kısmına tek sefer yazdığımızda artık portb.f2 yada port.f6 diye bir şeyi aklımızda tutmamıza gerek yok sadece yapmamız gereken tek şey
Uyarı=1;
Sinyal=1;
LEDleri pasifleştirmek için ise;
Uyarı=0;
Sinyal=0;
gibi komutları kullanarak basit bir şekilde işlemlerimizi gerçekleştirebiliriz. LED'i tanımlama veya kullanma kısmı da bu kadardı.
Ben 2. Komutu daha sık kullanıyorum. Neden derseniz? Çünkü uzun satırlı veya Lojik-0, lojik-1 gibi işlemlerin fazla olduğu programlarda karışıklığın çıkmaması elde değil. Her seferinden devremizde ledler nerelerdeydi gibisinden soruları kendimize sormaktansa programın üstünde tanımlarım ve LED'inin ismi ile kullanırım.
Hiç yorum yok:
Yorum Gönder