Picproje Elektronik Sitesi

DERLEYİCİLER => CCS C => Konuyu başlatan: makine_terbiyecisi - 10 Nisan 2018, 15:27:39

Başlık: delay_cycle() fonksiyonu
Gönderen: makine_terbiyecisi - 10 Nisan 2018, 15:27:39
Merhaba arkadaşlar,

delay_cycle(x);

x = 0-255 aralığında olacak. (Bunu pic header dosyasından bakmıştım. unsigned int8 olarak tanımlanmış)

Sorum ise şu:
Bu x değeri neye göre belirleriz. Diyelim ki 50us beklesin istiyorum.
Bunun için nasıl bir hesaplama yapmam gerekiyor?
Başlık: Ynt: delay_cycle() fonksiyonu
Gönderen: Z80 - 10 Nisan 2018, 15:46:42
İşlemcinin istenen cycle zamanı beklemesini sağlar.

Bir cycle, çalışma frekansının dörde bölümü kadardır (TOSC/4).

Yani 8 MHz / 4 = 2 Mhz işlemcinin çalışma frekansı.

Bir cycle 1/2.000.000 = 500 nanosaniye.

50 us için 50/0.500 = 100 çıkar. 
Başlık: Ynt: delay_cycle() fonksiyonu
Gönderen: makine_terbiyecisi - 10 Nisan 2018, 16:01:00

Teşekkür ederim.  :)