» elektronik » Arduino »Färgpalett med slumpmässig Arduino-funktion

Arduino slumpmässig färgpalett


Använda detta hemlagad du kan skapa valfri färg i RGB-systemet med fem knappar

1 - lägg till rött
2 - Lägg till grönt
3 - Lägg till blå
4 - Slumpmässigt (slumpmässig färg)
5 - Återställ

Vad vi behöver:
1. Arduino (i mitt fall arduino mega)
2. Utvecklingsstyrelse
3. Jumper typ: pappa mamma och pappa pappa
4. LCD 1602 (2 rader med 16 tecken)
5. Knappar 5 delar
6. SMD RGB LED
7. Motstånd för 10 Kom 5 delar


För att starta, ansluter vi RGB-LED (i frånvaro av ett motstånd, sätta ett motstånd på 220 ohm).
Därefter satte vi 5 knappar: ett knappben till 5V-stiftet, och det andra genom ett 10K-motstånd mot marken och samma ben till arduino.
Vi ansluter LCD 1602-skärmen till SDA och SCL (I2C).
Allt detta är anslutet till arduino-kontakter (GND, 5V, SDA SCL, 2, 3, 4, 9, 10, 11, 12, 13) som på bilden.
framför
bakom


Tja, faktiskt själva skissen



#include "LiquidCrustal_I2C.h" // anslut biblioteket så att det fungerar med skärmen via I2C
#include "Wire.h" // Anslut biblioteket så att det fungerar med I2C
int R = 9;
int G = 10;
int B = 11;
// RGB-färger
int BR = 0;
int BG = 0;
int BB = 0;
// variabler för att spara värdet
int KR = 2; // röd knapp
int KG = 3; // -knappen är grön
int KB = 4; // blå knapp
int C = 13; // återställningsknapp
int RS = 12; // knapp slumpmässigt
LiquidCrystal_I2C lcd (0x27.16.2); // Anslut skärmen (adress, kolumner, rader)
void setup () {// kör en gång
    pinMode (R, OUTPUT);
    pinMode (G, OUTPUT);
    pinMode (B, OUTPUT);
// anslut RGB-LED
    }
void loop () {// upprepa oändligt
    fördröjning (10); // fördröjning 10 ms
        lcd.init (); // definiera displayen
lcd.backlight (); // slå på skärmens bakgrundsbelysning
    lcd.clear (); // rensa skärmen
lcd.setCursor (5, 0); // placera markören på den sjätte kolumnen och den 0: e raden
lcd.print ("Färg"); // skriva färg
lcd.setCursor (0, 1);
lcd.print ("R"); // skriv R
lcd.setCursor (6, 1);
lcd.print ("G"); / skriv G
lcd.setCursor (12, 1);
lcd.print ("B"); skriva B
lcd.print (BB); // skriv ut det blå värdet
    lcd.setCursor (2, 1);
lcd.print (BR); // skriv ut värdet på rött
    lcd.setCursor (8, 1);
lcd.print (BG); // skriv ut det gröna värdet
    lcd.setCursor (13, 1);
    if (digitalRead (KR) == HÖG) {BR + = 15; } // om du trycker på R-knappen, är värdet på R +15
    if (digitalRead (KG) == HÖG) {BG + = 15; } // om du trycker på G-knappen, är värdet på G +15
    if (digitalRead (KB) == HÖG) {BB + = 15; } // om knappen B trycks ned, sedan värdet B +15
     if (digitalRead (C) == HÖG) {BR - = 254; } // om du trycker på C-knappen, är värdet R -254
    if (digitalRead (C) == HÖG) {BG - = 254; } // om du trycker på C-knappen, är värdet på G -254
    if (digitalRead (C) == HÖG) {BB - = 254; } // om du trycker på C-knappen, är värdet B -254
    if (digitalRead (RS) == HÖG) {BR = slumpmässigt (0, 254); } // om du trycker på RS-knappen är värdet på R från 0 till 254
     if (digitalRead (RS) == HÖG) {BG = slumpmässigt (0, 254); } // om du trycker på RS-knappen är värdet på G från 0 till 254
     if (digitalRead (RS) == HÖG) {BB = slumpmässigt (0, 254); } // om du trycker på RS-knappen är värdet på B från 0 till 254
    
  BR = begränsning (BR, 0, 254); // BR = (värde, från, till)
    analogWrite (R, BR); // med PWM-modulering justerar vi ljusstyrkan från 0 till 254
      

  BG = begränsning (BG, 0, 254); // BG = (värde, från, till)
    analogWrite (G, BG); // med PWM-modulering justerar vi ljusstyrkan från 0 till 254
     
    
  BB = begränsning (BB, 0, 254); // BB = (värde, från, till)
    analogWrite (B, BB); // med PWM-modulering justerar vi ljusstyrkan från 0 till 254
     
    }


Ladda ner skiss: sketch_feb07a2_ino.zip [587 b] (nedladdningar: 71)

Det är vad det ska vara!




Skriv i kommentarerna att det inte är klart att jag kommer att besvara alla frågor
intervju
Totalt antal röster: 15
10
5
5

Lägg till en kommentar

    • lelerxaxaOKdontknowyahoonea
      bossscratchluraJaja-jaaggressivhemlighet
      ledsendansdance2dance3benådningHjälpdrycker
      stoppvännerbragoodgoodvisselpipasvimningsanfalltunga
      rökklapparcraydeclarehånfulldon-t_mentionnedladdning
      hettaRASANDElaugh1mdamötemoskingnegativ
      not_ipopcornstraffalässkrämmalarmrapportersök
      hånthank_youdettato_clueumnikakutöverens
      illabeeeblack_eyeblum3rougeskrytaledan
      censureradepleasantrysecret2hotasegeryusun_bespectacled
      shokrespektlolprevedvälkommenkrutoyya_za
      ya_dobryihjälparene_huliganne_othodiFLUDförbudstänga
3 kommentarer
Okej, okej.
Författaren
Den här paletten behövs för att välja en specifik nyans för upplysta projekt.
Vad är det och för vad?

Vi rekommenderar att du läser:

Räcka den till smarttelefonen ...