Az RB0/INT lába a PIC16F877-esnek a 33. A többi külső interruptjához képest, ez a legintelligensebb. Szoftverből bármikor állítható, hogy le vagy felfutó élre essen be a megszakítás. Ez hasznos olyan alkalmazásoknál, ahol a jel 1-es szintjének idejét kell mérni nagyon pontosan. (Pl. DCF)
Mi is a le és felfutó él?
A jelet először is ábrázolnunk kell. A következő ábrából egyből meg fogod érteni mi az, nem is kell nagyon magyarázni. A magas szint az a logikai egyes, ez teszt áramkörünkben kb. 5V-ot jelent.
Pontosan látszik szerintem mostmár mi az, amire gondolok...
RB0/INT beállításhoz regiszterek
Már tudjuk, hogy RB0/INT esetén két regiszterre lesz szükségünk, az OPTION_REG-re és az INTCON-ra. Ne felejtsük el, hogy míg az INTCON regiszter minden BANK-ben elérhető, addig az OPTION_REG csak a BANK1 és BANK3-ban!
Bekereteztem ami kell nekünk. Mivel a TRIS is meg az OPTION_REG is a BANK1-ben található, így még mikor átléptünk a TRIS állításhoz másik BANK-be, még ott kell elintézni egy füst alatt a beállítást.
Ahhoz, hogy ki tudjuk próbálni, az egyik gombicot kössük át a 16F877-esnek az RB0-ás lábára:
Következzen a példa programok sora...
A cikk még nem ért véget, lapozz!
Értékeléshez bejelentkezés szükséges!