» elektronika » Arduino »Színpaletta Arduino véletlenszerű funkcióval

Arduino véletlenszerű színpaletta


Ennek használata házi bármilyen szín elkészíthető az RGB rendszerben öt gombbal

1 - adjunk hozzá pirosat
2 - Add zöld
3 - Add kék
4 - Véletlenszerű (véletlenszerű szín)
5 - Visszaállítás

Amire szükségünk van:
1. Arduino (az én esetemben arduino mega)
2. Fejlesztési testület
3. Jumper típus: apa anya és apa apa
4. LCD 1602 (2 sor 16 karakterből)
5. Gombok 5 darab
6. SMD RGB LED
7. Ellenállás 10 Kom 5 darabra


Az induláshoz csatlakoztassuk az RGB LED-et (ellenállás hiányában tegyünk egy ellenállást 220 ohmra).
Ezután 5 gombot teszünk: az egyik gombbal az 5V-ot rögzítjük, a másikat pedig egy 10K-os ellenálláson keresztül a földhöz és ugyanazt a lábat az arduino-hoz.
Az LCD 1602 kijelzőt csatlakoztatjuk az SDA-hoz és az SCL-hez (I2C).
Mindez az arduino érintkezőkhöz (GND, 5V, SDA SCL, 2, 3, 4, 9, 10, 11, 12, 13) kapcsolódik, mint a képen.
elöl
mögött


Nos, valójában a vázlat



#include "LiquidCrustal_I2C.h" // Csatlakoztassa a könyvtárat az I2C-n keresztül a képernyőhöz való működéshez
#include "Wire.h" // Csatlakoztassa a könyvtárat az I2C-hez való működéshez
int R = 9;
int G = 10;
int B = 11;
// RGB színek
int BR = 0;
int BG = 0;
int BB = 0;
// változók az érték mentéséhez
int KR = 2; // piros gomb
int KG = 3; // gomb zöld
int KB = 4; // kék gomb
int C = 13; // Reset gomb
int RS = 12; // gomb véletlenszerűen
LiquidCrystal_I2C lcd (0x27.16.2); // Csatlakoztassa a képernyőt (cím, oszlopok, sorok)
void setup () {// futtassa egyszer
    pinMode (R, OUTPUT);
    pinMode (G, OUTPUT);
    pinMode (B, OUTPUT);
// csatlakoztassa az RGB LED-et
    }
void loop () {// ismételje meg végtelenül
    késleltetés (10); // késleltetés 10 ms
        lcd.init (); // a kijelző meghatározása
lcd. háttérvilágítás (); // kapcsolja be a kijelző háttérvilágítását
    lcd.clear (); // törölje a kijelzőt
lcd.setCursor (5, 0); // vigye a kurzort a 6. oszlopra és a 0. sorra
lcd.print ("színes"); // színes írása
lcd.setCursor (0, 1);
lcd.print ("R"); // írja R
lcd.setCursor (6, 1);
lcd.print ("G"); / írj G
lcd.set kurzor (12, 1);
lcd.print ("B"); írj B
lcd.print (BB); // nyomtassa ki a kék értéket
    lcd.setCursor (2, 1);
lcd.print (BR); // nyomtassa ki a piros értékét
    lcd.setCursor (8, 1);
lcd.print (BG); // nyomtassa ki a zöld értéket
    lcd.set kurzor (13, 1);
    if (digitalRead (KR) == HIGH) {BR + = 15; } // ha megnyomja az R gombot, akkor az R +15 értéke
    if (digitalRead (KG) == HIGH) {BG + = 15; } // ha megnyomja a G gombot, akkor a G +15 értéke
    if (digitalRead (KB) == HIGH) {BB + = 15; } // ha a B gombot megnyomják, akkor a B +15 érték
     if (digitalRead (C) == HIGH) {BR - = 254; } // ha megnyomja a C gombot, akkor az R -254 értéke
    if (digitalRead (C) == HIGH) {BG - = 254; } // ha megnyomja a C gombot, akkor a G -254 értéke
    if (digitalRead (C) == HIGH) {BB - = 254; } // ha megnyomja a C gombot, akkor a B -254 érték
    if (digitalRead (RS) == HIGH) {BR = véletlenszerű (0, 254); } // ha megnyomja az RS gombot, akkor R értéke 0 és 254 között van
     if (digitalRead (RS) == HIGH) {BG = véletlenszerű (0, 254); } // ha megnyomja az RS gombot, akkor G értéke 0 és 254 között van
     if (digitalRead (RS) == HIGH) {BB = véletlenszerű (0, 254); } // ha megnyomja az RS gombot, akkor B értéke 0 és 254 között van
    
  BR = kényszer (BR, 0, 254); // BR = (érték, -tól -ig)
    analogWrite (R, BR); // a PWM modulációval a fényerőt 0 és 254 között állíthatjuk be
      

  BG = kényszer (BG, 0, 254); // BG = (érték, -tól -ig)
    analogWrite (G, BG); // a PWM modulációval a fényerőt 0 és 254 között állíthatjuk be
     
    
  BB = kényszer (BB, 0, 254); // BB = (érték, -tól -ig)
    analogWrite (B, BB); // a PWM modulációval a fényerőt 0 és 254 között állíthatjuk be
     
    }


Vázlat letöltése: sketch_feb07a2_ino.zip [587 b] (letöltések: 71)

Így kell lennie!




Írja meg a megjegyzésekbe, hogy nem egyértelmű, hogy minden kérdésre megválaszolom
interjú
Összes szavazó: 15
10
5
5

Adj hozzá egy megjegyzést

    • smilemosolyogxaxarendbendontknowjehunea
      főnökkarcolásbolondigenigen-igenagresszívtitok
      Bocsánattáncdance2dance3megbocsátássegítségitalok
      megállásbarátokjógoodgoodsípájulásnyelv
      füsttapsolóCrayállapítsagúnyosdon-t_mentionletöltés
      hőségingerültlaugh1MDAtalálkozómoskingnegatív
      not_ipopcornbüntetolvasmegijesztijesztkeresés
      gúnyolódásthank_youeztto_clueumnikakutegyetért
      rosszbeeeblack_eyeblum3pírdicsekvésunalom
      cenzúrázottvidámságsecret2fenyegetgyőzelemyusun_bespectacled
      ShokRespektlolprevedfogadtatáskrutoyya_za
      ya_dobryisegítőne_huliganne_othodiFLUDtilalomközel
3 megjegyzések
Oké, oké.
A szerző
Erre a palettára van szükség egy adott árnyék kiválasztásához a megvilágított projektekhez.
Mi ez és miért?

Azt javasoljuk, hogy olvassa el:

Adja át az okostelefon számára ...