Satura rādītājs:

Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi
Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi

Video: Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi

Video: Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi
Video: #13 VTScada (бесплатная лицензия) Modbus RS485 Аналоговое чтение и запись | Внешний ПЛК Arduino 2024, Jūlijs
Anonim
Arduino: Potencio indikators izmanto LED matricu MAX7219
Arduino: Potencio indikators izmanto LED matricu MAX7219

Iepriekšējā apmācībā esmu norādījis potenciometru, izmantojot RGB gredzena neo pikseļu vadu. jūs to varat redzēt šajā rakstā "Potencio indikators izmanto RGB neopikseli"

Un šodien es parādīšu potenciātora indikatoru, izmantojot MAX7219 vadīto metrisko displeju.

Lai to izdarītu, veiciet tālāk norādītās darbības.

1. darbība. Nepieciešamās sastāvdaļas

Nepieciešamās sastāvdaļas
Nepieciešamās sastāvdaļas
Nepieciešamās sastāvdaļas
Nepieciešamās sastāvdaļas
Nepieciešamās sastāvdaļas
Nepieciešamās sastāvdaļas

Nepieciešamās sastāvdaļas:

  • Arduino nano
  • Potenciometrs
  • Max7219 LED matricas displejs
  • Jumper Wire
  • Projektu padome
  • USB mini
  • klēpjdators

Nepieciešamā bibliotēka

LedControl

2. solis: shēma

Shēma
Shēma
Shēma
Shēma
Shēma
Shēma

Lai saliktu komponentus, skatiet iepriekš redzamo shematisko zīmējumu, kā arī varat skatīt zemāk esošo informāciju:

Arduino līdz Led & potencio

+5V ==> VCC & 3. Potentio

GND ==> GND & 1. Potentio

D6 ==> DataIn

D7 ==> CLK

D8 ==> CS / slodze

3. solis: programmēšana

Programmēšana
Programmēšana

Lai to izdarītu, izmantojiet tālāk norādīto kodu.

#include "LedControl.h"

/*

Tagad mums ir nepieciešama LedControl, ar kuru strādāt. ***** Šie pin numuri, iespējams, nedarbosies ar jūsu aparatūru. ***** 6. tapa ir savienota ar DataIn 7. tapa ir pievienota CLK tapai 8. ir pievienota LOAD. Mums ir tikai viens MAX72XX. */

LedControl lc = LedControl (6, 7, 8, 1);

neparakstīts ilgs delaytime = 100;

void setup () {

lc.slēgšana (0, nepatiesa); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = karte (val, 0, 1023, 0, 8);

ja (val == 1)

{

lc.setRow (0, 0, B10000000);

}

ja (val == 2)

{lc.setRow (0, 0, B10000000); lc.setRow (0, 1, B10000000); } ja (val == 3) {

lc.setRow (0, 0, B10000000);

lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); } ja (val == 4) {

lc.setRow (0, 0, B10000000);

lc.setRow (0, 1, B10000000); lc.setRow (0, 2, B10000000); lc.setRow (0, 3, B10000000); } ja (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); } ja (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); } ja (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); } ja (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. solis: rezultāts

Pēc ieprogrammēšanas rezultāti izskatīsies šādi.

Ja potenciometrs tiek pagriezts pa labi, dzīvās gaismas diodes arvien vairāk sekos pagriezienu skaitam.

Ja katls ir pagriezts pa kreisi, tiešraides gaismas diode būs arvien mazāka pēc rotācijas spējas.

Ieteicams: