PIC Basic Bilenlere Soru ?

Katılım
26 Ağu 2008
Mesajlar
124
Puanları
1
Yaş
40
for i=0 to 10
pauseus 5000
next

yukarıdaki döngü ile;

for i=0 to 100
pauseus 500
next

döngülerinin bekleme süresi olarak farkı oldukça fazla.alttaki döngüde program çok kısa sürede döngüyü tamamlarken üstteki daha uzun zamanda tamamlıyor.yani altaki bekleme cok az yapıyor.matematiksel olarak arada fark yok gibi;

yani 1. de 10 kere 5000us yap ve atla diyoruz
2.de 100 kere 500us yap ve atla diyoruz

peki bekleme süreleri neden farklı çıkıyor?
 
Moderatör tarafında düzenlendi:
fark olmaması lazım. ikiside aynı gecikmeyi yapması lazım. Aklıma bişi geldi ama ondada fark etmemesi lazım. aklıma gelen osilatör seçimin. rc osilatörmü yoksa xt mi?
 
kesinlikle osilatörden çünkü o saniyeler 4 mhz osilatör içindir 20 mhz osilatör seçerseniz işlem daha hızlanacaktır
 
Her ikisi içinde kullandığın derleyicinin ürettiği asm leri izlersen fark anlaşılabilir belki.

pauseus 50000 yazsa idin bekleyip devam ederdi.
0 dan 10 a dedin hem bekledi hem satırları icra etti.
0 dan 100 e dedin ...:rolleyes:

Pause 50000 yerine neden kısa süreli ama çok döngülü yapılır , cevap basit pbp pause süresince kesmelere bile bakmaz.
Önce proton sonra da C öğreneyim derler , genelde bunlarla karşılaşanlar.
 
Son düzenleme:
pauseus 5000 komutu kulandığın için olabilirmi birde pause 5 diye kulansan diyorum bir fark olabilir diyee düşünüyorum işlemci 5000 defayımı daha rahat sayar yoksa 5 mi
hem 5000 olunca işlemci frekansıda öne çıkıyor
 

Forum istatistikleri

Konular
129,726
Mesajlar
929,290
Kullanıcılar
452,445
Son üye
mutluneset

Yeni konular

Geri
Üst