Fórum témák

» Több friss téma
Cikkek » Nulláról a robotokig - PIC Mikrovezérlők III rész
Nulláról a robotokig - PIC Mikrovezérlők III rész
Szerző: Topi, idő: Júl 13, 2007, Olvasva: 51292, Oldal olvasási idő: kb. 1 perc
Lapozás: OK   7 / 19

PORTB4:7 megszakítás egyfajta változást detektál. Nem fel vagy lefutó élre esik be a megszakítás, hanem egyszerűen, ha megváltozott az állapot a lábon.

Mint a neve is mutatja, a 16F877-esnek a PORTB 4-7-ig lévő lába képes ilyen megszakításra. Van egy fontos dolog a működését tekintve, ez pedig, hogy itt a megszakítást egy latch generálja, és mindaddig jelez megszakítást, míg a bemenet állapota vissza nem áll. Hogy mi az a vissza?

RB7:4 kezdő állapot

A kezdő állapotnak azt a logikai szintet veszi fel, ahol bekapcsolás, pontosabban az interrupt engedélyezésekor volt. Nem relatíve változást figyel. Ezt a tulajdonságát nagyon egyszerűen tapasztalhatjuk úgy, hogy indulásnál lenyomjuk valamelyik ilyen megszakításra kötött gombot. Ha lenyomott gombbal kapcsoljuk be a PIC-et, akkor nem történik semmi különös, ám mikor elengedjük a gombot, akkor az új állapot már más lesz mint az indulás, tehát bejelez.

RB7:4 használat

A következő bitre lesz szükségünk az INTCON regiszterből:
RBIE: RB Port Change Interrupt Enable bit
1 = Minden PORTB7:4-en esett változásnál megszakítás engedélyezve
0 = Letiltva

Semmi olyan nem kell, mint az előbb az RB0/INT esetén, mivel itt megvan a változás relatív kiindulási pontja.

Most megint láthatjuk, hogy milyen jó, ha nagy processzoron tanulgatunk. Hogy probléma mentesen tudd használni akár a JDM programozókat is áramkörben programozáshoz, szabadon lehet hagyni az RB6 és 7-es lábakat. Így az eddigi két kis gombicot csak át kell drótozni az RB4 és RB5-ös lábakra.

Nézzük a programokat...


A cikk még nem ért véget, lapozz!
Következő: »»   7 / 19
Értékeléshez bejelentkezés szükséges!
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem