|
Nyomógomb kezelés
A következő programban a PORTB 0-ik bitjét nyomógombként fogjuk használni. A nyomógomb megnyomása után a PORTB 1. bitje 1-be fog váltani, majd ha még egyszer megnyomjuk visszaáll 0-ba.
Íme a program:

Az első két sorról szerintem már nem kell beszélnem, szóval egyből ugorjunk a beállításokra.
1. Beállítások

A BANK váltás után a BSF TRISB,0 sorral a PORTB 0-ik bitjét bemenetnek állítjuk be, majd ezután a PORTB 1. bitjét, pedig kimenetnek.
2. Főprogramrész

A főprogramrész első felében a BTFSS utasítással figyeljük a PORTB 0-ik bitjét. A BTFSS utasítás úgy működik, hogy logikai 1-esre átugorja a következő sort. Tehát a mi esetünkben, a 9. és a 10. sor között fog körözni a programunk addig, míg a PORTB 0-ra 1-est nem adunk. (lenyomjuk a gombot) A gomb megnyomása után a 11. sorra fogunk ugrani.
Mivel a gomb most le van nyomva, ezért azt is figyelni kell, hogy mikor engedjük el. Ezt a BTFSC utasítással tudjuk megtenni, ami a BTFSS ellentettje, tehát a következő sort akkor ugorja át, ha a PORTB 0-ik bitje 0.
Ha ez megtörtént akkor a PORTB 1. bitje 1-esbe vált. (A LED világít)

Ezek után a főprogramrész második felében újra figyeljük a PORTB 0-át, és ugyanaz a történet fog lejátszódni, mint az első felében. Ha lenyomtuk és fel is engedtük a nyomógombot a PORTB 1. bitje a BCF PORTB,1 sor miatt 0-ba fog váltani. (A LED nem világít)
Szimulálás:
A program betöltése után a Tools menübe kattintsunk a Microcontroller view-re, ezután a mikrokontroller nézet ablak fog megjelenni. Indítsuk el a programot, váltsunk át a mikrokontroller nézetre. A PORTB 0-nál látni fogunk egy T betűt az lesz a nyomógombunk. Ha lenyomtuk és utána fel is engedtük a PORTB 1. bitje 1-be fog váltani. Ha ezt megismételjük akkor pedig visszaáll 0-ba.
Ha nagyon kedvet kaptunk a programozáshoz, akkor ki lehet próbálni azt, hogy a gomb megnyomása után a LED villogjon.
Jó szórakozást kívánok!
|