Cuprins:

Indicatorul Potentio folosește RGB Neopixel: 4 pași
Indicatorul Potentio folosește RGB Neopixel: 4 pași

Video: Indicatorul Potentio folosește RGB Neopixel: 4 pași

Video: Indicatorul Potentio folosește RGB Neopixel: 4 pași
Video: Raspberry Pi Pico for Robotics 2024, Iulie
Anonim
Indicatorul Potentio utilizează Neopixel RGB
Indicatorul Potentio utilizează Neopixel RGB

În acest articol voi face un indicator de rotație al potențometrului folosind inelul RGB Nano pixel.

Deci, câte rotații făcute pe potențiometru vor fi afișate pe inelul RGB

Pasul 1: Componente necesare

Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare

componentele necesare pentru realizarea acestuia:

  • Arduino Nano v.3
  • RGB NeoPixels RIng
  • Potențiometru
  • Jumper Wire
  • USB mini
  • Consiliul de proiect

Pasul 2: Schema circuitului

Schema circuitului
Schema circuitului
Schema circuitului
Schema circuitului

Asamblați toate componentele în conformitate cu schema de tragere de mai sus.

Inel Arduino către Potensio și RGB

+ 5V ==> 3. Potențial și VCC

GND ==> 1. Potențial și GND

A0 ==> 2. Potențial

D12 ==> IN

Pasul 3: Programare

Programare
Programare

Copiați codul de mai jos și lipiți-l în schița dvs.

#include #ifdef _AVR_ #include // Necesar pentru 16 MHz Adafruit Trinket #endif

#define PIN 12

#define NUMPIXELS 16

Adafruit_NeoPixel pixeli (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define ÎNTÂRZIERE 10

configurare nulă () {

#if definit (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif

pixeli.begin ();

pixeli.setBrightness (10);

Serial.begin (9600); }

bucla nulă ()

{pixels.clear (); int val = analogRead (A0); val = hartă (val, 0, 1023, 0, 18);

if (val == 1) {for (int i = 0; i <1; i ++) {pixels.setPixelColor (i, pixels. Color (0, 225, 0)); întârziere (10); }}

if (val == 2)

{for (int i = 0; i <2; i ++) {pixels.setPixelColor (i, pixels. Color (32, 225, 0)); întârziere (10); }}

if (val == 3)

{for (int i = 0; i <3; i ++) {pixels.setPixelColor (i, pixels. Color (64, 225, 0)); întârziere (10); }}

if (val == 4)

{for (int i = 0; i <4; i ++) {pixels.setPixelColor (i, pixels. Color (96, 225, 0)); întârziere (10); }}

if (val == 5)

{for (int i = 0; i <5; i ++) {pixels.setPixelColor (i, pixels. Color (128, 225, 0)); întârziere (10); }}

if (val == 6)

{for (int i = 0; i <6; i ++) {pixels.setPixelColor (i, pixels. Color (160, 225, 0)); întârziere (10); }}

if (val == 7)

{for (int i = 0; i <7; i ++) {pixels.setPixelColor (i, pixels. Color (192, 225, 0)); întârziere (10); }}

if (val == 8)

{for (int i = 0; i <8; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); întârziere (10); }}

if (val == 9)

{for (int i = 0; i <9; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); întârziere (10); }}

if (val == 10)

{for (int i = 0; i <10; i ++) {pixels.setPixelColor (i, pixels. Color (225, 192, 0)); întârziere (10); }}

if (val == 11)

{for (int i = 0; i <11; i ++) {pixels.setPixelColor (i, pixels. Color (225, 160, 0)); întârziere (10); }}

if (val == 12)

{for (int i = 0; i <12; i ++) {pixels.setPixelColor (i, pixels. Color (225, 128, 0)); întârziere (10); }}

if (val == 13)

{for (int i = 0; i <13; i ++) {pixels.setPixelColor (i, pixels. Color (225, 96, 0)); întârziere (10); }}

if (val == 14)

{for (int i = 0; i <14; i ++) {pixels.setPixelColor (i, pixels. Color (225, 64, 0)); întârziere (10); }}

if (val == 15)

{for (int i = 0; i <15; i ++) {pixels.setPixelColor (i, pixels. Color (225, 32, 0)); întârziere (10); }}

if (val == 16)

{for (int i = 0; i <16; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); întârziere (10); }}

if (val == 17)

{for (int i = 0; i <17; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); întârziere (10); }}

if (val == 18)

{for (int i = 0; i <18; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); întârziere (10); }} pixels.show (); întârziere (AMANARE); }

Fișierul schiță poate fi descărcat mai jos:

Pasul 4: Rezultat

Pentru rezultate, puteți vedea în videoclipul de mai sus.

Deci, de fiecare dată când potențiometrul este rotit, numărul și culoarea LED-urilor de pe inel se vor aprinde în funcție de numărul de rotații efectuate pe potențiometru.

Recomandat: