Hochleistungs-LEDs werden häufig in Beleuchtungsprojekten eingesetzt, von Taschenlampen über Leuchtstreifen bis hin zu Signalleuchten. Üblicherweise wird ein einzelner Transistor zum Schalten oder Dimmen von Hochleistungs-LEDs verwendet. DriveCell, ein winziges H-Brückenmodul, das im kleinsten Modul untergebracht ist, bietet jedoch eine Alternative und kann bis zu 1,8 A Dauerstrom verarbeiten.
In diesem Handbuch untersuchen wir, wie DriveCell zur Steuerung von Hochleistungs-LEDs oder einfarbigen LED-Streifen verwendet werden kann, besprechen Verdrahtungskonfigurationen und demonstrieren mithilfe der Bibliothek einen Fading-Effekt.
DriveCell basiert auf der H-Brücke DRV8837 mit vier H-förmigen Transistoren für bidirektionalen Stromfluss. Sie benötigen nur einen Transistor, um die Helligkeit von Hochleistungs-LEDs zu dimmen. Wenn Sie jedoch eine kompakte Lösung suchen, kann DriveCell bis zu 1,8 A Dauerstrom verarbeiten und lässt sich problemlos in Mikrocontroller integrieren.
Bevor Sie Ihre LED anschließen, müssen Sie sich unbedingt über die elektrischen Einschränkungen von DriveCell im Klaren sein:
Hinweis: Im Beleuchtungsbereich eignet sich DriveCell ausschließlich zur Steuerung der Helligkeit einfarbiger LED-Streifen oder einzelner Hochleistungs-LEDs.
So verdrahten Sie eine einzelne LED oder einen LED-Streifen mit DriveCell:
DriveCell bietet eine Softwarebibliothek zur dynamischen Anpassung der LED-Helligkeit. Unten sehen Sie ein Beispiel für einen Fading-Effekt.
Das folgende Beispiel zeigt, wie Sie eine LED mit DriveCell ein- und ausblenden:
#include <DriveCell.h>
#define IN1_pin1 2
#define IN1_pin2 3
DriveCell LED(IN1_pin1, IN1_pin2); /* Pin2 will output the PWM signal, and Pin3 will be connected to 0V */
uint16_t led_brightness = 0;
bool led_brightness_flag = 1;
void setup() {
LED.Init(); /* Initialize the LED */
}
void loop() {
delay(10); /* Passen Sie diese Verzögerung an, um die Überblendgeschwindigkeit zu ändern */
wenn (led_brightness_flag == 1) {
if (led_brightness < 100U) {
led_helligkeit++;
} anders {
led_brightness_flag = 0;
}
} anders {
wenn (LED-Helligkeit > 1U) {
LED-Helligkeit--;
} anders {
led_brightness_flag = 1;
}
}
LED.Drive(0, led_brightness); /* Gib die neue Helligkeitsstufe aus */
}
Init()
→ Initialisiert DriveCell und richtet die Eingangspins einDrive(direction, brightness)
→ Steuert die LED-Helligkeit:
direction
→ 0
(feste Polarität für LEDs)brightness
→ Dimmstufe (0 bis 100%)Dieser Code erhöht und verringert die Helligkeit der LED allmählich und erzeugt so einen sanften Ausblendeffekt.
⚠ Hinweis: Die Drive()-Funktion ist nur mit ESP32 und CodeCell kompatibel, da sie einen Hochgeschwindigkeits-PWM-Timer verwendet.
Unten sehen Sie ein weiteres Beispiel, das mit anderen Mikrocontrollern wie dem Arduino Uno verwendet werden kann :
#include <DriveCell.h>
#define IN1_pin1 2
#define IN1_pin2 3
DriveCell myLED(IN1_pin1, IN1_pin2);
void setup() {
myLED.Init();
}
void loop() {
myLED.Run(1000); // Blink LED on and off every 1 second
}
Dieses Beispiel einfach schaltet die LED jede Sekunde ein und aus.
Das winzige DriveCell-Modul macht die Steuerung von Hochleistungs-LEDs einfach und benutzerfreundlich! Weitere Codebeispiele und technische Dokumentation finden Sie im DriveCell GitHub Repository !
Erfahren Sie als Erster von neuen Projekten und sichern Sie sich spannende Angebote!
© 2025 Microbots.