Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-13 06:56
Im vorherigen Tutorial habe ich eine Potentiometeranzeige mit der RGB-Ring-Neo-Pixel-LED gemacht. Sie können es in diesem Artikel "Potentio Indicator Uses RGB Neopixel" sehen
Und heute werde ich die Potentiator-Anzeige mit dem MAX7219-LED-Metrikdisplay anzeigen.
Befolgen Sie die folgenden Schritte, um es zu erstellen.
Schritt 1: Erforderliche Komponenten
Erforderliche Komponenten:
- Arduino Nano
- Potentiometer
- Max7219 LED-Matrix-Display
- Überbrückungsdraht
- Projektvorstand
- USB-Mini
- Laptop
Erforderliche Bibliothek
LED-Steuerung
Schritt 2: Schema
Zum Zusammenbau der Komponenten siehe obige schematische Zeichnung, Sie können auch die folgenden Informationen sehen:
Arduino zu Led & Potentio
+5V ==> VCC & 3. Potenz
GND ==> GND & 1. Potenzial
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / Last
Schritt 3: Programmierung
Verwenden Sie den folgenden Code, um ait zu erstellen:
#include "LedControl.h"
/*
Jetzt brauchen wir eine LedControl, mit der wir arbeiten können. ***** Diese Pin-Nummern werden wahrscheinlich nicht mit Ihrer Hardware funktionieren ***** Pin 6 ist mit dem DataIn verbunden Pin 7 ist mit dem CLK verbunden Pin 8 ist mit LOAD verbunden Wir haben nur einen einzigen MAX72XX. */
LedControl lc=LedControl(6, 7, 8, 1);
lange Verzögerungszeit ohne Vorzeichen = 100;
Leere Einrichtung () {
lc.shutdown(0, falsch); lc.setIntensity(0, 8); lc.clearDisplay(0); aufrechtzuerhalten. Void Schleife () { Int val = analogRead (A0); val = map(val, 0, 1023, 0, 8);
if(val == 1)
{
lc.setRow(0, 0, B10000000);
}
if(val == 2)
{ lc.setRow (0, 0, B10000000); lc.setRow(0, 1, B10000000); } if(val == 3) {
lc.setRow(0, 0, B10000000);
lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); } if(val == 4) {
lc.setRow(0, 0, B10000000);
lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); } if(val == 5) {
lc.setRow(0, 0, B10000000);
lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); aufrechtzuerhalten. Wenn (val == 6) {lc.setRow (0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); } if (val == 7) {lc.setRow (0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); lc.setRow(0, 6, B10000000); aufrechtzuerhalten. Wenn (val == 8) {lc.setRow (0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); lc.setRow(0, 6, B10000000); lc.setRow(0, 7, B10000000); } lc.clearDisplay(0); }
Schritt 4: Ergebnis
Nach der Programmierung sehen die Ergebnisse so aus.
Wird das Potenio nach rechts gedreht, folgen die Live-LEDs zunehmend der Anzahl der Umdrehungen.
Wenn der Pot nach links gedreht wird, wird die Live-LED immer weniger der Drehpotenz folgen.