From: adam_cummick:g9T51EHpC9gPQqG6sb9Q@gitlab.com Date: Thu, 21 Oct 2021 16:09:00 +0000 (-0400) Subject: Import pin class from bcm283x to avoid pylint duplicate-code X-Git-Tag: 6.16.0~3^2~1 X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/commitdiff_plain/959788289b96a66005649d7142f9299e98653316 Import pin class from bcm283x to avoid pylint duplicate-code --- diff --git a/src/adafruit_blinka/microcontroller/bcm2711/pin.py b/src/adafruit_blinka/microcontroller/bcm2711/pin.py index 48fe98a..f56d585 100644 --- a/src/adafruit_blinka/microcontroller/bcm2711/pin.py +++ b/src/adafruit_blinka/microcontroller/bcm2711/pin.py @@ -1,71 +1,10 @@ -"""Broadcom BCM283x pin names""" +"""Broadcom BCM2711 pin names""" import RPi.GPIO as GPIO +from adafruit_blinka.microcontroller.bcm283x.pin import Pin GPIO.setmode(GPIO.BCM) # Use BCM pins D4 = GPIO #4 GPIO.setwarnings(False) # shh! - -class Pin: - """Pins dont exist in CPython so...lets make our own!""" - - IN = 0 - OUT = 1 - LOW = 0 - HIGH = 1 - PULL_NONE = 0 - PULL_UP = 1 - PULL_DOWN = 2 - - id = None - _value = LOW - _mode = IN - - def __init__(self, bcm_number): - self.id = bcm_number - - def __repr__(self): - return str(self.id) - - def __eq__(self, other): - return self.id == other - - def init(self, mode=IN, pull=None): - """Initialize the Pin""" - if mode is not None: - if mode == self.IN: - self._mode = self.IN - GPIO.setup(self.id, GPIO.IN) - elif mode == self.OUT: - self._mode = self.OUT - GPIO.setup(self.id, GPIO.OUT) - else: - raise RuntimeError("Invalid mode for pin: %s" % self.id) - if pull is not None: - if self._mode != self.IN: - raise RuntimeError("Cannot set pull resistor on output") - if pull == self.PULL_UP: - GPIO.setup(self.id, GPIO.IN, pull_up_down=GPIO.PUD_UP) - elif pull == self.PULL_DOWN: - GPIO.setup(self.id, GPIO.IN, pull_up_down=GPIO.PUD_DOWN) - else: - raise RuntimeError("Invalid pull for pin: %s" % self.id) - - def value(self, val=None): - """Set or return the Pin Value""" - if val is not None: - if val == self.LOW: - self._value = val - GPIO.output(self.id, val) - elif val == self.HIGH: - self._value = val - GPIO.output(self.id, val) - else: - raise RuntimeError("Invalid value for pin") - return None - return GPIO.input(self.id) - - -# Pi 1B rev1 only? D0 = Pin(0) D1 = Pin(1)