[elektro] PIC késik
potyo
potyo.ada at gmail.com
Sun Jul 25 22:03:46 CEST 2010
Lehet, hogy nem világos, hogy mire gondoltam, mert ez mindegyiknél
megvan a 10F-től a 32F-ig. Arra gondoltam, hogy ugye a prescaler ott
van a timer számlálólánca előtt, és ugyanúgy számol, mintha az is a
timer része lenne, ha nem 1:1-re van állítva a prescaler. Viszont ha
írsz a TMRx regiszterbe, de a prescaler nem 1:1 arányra van állítva,
akkor a prescalert alkotó számláló resetelődik. Ha ezt nem veszed
figyelembe és minden megszakításnál adott értéket adsz hozzá a TMRx
regiszterhez, akkor a valós túlcsordulás pillanata és az írás
pillanata közötti eltelt idő alapján a prescalert alkotó számlálólánc
vagy nulla vagy nem nulla állapotban van. Ha nulla állapotban van,
akkor nem visz hibát a számításba, ha nincs nulla állapotban, akkor
meg visz. Ezt pedig előre nem tudod, hogy milyen állapotban lesz, mert
ugye vannak utasítások, amik nem egy ciklus alatt futnak le,
nembeszélve az aszinkron megszakításokról (soros port, INTx láb,
stb.), amit az egészet szintén el tudják tolni. llyenkor vagy meg kell
várni, hogy még egyet billenjen a TMRx regiszter és az után írni
közvetlenül, vagy pedig 1:1 prescalert kell használni.
hobilobi at gmail.com <hobilobi at gmail.com> írta (2010. július 25. 21:46):
> 2010.07.20. 10:13 keltezéssel, potyo írta:
>> Nem ismerem a konkrét tipust, de kisebb piceknél ha a Timer tartalmát
>> módosítja az ember, akkor a prescaler értéke törlődik, ami hibát visz
>> a számításba.
>
> Melyik típusnál van ez?
> Én eddig nem találkoztam ilyennel.
>
> I.
>
> -----------------------------------------
> elektro[-flame|-etc]
More information about the Elektro
mailing list