Sí, hay un controlador estándar. Esta página aquí muestra los pasos básicos para usar gpio.
En Python usando Adafruit Libray,
import Adafruit_BBIO.GPIO as GPIO
Pin = "P8_8"
GPIO.setup(Pin, GPIO.IN) # set GPIO25 as input (button)
def my_callback(channel):
if GPIO.input(Pin):
print "Rising edge detected on 25"
else: # if port 25 != 1
print "Falling edge detected on 25"
GPIO.add_event_detect(Pin, GPIO.BOTH, my_callback, 1)
Aquí hay un enlace de referencia.