2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Eelmises õpetuses tegin potentsiomeetri näidiku, kasutades RGB ring -neopiksleid. näete seda selles artiklis "Potentsiindikaator kasutab RGB neopikselit"
Ja täna näitan potentsiaatori indikaatorit, kasutades MAX7219 led -meetermõõdikut.
Selle tegemiseks järgige alltoodud samme.
Samm: nõutavad komponendid
Nõutavad komponendid:
- Arduino nano
- Potentsiomeeter
- Max7219 LED -maatriksekraan
- Jumper Wire
- Projekti juhatus
- USB mini
- sülearvuti
Nõutav raamatukogu
LedControl
2. samm: skeem
Komponentide kokkupanekuks vaadake ülaltoodud skemaatilist joonist, samuti saate vaadata järgmist teavet:
Arduino Led & potentio
+5V ==> VCC & 3. Potentio
GND ==> GND & 1. Potentio
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / koormus
3. samm: programmeerimine
Selle tegemiseks kasutage allolevat koodi:
#include "LedControl.h"
/*
Nüüd vajame töötamiseks LedControli. ***** Need pin -numbrid teie riistvaraga tõenäoliselt ei tööta ***** pin 6 on ühendatud DataIn -i tihvtiga 7 on ühendatud CLK -i tihvt 8 on ühendatud LOADiga Meil on ainult üks MAX72XX. */
LedControl lc = LedControl (6, 7, 8, 1);
allkirjastamata pikk viivitusaeg = 100;
tühine seadistus () {
lc.sulgemine (0, vale); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = kaart (val, 0, 1023, 0, 8);
kui (val == 1)
{
lc.setRow (0, 0, B10000000);
}
kui (val == 2)
{lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); } kui (val == 3) {
lc.setRow (0, 0, B10000000);
lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); } kui (val == 4) {
lc.setRow (0, 0, B10000000);
lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); } kui (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); } kui (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); } kui (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); } kui (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); }
4. samm: tulemus
Pärast programmeerimist näevad tulemused välja sellised.
Kui potentsi keeratakse paremale, jälgivad aktiivsed LED -id üha enam pöörete arvu.
Kui potti pööratakse vasakule, jääb aktiivne valgusdiood pöörlemisvõimsusele järjest väiksemaks.