本文整理汇总了Python中machine.Pin方法的典型用法代码示例。如果您正苦于以下问题:Python machine.Pin方法的具体用法?Python machine.Pin怎么用?Python machine.Pin使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类machine
的用法示例。
在下文中一共展示了machine.Pin方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def main():
# Wemos D1 Mini NeoPixel Shield is on pin 4 (D2)
pin = machine.Pin(4, machine.Pin.OUT)
# There is just 1 Neopixel LED on Shield
n = neopixel.NeoPixel(pin, 1)
# Wemos D1 Mini DHT Shield is on pin 2 (D4)
d = dht.DHT22(machine.Pin(2))
while True:
d.measure()
h = d.humidity()
print(h)
if (h < 45):
# RGB values
n[0] = (127, 0, 0)
else:
n[0] = (0, 127, 0)
# Write value to LEDs
n.write()
time.sleep(10)
示例2: __init__
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def __init__(self,
pin_id_led = ON_BOARD_LED_PIN_NO,
on_board_led_high_is_on = ON_BOARD_LED_HIGH_IS_ON,
pin_id_reset = PIN_ID_FOR_LORA_RESET,
blink_on_start = (2, 0.5, 0.5),
oled_width = OLED_WIDTH, oled_height = OLED_HEIGHT,
scl_pin_id = PIN_ID_SCL, sda_pin_id = PIN_ID_SDA,
freq = OLED_I2C_FREQ):
controller_esp.Controller.__init__(self,
pin_id_led,
on_board_led_high_is_on,
pin_id_reset,
blink_on_start)
self.reset_pin(self.prepare_pin(self.PIN_ID_FOR_OLED_RESET))
i2c = machine.I2C(scl = machine.Pin(scl_pin_id, machine.Pin.OUT),
sda = machine.Pin(sda_pin_id),
freq = freq)
display_ssd1306_i2c.Display.__init__(self, i2c,
width = oled_width, height = oled_height)
self.show_text('Hello !')
开发者ID:Wei1234c,项目名称:SX127x_driver_for_MicroPython_on_ESP8266,代码行数:25,代码来源:controller_esp_ttgo_lora_oled.py
示例3: main
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def main():
#h = DHT11(machine.Pin(33)) # J8
h = DHT11(machine.Pin(26)) # J7
ugfx.set_default_font('IBMPlexMono_Bold24')
ugfx.clear()
ugfx.Label(40, 0, 240, 60, text='DHT11/22 Demo')
ugfx.set_default_font('IBMPlexMono_Regular24')
l = ugfx.Label(40, 60, 240, 120, text='')
while True:
h.measure()
h.temperature()
l.text('temperature:{},humidity:{}'.format(h.temperature(), h.humidity()))
time.sleep(1)
示例4: test
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def test():
"""Bouncing sprite."""
try:
# Baud rate of 14500000 seems about the max
spi = SPI(2, baudrate=14500000, sck=Pin(18), mosi=Pin(23))
display = Display(spi, dc=Pin(17), cs=Pin(5), rst=Pin(16))
display.clear()
# Load sprite
logo = BouncingSprite('images/Python41x49.raw',
41, 49, 128, 128, 1, display)
while True:
timer = ticks_us()
logo.update_pos()
logo.draw()
# Attempt to set framerate to 30 FPS
timer_dif = 33333 - ticks_diff(ticks_us(), timer)
if timer_dif > 0:
sleep_us(timer_dif)
except KeyboardInterrupt:
display.cleanup()
示例5: test
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def test():
"""Test code."""
# Baud rate of 14500000 seems about the max
spi = SPI(2, baudrate=14500000, sck=Pin(18), mosi=Pin(23))
display = Display(spi, dc=Pin(17), cs=Pin(5), rst=Pin(16))
# Build color list from all upper case constants (lazy approach)
colors = [getattr(modules[__name__], name) for name in dir(
modules[__name__]) if name.isupper() and name is not 'SPI']
colors.sort()
c = 0
for x in range(1, 126, 25):
for y in range(1, 126, 25):
display.fill_rectangle(x, y, 25, 25, colors[c])
c += 1
sleep(9)
display.cleanup()
示例6: test
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def test():
"""Test code."""
spi = SPI(2, baudrate=14500000, sck=Pin(18), mosi=Pin(23))
display = Display(spi, dc=Pin(17), cs=Pin(5), rst=Pin(16))
display.contrast(0)
display.draw_image('images/MicroPython128x128.raw',
0, 0, 128, 128)
fixed_font = XglcdFont('fonts/FixedFont5x8.c', 5, 8)
contrast_range = list(range(1, 16)) + list(reversed(range(15)))
for c in contrast_range:
display.contrast(c)
display.draw_text(30, 120, 'contrast: {0:02d}'.format(c),
fixed_font, color565(255, 255, 255))
sleep(1)
display.cleanup()
示例7: test
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def test():
"""Test code."""
spi = SPI(2, baudrate=14500000, sck=Pin(18), mosi=Pin(23))
display = Display(spi, dc=Pin(17), cs=Pin(5), rst=Pin(16))
display.draw_image('images/RaspberryPiWB128x128.raw', 0, 0, 128, 128)
sleep(5)
display.draw_image('images/MicroPython128x128.raw', 0, 0, 128, 128)
sleep(5)
display.draw_image('images/Tabby128x128.raw', 0, 0, 128, 128)
sleep(5)
display.draw_image('images/Tortie128x128.raw', 0, 0, 128, 128)
sleep(9)
display.cleanup()
示例8: pin_on
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pin_on(self, pin: Union[int, str], pull_up: bool = False, **kwargs):
"""
Set the specified PIN to HIGH.
:param pin: GPIO PIN number or configured name.
:param pull_up: Set to True if the PIN has a (weak) pull-up resistor attached.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.Pin({pin}, machine.Pin.OUT{pull_up})
pin.on()
'''.format(pin=pin, pull_up=', machine.Pin.PULL_UP' if pull_up else '')
self.execute(code, **kwargs)
示例9: pin_off
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pin_off(self, pin: Union[int, str], pull_up: bool = False, **kwargs):
"""
Set the specified PIN to LOW.
:param pin: GPIO PIN number.
:param pull_up: Set to True if the PIN has a (weak) pull-up resistor attached.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.Pin({pin}, machine.Pin.OUT{pull_up})
pin.off()
'''.format(pin=pin, pull_up=', machine.Pin.PULL_UP' if pull_up else '')
self.execute(code, **kwargs)
示例10: pin_toggle
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pin_toggle(self, pin: Union[int, str], pull_up: bool = False, **kwargs):
"""
Toggle a PIN state - to HIGH if LOW, to LOW if HIGH.
:param pin: GPIO PIN number or configured name.
:param pull_up: Set to True if the PIN has a (weak) pull-up resistor attached.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.Pin({pin}, machine.Pin.OUT{pull_up})
if pin.value():
pin.off()
else:
pin.on()
'''.format(pin=pin, pull_up=', machine.Pin.PULL_UP' if pull_up else '')
self.execute(code, **kwargs)
示例11: pin_read
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pin_read(self, pin: Union[int, str], out: bool = False, pull_up: bool = False, **kwargs) -> bool:
"""
Get the ON/OFF value of a PIN.
:param pin: GPIO PIN number or configured name.
:param out: Treat the PIN as an output PIN - e.g. if you usually write to it and now want to read the
value. If not set, then the PIN will be treated as an input PIN.
:param pull_up: Set to True if the PIN has a (weak) pull-up resistor attached.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.Pin({pin}, machine.Pin.{inout}{pull_up})
pin.value()
'''.format(pin=pin, inout='OUT' if out else 'IN', pull_up=', machine.Pin.PULL_UP' if pull_up else '')
return bool(self.execute(code, **kwargs).output)
示例12: pwm_freq
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pwm_freq(self, pin: Union[int, str], freq: Optional[int] = None, **kwargs) -> Optional[int]:
"""
Get/set the frequency of a PWM PIN.
:param pin: GPIO PIN number or configured name.
:param freq: If set, set the frequency for the PIN in Hz.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.PWM(machine.Pin({pin}))
pin.freq({freq})
'''.format(pin=pin, freq=freq if freq else '')
ret = self.execute(code, **kwargs).output
if not freq:
return int(ret)
示例13: pwm_on
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pwm_on(self, pin: Union[int, str], freq: Optional[int] = None, duty: Optional[int] = None, **kwargs):
"""
Set the specified PIN to HIGH.
:param pin: GPIO PIN number or configured name.
:param freq: PWM PIN frequency.
:param duty: PWM PIN duty cycle.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.PWM(machine.Pin({pin}))
if {freq}:
pin.freq({freq})
if {duty}:
pin.duty({duty})
pin.on()
'''.format(pin=pin, freq=freq, duty=duty)
self.execute(code, **kwargs)
示例14: pwm_off
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def pwm_off(self, pin: Union[int, str], **kwargs):
"""
Turn off a PWM PIN.
:param pin: GPIO PIN number or configured name.
:param kwargs: Parameters to pass to :meth:`platypush.plugins.esp.EspPlugin.execute`.
"""
device = self._get_device(**kwargs)
pin = device.get_pin(pin)
code = '''
import machine
pin = machine.PWM(machine.Pin({pin}))
pin.deinit()
'''.format(pin=pin)
self.execute(code, **kwargs)
示例15: tick
# 需要导入模块: import machine [as 别名]
# 或者: from machine import Pin [as 别名]
def tick(self, pin=2) :
import dht
import machine
try :
d = dht.DHT11(machine.Pin(pin))
d.measure()
tempf = 32.0 + 1.8 * d.temperature()
humidity = d.humidity()
logging.debug("Read measurements off DHT11: temp(f): %s humidity: %s" % (tempf, humidity))
self._upload(tempf, humidity)
util.clear_led_error()
except Exception as E :
logging.error("An error occurred taking measurements: %s", E)
util.set_led_error()
##
## Internal operations
##