2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
V predchádzajúcom tutoriáli som urobil indikáciu potenciometra pomocou RGB prstenca neo pixelov LED. Môžete to vidieť v tomto článku „Indikátor potenciálu používa RGB neopixel“
A dnes ukážem indikátor potenciometra pomocou LED metrického displeja MAX7219.
Vykonajte to podľa nižšie uvedených krokov.
Krok 1: Požadované komponenty
Požadované komponenty:
- Arduino nano
- Potenciometer
- Max7219 LED maticový displej
- Prepojovací drôt
- Rada projektu
- USB mini
- prenosný počítač
Povinná knižnica
LedControl
Krok 2: Schéma
Ak chcete zostaviť komponenty, pozrite sa na schematický výkres vyššie, môžete tiež vidieť nasledujúce informácie:
Arduino až Led & potentio
+5V ==> VCC & 3. Potenciál
GND ==> GND & 1. Potenciál
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / zaťaženie
Krok 3: Programovanie
Na vykonanie pomoci použite nasledujúci kód:
#include "LedControl.h"
/*
Teraz potrebujeme LedControl, s ktorým budeme pracovať. ***** Tieto čísla pinov pravdepodobne nebudú fungovať s vašim hardvérom ***** pin 6 je pripojený k DataIn pin 7 je pripojený k CLK pin 8 je pripojený k LOAD Máme iba jeden MAX72XX. */
LedControl lc = LedControl (6, 7, 8, 1);
dlhá doba bez znamienka = 100;
neplatné nastavenie () {
lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); } prázdna slučka () {int val = analogRead (A0); val = mapa (val, 0, 1023, 0, 8);
ak (hodnota == 1)
{
lc.setRow (0, 0, B10000000);
}
ak (hodnota == 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); }
Krok 4: Výsledok
Po naprogramovaní budú výsledky vyzerať takto.
Ak je potencio otočené doprava, živé LED diódy budú stále viac sledovať počet závitov.
Ak je hrniec otočený doľava, živá LED dióda bude po účinnosti otáčania stále menej.