M5Dial BTN: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Peter (Diskussion | Beiträge) |
Peter (Diskussion | Beiträge) |
||
Zeile 14: | Zeile 14: | ||
<pre> | |||
M5.update() | |||
x = BtnA.isHolding() | |||
x = BtnA.isPressed() | |||
x = BtnA.isReleased() | |||
x = BtnA.wasClicked() | |||
x = BtnA.wasDoubleClicked() | |||
x = BtnA.wasHold() | |||
x = BtnA.wasPressed() | |||
x = BtnA.wasReleased() | |||
x = BtnA.wasSingleClicked() | |||
</pre> | |||
== Btn als Interrupt== | == Btn als Interrupt== |
Version vom 1. Mai 2024, 00:14 Uhr
Beschreibung
Der M5Dial besitzt einen Taster (Btn). Dieser befindet sich unter dem orangenen Ring unten, unter der M5 Gravur.
Dieser Button kann gepollt werden oder einen Interrupt auslösen.
Es können 9 verschiedene Betätigungen unterschieden werden.
Einrichtung
Er muss nicht initialisiert werden.
Wenn er einen Interrupt auslösen soll, so muss ihm aber eine ISR zugewiesen werden.
Btn abfragen (polling)
M5.update() x = BtnA.isHolding() x = BtnA.isPressed() x = BtnA.isReleased() x = BtnA.wasClicked() x = BtnA.wasDoubleClicked() x = BtnA.wasHold() x = BtnA.wasPressed() x = BtnA.wasReleased() x = BtnA.wasSingleClicked()
Btn als Interrupt
Es gibt folgende Interrupt Trigger (BtnA.CB_TYPE.):
- WAS_CLICKED
- WAS_DOUBLECLICKED
- WAS_HOLD
- WAS_PRESSED
- WAS_RELEASED
def btnA_wasClicked_event(state): global x pass
M5.begin() BtnA.setCallback(type=BtnA.CB_TYPE.WAS_CLICKED, cb=btnA_wasClicked_event)