PIC-es ora

Horvath Zsolt hozso_001 at freemail.hu
Sat Mar 10 16:07:24 CET 2007


Fuzesi Arnold írta:
> Ja, PR2-be (gondolom ez a periodus regiszter) gondolom azert kell 1-el 
> kevesebbet irni, mert a prescaler mikor tulfut, akkor
> kell leptetni a szamlalot, vagy a PIC akkor lepteti. (fene tudja igy fejbol, 
> csak okoskodok)
>
> Azaz ha pl. 0...10-ig akarsz szamolni, akkor 9-et kell beirni, mivel
> 9.999-nel fog a timer tenylegesen tulcsordulni...ahol .999 a prescaler 
> erteke.
>   

Egyrészt mert az elo"osztó a PIC16-os sorozatnál a timer-be íráskor 
törlo"dik, továbbá
beírás után 1 órajelet kihagy, mert nem fér hozzá a timerhez. Lásd 
hg12345 kolléga levelét, aki
igazán szívembo"l szólt a nem kell külso" RTC témával. ;-)
Megjegyzés: az Atmel prociknál timerbe íráskor nem törlo"dik az 
elo"osztó, csak ha Te törlöd.
?-)
>>> Tapasztalatom szerint a harmadik megoldas adja a legpontosabb jelet.
>>>
>>> Az elso megoldas igazan pontatlan, mivel az interruptban mit kiderult
>>> van egy kis jitter. Amit nem ertek, az az, hogy ha van jitter attol a
>>> TMR meg pontosan szamol. Vagy nem? Hosszu tavon a jitter ellenere lehet
>>> pontos az 1s, de rovid tavon lehet elteres. De ez engem nem zavar.
Lásd elo"zo"ek: az elo"osztó törlo"dik. A pontatlanság "negatív", tehát 
mindig késik az óra,
igaz? ;-)
>>>  A
>>> vicc az, hogy ennek ellenere ugy tunik ez a megoldas nem ad pontos
>>> jelet. Miert nem? Mi okohatja az elterest? A jitter abbol adodik, hogy
>>> az interrupt meghivasakor lehet, hogy epp 2 ciklusu utasitas hajtodott
>>> vegre. De ez alatt a TMR ugyan ugy szamol tovabb? Tehat en az
>>> interruptbol azt lathatnam ,hogy nem TMR=0x02-re ertem a TMR interrupt
>>> reszehez hanem TRM=0x03-ra. De ez mind1, hiszen ugyis hozzadok X-et a
>>> TMR-hez. Tehat elvileg hiba nem kepzodik. Jol latom?
>>>       
Ha hozzáadsz X-et, akkor lehet pontos, ha nem használsz elo"osztót. Ha 
nem X-et adsz hozzá,
hanem egy elo"re kiszámolt értéket, akkor bizony - pontosan a jitter 
miatt - ido"vel szinén késni fog.
>>> A masodik megoldas ugy tunik pontos, legalabbis 4-5 nap alatt fel perc a
>>> tevedes. A vicc az, hogy kiszamoltam a PR2 erteket. Miert kell annal
>>> 1-el kevesebbet oda beirni?
>>>       
Elo"bb írtam: 1 órajelig a beírás után nem számol a timer.


Egyébként szerintem hajrá! Ebbo"l tanulhatsz meg igazán jól programozni 
illetve etto"l
kapsz igazán jó rálátást az adott proci lelkivilágára. ( És ezeket a 
tapasztalatokat késo"bb
is hasznosíthatod. )



More information about the Elektro mailing list