// โปรแกรมควบคุมขา Digital INPUT
//
int sw = 7; //ประกาศตัวแปรชื่อ sw มีค่าเท่ากับ D7
int led1 = 9; //ประกาศตัวแปรชื่อ led มีค่าเท่ากับ D9
int led2 = 10; //ประกาศตัวแปรชื่อ led มีค่าเท่ากับ D10
int led3 = 11; //ประกาศตัวแปรชื่อ led มีค่าเท่ากับ D11
int led4 = 12; //ประกาศตัวแปรชื่อ led มีค่าเท่ากับ D12
int led5 = 13; //ประกาศตัวแปรชื่อ led มีค่าเท่ากับ D13
void setup()
{
pinMode(sw, INPUT); //กำหนดขา D7 เป็น Input
pinMode(led1,OUTPUT); //กำหนดขา D9 เป็น Output
pinMode(led2,OUTPUT); //กำหนดขา D10 เป็น Output
pinMode(led3,OUTPUT); //กำหนดขา D11 เป็น Output
pinMode(led4,OUTPUT); //กำหนดขา D12 เป็น Output
pinMode(led5,OUTPUT); //กำหนดขา D13 เป็น Output
Serial.begin(9600); //คำสั่งเริ่มการสื่อกับคอมพิวเตอร์ผ่าน USB ด้วยความถี่ 9600
}
void loop()
{
int val = digitalRead(sw); //รับค่าจากตัวแปร sw(D7) เก็บไว้ในตัวแหร val
Serial.println(val); //แสดงค่าตัวแปร val ออกที่ Serial monitor
if(val==0){ //ถ้าตัวแปร val มีค่าเท่ากับศูนย์
digitalWrite(led1,1); //ส่งค่า "1"(5V)ให้ตัวแปร led(D9)ทำให้หลอดดับ
digitalWrite(led2,1); //ส่งค่า "1"(5V)ให้ตัวแปร led(D10)ทำให้หลอดดับ
digitalWrite(led3,1); //ส่งค่า "1"(5V)ให้ตัวแปร led(D11)ทำให้หลอดดับ
digitalWrite(led4,1); //ส่งค่า "1"(5V)ให้ตัวแปร led(D12)ทำให้หลอดดับ
digitalWrite(led5,1); //ส่งค่า "1"(5V)ให้ตัวแปร led(D13)ทำให้หลอดดับ
}else{ //ถ้าไม่เป็นไปตามเงื่อนไขข้างบนคือ val เป็น "1"
digitalWrite(led1,0); //ส่งค่า "1"(5V)ให้ตัวแปร led(D9)ทำให้หลอดติด
delay(500); //หน่วงเวลาครึ่งวินาที
digitalWrite(led2,0); //ส่งค่า "1"(5V)ให้ตัวแปร led(D10)ทำให้หลอดติด
delay(500); //หน่วงเวลาครึ่งวินาที
digitalWrite(led3,0); //ส่งค่า "1"(5V)ให้ตัวแปร led(D11)ทำให้หลอดติด
delay(500); //หน่วงเวลาครึ่งวินาที
digitalWrite(led4,0); //ส่งค่า "1"(5V)ให้ตัวแปร led(D12)ทำให้หลอดติด
delay(500); //หน่วงเวลาครึ่งวินาที
digitalWrite(led5,0); //ส่งค่า "1"(5V)ให้ตัวแปร led(D13)ทำให้หลอดติด
}
delay(500); //หน่วงเวลาครึ่งวินาที
}