Mikrodeneleyicilerin çoğunda CCP(Compare/Capture/Pwm) modülü bulunmaktadır. Bu tarz modüller motor gibi manyetik cihazların kontrolü, sayma ve frekans hesaplama için çok kullanışlıdır…   Bu yazımda CCP ve ECCP (Enhanced CCP ) arasındaki farklardan ve mikrodeneleyicilerdeki kullanımından bahsedeceğim.

images

Her mikrodeneleyici kendi marka, aile ve sınıfına göre belli sayıda CCP modülü içerir.  16f877 gibi çok kullanılan bir mikro denetleyici iki adet CCP pini barındırıyor.  Yakın zamanlarda daha iyi motor kontrolü sağlamak amacıyla CCP modüllerinin PWM özellikleri geliştirilerek daha iyi duruma getirildi.  Bu modülün adına da ECCP(Enhanced CCP) denildi yani “Geliştirilmiş CCP”.   ECCP modülü Pic mikrodeneleyicilrin 18f ailesinde bulunuyor.

ee
Compare Şematik Diyagramı

 

CCP modülünün Compare yani karşılaştırma özelliği,  sayma işlemi için kullanılır.  Mesela 1000 tane kutu saymak istiyorsunuz. Sayılan kutu 1000’e ulaştığında bir led’in yanmasını istiyorsunuz diyelim.  Bunu C gibi programlama dilinde çok daha basit yapabilirsiniz tabi ama özellikle assembly gibi makina diline yakın programlama dillerinde bu modülleri kullanmak çok daha avantajlı oluyor. Bu modül sayma işlemi için deneleyici içerisindeki “timer” kaydedicilerini ve modüllerini kullanıyor.  Mesela pic18F serisinde “Compare” modülü timer1 ve timer3’ü kullanır.

pmcesmam_youthdoses.com.pdf - Adobe Reader
Compare Özelliği İçin Örnek

 

 

 

CCP modülünün Capure özelliği ise genelde bir sinyalin frekansını ve ya sinyalin darbe genişliğini-görev çevrim süresi(Pulse Width) hesaplamak için kullanılır.  Piyasada satılan ve dijital çıkış veren çoğu sensör PWM sinyalini kullanır.  PWM sinyali, aynı frekansta fakat farklı görev çevrim sürelerinde(duty cycle) bilgiyi gönderirler.  Bu sinyallerdeki bilgileri okumak için yine CCP modülünün Capture özelliği kullanılır.Sinyal girişini timer pinlerinden birine girersiniz ve capure modülünü kullanarak sinyalin frekansı ve ya sinyalin görev çevrimi PORT B ve ya PORTD ye aktarılır. Capture özelliği 4 farklı seçenekte sunulmuştur. Düşük frekansları ölçmek için osilaör frekansının daha azını yüksek frekansları ölçmek için osilatör frekansının daha fazlasını kullanabilirsiniz. Bunun için osilatör frekansını direk kullanabilirsiniz, 4 e bölebilirsiniz veya 16 ya bölebilirsiniz.

aa
Capture Özelliği İçin Örnek
ss
Capture Modülasyonunun Sinyalin frekansını ve görev çevrimini ölçmesi

 

 

PWM özelliğini ise çoğu kimse bilir. Genelde motorun hız konrolünde sıkça kullanılan bir yöntemdir. Açılımı Görev çevrimi modülasyonu anmalına gelir. (Pulse Widh Modulation). PWm sinyali sabit frekansa sahip fakat farklı görev çevrimi sürelerinde olan sinyaldir.  Motora uygulanan güç bu sinyal şeklinde olursa, sinyalin görev çevrimi arttıkça motor hızı da artacaktır.  CCP modülü ile ECCP modülü arasındaki en önemli fark PWM özelliklerinin farklı olmasıdır.

pwm
Farklı Görev Çevrim Sürelerinde PWM sinyalleri

 

 

 

 

Standart CCP modülünün PWM özelliği PWM çıkışı için sadece bir pin kullanır.  ECCP modülü ise tam motor kontrol köprüsü (Full-bridge) için 4 PWM çıkışı ya da  yarım motor köprüsü için (half-bridge) için 2 PWM çıkışı kullanır.

Bir sonraki yazımda bu modüller ile ilgili assembly programlarını paylaşıp açıklayacağım…