2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
În tutorialul anterior am făcut o indicație de potențiometru folosind ledul RGB neo pixel led. îl puteți vedea în acest articol „Indicatorul Potentio utilizează Neopixel RGB”
Și astăzi voi arăta indicatorul potențiator folosind afișajul metric cu LED MAX7219.
Urmați pașii de mai jos pentru a o realiza.
Pasul 1: Componente necesare
Componente necesare:
- Arduino nano
- Potențiometru
- Afișaj cu matrice LED Max7219
- Jumper Wire
- Consiliul de proiect
- USB mini
- laptop
Bibliotecă obligatorie
LedControl
Pasul 2: Schema
Pentru a asambla componentele, vedeți schema de mai sus, puteți vedea și informațiile de mai jos:
Arduino la Led & potentio
+ 5V ==> VCC și 3. Potențial
GND ==> GND & 1. Potentio
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / Încărcare
Pasul 3: Programare
Folosiți codul de mai jos pentru a face ait:
#include „LedControl.h”
/*
Acum avem nevoie de un LedControl pentru a lucra. ***** Aceste numere de pin nu vor funcționa probabil cu hardware-ul dvs. ***** pinul 6 este conectat la DataIn pinul 7 este conectat la CLK pinul 8 este conectat la LOAD Avem doar un singur MAX72XX. * /
LedControl lc = LedControl (6, 7, 8, 1);
timp de întârziere nesemnat = 100;
configurare nulă () {
lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = hartă (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); } if (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); } if (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); }
Pasul 4: Rezultat
Odată programate, rezultatele vor arăta astfel.
Dacă potențialul este rotit spre dreapta, LED-urile live vor urmări din ce în ce mai mult numărul de ture.
Dacă potul este rotit spre stânga, LED-ul live va fi din ce în ce mai puțin în urma potenței de rotație.