Mục lục:

Chỉ báo Potentio sử dụng Neopixel RGB: 4 bước
Chỉ báo Potentio sử dụng Neopixel RGB: 4 bước

Video: Chỉ báo Potentio sử dụng Neopixel RGB: 4 bước

Video: Chỉ báo Potentio sử dụng Neopixel RGB: 4 bước
Video: Điều khiển hiển thị NeoPixel RGB LED WS2812 2024, Tháng sáu
Anonim
Chỉ báo Potentio sử dụng Neopixel RGB
Chỉ báo Potentio sử dụng Neopixel RGB

Trong bài viết này, tôi sẽ tạo một chỉ báo quay của đồng hồ đo potentio bằng cách sử dụng vòng pixel Nano RGB.

Vì vậy, có bao nhiêu vòng quay được thực hiện trên chiết áp sẽ được hiển thị trên vòng RGB

Bước 1: Các thành phần bắt buộc

Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc
Các thành phần bắt buộc

các thành phần cần thiết để tạo ra nó:

  • Arduino Nano v.3
  • RGB RIng NeoPixels
  • Chiết áp
  • Dây nhảy
  • USB mini
  • Bảng dự án

Bước 2: Sơ đồ mạch

Lược đồ mạch
Lược đồ mạch
Lược đồ mạch
Lược đồ mạch

Lắp ráp tất cả các thành phần theo sơ đồ kéo xuống ở trên.

Arduino đến Potensio & Vòng RGB

+ 5V ==> 3. Potensio & VCC

GND ==> 1. Potensio & GND

A0 ==> 2. Potensio

D12 ==> VÀO

Bước 3: Lập trình

Lập trình
Lập trình

Sao chép mã dưới đây và dán vào bản phác thảo của bạn

#include #ifdef _AVR_ #include // Bắt buộc đối với Adafruit Trinket 16 MHz #endif

#define mã PIN 12

#define NUMPIXELS 16

Điểm ảnh Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 10

void setup () {

#if được xác định (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif

pixel.begin ();

pixel.setBrightness (10);

Serial.begin (9600); }

void loop ()

{pixel.clear (); int val = analogRead (A0); val = map (val, 0, 1023, 0, 18);

if (val == 1) {for (int i = 0; i <1; i ++) {pixel.setPixelColor (i, pixel. Color (0, 225, 0)); chậm trễ (10); }}

nếu (val == 2)

{for (int i = 0; i <2; i ++) {pixel.setPixelColor (i, pixel. Color (32, 225, 0)); chậm trễ (10); }}

nếu (val == 3)

{for (int i = 0; i <3; i ++) {pixel.setPixelColor (i, pixel. Color (64, 225, 0)); chậm trễ (10); }}

nếu (val == 4)

{for (int i = 0; i <4; i ++) {pixel.setPixelColor (i, pixel. Color (96, 225, 0)); chậm trễ (10); }}

nếu (val == 5)

{for (int i = 0; i <5; i ++) {pixel.setPixelColor (i, pixel. Color (128, 225, 0)); chậm trễ (10); }}

nếu (val == 6)

{for (int i = 0; i <6; i ++) {pixel.setPixelColor (i, pixel. Color (160, 225, 0)); chậm trễ (10); }}

nếu (val == 7)

{for (int i = 0; i <7; i ++) {pixel.setPixelColor (i, pixel. Color (192, 225, 0)); chậm trễ (10); }}

nếu (val == 8)

{for (int i = 0; i <8; i ++) {pixel.setPixelColor (i, pixel. Color (225, 225, 0)); chậm trễ (10); }}

if (val == 9)

{for (int i = 0; i <9; i ++) {pixel.setPixelColor (i, pixel. Color (225, 225, 0)); chậm trễ (10); }}

nếu (val == 10)

{for (int i = 0; i <10; i ++) {pixel.setPixelColor (i, pixel. Color (225, 192, 0)); chậm trễ (10); }}

if (val == 11)

{for (int i = 0; i <11; i ++) {pixel.setPixelColor (i, pixel. Color (225, 160, 0)); chậm trễ (10); }}

if (val == 12)

{for (int i = 0; i <12; i ++) {pixel.setPixelColor (i, pixel. Color (225, 128, 0)); chậm trễ (10); }}

if (val == 13)

{for (int i = 0; i <13; i ++) {pixel.setPixelColor (i, pixel. Color (225, 96, 0)); chậm trễ (10); }}

if (val == 14)

{for (int i = 0; i <14; i ++) {pixel.setPixelColor (i, pixel. Color (225, 64, 0)); chậm trễ (10); }}

nếu (val == 15)

{for (int i = 0; i <15; i ++) {pixel.setPixelColor (i, pixel. Color (225, 32, 0)); chậm trễ (10); }}

if (val == 16)

{for (int i = 0; i <16; i ++) {pixel.setPixelColor (i, pixel. Color (225, 0, 0)); chậm trễ (10); }}

if (val == 17)

{for (int i = 0; i <17; i ++) {pixel.setPixelColor (i, pixel. Color (225, 0, 0)); chậm trễ (10); }}

if (val == 18)

{for (int i = 0; i <18; i ++) {pixel.setPixelColor (i, pixel. Color (225, 0, 0)); chậm trễ (10); }} pixel.show (); trì hoãn (DELAYVAL); }

Có thể tải xuống tệp phác thảo bên dưới:

Bước 4: Kết quả

Đối với kết quả có thể được xem trong video trên.

Vì vậy, mỗi khi xoay chiết áp, số lượng và màu sắc của đèn LED trên vòng sẽ sáng lên theo số lần thực hiện trên chiết áp.

Đề xuất: