feat: Add section "Pin Zustände einlesen"
- Add section about reading Pin values - Add schematic and image to explain pull-up/pull-down resistors
This commit is contained in:
parent
31715da813
commit
2d449f0b61
3 changed files with 1282 additions and 0 deletions
1207
misc/PullUpWiderstand.kicad_sch
Normal file
1207
misc/PullUpWiderstand.kicad_sch
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -593,6 +593,81 @@
|
||||||
" print(\"x ist größer als 5\")"
|
" print(\"x ist größer als 5\")"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "b679354e-d020-4654-894d-38daeaa3a0c4",
|
||||||
|
"metadata": {
|
||||||
|
"editable": false,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"## Pin Zustände einlesen\n",
|
||||||
|
"\n",
|
||||||
|
"Als nächstes wollen wir den Zustand von Pins einlesen und eine entsprechende Meldung ausgeben.\n",
|
||||||
|
"GPIO 0 ist praktischerweise mit den \"FLASH\" Knopf auf der Platine des Mikrocontrollers verbunden, sodass wir für unseren Test keine extra Schaltung aufbauen müssen.\n",
|
||||||
|
"Als erstes initialisieren wir den Pin als Input Pin."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "41b849d5-8693-4f31-9496-13a903a3e72c",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"eingabe_pin = machine.Pin(0, machine.Pin.IN, machine.Pin.PULL_UP)\n",
|
||||||
|
"eingabe_signal = machine.Signal(eingabe_pin, invert=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"attachments": {},
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "245cb3e5-46e4-4fe6-ae54-0df98b41b35f",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"Hier übergeben wir noch einen dritten Parameter an die Pin Funktion.\n",
|
||||||
|
"Dieser dient dazu, die internen Pull-Up Widerstände des Mikrocontrollers für diesen Eingang zu aktivieren.\n",
|
||||||
|
"Neben `machine.Pin.PULL_UP` gibt es auch noch `machine.Pin.PULL_DOWN`, falls man Pull-Down Widerstände nutzen möchte.\n",
|
||||||
|
"Pull-Up und Pull-Down Widerstände sind dazu da, bei geöffnetem Schalter ein eindeutiges Signal an den Mikrocontroller so senden. \n",
|
||||||
|
"\n",
|
||||||
|
"\n",
|
||||||
|
"Nun können wir mit der `value()` Methode es `eingabe_pin` Objekts den Wert des Pins auslesen bzw. mit der gleichen Methode des `eingabe_signals` den invertierten Eingang.\n",
|
||||||
|
"Wir invertieren den Pin in diesem Fall, weil der FLASH Knopf den Eingang des Mikrocontrollers mit Ground (dem Minuspol) verbindet, dadurch wird ein Aus-Signal (0) gelesen wenn der Knopf gedrückt ist.\n",
|
||||||
|
"Genau wie auch bei dem Umkehren der Zustände der LED ist dies auch bei dem einlesen von Pins durch ein `machine.Signal` möglich. \n",
|
||||||
|
"**Wichtig:** Die nächste Zeile gibt den Zustand des Pins aus zum Zeitpunkt der Ausführung, ihr müsst den Kopf also schon vor der Ausführung drücken, falls ihr den gedrückten Zustand einlesen wollt."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "bf1cd20a-a878-449b-8692-527da8ec7800",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"print(eingabe_signal.value())"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "markdown",
|
"cell_type": "markdown",
|
||||||
"id": "f46a9e10-24ff-4d7f-a31b-3a1c5d47df61",
|
"id": "f46a9e10-24ff-4d7f-a31b-3a1c5d47df61",
|
||||||
|
|
|
||||||
BIN
src/img/pull-down-resistor.png
Normal file
BIN
src/img/pull-down-resistor.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 9.2 KiB |
Loading…
Add table
Add a link
Reference in a new issue