Am einfachsten fragst du dauernd nen beliebigen Pin ab.
Code:
interrupt, LCD, Ein/ausgänge konfigurieren

timer laden

Do
 Pinzustand einlesen
 if Pinzustand voher = Pinzustand jetzt
   // nixtun
 else
  Zähler = Zähler +1
  Pinzustand voher = Pinzustand jetzt   // da der Jetzt-Zustand im nächsten Durchlauf der alte ist
 end if
loop

interruptroutine:
 UmdrehungenproZeiteinheit = (Zähler/2) / Zeit    // "/2" da voher sowohl auf- als auch absteigende Flanken gezählt wurden
 // weiterrechnen
 Ausgabe am LCD
 Zähler = 0   // zurücksetzen, damit gleich neu mit zählen angefangen werden kann
 Timer neu laden
end interruptroutine
so schematisch mal angedeutet

EDIT: ops, hab vergessen zu sagen, was das fürn interrupt ist: ein vom MC ausgehender Interrupt, der von nem Timerüberlauf ausgelöst wird.
hab den Code noch n klein wenig angepasst!