» Elektronik » Arduino »Palet warna dengan fungsi rawak Arduino

Palet Warna Rawak Arduino


Menggunakan ini buatan sendiri anda boleh membuat sebarang warna dalam sistem RGB dengan lima butang

1 - tambah merah
2 - Tambah Hijau
3 - Tambah Biru
4 - Rawak (warna rawak)
5 - Tetapkan semula

Apa yang kita perlukan:
1. Arduino (dalam kes saya arduino mega)
2. Lembaga pembangunan
3. Jenis pelompat: ayah ibu dan ayah ayah
4. LCD 1602 (2 baris 16 huruf)
5. Butang 5 keping
6. SMD RGB LED
7. Rintangan untuk 10 Kom 5 keping


Untuk memulakan, kami menyambungkan RGB LED (jika tiada perintang, letakkan perintang pada 220 ohms).
Seterusnya, kami meletakkan 5 butang: satu butang kaki ke pin 5V, dan yang lain melalui perintang 10K ke tanah dan kaki yang sama dengan arduino.
Kami menyambungkan paparan LCD 1602 kepada SDA dan SCL (I2C).
Semua ini disambungkan kepada kenalan arduino (GND, 5V, SDA SCL, 2, 3, 4, 9, 10, 11, 12, 13) seperti dalam gambar.
Depan
Belakang


Nah, sebenarnya lakaran itu sendiri



#include "LiquidCrustal_I2C.h" // sambungkan pustaka untuk berfungsi dengan paparan melalui I2C
#include "Wire.h" // Sambungkan perpustakaan untuk bekerja dengan I2C
int R = 9;
int G = 10;
int B = 11;
// Warna RGB
int BR = 0;
int BG = 0;
int BB = 0;
/ // pembolehubah untuk menyimpan nilai
int KR = 2; // // butang merah
int KG = 3; // butang hijau
int KB = 4; // butang biru
int C = 13; // butang reset
int RS = 12; // butang rawak
LiquidCrystal_I2C lcd (0x27.16.2); // Sambungkan paparan (alamat, lajur, baris)
void setup () {// run once
    pinMode (R, OUTPUT);
    pinMode (G, OUTPUT);
    pinMode (B, OUTPUT);
// sambungkan RGB LED
    }
void loop () {// repeat endlessly
    kelewatan (10); // tunda 10 ms
        lcd.init (); // tentukan paparan
lcd.backlight (); // hidupkan lampu latar paparan
    lcd.clear (); / / jelas paparan
lcd.setCursor (5, 0); // masukkan kursor pada lajur ke-6 dan baris ke-0
lcd.print ("Warna"); // tulis warna
lcd.setCursor (0, 1);
lcd.print ("R"); / tulis R
lcd.setCursor (6, 1);
lcd.print ("G"); / tulis G
lcd.setCursor (12, 1);
lcd.print ("B"); tulis B
lcd.print (BB); // mencetak nilai biru
    lcd.setCursor (2, 1);
lcd.print (BR); // cetak nilai merah
    lcd.setCursor (8, 1);
lcd.print (BG); // cetak nilai hijau
    lcd.setCursor (13, 1);
    jika (digitalRead (KR) == TINGGI) {BR + = 15; } // jika butang R ditekan, maka nilai R +15
    jika (digitalRead (KG) == TINGGI) {BG + = 15; } // jika butang G ditekan, maka nilai G +15
    jika (digitalRead (KB) == TINGGI) {BB + = 15; } // jika butang B ditekan, maka nilai B +15
     jika (digitalRead (C) == TINGGI) {BR - = 254; } // jika butang C ditekan, maka nilai R -254
    jika (digitalRead (C) == TINGGI) {BG - = 254; } // jika butang C ditekan, maka nilai G -254
    jika (digitalRead (C) == TINGGI) {BB - = 254; } // jika butang C ditekan, maka nilai B -254
    jika (digitalRead (RS) == TINGGI) {BR = rawak (0, 254); } // jika butang RS ditekan, maka nilai R adalah dari 0 hingga 254
     jika (digitalRead (RS) == TINGGI) {BG = rawak (0, 254); } // jika butang RS ditekan, maka nilai G adalah dari 0 hingga 254
     jika (digitalRead (RS) == TINGGI) {BB = rawak (0, 254); } // jika butang RS ditekan, maka nilai B ialah dari 0 hingga 254
    
  BR = menghalang (BR, 0, 254); // BR = (nilai, dari, hingga)
    analogWrite (R, BR); // menggunakan modulasi PWM kami menyesuaikan kecerahan dari 0 hingga 254
      

  BG = menghalang (BG, 0, 254); // BG = (nilai, dari, hingga)
    analogWrite (G, BG); // menggunakan modulasi PWM kami menyesuaikan kecerahan dari 0 hingga 254
     
    
  BB = menghalang (BB, 0, 254); // BB = (nilai, dari, hingga)
    analogWrite (B, BB); // menggunakan modulasi PWM kami menyesuaikan kecerahan dari 0 hingga 254
     
    }


Muat turun lakaran: sketch_feb07a2_ino.zip [587 b] (muat turun: 71)

Itulah yang sepatutnya!




Tuliskan komen yang tidak jelas bahawa saya akan menjawab semua soalan
Undian
Jumlah Pengundi: 15
10
5
5

Tambah komen

    • senyumtersenyumxaxaokdontknowyahoonea
      bosawalbodohyaya-yaagresifrahsia
      maaftariandance2dance3pengampunanmembantuminuman
      berhentikawan-kawanbaikgoodgoodwiseltolaklidah
      asapbertepuk tangancraymengisytiharkanderisivejangan dengarmuat turun
      panasberalunketawa1mdamesyuaratmoskingnegatif
      not_ipopcornmenghukumbacamenakutkanmenakutkancarian
      mengejekterima kasihinito_clueumnikakutbersetuju
      burukbeeeblack_eyeblum3memerahbermegahkebosanan
      ditapiskesenanganrahsia2mengancamkemenanganyusun_bespectacled
      shokrespektloldiingatiselamat datangkrutoyya_za
      ya_dobryipembantune_huliganne_othodifludlarangantutup
3 ulasan
Ok, okay.
Penulis
Palet ini diperlukan untuk memilih tempat teduh khusus untuk projek yang diterangi.
Apa itu dan apa?

Kami menasihati anda untuk membaca:

Bawa ia untuk telefon pintar ...