PIC, INTERRUPt+A/D+Billentyûzet
Simon Zoltán
z_simon at mailbox.hu
Thu Dec 7 20:11:13 CET 2000
Helló Mindenki!
Készül a programom a szintézerhez. Vannak már bevált, önállóan jól
mûködõ részprogramjai. Most éppen a megszakításokkal bajlódom. Az a
feladat, hogy 10MHz órajel mellett a legcsigábbra állítva a TIMER0-t,
és a TIMER1-et (13, és 104 ms-onként) adnak egy egy megszakítást. A
billentyûzet mér egyet - és villogtatja a PORTA.5-öt indikációnak - ha
TIMER0 ad megszakítást. Persze csak akkor ha 5 megszakítás 5 mérése
egymás utánn 1-et ad. Ez szolgálja a prellmentesítést. Az AD konverter
akkor mér, ha a TIMER1 akad ki, és az eredményt a PORTB, és C-re adja.
Na: Megszakítások nélkül mindkét programrész ragyogóan fut. Ha viszont
együtt eresztem õket a megszakításokkal, akkor a billentyû ok, az AD
konverter meg a táp és a föld közé beadott 22k poti táp felöli 10%-án
indikálja a teljes 10 bites tartományt. Mi lehet a gond? Minden
regisztert gondosan beállítottam...
Ja valaki a múlt hét végén kérte a billentyûzet kezelõ rutint, ami ugye
24 gombot kezel mátrixban. Hát itt van, ki lehet vágni. A neved
elveszett a homályban bocs. Ez a bill. kezelõ már a fejlesztett
prototipus, fele akkora, 1/3 annyi változóval, gyorsabb is, és direkt
úgy írtam hogy megszakításokkal mûködjön együtt....
Várom az ötleteket. Program PICBasic PRO-ban íródott, és csatolt file-
ént mellékelve.
Simi
--------------------------------------------------
Mi az Ön MailBox címe? - http://mailbox.hu
More information about the Elektro
mailing list