Mini Project
LED RGB CUBE 3x3x3
บล็อกไดอะแกรม
Software
int led1_red = 3; // กำหนดให้ led1_red ใช้ขาที่ 3
int led1_green = 4; // กำหนดให้ led1_green ใช้ขาที 4
int led1_blue = 5; // กำหนดให้ led1_blue ใช้ขาที่ 5
int led2_red = 6; // กำหนดให้ led2_red ใช้ขาที่ 6
int led2_green = 7; // กำหนดให้ led2_green ใช้ขาที่ 7
int led2_blue = 8; // กำหนดให้ led2_blue ใช้ขาที่ 8
int led3_red = 9; // กำหนดให้ led3_red ใช้ขาที่ 9
int led3_green = 10; // กำหนดให้ led3_green ใช้ขาที่ 10
int led3_blue = 11; // กำหนดให้ led3_blue ใช้ขาที่ 11
int sw1 = 12;
int SW2; // กำหนดให้ sw1 ใช้ขาที่ 12
void setup() {
Serial.begin(9600);
pinMode(led1_red,OUTPUT);
pinMode(led1_green,OUTPUT);
pinMode(led1_blue,OUTPUT);
pinMode(led2_red,OUTPUT);
pinMode(led2_green,OUTPUT);
pinMode(led2_blue,OUTPUT);
pinMode(led3_red,OUTPUT); // กำหนดให้ led1_red,led2_red,led3_red เป็น OUTPUT
pinMode(led3_green,OUTPUT); // กำหนดให้ led1_green,led2_green,led3_green เป็น OUTPUT
pinMode(led3_blue,OUTPUT); // กำหนดให้ led1_blue,led2_blue,led3_blue เป็น OUTPUT
pinMode(sw1,INPUT); // กำหนดให้ sw1 เป็น INPUT
}
void loop() {
SW2= digitalRead(sw1);
Serial.println(SW2);
if (SW2 == 1){ // ถ้า sw1 = 1 ให้ทำต่อ
LEDRED1();
delay(500);
LEDGREEN1();
delay(500);
LEDBLUE1();
delay(500);
LEDRED2();
delay(500);
LEDGREEN2();
delay(500);
LEDBLUE2();
delay(500);
LEDRED3(); // ให้ LEDRED1,LEDRED2,LEDRED3 ทำงาน
delay(500); // หน่วงเวลา 0.5 วิ
LEDGREEN3(); // ให้ LEDGREEN1,LEDGREEN2,LEDGREEN3 ทำงาน
delay(500); // หน่วงเวลา 0.5 วิ
LEDBLUE3(); // ให้ LEDBLUE1,LEDBLUE2,LEDBLUE3 ทำงาน
delay(500); // หน่วงเวลา 0.5 วิ
}
else // ถ้าไม่ใช่
{
LEDRED(); // ให้ LEDRED ทำงาน
delay (500); // หน่วงเวลา 0.5 วิ
LEDGREEN(); // ให้ LEDGREEN ทำงาน
delay (500); // หน่วงเวลา 0.5 วิ
LEDBLUE(); // ให้ LEDBLUE ทำงาน
delay (500); // หน่วงเวลา 0.5 วิ
}
}
void LEDRED(){
digitalWrite(led1_red,HIGH);
digitalWrite(led1_green,LOW);
digitalWrite(led1_blue,LOW);
digitalWrite(led2_red,HIGH);
digitalWrite(led2_green,LOW);
digitalWrite(led2_blue,LOW);
digitalWrite(led3_red,HIGH); // เขียน led1_red,led2_red,led3_red เป็น HIGH
digitalWrite(led3_green,LOW); // เขียน led1_green,led2_green,led3_green เป็น LOW
digitalWrite(led3_blue,LOW); // เขียน led1_blue,led2_blue,(led3_blue เป็น LOW
}
void LEDGREEN(){
digitalWrite(led1_red,LOW);
digitalWrite(led1_green,HIGH);
digitalWrite(led1_blue,LOW);
digitalWrite(led2_red,LOW);
digitalWrite(led2_green,HIGH);
digitalWrite(led2_blue,LOW);
digitalWrite(led3_red,LOW); // เขียน led1_red,led2_red,led3_red เป็น LOW
digitalWrite(led3_green,HIGH); // เขียน led1_green,led2_green,led3_green เป็น HIGH
digitalWrite(led3_blue,LOW); // เขียน led1_blue,led2_blue,(led3_blue เป็น LOW
}
void LEDBLUE(){
digitalWrite(led1_red,LOW);
digitalWrite(led1_green,LOW);
digitalWrite(led1_blue,HIGH);
digitalWrite(led2_red,LOW);
digitalWrite(led2_green,LOW);
digitalWrite(led2_blue,HIGH);
digitalWrite(led3_red,LOW); // เขียน led1_red,led2_red,led3_red เป็น LOW
digitalWrite(led3_green,LOW); // เขียน led1_green,led2_green,led3_green เป็น LOW
digitalWrite(led3_blue,HIGH); // เขียน led1_blue,led2_blue,(led3_blue เป็น HIGH
}
void LEDRED1(){
digitalWrite(led1_red,HIGH); // เขียน led1_red เป็น HIGH
digitalWrite(led2_red,LOW); // เขียน led2_red เป็น LOW
digitalWrite(led3_red,LOW); // เขียน led3_red เป็น LOW
}
void LEDRED2(){
digitalWrite(led1_red,LOW); // เขียน led1_red เป็น LOW
digitalWrite(led2_red,HIGH); // เขียน led2_red เป็น HIGH
digitalWrite(led3_red,LOW); // เขียน led3_red เป็น LOW
}
void LEDRED3(){
digitalWrite(led1_red,LOW); // เขียน led1_red เป็น LOW
digitalWrite(led2_red,LOW); // เขียน led2_red เป็น LOW
digitalWrite(led3_red,HIGH); // เขียน led3_red เป็น HIGH
}
void LEDGREEN1(){
digitalWrite(led1_green,HIGH); // เขียน led1_green เป็น HIGH
digitalWrite(led2_green,LOW); // เขียน led2_green เป็น LOW
digitalWrite(led3_green,LOW); // เขียน led3_green เป็น LOW
}
void LEDGREEN2(){
digitalWrite(led1_green,LOW); // เขียน led1_green เป็น LOW
digitalWrite(led2_green,HIGH); // เขียน led2_green เป็น HIGH
digitalWrite(led3_green,LOW); // เขียน led3_green เป็น LOW
}
void LEDGREEN3(){
digitalWrite(led1_green,LOW); // เขียน led1_green เป็น LOW
digitalWrite(led2_green,LOW); // เขียน led2_green เป็น LOW
digitalWrite(led3_green,HIGH); // เขียน led3_green เป็น HIGH
}
void LEDBLUE1(){
digitalWrite(led1_blue,HIGH); // เขียน led1_blue เป็น HIGH
digitalWrite(led2_blue,LOW); // เขียน led2_blue เป็น LOW
digitalWrite(led3_blue,LOW); // เขียน led3_blue เป็น LOW
}
void LEDBLUE2(){
digitalWrite(led1_blue,LOW); // เขียน led1_blue เป็น LOW
digitalWrite(led2_blue,HIGH); // เขียน led2_blue เป็น HIGH
digitalWrite(led3_blue,LOW); // เขียน led3_blue เป็น LOW
}
void LEDBLUE3(){
digitalWrite(led1_blue,LOW); // เขียน led1_blue เป็น LOW
digitalWrite(led2_blue,LOW); // เขียน led2_blue เป็น LOW
digitalWrite(led3_blue,HIGH); // เขียน led3_blue เป็น HIGH
}
ลิงก์วิดีโอตัวอย่าง https://youtu.be/oDJ-wighUXg