2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
U prethodnom vodiču napravio sam indikaciju potenciometra koristeći RGB prsten sa neo pikselima. možete vidjeti u ovom članku "Potencio indikator koristi RGB neopixel"
I danas ću prikazati indikator potencijatora pomoću metričkog LED ekrana MAX7219.
Slijedite donje korake da biste to učinili.
Korak 1: Potrebne komponente
Potrebne komponente:
- Arduino nano
- Potenciometar
- Max7219 LED matrični ekran
- Jumper Wire
- Projektni odbor
- USB mini
- laptop
Potrebna biblioteka
LedControl
Korak 2: Shema
Da biste sastavili komponente, pogledajte gornji shematski crtež, također možete vidjeti donje informacije:
Arduino na Led i potencio
+5V ==> VCC & 3. Potencio
GND ==> GND & 1. Potencio
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / Učitaj
Korak 3: Programiranje
Upotrijebite donji kôd da napravite sljedeće:
#include "LedControl.h"
/*
Sada nam je potreban LedControl za rad. ***** Ovi brojevi pinova vjerovatno neće raditi s vašim hardverom ***** pin 6 je spojen na DataIn pin 7 je spojen na CLK pin 8 je spojen na LOAD Imamo samo jedan MAX72XX. */
LedControl lc = LedControl (6, 7, 8, 1);
nepotpisano dugo kašnjenje = 100;
void setup () {
lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = karta (val, 0, 1023, 0, 8);
ako (val == 1)
{
lc.setRow (0, 0, B10000000);
}
ako (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); }
Korak 4: Rezultat
Nakon programiranja rezultati će izgledati ovako.
Ako se potencio zakrene udesno, LED diode će sve više pratiti broj zavoja.
Ako je posuda okrenuta ulijevo, LED dioda pod naponom će sve manje slijediti snagu rotacije.