» elektronika » Arduino »Farebná paleta s náhodnou funkciou Arduino

Náhodná farebná paleta Arduino


Pomocou tohto domáci v systéme RGB môžete vytvoriť ľubovoľnú farbu pomocou piatich tlačidiel

1 - pridať červenú
2 - Pridajte zelenú farbu
3 - Pridanie modrej
4 - Náhodné (náhodná farba)
5 - Reset

Čo potrebujeme:
1. Arduino (v mojom prípade arduino mega)
2. Rada pre vývoj
3. Typ prepojky: otec mama a otec otec
4. LCD 1602 (2 riadky po 16 znakoch)
5. Gombíky 5 kusov
6. SMD RGB LED
7. Rezistor pre 10 ks Kom 5


Ak chcete začať, pripojíme RGB LED (ak chýba rezistor, dajte rezistor na 220 ohmov).
Ďalej sme dali 5 tlačidiel: jedno tlačidlo noha na 5V pin, a druhé cez 10K odpor k zemi a rovnakú nohu k arduino.
LCD 1602 displej pripájame k SDA a SCL (I2C).
To všetko je spojené s arduino kontaktmi (GND, 5V, SDA SCL, 2, 3, 4, 9, 10, 11, 12, 13) ako na obrázku.
vpredu
za


Vlastne skica samotná



#include "LiquidCrustal_I2C.h" // pripojte knižnicu, aby ste mohli pracovať so zobrazením cez I2C
#include "Wire.h" // Pripojte knižnicu, aby pracovala s I2C
int R = 9;
int G = 10;
int B = 11;
// RGB farby
int BR = 0;
int BG = 0;
int BB = 0;
// premenné na uloženie hodnoty
int KR = 2; // červené tlačidlo
int KG = 3; // je zelené
int KB = 4; // modré tlačidlo
int C = 13; // resetovacie tlačidlo
int RS = 12; // tlačidlo náhodne
LiquidCrystal_I2C lcd (0x27.16.2); // Pripojenie displeja (adresa, stĺpce, riadky)
void setup () {// spustiť raz
    pinMode (R, VÝSTUP);
    pinMode (G, VÝSTUP);
    pinMode (B, VÝSTUP);
// pripojte RGB LED
    }
void loop () {// nekonečné opakovanie
    oneskorenie (10); // oneskorenie 10 ms
        lcd.init (); // definovať displej
lcd.backlight (); // zapnite podsvietenie displeja
    lcd.clear (); // vymaže displej
lcd.setCursor (5, 0); // umiestnite kurzor na 6. stĺpec a na 0. riadok
lcd.print ("Farba"); // farba zápisu
lcd.setCursor (0, 1);
lcd.print ("R"); // napíš R
lcd.setCursor (6, 1);
lcd.print ("G"); / napíšte G
lcd.setCursor (12, 1);
lcd.print ("B"); písať B
lcdprint (BB); // vytlačiť modrú hodnotu
    lcd.setCursor (2, 1);
lcdprint (BR); // vytlačiť hodnotu červenej
    lcd.setCursor (8, 1);
lcd.print (BG); // vytlačte zelenú hodnotu
    lcd.setCursor (13, 1);
    if (digitalRead (KR) == HIGH) {BR + = 15; } // ak stlačíte tlačidlo R, potom hodnota R +15
    ak (digitalRead (KG) == HIGH) {BG + = 15; } // ak stlačíte tlačidlo G, potom hodnota G +15
    if (digitalRead (KB) == HIGH) {BB + = 15; } // ak stlačíte tlačidlo B, potom hodnota B +15
     if (digitalRead (C) == HIGH) {BR - = 254; } // ak stlačíte tlačidlo C, potom hodnota R-254
    if (digitalRead (C) == HIGH) {BG - = 254; } // ak stlačíte tlačidlo C, potom hodnota G -254
    if (digitalRead (C) == HIGH) {BB - = 254; } // ak stlačíte tlačidlo C, potom hodnota B -254
    ak (digitalRead (RS) == HIGH) {BR = náhodný (0, 254); } // ak stlačíte tlačidlo RS, potom je hodnota R od 0 do 254
     ak (digitalRead (RS) == HIGH) {BG = náhodný (0, 254); } // ak stlačíte tlačidlo RS, potom je hodnota G od 0 do 254
     ak (digitalRead (RS) == HIGH) {BB = náhodný (0, 254); } // ak stlačíte tlačidlo RS, potom je hodnota B od 0 do 254
    
  BR = obmedzenie (BR, 0, 254); // BR = (hodnota, od, do)
    analogWrite (R, BR); // pomocou PWM modulácie nastavujeme jas od 0 do 254
      

  BG = väzba (BG, 0, 254); // BG = (hodnota, od, do)
    analogWrite (G, BG); // pomocou PWM modulácie nastavujeme jas od 0 do 254
     
    
  BB = väzba (BB, 0, 254); // BB = (hodnota od, do)
    analogWrite (B, BB); // pomocou PWM modulácie nastavujeme jas od 0 do 254
     
    }


Stiahnuť skicu: sketch_feb07a2_ino.zip [587 b] (stiahnuté: 71)

To by malo byť!




V komentároch napíšte, že nie je jasné, či odpoviem na všetky otázky
interview
Celkový počet voličov: 15
10
5
5

Pridajte komentár

    • usmievaťúsmevyxaxaokdontknowyahoonea
      bossškrabanecoklamaťánoáno, ánoútočnýtajomstvo
      ľutovaťtanecdance2dance3odpusteniehelpnápoje
      zastávkapriateliadobrýgoodgoodpíšťalaomdlieťjazyk
      dymtlieskanieCraydeklarovaťvýsměšnýdon-t_mentiondownload
      teplohnevlivýlaugh1MDAstretnutiemoskingnegatívny
      not_ipražená kukuricatrestaťprečítaťvydesiťzdesenievyhľadávať
      posmechthank_youtototo_clueumnikakútnasúhlasiť
      zlýbeeeblack_eyeblum3očervenieťchvastanienuda
      cenzurovanéžartysecret2hroziťvíťazstvoyusun_bespectacled
      shokrešpektlolprevedievitajtekrutoyya_za
      ya_dobryipomocníkne_huliganne_othodiFLUDzákazzavrieť
3 komentáre
Dobre, dobre.
Autor
Táto paleta je potrebná na výber špecifického tieňa pre osvetlené projekty.
Čo je to a za čo?

Odporúčame vám prečítať si:

Ruku pre smartphone ...