PIC-es ora
Huszti Andras
kyrk at villamvadasz.hu
Sat Mar 10 13:27:31 CET 2007
Hali!
Mar egy ideje ezen a probleman torom a fejem. Tehat adva van egy PIC uC.
Timer olyan van benne ami epp kellhet, tehat konret tipushoz nincs kotve
a dolog. Kalendariumos orat szeretnek megvalositani benne.
A problema a kovetkezo: 1s -es idoalapot kell eloallitani meglehetosen
pontosan. Milyen megoldasok vannak ra amik csak a PIC eroforrasait
igenylik. GPS,RTC nem jatszik. Esetleg kulso kvarz lehet. A problema nem
is az 1s elollaitasa hanem az, hogy miert nem sikerult pontosan.
Amit en kigondoltam az az alabbi nehany megoldas:
- Valamelyik TMR szamolgat, es ha interrupt van akkor
feltoltom(hozzaadok) a TMR-t egy adott ertekkel. Plusz vannak elo meg
utoosztasok is adott esetben.
- Valamelyik TMR szamolgat es a PR2 regiszterbe be van toltve egy ertek.
- Valamelyik TMR szamolgat egy kulso osszci jelet. Ez epphogy meg
belefer a dologba mivel csak egy plusz kristalyt jelent.
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. 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?
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?
More information about the Elektro
mailing list