Mikrodenetleyici ile yaptığımız uygulamalarde genelde gecikme yapabiliyoruz. Gecikme yapmak için kendimizde döngü oluşturarak yapabiliriz. C18' kendi içerinsnde adc.h kütüphanesni mevcuttur. Gecikme kütüphanesini kullanabilmek için pogram başında mutlaka include etmeliyiz.
Delay1TCY Delay one instruction cycle.
Delay10TCYx Delay in multiples of 10 instruction cycles.
Delay100TCYx Delay in multiples of 100 instruction cycles.
Delay1KTCYx Delay in multiples of 1,000 instruction cycles.
Delay10KTCYx Delay in multiples of 10,000 instruction cycles.
Örnek; Delay1KTCYx(60); // Delay of 15ms
// Cycles = (TimeDelay * Fosc) / 4
// Cycles = (15ms * 16MHz) / 4
// Cycles = 60,000
15 ms için 60,000 cycle gerekli
Örnek: Aşağıdaki gecikme rutinlerinin hepsi 15 ms 'lik gecikme gerçekleştirir.
Delay10TCYx(6000);
Delay100TCYx(600);
Delay1KTCYx(60);
Delay10KTCYx(6);
Yorumlar
Yorum Gönder