我们从Python开源项目中,提取了以下3个代码示例,用于说明如何使用RPi.GPIO.PUD_OFF。
def __init__(self, config): global DIRECTIONS, PULLUPS import RPi.GPIO as gpio self.io = gpio DIRECTIONS = { PinDirection.INPUT: gpio.IN, PinDirection.OUTPUT: gpio.OUT } PULLUPS = { PinPullup.OFF: gpio.PUD_OFF, PinPullup.UP: gpio.PUD_UP, PinPullup.DOWN: gpio.PUD_DOWN } gpio.setmode(gpio.BCM)
def __init__(self, resolution=(104, 212), cs_pin=CS0_PIN, dc_pin=DC_PIN, reset_pin=RESET_PIN, busy_pin=BUSY_PIN, h_flip=False, v_flip=False): self.resolution = resolution self.width, self.height = resolution self.buffer = numpy.zeros((self.height, self.width), dtype=numpy.uint8) self.dc_pin = dc_pin self.reset_pin = reset_pin self.busy_pin = busy_pin self.cs_pin = cs_pin self.h_flip = h_flip self.v_flip = v_flip self.update_x1 = 0 self.update_x2 = self.width self.update_y1 = 0 self.update_y2 = self.height self.partial_mode = False self.partial_config = [] self.border = 0b00000000 GPIO.setup(self.dc_pin, GPIO.OUT, initial=GPIO.LOW, pull_up_down=GPIO.PUD_OFF) GPIO.setup(self.reset_pin, GPIO.OUT, initial=GPIO.HIGH, pull_up_down=GPIO.PUD_OFF) GPIO.setup(self.busy_pin, GPIO.IN, pull_up_down=GPIO.PUD_OFF) GPIO.output(self.reset_pin, GPIO.LOW) time.sleep(0.1) GPIO.output(self.reset_pin, GPIO.HIGH) time.sleep(0.1) if GPIO.input(self.busy_pin) == 1: self.set_version(1) self.palette = (BLACK, WHITE, RED) elif GPIO.input(self.busy_pin) == 0: self.set_version(2) self.palette = (WHITE, BLACK, RED) else: self.set_version(2) self.palette = (WHITE, BLACK, RED) self._spi = spidev.SpiDev() self._spi.open(0, self.cs_pin) self._spi.max_speed_hz = 488000 atexit.register(self._display_exit)
def _configure_gpio(self): if not self._hasGPIO: self._logger.error("RPi.GPIO is required.") return self._logger.info("Running RPi.GPIO version %s" % GPIO.VERSION) if GPIO.VERSION < "0.6": self._logger.error("RPi.GPIO version 0.6.0 or greater required.") GPIO.setwarnings(False) for pin in self._configuredGPIOPins: self._logger.debug("Cleaning up pin %s" % pin) try: GPIO.cleanup(self._gpio_get_pin(pin)) except (RuntimeError, ValueError) as e: self._logger.error(e) self._configuredGPIOPins = [] if GPIO.getmode() is None: if self.GPIOMode == 'BOARD': GPIO.setmode(GPIO.BOARD) elif self.GPIOMode == 'BCM': GPIO.setmode(GPIO.BCM) else: return if self.sensingMethod == 'GPIO': self._logger.info("Using GPIO sensing to determine PSU on/off state.") self._logger.info("Configuring GPIO for pin %s" % self.senseGPIOPin) if self.senseGPIOPinPUD == 'PULL_UP': pudsenseGPIOPin = GPIO.PUD_UP elif self.senseGPIOPinPUD == 'PULL_DOWN': pudsenseGPIOPin = GPIO.PUD_DOWN else: pudsenseGPIOPin = GPIO.PUD_OFF try: GPIO.setup(self._gpio_get_pin(self.senseGPIOPin), GPIO.IN, pull_up_down=pudsenseGPIOPin) self._configuredGPIOPins.append(self.senseGPIOPin) except (RuntimeError, ValueError) as e: self._logger.error(e) if self.switchingMethod == 'GPIO': self._logger.info("Using GPIO for On/Off") self._logger.info("Configuring GPIO for pin %s" % self.onoffGPIOPin) try: if not self.invertonoffGPIOPin: initial_pin_output=GPIO.LOW else: initial_pin_output=GPIO.HIGH GPIO.setup(self._gpio_get_pin(self.onoffGPIOPin), GPIO.OUT, initial=initial_pin_output) self._configuredGPIOPins.append(self.onoffGPIOPin) except (RuntimeError, ValueError) as e: self._logger.error(e)