21. Lektion: Pin's: Difference between revisions

From Attraktor Wiki
Jump to navigation Jump to search
Line 32: Line 32:


=== Methoden von Pin===
=== Methoden von Pin===
; Pin.value(x)
: Diese Methode ermöglicht das Setzen und Lesen des Pins. Wird x angegeben wird der Pin darauf gesetzt. Ohne x wird der Wert des Pins ausgelesen.


= Pins als Ausgang=
= Pins als Ausgang=

Revision as of 19:18, 15 August 2023

Was bietet uns die Klasse Pin?

Im M5Microphyton:

>>> import machine
>>> dir(machine.Pin)
['__class__', '__name__', 'value', '__bases__', '__dict__', 'IN', 'IRQ_FALLING', 'IRQ_RISING', 'OPEN_DRAIN', 
'OUT', 'PULL_DOWN', 'PULL_HOLD', 'PULL_UP', 'WAKE_HIGH', 'WAKE_LOW', 'init', 'irq', 'off', 'on']

Im Raspi Microphyton:

>>> import machine
>>> dir(machine.Pin)
['__class__', '__name__', 'value', '__bases__', '__dict__', 'ALT', 'ALT_GPCK', 'ALT_I2C', 'ALT_PIO0', 'ALT_PIO1', 
'ALT_PWM', 'ALT_SIO', 'ALT_SPI', 'ALT_UART', 'ALT_USB', 'IN', 'IRQ_FALLING', 'IRQ_RISING', 'OPEN_DRAIN', 
'OUT', 'PULL_DOWN', 'PULL_UP', 'board', 'cpu', 'high', 'init', 'irq', 'low', 'off', 'on', 'toggle']

Pins initialisieren.

So sieht eine umfangreiche Initialisierung aus:

machine.Pin(id, mode=- 1, pull=- 1, *, value=None, drive=0, alt=- 1)

Üblicherweise reicht diese Kurzform:

from machine import Pin
p0 = Pin(0, Pin.OUT)
p2 = Pin(2, Pin.IN, Pin.PULL_UP)

Bedeutung der Parameter:

id
Nummer des Pin (GPIOxx)
mode
Pin.IN, Pin.OUT, Pin.OPEN_DRAIN
pull
None, Pin.PULL_UP, Pin.PULL_DOWN


Methoden von Pin

Pin.value(x)
Diese Methode ermöglicht das Setzen und Lesen des Pins. Wird x angegeben wird der Pin darauf gesetzt. Ohne x wird der Wert des Pins ausgelesen.

Pins als Ausgang

LED ansteuern.

Pins als Eingang

Taster abfragen.

https://docs.m5stack.com/en/mpy/official/machine