Vypocet preruseni

Andrej Jancura aj.hwlist na gmail.com
Pátek Leden 25 14:40:47 CET 2013


Dobry den,

este sa mozete skusit pohrat s frekvenciou krystalu. Vyrabaju sa take
trochu nestandartne hodnoty ako 11,059MHz ci 18,432MHz a podobne.
Mozno sa to bude dat na to napasovat lepsie, ako krystalmi s
celociselnou hodnotou. Timer0 sa da pouzit hlavne ako inteligentny
citac instrukcii, ktore vykonal cpu a hodnoty nad cca 200 su uz moc
kratke, pretoze prerusenie trva minimalne 11 instrukcii, pri
kompilatore C viacej podla toho, ktore registre sa odkladaju do RAM.
Pri tom krystale treba este zohladnit delenie 4 na systemovy takt
mikrokontrolera, ale myslim si ze so 16bitovym citacom Vam deje
n-stoviek milisekund vyjdu dost dobre, pretoze aj tie celociselne
krystaly ako 8 ci 16MHz su pekne cisla a da sa s nimi s preddelickou
napocitat presne 1us. Ja to pocitam takto

T = 1/XTAL/4  doba jednej instrukcie
Timer = perioda prerusenia / T

a Timer potom upravit na celociselny sucin preddelicky a konstanty, ked sa da.

A.



2013/1/25 RV <vicek.radek na cpost.cz>:
> Chci se zeptat jak resite nastaveni ruznych dob preruseni kombinaci hodnot
> timeru
>
> Potrebuji generovat preruseni tak aby 64 nebo 32 preruseni trvalo 360ms.
> Puvodne jsem mel program na PIC16F a preruseni bezelo na 8b timeru0. Ted
> jsem se rozhodl ze asi radu PIC16F nadobro opustim (drazsi, pomalejsi, mene
> vybavena) a ladim program pro PIC18F, ktery pobezi rychleji a ma timer0
> volitelne 8 nebo 16b.
>
> Zatim to vzdy resim tabulkou v Calcu nejakou takovou:
>
> Takt    Preddelic       Za delicem      Timer0H Timer0L Pocet preruseni z 1s
> Preruseni kazdych us    Pocet prumerovani       Doba odectu (us)
> 16 000 000      64      250 000 7       201     177,683 5628    64      360
> 192
> 16 000 000      128     125 000 3       235     177,305 5640    64      360
> 960
> 16 000 000      256     62 500  2       176     177,557 5632    64      360
> 448
>
> a zkousim rucne odhadnout a doladit nastaveni registru timer0 tak abych se
> co nejvic priblizil tem 360ms.
>
> Mate nekdo nejakej lepsi postup?
>
> --
> Radek Vicek
>
> Tento e-mail včetně příloh může obsahovat důvěrné informace. Jestliže nejste
> zamýšlený adresát tohoto e-mailu, pak jakákoliv forma zveřejnění, tisk,
> kopírování, distribuce nebo šíření tohoto e-mailu a připojených příloh je
> přísně zakázáno. Pokud obdržíte tento e-mail omylem, oznamte to neprodleně
> jeho odesilateli a okamžitě tento e-mail včetně jeho příloh trvale vymažte
> ze svého systému. Odesilatel e-mailu neodpovídá za jakoukoliv škodu
> způsobenou modifikacemi či zpožděním přenosu e-mailu.
>
>
>
> This e-mail and any attached files may contain confidential information. If
> you are not the intended addressee of this e-mail, you are hereby notified
> that any disclosure, printing, copying, distribution or dissemination of
> this e-mail and any attached files is strictly prohibited. If you receive
> this e-mail in error, please immediately notify the sender and permanently
> delete this e-mail and its attachments from your system. The sender of this
> e-mail does not accept liability for any damage that may be caused by any
> modifications or delay in the transmission of it.
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list