Hilfstabelle PIN Belegung und I2C Adressen - esdkrwl/IoT4School GitHub Wiki
Diese Tabellen zeigen für diverse Wemos D1 mini- Shields die Standardbelegung der PINs sowie verwendete I2C-Adressen im Werkszustand.
Shields ohne Versionsnummer sind Wemos-kompatible Drittanbieter-Shields, die jedoch keine Möglichkeit bieten, den Input/Output-PIN umzulöten.
Am besten lässt sich dies anhand eines Beispiels erklären:
- Linkes Shield: PIN durch Verbinden zweier Kontaktflächen veränderbar (Auf D6 gelötet. Standard-PIN: D3, was sichtbar an dem kleinen weißen Punkt ist)
- Rechtes Shield: PIN nicht ohne weiteres veränderbar (Standard-PIN: D4)
Shield Kompatibilitätsliste | PIN (GPIO) | ||||||||
---|---|---|---|---|---|---|---|---|---|
D1 (GPIO5) | D2 (GPIO4) | D3 (GPIO0) | D4 (GPIO2) | D5 (GPIO14) | D6 (GPIO12) | D7 (GPIO13) | D8 (GPIO15) | ||
Shields (Versionsnummer) |
1-Button (v2.1.0) | X | |||||||
Ambient Light (v.1.0.0) | SCL | SDA | |||||||
Buzzer (v.1.0.0) | X | ||||||||
DHT HW-362 | X | ||||||||
IR Controller (v.1.0.0) | X (Send) | X (Receive) | |||||||
Matrix LED (v1.0.0) | CLK | DIN | |||||||
OLED 0.66 HW-699 | SCL | SDA | |||||||
PIR (v.1.0.0) | X | ||||||||
RGB LED (v1.0.0) | X | ||||||||
SHT30 (v.2.1.0) | SCL | SDA | |||||||
Motor HW-648 | SCL | SDA | |||||||
WS2812B RGB HW-705 | X |
Wenn mehrere Shields zusammen mit einem Mikrocontroller verwendet werden sollen, muss darauf geachtet werden, dass die Shields nicht die selben PINs verwenden.
Ausnahme sind hierbei die Shields, die SCL auf D1 sowie SDA auf D2, verwenden. Siehe hierfür die I2C Shields-Tabelle.
So darf zum Beispiel das PIR-Shield nicht gleichzeitig mit dem 1-Button-Shield verwendet werden.
Jedoch bieten in diesem Fall beide Module die Möglichkeit, den verwendeten PIN durch Löten zu verändern:
Hierfür muss die kleine Leiterbahn zum Standard-PIN mit einem scharfen Messer durchtrennt werden und eine Verbindung von der gewünschten PIN-Kontaktfläche zum mittleren Kontaktfeld hergestellt werden. (Siehe 1. Bild, linkes Shield. Die Verbindung zum Pin D3 wurde "laienhaft" durchtrennt.)
Besondere Beachtung ist noch dem Modul WS2812B RGB HW-705 zu schenken:
Dieses darf nicht mit einem Shield benutzt werden, welches sich über SCL/SDA ansteuern lässt.
Die Verwendung des PINs D4 (GPIO2) wird im Zusammenhang mit dem Projekt IoT4School nicht empfohlen, da dieser PIN von der integrierten LED des Mikrocontrollers verwendet und als Status-LED aktiv gesteuert wird.
Eine Ausnahme bildet der DHT HW-362, der so programmiert wurde, dass die Nutzung des PINs ermöglicht werden kann.
Bei Modulen, wie zum Beispiel dem RGB LED (v1.0.0), sollte daher die Standardbelegung durch Löten verändert werden.
I2C Shields | Adressen (Standard, [Alternative]) |
---|---|
SHT30 | 0x45, [0x44] |
Ambient Light | 0x23, [0x5C] |
OLED 0.66 HW-699 | 0x3C, [0x3D] |
Motor HW-648 | 0x30, [0x2D, 0x2E, 0x2F] |
Der I2C-Bus basiert auf zwei Leitungen (SCL u. SDA) und unterstützt die gleichzeitige Ansteuerung mehrerer Geräte.
Einzige Bedingung ist, dass sich die verwendeten Module nicht die selbe Adresse teilen.
Möchte man zum Beispiel zwei SHT30-Sensoren zusammenstecken, so muss vorher die Adresse eines der beiden Shields angepasst werden.
Dies wird, analog zum Verändern des PINs, auch mithilfe des Zusammenlötens zweier Kontaktflächen erreicht.
Meistens steht neben diesen Kontaktflächen "AD", "ADR" oder der Hexadezimal-Wert der Adressen, die dem Shield zugewiesen werden können: