[ yurke_pzs @ 29.06.2010. 00:32 ] @
Početnik sam u programiranju kontrolera pa bih imao jednu molbu. Da li bi neko mogao da mi objasni kako se podešavaju parametri Timer/Counter-a kod recimo Atmega16. Kako ide ako koristim internit clock ili ako imam eksterni (konkretno koristim kvarc od 8MHz). Treba da podesim tajmer da mi broji minute. E sad predpostavljam da u prekidnoj rutini postavljam brojac koji ce da se uveca na svaku sekundu i tako do 60. tako dobijem jedan minut. Ali kako da dobijem jednu sekundu?

unapred se svima zahvlajujem i izvinjavam se ako slicna tema postoji vec negde na forumu, jer ja nisam mogao da je nadjem.
[ Odin D. @ 29.06.2010. 10:21 ] @
Recimo koristis preskaler da bi taj clock od 8MHz podijelio sa 512 i time dobijes clock od 15625 Hz koji ce da taktuje timer.
Onda ti je jedna sekunda vreme za koje tajmer odbroji od 0 do 15625.

Kako da odabers interni clock da pogoni tajmer i kako da podesis preskaler da podijeli taj clock sa 512 (ili nekom drugom vrednoscu ako ti odgovara) treba da procistas u datasheetu za doticni mikrokontroler. U sustini sve se radi upisom odredjenih vrednosti u odredjenje registre.

Ako su ti potrebne precizne vremenske reference na duzi period (recimo pravis neki casovnik ili kalendar ili nesto tog tipa) onda je bolje koristiti externi kvarc od 32768Hz koji upravo tome i sluzi.

Ugradjeni interni oscilatori nemaju narocitu tacnost i stabilnost.

[ yurke_pzs @ 29.06.2010. 11:18 ] @
Hvala puno...ukapirao sam kako ide. nisam znao da je taj kvarc namenjen duzem vremenskom periodu. ipak ne mogu da ga koristim jer koristim 2x16 LCD kome je (kako sam negde procitao) potreban kvarc od 8MHz. Da li je to istina?
[ Odin D. @ 29.06.2010. 16:37 ] @
ATmega16 bi trebao, pored TOSC1 i TOSC2 pinova na koji prikljucujes eksterni kvarc po kome radi chip, da ima jos dva posebna pina - TO i T1 - na koje mozes da prikopcas eksterni 32KHz kvarc i da ga koristis za tajmer neovisno o "glavnom" kvarcu.

LCD nema veze sa mikrokontrolerom. On samo od mikrokontrolera dobije informacije sta i kako treba da prikaze na ekranu i to je sva njegova veza sa mikrokontrolerom. Drugim rjecima, nema on pojma na kolikom taktu radi mikrokontroler, niti mu takva informacija treba.
[ lestrigonac @ 30.06.2010. 17:08 ] @
Ako se ja ne varam, eksterni kvarc po kome radi chip se povezuje na XTAL1 i XTAL2 pinove, a pinovi TOSC1 i TOSC2 sluze za povezivanje eksternog 32KHz kvarca i tamo se neki bitovi AS2 i ASSR (valjda) podese i onda tajmer2 radi po tom clocku a ne sistemskom..
A T1 i T0 su source-ovi za tajmer 1 i 0 redom...(verovatno i ovde treba podesiti neke bitove)

Nisam sto posto siguran za ovo sto pricam, ali mislim da je tako, ispravite me ako gresim... Mislim da je najbolje da se udubis u deo datasheet-a gde pise o tome...

LCD radi odvojeno, kao sto je Odin D. rekao...

Pozdrav...
[ yurke_pzs @ 30.06.2010. 17:40 ] @
Znam, moja greska. Koristim i DS18S20 senzor i za njega je bitno da mu kvarc bude najmanje 8MHz pa sam to pomesao
[ Odin D. @ 30.06.2010. 19:52 ] @
To su isti pinovi, a to XTAL i TOSC su razlicite funkcije na istom pinu:
XTAL1 = TOSC1
XTAL2 = TOSC2