Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!
1.3 Analoges Schreiben
Überblick
Sie können die PWM-Welle mit analogWrite() auf den Pin schreiben. Diese Methode kann verwendet werden, um die Helligkeit der LED anzupassen, die Farbe von RGB zu ändern oder die Motordrehzahl usw. anzupassen. Hier nehmen wir LED als Beispiel, um die Gradientenhelligkeit der LED zu erhalten.
Erforderliche Komponenten

※ Pulsweitenmodulation
Pulsweitenmodulation oder PWM ist eine Technik, um mit digitalen Mitteln analoge Ergebnisse zu erzielen. Die digitale Steuerung wird verwendet, um eine Rechteckwelle zu erzeugen, ein Signal, das zwischen ein und aus geschaltet wird. Dieses Ein-Aus-Muster kann Spannungen zwischen vollständig ein (5 Volt) und aus (0 Volt) simulieren, indem der Anteil der Zeit, die das Signal einschaltet, gegenüber der Zeit, die das Signal ausschaltet, geändert wird. Die Dauer der „Einschaltzeit“ wird als Impulsbreite bezeichnet. Um unterschiedliche Analogwerte zu erhalten, ändern oder modulieren Sie diese Impulsbreite. Wenn Sie dieses Ein-Aus-Muster beispielsweise mit einer LED schnell genug wiederholen, ist das Ergebnis so, als ob das Signal eine konstante Spannung zwischen 0 und 5 V ist, die die Helligkeit der LED steuert.
Ein Aufruf von analogWrite() liegt auf einer Skala von 0 - 255, sodass analogWrite(255) ein Tastverhältnis von 100 % (immer eingeschaltet) anfordert und analogWrite(127) ein Tastverhältnis von 50 % (bei der Hälfte der Zeit) ist Beispiel.

Fritzing-Schaltung
In diesem Beispiel verwenden wir den PWM-Pin 9, um die LED anzusteuern. Verbinden Sie ein Ende des Widerstands mit Pin 9. Verbinden Sie den langen Stift (Anode) der LED mit dem anderen Ende des Widerstands. Verbinden Sie den kurzen Stift (negativ, als Kathode bezeichnet) der LED mit GND.
Bemerkung
Die PWM-Pins der Mega2560-Platine sind 2 - 13, 44 - 46.

Schematische Darstellung

Code
Bemerkung
Sie können die Datei
1.3_analogWrite.ino
unter dem Pfadsunfounder_vincent_kit_for_arduino\code\1.3_analogWrite
direkt öffnen.Oder kopieren Sie diesen Code in Arduino IDE.
Nachdem Sie den Code auf das Mega2560-Board hochgeladen haben, können Sie sehen, dass die LED allmählich heller wird und allmählich ausgeht.
Code-Analyse
Deklarieren Sie Pin 9 als ledPin
.
int ledPin = 9;
analogWrite()
in loop() weist ledPin
einen analogen Wert (PWM-Welle) zwischen 0 und 255 zu, um die Helligkeit der LED zu ändern.
analogWrite(ledPin, value);
Mittels einer for-Schleife kann der Wert von analogWrite()
schrittweise zwischen dem Minimalwert (0) und dem Maximalwert (255) verändert werden.
for (int value = 0 ; value <= 255; value += 5) {
analogWrite(ledPin, value);
}
Um das experimentelle Phänomen deutlich zu sehen, muss dem for-Zyklus eine delay(30)
hinzugefügt werden, um die Helligkeitsänderungszeit zu steuern.
void loop() {
for (int value = 0 ; value <= 255; value += 5) {
analogWrite(ledPin, value);
delay(30);
}
}
Phänomen Bild
