gpio_inpput_manager.py 610 B

1234567891011121314151617181920212223242526272829
  1. import RPi.GPIO as GPIO
  2. import logging
  3. import pygame
  4. logger = logging.getLogger(__name__)
  5. class GPIOManager():
  6. def __init__(self):
  7. GPIO.setmode(GPIO.BCM)
  8. GPIO.setup(24, GPIO.IN, pull_up_down = GPIO.PUD_UP)
  9. GPIO.add_event_detect(24, GPIO.BOTH, callback=self.rigth, bouncetime=30)
  10. def right(self, channel):
  11. dict = {}
  12. if GPIO.input(channel) == 1:
  13. dict['type'] = pygame.KEYUP
  14. else:
  15. dict['type'] = pygame.KEYDOWN
  16. dict['key'] = pygame.K_RIGHT
  17. event = pygame.event.Event(dict)
  18. pygame.event.post(event)