ccs kullanarak timer0 ile tam 1sn olusturmak istiyorum

Başlatan zamzam23, 18 Ağustos 2010, 13:01:41

zamzam23

nasıl yapabilirim acaba?tam 1 sn olmasa da ona cok cok yakın bişi olmalı.

serdararikan

örneğin 4ms'lik gecikme oluştur.kesme içinde 250 defa bu gecikmeyi saydır sana 1s lik gecikme olsun

radres

İçinde donanım olarak RTC (Real Time Counter - Gerçek Zamanlı Sayıcı) olan bir mikrodenetleyici modeli seçersen tam olarak 1sn elde edersin. Diğer türlü tam 1sn elde edemezsin. İçinde bu RTC olan modelleri kullandığında harici 32Khz'lik gibi kristal bağlayarak tam 1 sn elde edebliyorsun. Yok illa tam 1sn olmaz diyorsan serdararikan arkadaşın dediği gibi kesme ile bu işi rahatça çözebilirsin.

fahri-

timer interrupt ile ilgili araştırma yap. nasıl kolayca yapıldığıyla ilgili örnekler bulacaksın.

stlg

Timer kesmesini kullan ,yanlız picin kristalini 4.096 mhz kullanırsan tam 1 sn elde edebilirsin
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

tayyar

4096 mhz kullandığımızda fuse olarak xt mi yoksa hs mi seçmemiz gerekli ?

birde piyasada bulunabilirliği nedir ?
--EGEMENLİK KAYITSIZ ŞARTSIZ MİLLETİNDİR--

stlg

Ben cok kullandım xt olarak kullanabilirsin piyasada bolca var
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

ErsinErce


fahri-

4MHz ile de 1 sn elde edebilirsiniz.
prescalerı 4 yapın

4.000.000 Hz/4 =1.000.000
1.000.000/4=250.000 (pres. çıkışı)
250.000/250=1000 msn (timer a ön yükleme yaparak bölün)
1000/1000=1 sn ( her interrupt oluştuğunda bir değişkeni artırın)

picusta

CCP modulunu compare modunda kullan, CCP'nin içine %10000 yükle ve timer'i sifirlasin.