» elektronik » Arduino »Farvepalet med Arduino tilfældig funktion

Arduino tilfældig farvepalet


Brug af dette hjemmelavet du kan fremstille enhver farve i RGB-systemet med fem knapper

1 - tilføj rødt
2 - Tilføj grønt
3 - Tilføj blå
4 - Tilfældig (tilfældig farve)
5 - Nulstil

Hvad vi har brug for:
1. Arduino (i mit tilfælde arduino mega)
2. Udviklingsbestyrelse
3. Jumper type: far mor og far far
4. LCD 1602 (2 linjer på 16 tegn)
5. Knapper 5 stk
6. SMD RGB LED
7. Modstand til 10 Kom 5 stykker


For at starte forbinder vi RGB LED (i mangel af en modstand, sæt en modstand på 220 ohm).
Dernæst satte vi 5 knapper: et knapben til pin 5V og det andet gennem en 10K modstand til jorden og det samme ben til arduino.
Vi forbinder LCD 1602-displayet til SDA og SCL (I2C).
Alt dette er forbundet med arduino-kontakter (GND, 5V, SDA SCL, 2, 3, 4, 9, 10, 11, 12, 13) som på billedet.
Foran
bag


Nå, faktisk selve skitsen



#include "LiquidCrustal_I2C.h" // forbinde biblioteket til at arbejde med skærmen via I2C
#include "Wire.h" // Forbind biblioteket til at arbejde med I2C
int R = 9;
int G = 10;
int B = 11;
// RGB-farver
int BR = 0;
int BG = 0;
int BB = 0;
// variabler for at gemme værdien
int KR = 2; // rød knap
int KG = 3; // -knappen er grøn
int KB = 4; // blå knap
int C = 13; // reset-knap
int RS = 12; // knap tilfældigt
LiquidCrystal_I2C lcd (0x27.16.2); // Forbind skærmen (adresse, kolonner, linjer)
void setup () {// kør en gang
    pinMode (R, OUTPUT);
    pinMode (G, OUTPUT);
    pinMode (B, OUTPUT);
// Tilslut RGB LED
    }
void loop () {// gentag uendeligt
    forsinkelse (10); // forsinkelse 10 ms
        lcd.init (); // definere displayet
lcd.backlight (); // tænd for displayets baggrundsbelysning
    lcd.clear (); // rydde skærmen
lcd.set markør (5, 0); // sæt markøren på 6. kolonne og 0. række
lcd.print ("Farve"); // skriv farve
lcd.set markør (0, 1);
lcd.print ("R"); // skriv R
lcd.set markør (6, 1);
lcd.print ("G"); / skriv G
lcd.set markør (12, 1);
lcd.print ("B"); skriv B
lcd.print (BB); // udskriv den blå værdi
    lcd.set markør (2, 1);
lcd.print (BR); // udskriv værdien på rødt
    lcd.set markør (8, 1);
lcd.print (BG); // udskriv den grønne værdi
    lcd.set markør (13, 1);
    if (digitalRead (KR) == HØJ) {BR + = 15; } // hvis der trykkes på R-knappen, er værdien på R +15
    if (digitalRead (KG) == HØJ) {BG + = 15; } // Hvis der trykkes på G-knappen, er værdien på G +15
    if (digitalRead (KB) == HØJ) {BB + = 15; } // hvis der trykkes på knap B, så er værdien B +15
     if (digitalRead (C) == HØJ) {BR - = 254; } // hvis der trykkes på C-knappen, er værdien på R -254
    if (digitalRead (C) == HØJ) {BG - = 254; } // hvis der trykkes på C-knappen, er værdien på G -254
    if (digitalRead (C) == HØJ) {BB - = 254; } // Hvis der trykkes på C-knappen, er værdien B -254
    if (digitalRead (RS) == HØJ) {BR = tilfældig (0, 254); } // Hvis der trykkes på RS-knappen, er værdien af ​​R fra 0 til 254
     if (digitalRead (RS) == HØJ) {BG = tilfældig (0, 254); } // Hvis der trykkes på RS-knappen, er G-værdien fra 0 til 254
     if (digitalRead (RS) == HØJ) {BB = tilfældig (0, 254); } // Hvis der trykkes på RS-knappen, er værdien af ​​B fra 0 til 254
    
  BR = begrænsning (BR, 0, 254); // BR = (værdi, fra til)
    analogWrite (R, BR); // ved hjælp af PWM-modulation justerer vi lysstyrken fra 0 til 254
      

  BG = begrænsning (BG, 0, 254); // BG = (værdi, fra, til)
    analogWrite (G, BG); // ved hjælp af PWM-modulation justerer vi lysstyrken fra 0 til 254
     
    
  BB = begrænsning (BB, 0, 254); // BB = (værdi, fra til)
    analogWrite (B, BB); // ved hjælp af PWM-modulation justerer vi lysstyrken fra 0 til 254
     
    }


Download skitse: sketch_feb07a2_ino.zip [587 b] (downloads: 71)

Det skal det være!




Skriv i kommentarerne, at det ikke er klart, at jeg vil besvare alle spørgsmål
interview
Samlede valg: 15
10
5
5

Tilføj en kommentar

    • smilesmilxaxaokdontknowyahoonea
      bossscratchnarrejaja-jaaggressivhemmelighed
      undskylddansdance2dance3benådninghjælpdrikkevarer
      stop-vennergodgoodgoodfløjtedånetunge
      røgklappecrayerklærerspottendedon-t_mentiondownloade
      hedeirefullaugh1mdamødemoskingnegativ
      not_ipopcornstraffelæseskræmmeforskrækkelsersøg
      hånethank_youdetteto_clueumnikakutenig
      dårligbeeeblack_eyeblum3blushpralekedsomhed
      censureretpleasantrysecret2truesejryusun_bespectacled
      SHOKRespektlolprevedvelkommenkrutoyya_za
      ya_dobryihjælperenne_huliganne_othodiFludforbudtæt
3 kommentarer
Okay okay.
Forfatteren
Denne palet er nødvendig for at vælge en bestemt nuance til oplyste projekter.
Hvad er det, og hvad?

Vi råder dig til at læse:

Giv den til smartphonen ...