Home > Technologie > Charlieplexing der Arduino

Charlieplexing der Arduino

0
Advertisement

Charlieplexing der Arduino

Dieses Instructable zeigt, wie man Charlieplexing implementiert, eine Technik, mit der Sie viele weitere LEDs steuern können, als Sie Pins haben. Dies zeigt, wie Sie 6 LEDs konfigurieren und nur 3 Pins verwenden. Sie können dies auf viele weitere LEDs erweitern. Die genaue Anzahl der LEDs, die Sie mit einer bestimmten Anzahl von Pins kontrollieren können, ergibt sich aus n ^ 2 - n, wobei n die Anzahl der verwendeten Pins ist (dh 3 ^ 2 - 3 = 9 - 3 = 6 LEDs mit nur n = 3 Stifte).

Schritt 1: Charlieplexing des Arduino

Charlieplexing der Arduino

Charlieplexing nutzt nicht nur die beiden Zustände, die wir normalerweise ändern, HIGH und LOW, sondern auch einen dritten Zustand, indem wir zwischen den OUTPUT- und INPUT-Modi wechseln, was die internen Widerstände auf dem Arduino betrifft.

Für Charlieplexing 6 LEDs stellen wir sechs LEDs (L1 bis L6) ein und müssen für jede LED drei Pins (ich wähle die Pins 13, 12 und 11) konfigurieren.

Für jede LED (L1, L2, ..., L6) müssen wir den PinMode (INPUT oder OUTPUT) und den Pin-Zustand (HIGH oder LOW)

H: pinMode = AUSGANG; Zustand HOCH
L: pinMode = OUTPUT; Zustand LOW
Z: pinMode = INPUT; Zustand LOW

Um beispielsweise die LED L2 zu konfigurieren, setzen Sie Pin 13 auf H, Pin 12 auf L und Pin 11 auf Z:

Pin13
PinMode (LED_1, AUSGANG); // pinMode
DigitalWrite (LED_1, HIGH); // Bundesland

Pin12
PinMode (LED_2, AUSGANG); // pinMode
DigitalWrite (LED_2, LOW); //Bundesland

Pin11
PinMode (LED_3, INPUT); // pinMode
DigitalWrite (LED_3, LOW); // Bundesland

Schritt 2: Hardware konfigurieren

Charlieplexing der Arduino

Verbinden Sie zwei LEDs mit jedem Pin; Dass die Kathode (+) und Anode (-) auf den korrekten Pins liegen. Die Kathode (+) hat den längeren Schenkel und ist im Schema als Bein mit der Biegung dargestellt.

Schritt 3: Konfigurieren Sie die Software

Charlieplexing der Arduino

Laden Sie Charlieplexing Sketch hoch

https://github.com/maltesemanTS1/Charlieplexing-the-Arduino.git

Related Reading