1 jadval
Rang
|
R
|
G
|
B
|
Qizil
|
255
|
0
|
0
|
Olovrang
|
255
|
125
|
0
|
Sariq
|
255
|
255
|
0
|
Yashil
|
0
|
255
|
0
|
Havorang
|
0
|
255
|
255
|
Ko’k
|
0
|
0
|
255
|
Siyoxrang
|
255
|
0
|
255
|
Yorug’lik diodimiz 7 ta asosiy ranglarning hammasidan o’tib qizil rangdan siyox ranggachan tovlanishi kerak. Kamalakning xohishiy oraliqdagi ranglarni hisoblash algoritmi quyidagicha:
1.Hisoblashning boshlang’ich nuqtasi qilib qizil rangni qabul qilamiz(255, 0, 0).
2. G ko’k tarkibli qiymatni sekin asta oshirib boriladi, toki olov rang qiymatiga yetmagunchaga (255, 125, 0), so’ng sariq ranggachan (255, 255, 0).
3. R qizil tarkibli qiymatni sekin asta yashil rang qiymatigachan (0, 255, 0)kamaytiriladi.
4. V ko’k tarkibli qiymatnisekin asta havo rang qiymatigachan (0, 255, 255) kamaytiriladi.
5.G yashil tarkibli qiymatnisekin asta ko’krang qiymatigachan (0, 0, 255)kamaytiriladi.
6.R qizil tarkibli qiymatni sekin asta siyox rang qiymatgachan (255, 0, 255) oshiriladi.
7. Bir oz sukut saqlab va 1 qadamga o’tiladi. Sketch tarkibi 8-listingda berilgan.
8 -listing
const int RED=11; // RGB- yorug’likdiodiningqiziloyoqchasiningchiqishi
const int GREEN=10; // RGB- yorug’likdiodiningyashiloyoqchasiningchiqishi
const int BLUE=9; // RGB- yorug’likdiodiningko’koyoqchasiningchiqishi
int red; // R-tarkiblirangnisaqlashuchuno’zgaruvchi
int green; // G-tarkiblirangnisaqlashuchuno’zgaruvchi
int blue; // V-tarkiblirangnisaqlashuchuno’zgaruvchivoidsetup()
void setup()
{;}
void loop ()
{
// qizildansariqqa
red=255;green=0;blue=0;
for(green=0;green<=255;green++)
setRGB(red,green,blue); // sariqdanyashilga
for(red=255;red>=0;red--)
setRGB(red,green,blue); // yashildanko’kga
for(blue=0;blue<=255;blue++)
setRGB(red,green,blue); // havorangdanko’kga
for (green=255; green>=0; green--)
setRGB(red,green,blue); // ko’kdansiyoxranggachan
for(red=0;red<=255;red++)
setRGB(red,green,blue);
delay(2000);
}
// RGB– yorug’likdiodranginio’rnatishfunksichsi
void setRGB(int r,int g,int b)
{
analogWrite(RED,r);
analogWrite(GREEN, g);
analogWrite(BLUE,b);
delay(10);
}
Ulanishtartibi:
1.Alohida tashkil etuvchilarni emas R, G, V uchta komponentning surilishini ko’rish uchun yorug’lik diodining yuzasini sag’al g’adir-budur qilish kerak (egov bilan) yoki xira plastina bilan qoplash kerak.
2. RGB-yorug’lik diodini 9-chizmada ko’rsatilgan sxemaga amal qilib ulanadi.
3.Arduino platasiga 8-listingda keltirilgan sketchni yuklanadi.
4. Kamalak ranglarida yonayotgan yorug’lik diodini yonishini kuzatiladi.
importmuvium.compatibility.arduino.Stepper;
importmuvium.compatibility.arduino.*;
public class Class0 extends Arduino{
// The setup() method runs once, when the sketch starts
public void setup(){
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
}
// the loop() method runs over and over again,
// as long as the Arduino has power
public void loop(){
analogWrite(11, 255);
analogWrite(10, 0);
analogWrite(9, 0);
delay(500);
analogWrite(11, 0);
analogWrite(10, 255);
analogWrite(9, 0);
delay(500);
analogWrite(11, 0);
analogWrite(10, 0);
analogWrite(9, 255);
delay(500);
// Your loop code goes here
}
}
Do'stlaringiz bilan baham: |