2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
V předchozím tutoriálu jsem provedl indikaci potenciometru pomocí LED diody RGB ring neo Pixels. můžete to vidět v tomto článku „Indikátor potencio používá RGB Neopixel“
A dnes ukážu indikátor potenciometru pomocí LED metrického displeje MAX7219.
Postupujte podle níže uvedených kroků.
Krok 1: Požadované součásti
Požadované součásti:
- Arduino nano
- Potenciometr
- Max7219 LED maticový displej
- Propojovací drát
- Projektová rada
- USB mini
- notebook
Požadovaná knihovna
LedControl
Krok 2: Schéma
Chcete -li sestavit součásti, podívejte se na schematický výkres výše, můžete také vidět následující informace:
Arduino na Led & potentio
+5V ==> VCC & 3. Potenciál
GND ==> GND & 1. Potenciál
D6 ==> DataIn
D7 ==> CLK
D8 ==> CS / zatížení
Krok 3: Programování
K provedení ait použijte níže uvedený kód:
#include "LedControl.h"
/*
Nyní potřebujeme pracovat s LedControl. ***** Tato čísla pinů pravděpodobně nebudou fungovat s vaším hardwarem ***** pin 6 je připojen k DataIn pin 7 je připojen k CLK pin 8 je připojen k LOAD Máme pouze jeden MAX72XX. */
LedControl lc = LedControl (6, 7, 8, 1);
dlouhá doba bez znaménka = 100;
neplatné nastavení () {
lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = mapa (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); }
Krok 4: Výsledek
Po naprogramování budou výsledky vypadat takto.
Pokud je potencio otočeno doprava, živé LED diody budou stále více sledovat počet otáček.
Pokud je pot otočený doleva, bude živá LED po účinnosti rotace stále méně.