Sadržaj:

Potencio indikator koristi RGB neopiksel: 4 koraka
Potencio indikator koristi RGB neopiksel: 4 koraka

Video: Potencio indikator koristi RGB neopiksel: 4 koraka

Video: Potencio indikator koristi RGB neopiksel: 4 koraka
Video: ESP32 Tutorial 12 - WS2812 RGB Srip 4 Project with SunFounder's ESP32 IoT Learnig kit 2024, Novembar
Anonim
Potencio indikator koristi RGB Neopixel
Potencio indikator koristi RGB Neopixel

U ovom članku ću napraviti indikator rotacije potenciometra koristeći RGB Nano prsten piksela.

Dakle, koliko će okretaja na potenciometru biti prikazano na RGB prstenu

Korak 1: Potrebne komponente

Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente

komponente potrebne za njegovu izradu:

  • Arduino Nano v.3
  • RGB neopikseli
  • Potenciometar
  • Jumper Wire
  • USB mini
  • Projektni odbor

Korak 2: Shema kola

Shema kola
Shema kola
Shema kola
Shema kola

Sastavite sve komponente u skladu sa gornjom shemom povlačenja.

Arduino na Potensio i RGB prsten

+5V ==> 3. Potensio i VCC

GND ==> 1. Potensio & GND

A0 ==> 2. Potenzio

D12 ==> IN

Korak 3: Programiranje

Programiranje
Programiranje

Kopirajte donji kôd i zalijepite ga u skicu

#include #ifdef _AVR_ #include // Potrebno za 16 MHz Adafruit Trinket #endif

#define PIN 12

#define NUMPIXELS 16

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

#define DELAYVAL 10

void setup () {

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

clock_prescale_set (clock_div_1); #endif

pixels.begin ();

pixels.setBrightness (10);

Serial.begin (9600); }

void loop ()

{piksela.clear (); int val = analogRead (A0); val = karta (val, 0, 1023, 0, 18);

if (val == 1) {for (int i = 0; i <1; i ++) {pixels.setPixelColor (i, pixels. Color (0, 225, 0)); kašnjenje (10); }}

ako (val == 2)

{for (int i = 0; i <2; i ++) {pixels.setPixelColor (i, pixels. Color (32, 225, 0)); kašnjenje (10); }}

ako (val == 3)

{for (int i = 0; i <3; i ++) {pixels.setPixelColor (i, pixels. Color (64, 225, 0)); kašnjenje (10); }}

ako (val == 4)

{for (int i = 0; i <4; i ++) {pixels.setPixelColor (i, pixels. Color (96, 225, 0)); kašnjenje (10); }}

ako (val == 5)

{for (int i = 0; i <5; i ++) {pixels.setPixelColor (i, pixels. Color (128, 225, 0)); kašnjenje (10); }}

ako (val == 6)

{for (int i = 0; i <6; i ++) {pixels.setPixelColor (i, pixels. Color (160, 225, 0)); kašnjenje (10); }}

ako (val == 7)

{for (int i = 0; i <7; i ++) {pixels.setPixelColor (i, pixels. Color (192, 225, 0)); kašnjenje (10); }}

if (val == 8)

{for (int i = 0; i <8; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); kašnjenje (10); }}

if (val == 9)

{for (int i = 0; i <9; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); kašnjenje (10); }}

ako (val == 10)

{for (int i = 0; i <10; i ++) {pixels.setPixelColor (i, pixels. Color (225, 192, 0)); kašnjenje (10); }}

ako (val == 11)

{for (int i = 0; i <11; i ++) {pixels.setPixelColor (i, pixels. Color (225, 160, 0)); kašnjenje (10); }}

ako (val == 12)

{for (int i = 0; i <12; i ++) {pixels.setPixelColor (i, pixels. Color (225, 128, 0)); kašnjenje (10); }}

if (val == 13)

{for (int i = 0; i <13; i ++) {pixels.setPixelColor (i, pixels. Color (225, 96, 0)); kašnjenje (10); }}

ako (val == 14)

{for (int i = 0; i <14; i ++) {pixels.setPixelColor (i, pixels. Color (225, 64, 0)); kašnjenje (10); }}

ako (val == 15)

{for (int i = 0; i <15; i ++) {pixels.setPixelColor (i, pixels. Color (225, 32, 0)); kašnjenje (10); }}

ako (val == 16)

{for (int i = 0; i <16; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); kašnjenje (10); }}

ako (val == 17)

{for (int i = 0; i <17; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); kašnjenje (10); }}

if (val == 18)

{for (int i = 0; i <18; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); kašnjenje (10); }} piksela.show (); kašnjenje (DELAYVAL); }

Sketch datoteku možete preuzeti ispod:

Korak 4: Rezultat

Rezultate možete vidjeti u videu iznad.

Dakle, svaki put kada se potenciometar okreće, broj i boja LED dioda na prstenu će svijetliti u skladu s brojem okretaja na potenciometru.

Preporučuje se: