Агуулгын хүснэгт:

Потенцио индикатор нь RGB неопикселийг ашигладаг: 4 алхам
Потенцио индикатор нь RGB неопикселийг ашигладаг: 4 алхам

Видео: Потенцио индикатор нь RGB неопикселийг ашигладаг: 4 алхам

Видео: Потенцио индикатор нь RGB неопикселийг ашигладаг: 4 алхам
Видео: Lesson 98: Arduino 10 LED Push button Projects, Potentiometer LED Voltmeter and Traffic Light 2024, Долдугаар сарын
Anonim
Potensio индикатор нь RGB неопиксел ашигладаг
Potensio индикатор нь RGB неопиксел ашигладаг

Энэ нийтлэлд би RGB Nano пиксел цагираг ашиглан потенцио тоолуурын эргэлтийн индикаторыг гаргах болно.

Тиймээс потенциометр дээр хийсэн хэдэн хувьсгалыг RGB бөгж дээр харуулах болно

Алхам 1: Шаардлагатай бүрэлдэхүүн хэсгүүд

Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд
Шаардлагатай бүрэлдэхүүн хэсгүүд

Үүнийг хийхэд шаардлагатай бүрэлдэхүүн хэсгүүд:

  • Arduino Nano v.3
  • RGB RIng NeoPixels
  • Потенциометр
  • Холбогч утас
  • USB мини
  • Төслийн зөвлөл

Алхам 2: Хэлхээний схем

Хэлхээний схем
Хэлхээний схем
Хэлхээний схем
Хэлхээний схем

Дээр дурдсан схемийн дагуу бүх бүрэлдэхүүн хэсгүүдийг угсарна.

Arduino -аас Potensio & RGB Ring руу

+5V ==> 3. Potensio & VCC

GND ==> 1. Potensio & GND

A0 ==> 2. Потенцио

D12 ==> IN

Алхам 3: Програмчлал

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

Доорх кодыг хуулж ноорог дээрээ буулгана уу

#include #ifdef _AVR_ #include // 16 MHz Adafruit Trinket #endif -д шаардлагатай.

#PIN 12 -ийг тодорхойлох

NUMPIXELS -ийг тодорхойлох 16

Adafruit_NeoPixel пикселүүд (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#ТОДОРХОЙЛОЛТ тодорхойлох 10

хүчингүй тохиргоо () {

#тодорхойлсон бол (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif

пиксел.begin ();

piksel.setBrightness (10);

Цуваа эхлэх (9600); }

хоосон давталт ()

{piksel.clear (); int val = analogRead (A0); val = газрын зураг (val, 0, 1023, 0, 18);

if (val == 1) {for (int i = 0; i <1; i ++) {piksel.setPixelColor (i, piksel. Color (0, 225, 0))); саатал (10); }}

хэрэв (val == 2)

{for (int i = 0; i <2; i ++) {piksel.setPixelColor (i, piksel. Color (32, 225, 0))); саатал (10); }}

хэрэв (үнэ == 3)

{for (int i = 0; i <3; i ++) {piksel.setPixelColor (i, piksel. Color (64, 225, 0))); саатал (10); }}

хэрэв (val == 4)

{for (int i = 0; i <4; i ++) {piksel.setPixelColor (i, piksel. Color (96, 225, 0))); саатал (10); }}

хэрэв (val == 5)

{for (int i = 0; i <5; i ++) {pixel.setPixelColor (i, piksel. Color (128, 225, 0))); саатал (10); }}

хэрэв (val == 6)

{for (int i = 0; i <6; i ++) {piksel.setPixelColor (i, piksel. Color (160, 225, 0))); саатал (10); }}

хэрэв (val == 7)

{for (int i = 0; i <7; i ++) {piksel.setPixelColor (i, piksel. Color (192, 225, 0))); саатал (10); }}

хэрэв (val == 8)

{for (int i = 0; i <8; i ++) {piksel.setPixelColor (i, piksel. Color (225, 225, 0))); саатал (10); }}

хэрэв (val == 9)

{for (int i = 0; i <9; i ++) {piksel.setPixelColor (i, piksel. Color (225, 225, 0))); саатал (10); }}

хэрэв (val == 10)

{for (int i = 0; i <10; i ++) {piksel.setPixelColor (i, piksel. Color (225, 192, 0))); саатал (10); }}

хэрэв (val == 11)

{for (int i = 0; i <11; i ++) {piksel.setPixelColor (i, piksel. Color (225, 160, 0))); саатал (10); }}

хэрэв (val == 12)

{for (int i = 0; i <12; i ++) {piksel.setPixelColor (i, piksel. Color (225, 128, 0))); саатал (10); }}

хэрэв (val == 13)

{for (int i = 0; i <13; i ++) {piksel.setPixelColor (i, piksel. Color (225, 96, 0))); саатал (10); }}

хэрэв (val == 14)

{for (int i = 0; i <14; i ++) {piksel.setPixelColor (i, piksel. Color (225, 64, 0))); саатал (10); }}

хэрэв (val == 15)

{for (int i = 0; i <15; i ++) {piksel.setPixelColor (i, piksel. Color (225, 32, 0))); саатал (10); }}

хэрэв (val == 16)

{for (int i = 0; i <16; i ++) {piksel.setPixelColor (i, piksel. Color (225, 0, 0))); саатал (10); }}

хэрэв (val == 17)

{for (int i = 0; i <17; i ++) {piksel.setPixelColor (i, piksel. Color (225, 0, 0))); саатал (10); }}

хэрэв (үнэ == 18)

{for (int i = 0; i <18; i ++) {piksel.setPixelColor (i, piksel. Color (225, 0, 0))); саатал (10); }} пиксел.шоу (); саатал (DELAYVAL); }

Ноорог файлыг доороос татаж авах боломжтой.

Алхам 4: Үр дүн

Үр дүнг дээрх видеоноос харж болно.

Тиймээс потенциометрийг эргүүлэх бүрт потенциометр дээр хийсэн эргэлтийн тооноос хамааран цагираган дээрх LED -ийн тоо, өнгө асах болно.

Зөвлөмж болгож буй: