Arduino: Indikátor Potentio používá Led Matrix MAX7219: 4 kroky
Arduino: Indikátor Potentio používá Led Matrix MAX7219: 4 kroky
Anonim
Arduino: Indikátor Potentio používá Led Matrix MAX7219
Arduino: Indikátor Potentio používá Led Matrix MAX7219

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
Požadované součásti
Požadované součásti
Požadované součásti
Požadované součásti
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

Systém
Systém
Systém
Systém
Systém
Systém

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í

Programování
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ě.