Verhalten von Pin.value(): Difference between revisions

From Attraktor Wiki
Jump to navigation Jump to search
Line 1: Line 1:
== Verhalten von Pin.value() ==
== Verhalten von Pin.value() ==
Das Verhalten eines Lesezugriffs auf einen als Ausgang initialisierten Pin ist gemäß docs.micropython.org undefiniert. Da das eine sehr unbefriedigende Situation ist habe ich das Verhalten getestet.  
Das Verhalten eines Lesezugriffs auf einen als Ausgang initialisierten Pin ist gemäß docs.microphyton.org undefiniert. Da das eine sehr unbefriedigende Situation ist habe ich das Verhalten getestet.  


=== Raspberry Pi Pico W===
=== Raspberry Pi Pico W===
Line 42: Line 42:


Und auch hier.
Und auch hier.
== Ergebnis==
'''Pin.value() liefert auch bei Pins die als Ausgang initialisiert wurden den aktuellen Zustand des Pins zurück.'''

Revision as of 18:19, 16 August 2023

Verhalten von Pin.value()

Das Verhalten eines Lesezugriffs auf einen als Ausgang initialisierten Pin ist gemäß docs.microphyton.org undefiniert. Da das eine sehr unbefriedigende Situation ist habe ich das Verhalten getestet.

Raspberry Pi Pico W

>>> test_pin = Pin(22, Pin.OUT)
>>> test_pin.value(1)
>>> test_pin.value()
1
>>> test_pin.value(0)
>>> test_pin.value()
0
>>> 

Bein Raspberry Pi Pico funktioniert es so wie man es von C und Assembler her kennt.

ESP32

from machine import Pin
test_pin = Pin(26, Pin.OUT)
test_pin.value(1)
test_pin.value()
1
test_pin.value(0)
test_pin.value()
0

Hier funktioniert es auch.

M5Sick C Plus

from machine import Pin
test_pin = Pin(26, Pin.OUT)
test_pin.value(1)
test_pin.value()
1
test_pin.value(0)
test_pin.value()
0

Und auch hier.

Ergebnis

Pin.value() liefert auch bei Pins die als Ausgang initialisiert wurden den aktuellen Zustand des Pins zurück.