C18 Diliyle Robot Programlama – Dış Kesme (External Interrupt) Kullanımı

Bu bölümde amacımız B portundan gelen sinyalin değişimini algılayan bir kesme oluşturmak. Bu kesme pinlerden gelen sinyaller tarafından tetiklenecek ve istediğimiz işlemi yapacak. Özellikle encoder okuma modülünü kodlarken bu sinyal değişimleri tarafından tetiklenen kesmelerden çokça faydalanacağız.

PIC18F4585’te 3 adet dış kesme girişi bulunur. Bunlar RB0(INT0), RB1(INT1) ve RB2(INT2) pinleridir.

Aynı zamanda bu RB0, RB1 ve RB2 pinlerine bizim butonlarımızın da bağlı olduğunu biliyoruz. Biz bu butonlar sayesinde bu kesme girişlerine +5V sinyali ve 0 (IDLE) sinyali verebiliyoruz. (Butona basmazsak 5V, butona basarsak 0V olduğunu kabul edelim). Amacımız butonlarla oluşturacağımız bu sinyalin düşen veya yükselen kenarlarında kesmelerin oluşmasını sağlamak. Düşen kenar dediğimiz şey, sinyalin 1 (+5V) durumundan 0 (IDLE) durumuna geçmesi, yükselen kenar dediğimiz şey ise sinyalin 0 (IDLE) durumundan 1 (+5V) durumuna geçmesidir.

Şekilde;

  • Mavi dikey çizginin olduğu bölümler; B sinyalinin yükselen kenarlarını,
  • Kırmızı dikey çizginin olduğu bölümler A sinyalinin yükselen kenarlarını,
  • Mor dikey çizginin olduğu bölümler B sinyalinin düşen kenarlarını,
  • Yeşil dikey çizginin olduğu bölümler A sinyalinin düşen kenarlarını göstermektedir.

Okumaya devam et

C18 Diliyle Robot Programlama – Buton Yapma

Genel olarak output mantığı burada da geçerli. Bu sefer bazı portları giriş için (TRIS = 1) bazı portları ise çıkış için (TRIS = 0) ayarlayacağız. Amaç butonlara bağlı pinlerden sinyal (5 volt) geldiğinde ledlere bağlı pinlere sinyal (5 volt) vermek.

Benim kullandığım kart üzerinde butonlar 35,34 ve 33. pinlere bağlanmış durumda. Datasheet’e bakarsak bu pinlerin RB2, RB1 ve RB0 pinleri olduğu görülebilir.

Okumaya devam et

C18 Diliyle Robot Programlama – Led Yakma

Led yakmak için öncelikle ledlerin bağlı bulunduğu mikrodenetleyici bacakları belirlenir.  Benim kullandığım deneme kartında lede giden uçlar PIC18F4585’in 38,37 ve 36. uçları olarak görünüyor. Datasheet’ten PIC18F4585’in pin diyagramlarına bakarsak bu uçların B portunun 3,4 ve 5. çıkışları olduğunu görebiliriz.

Okumaya devam et