Das Objekt Pin: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 31: | Line 31: | ||
Es bleibt aber immer die selbe ID, also auch das selbe Objekt. | Es bleibt aber immer die selbe ID, also auch das selbe Objekt. | ||
<br> | <br> | ||
Das bestätigt auch Micropython elbst: | |||
<pre> | |||
>>> Pin(11) == b_up | |||
True | |||
>>> Pin(11) == x | |||
True | |||
>>> Pin(11) is b_up | |||
True | |||
>>> Pin(11) is x | |||
True | |||
</pre> | |||
Revision as of 22:42, 18 January 2024
In Python ist alles ein Objekt und Objekte haben eine ID.
Die Instanz Pin(11) existiert, auch wenn GPIO11 noch nicht initialisiert worden ist:
>>> from machine import Pin
>>> id(Pin(11))
268904804
Sie besitzt auch schon einige default Einstellungen:
>>> print(Pin(11))
Pin(GPIO11, mode=IN, pull=PULL_DOWN)
Wenn eine Instanz von Pin erzeugt wird, so wird ihr ein Namen zugewiesen und ggf. die Einstellungen gesetzt:
>>> b_up = Pin(11, Pin.IN, Pin.PULL_DOWN)
>>> id(b_up)
268904804
>>> print(b_up)
Pin(GPIO11, mode=IN, pull=PULL_DOWN)
Eine solche Instanz kann auch mehrere Namen haben:
>>> x = b_up
>>> print(x)
Pin(GPIO11, mode=IN, pull=PULL_DOWN)
>>> id(x)
268904804
Es bleibt aber immer die selbe ID, also auch das selbe Objekt.
Das bestätigt auch Micropython elbst:
>>> Pin(11) == b_up
True
>>> Pin(11) == x
True
>>> Pin(11) is b_up
True
>>> Pin(11) is x
True