Мазмуну:

Arduino: Potentio индикатору Led Matrix MAX7219 колдонот: 4 кадам
Arduino: Potentio индикатору Led Matrix MAX7219 колдонот: 4 кадам

Video: Arduino: Potentio индикатору Led Matrix MAX7219 колдонот: 4 кадам

Video: Arduino: Potentio индикатору Led Matrix MAX7219 колдонот: 4 кадам
Video: Светодиодная матрица для Ардуино — 64 красных светодиода в одном модуле. Железки Амперки 2024, Ноябрь
Anonim
Arduino: Potentio индикатору Led Matrix MAX7219 колдонот
Arduino: Potentio индикатору Led Matrix MAX7219 колдонот

Мурунку окуу куралында мен RGB шакекче нео пикселин колдонуп потенциометр көрсөткүчүн түзгөм. муну "Potentio индикатору RGB Neopixel колдонот" деген макаладан көрө аласыз.

Ал эми бүгүн мен MAX7219 жетектеген метрикалык дисплейди колдонуп, потенциал көрсөткүчүн көрсөтөм.

Аны жасоо үчүн төмөндөгү кадамдарды аткарыңыз.

1 -кадам: Керектүү компоненттер

Керектүү компоненттер
Керектүү компоненттер
Керектүү компоненттер
Керектүү компоненттер
Керектүү компоненттер
Керектүү компоненттер

Керектүү компоненттер:

  • Arduino nano
  • Потенциометр
  • Max7219 Led Matrix дисплейи
  • Jumper Wire
  • Project Board
  • USB мини
  • ноутбук

Керектүү китепкана

LedControl

2 -кадам: Схема

Схема
Схема
Схема
Схема
Схема
Схема

Компоненттерди чогултуу үчүн жогоруда көрсөтүлгөн схеманы караңыз, төмөндөгү маалыматты да көрө аласыз:

Arduino to Led & Potentio

+5V ==> VCC & 3. Potentio

GND ==> GND & 1. Потенцио

D6 ==> DataIn

D7 ==> CLK

D8 ==> CS / Load

3 -кадам: Программалоо

Программалоо
Программалоо

Айтуу үчүн төмөнкү кодду колдонуңуз:

#"LedControl.h" кошуу

/*

Эми биз менен иштөө үчүн LedControl керек. ***** Бул пин номерлери сиздин аппараттык жабдууларыңыз менен иштебей калышы мүмкүн ***** пин 6 DataIn pin 7ге туташкан CLK пин 8 LOAD туташкан Бизде бир гана MAX72XX бар. */

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

кол коюлбаган узак кечигүү убактысы = 100;

жараксыз орнотуу () {

lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); } void loop () {int val = analogRead (A0); val = карта (val, 0, 1023, 0, 8);

эгер (вал == 1)

{

lc.setRow (0, 0, B10000000);

}

эгер (вал == 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); }

4 -кадам: Жыйынтык

Программалангандан кийин жыйынтыктар ушундай болот.

Эгерде потенцио оңго бурулса, жандуу LEDлар барган сайын бурулуштардын санын ээрчийт.

Эгерде казан солго бурулса, айлануу потенциалынан кийин жандуу LED аз жана аз болот.

Сунушталууда: