PIC interrupt magalitja a foprogramot?

Huszti Andras kyrk at villamvadasz.hu
Sat Nov 10 18:46:49 CET 2007


Hali!

16F690-re kotottem egy DC motort (H-hid+PWM). A tengelyen van egy
inkrementalis jelado. 12V 100% kitoltes mellet szkoppal ramerve kb
200us-os negyszogjel van az egyik csatornan.

Ugy tunik, hogy bizonyos fordulatszam felett (70% kitoltes felett)
megall a forutin. Inkrementalis jelado jelet az interrupt dolgozza fel,
egy valtozot novel/csokkent minden egyes atmenetkor. Van egy timer ami
idokozonkent engedelyezi a foprogramban egy resz futasat. Nos itt
elhelyeztem egy tesztet:
Kitoltesi tenyezot minden egyes futaskor novelem. Elvileg 0rol 100%-ra
kellene nonie. De olyan 70%nal megall. Ha lelassitom a motort akkor
tovabb no. Ez szamomra egyertelmu jel, hogy az interrupt annyira lefogja
a foprogramot, hogy nem tud futni.

A nagy kerdes: Lehetseges-e, hogy teljesen lealljon? En ugy tudom, hogy
ha egymasra futnak az interruptok akkor a foprogrambol legalabb 1
utasitas lefut. Tehat a programom lehet, hogy fut csak olyan lassan,
hogy nem latom? Vagy teljesen megallt?

Vegulis a problema az, hogy rossz PIC -van a panelben. Ugyanis ez sajnos
nem tudja el triggerelt interruptot. Ha tudna... akkor egyszerubb lenne
a program es nem lenne ilyen gondom. De sajnos csak port change
interrupt van benne :(




More information about the Elektro mailing list