Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Në këtë artikull do të bëj një tregues të rrotullimit të njehsorit potentio duke përdorur unazën pixel RGB Nano.
Pra, sa revolucione të bëra në potenciometër do të shfaqen në unazën RGB
Hapi 1: Komponentët e kërkuar
përbërësit e nevojshëm për ta bërë atë:
- Arduino Nano v.3
- RGB NeoPixels
- Potenciometër
- Jumper Wire
- Mini USB
- Bordi i Projektit
Hapi 2: Skema e Qarkut
Mblidhni të gjithë përbërësit në përputhje me skemën e tërheqjes së mësipërme.
Arduino në Potensio & Unaza RGB
+5V ==> 3. Potencial & KQV
GND ==> 1. Potensio & GND
A0 ==> 2. Potensio
D12 ==> IN
Hapi 3: Programimi
Kopjoni kodin më poshtë dhe ngjiteni në skicën tuaj
#përfshi #ifdef _AVR_ #include // Kërkohet për xhingël Adafruit 16 MHz #endif
#përcaktoni PIN -in 12
#përcaktoni NUMPIXELS 16
Piksela Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
#përcakto Vonesën 10
void setup () {
#nëse përcaktohet (_ AVR_ATtiny85_) && (F_CPU == 16000000)
ora_prescale_set (ora_div_1); #endif
piksele.filloj ();
pixels.setBrightness (10);
Serial.filloj (9600); }
lak void ()
{pixels.clear (); int val = analogRead (A0); val = hartë (val, 0, 1023, 0, 18);
nëse (val == 1) {për (int i = 0; i <1; i ++) {pixels.setPixelColor (i, pixels. Color (0, 225, 0)); vonesa (10); }}
nëse (val == 2)
{për (int i = 0; i <2; i ++) {pixels.setPixelColor (i, pixels. Color (32, 225, 0)); vonesa (10); }}
nëse (val == 3)
{për (int i = 0; i <3; i ++) {pixels.setPixelColor (i, pixels. Color (64, 225, 0)); vonesa (10); }}
nëse (val == 4)
{për (int i = 0; i <4; i ++) {pixels.setPixelColor (i, pixels. Color (96, 225, 0)); vonesa (10); }}
nëse (val == 5)
{për (int i = 0; i <5; i ++) {pixels.setPixelColor (i, pixels. Color (128, 225, 0)); vonesa (10); }}
nëse (val == 6)
{për (int i = 0; i <6; i ++) {pixels.setPixelColor (i, pixels. Color (160, 225, 0)); vonesa (10); }}
nëse (val == 7)
{për (int i = 0; i <7; i ++) {pixels.setPixelColor (i, pixels. Color (192, 225, 0)); vonesa (10); }}
nëse (val == 8)
{për (int i = 0; i <8; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); vonesa (10); }}
nëse (val == 9)
{për (int i = 0; i <9; i ++) {pixels.setPixelColor (i, pixels. Color (225, 225, 0)); vonesa (10); }}
nëse (val == 10)
{për (int i = 0; i <10; i ++) {pixels.setPixelColor (i, pixels. Color (225, 192, 0)); vonesa (10); }}
nëse (val == 11)
{për (int i = 0; i <11; i ++) {pixels.setPixelColor (i, pixels. Color (225, 160, 0)); vonesa (10); }}
nëse (val == 12)
{për (int i = 0; i <12; i ++) {pixels.setPixelColor (i, pixels. Color (225, 128, 0)); vonesa (10); }}
nëse (val == 13)
{për (int i = 0; i <13; i ++) {pixels.setPixelColor (i, pixels. Color (225, 96, 0)); vonesa (10); }}
nëse (val == 14)
{për (int i = 0; i <14; i ++) {pixels.setPixelColor (i, pixels. Color (225, 64, 0)); vonesa (10); }}
nëse (val == 15)
{për (int i = 0; i <15; i ++) {pixels.setPixelColor (i, pixels. Color (225, 32, 0)); vonesa (10); }}
nëse (val == 16)
{për (int i = 0; i <16; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); vonesa (10); }}
nëse (val == 17)
{për (int i = 0; i <17; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); vonesa (10); }}
nëse (val == 18)
{për (int i = 0; i <18; i ++) {pixels.setPixelColor (i, pixels. Color (225, 0, 0)); vonesa (10); }} pixels.show (); vonesa (Vonesa); }
Skedari i skicës mund të shkarkohet më poshtë:
Hapi 4: Rezultati
Për rezultatet mund të shihen në videon e mësipërme.
Pra, sa herë që rrotullohet potenciometri, numri dhe ngjyra e LED -ve në unazë do të ndriçojnë sipas numrit të kthesave të bëra në potenciometër.