 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
rihard Neznanec

Pridružen-a: Sre 07 Jan 2004 9:36 Prispevkov: 5 Aktiv.: 0.02 Kraj: Ljubljana
|
Objavljeno: Sre Jan 07, 2004 10:57 am Naslov sporočila: TMR0 prescaler will clear |
|
|
glede PIC sem bolj zacetnik, vendar me zanima npr. pri 16F84 (tudi pri drugih druzinah) , ko vpises vrednost v TMR0 se prescaler (predelilnik) baje resetira.
Primer:(opisno)
Npr. imas prescaler v inicializaciji nastavljen na 1:256 (111), v interruptu pa zaradi tocnega casa vpisujes novo cifro v TMR0.V prirocnikih pise, da se ob vpisu v TMR0 brise prescaler count. Torej moras verjetno takoj po vpisu v TMR0 reinicializirati OPTION_REG (ponovno vpisati delilno razmerje). Po vpisu v TMR0 se za 2 cikla zaustavi inkrementiranje timerja in bi lahko tukaj vrinil 2 instrukciji za vpis v OPTION_REG. Izgledalo bi priblizno tako:
program
----
movlw 0x07 ;v ak. vrednost, ki bo vpisana v OPTION
clrf TMR0 ; postavi na nic
bsf STATUS,RP0 ; v banko 1
movwf OPTION_REG; update register
-----
Ali mi lahko kdo pove, ce razmisljam v pravi smeri.Obstaja baje nek trik,ko iz PCL vpises v OPTION reg., (dodajas NOP in s tem nastavis pravilne bite v PCL ki ga PIC nato prepise v OPTION) vendar tega trika ne najdem.
vsem lep pozdrav Rihard _________________ Rihard |
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14673 Aktiv.: 61.95 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Sre Jan 07, 2004 11:29 am Naslov sporočila: |
|
|
Če sem prav razumel; Želiš delati korekcijo TMR0 ?
Preddelilnik ostane po vpisu v TMR0 nastavljen enako kot pred vpisom.
Koda: |
movlw NOV_TMR0
movwf TMR0
|
Vrednost v njim se pa resetira. Do preddelilnika nimaš direktnega dostopa.
Nap. da, da zaTMR0 uporabiš zunanji CLOCK (nap. frekvencmeter) ter imaš vključen preddelilnik. Impulze na RA4 pustiš dovajati točno določen čas. Vrednsot TMR0 seveda lahko prebereš. Vrednost v preddelilniku pa dobiš tako da "ročno" dovajaš impulze na RA4 ter le te šteješ, ter istočano kontroliraš kdaj se bo TMR0 "obrnil"
lp
Silvo |
|
Nazaj na vrh |
|
 |
rihard Neznanec

Pridružen-a: Sre 07 Jan 2004 9:36 Prispevkov: 5 Aktiv.: 0.02 Kraj: Ljubljana
|
Objavljeno: Sre Jan 07, 2004 12:39 pm Naslov sporočila: |
|
|
Hvala Silvo, sicer sem ze vseskozi sumil, da se nastavitev preddelilnika ne resetira (resetira se samo vrednost - kar je logicno, ne pa nastavitev- kar bi bilo bedasto), vendar sem pri pogovoru z drugimi postal skepticen.
(Kao vsi trdijo, da moras reinicializirati delilno razmerje)
Tista dva zaustavljena cikla za vpisom timerja mi ne data miru. To zagotovo ima namen (verjetno prav ta, da lahko po potrebi spreminjas delilno razmerje).
V teku je neka izdelava programa, ki ga lahko preizkusim sele drug teden z ICD modulom, najpozneje takrat bom 100%. Na simulatorju vcasih stvari ne delujejo "realisticno". (pa tudi sam sem nekoliko lene sorte, da bi stvari po delih preizkusal na simulatorju za katerega nisem 100%) _________________ Rihard |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 491 dni
Powered by phpBB © 2001, 2005 phpBB Group
|