int a = 2; //ขา a ต่อเข้ากับ Pin 2
int b = 3; //ขา b ต่อเข้ากับ Pin 3
int c = 4; //ขา c ต่อเข้ากับ Pin 4
int d = 5; //ขา d ต่อเข้ากับ Pin 5
int e = 6; //ขา e ต่อเข้ากับ Pin 6
int f = 7; //ขา f ต่อเข้ากับ Pin 7
int g = 8; //ขา g ต่อเข้ากับ Pin 8
void setup() {
pinMode(a, OUTPUT); //กำหนดขา a เป็นเอาต์พุต
pinMode(b, OUTPUT); //กำหนดขา b เป็นเอาต์พุต
pinMode(c, OUTPUT); //กำหนดขา c เป็นเอาต์พุต
pinMode(d, OUTPUT); //กำหนดขา d เป็นเอาต์พุต
pinMode(e, OUTPUT); //กำหนดขา e เป็นเอาต์พุต
pinMode(f, OUTPUT); //กำหนดขา f เป็นเอาต์พุต
pinMode(g, OUTPUT); //กำหนดขา g เป็นเอาต์พุต
}
void showNumber(int number) //Function ชื่อ ShowNumber ใช้ในการแสดงผลตัวเลข โดย number รับค่าจาก void loop
{
if(number != 1 && number != 4)//เงื่อนไขที่ a ไฟติด เมื่อไม่ใช่เลข 1 และ 4
digitalWrite(a,LOW);//ให้ a เป็น LOW ไฟจะติด เพราะเป็นแบบ Common Anode
if(number != 5 && number != 6)//เงื่อนไขที่ b ไฟติด เมื่อไม่ใช่เลข 5 และ 6
digitalWrite(b,LOW);//ให้ b เป็น LOW ไฟจะติด
if(number != 2)//เงื่อนไขที่ c ไฟติด เมื่อไม่ใช่เลข 2
digitalWrite(c,LOW);//ให้ c เป็น LOW ไฟจะติด
if(number != 1 && number != 4 && number != 7)//เงื่อนไขที่ d ไฟติด เมื่อไม่ใช่เลข 1 และ 4 และ 7
digitalWrite(d,LOW);//ให้ d เป็น LOW ไฟจะติด
if(number == 2 || number == 6 || number == 8 || number == 0)//เงื่อนไขที่ e ไฟติด เมื่อเป็นเลข 2 หรือ 6 หรือ 8 หรือ 0
digitalWrite(e,LOW);//ให้ e เป็น LOW ไฟจะติด
if(number != 1 && number != 2 && number != 3 && number != 7)//เงื่อนไขที่ f ไฟติด เมื่อไม่ใช่เลข 2 และ 3 และ 7
digitalWrite(f,LOW);//ให้ f เป็น LOW ไฟจะติด
if (number != 0 && number != 1 && number != 7)//เงื่อนไขที่ g ไฟติด เมื่อไม่ใช่เลข 0 และ 1 และ 7
digitalWrite(g,LOW);//ให้ g เป็น LOW ไฟจะติด
}
void turnOff() //Function ชื่อ turnOff ที่ใช้ในการดับไฟทั้งหมด เพื่อ Reset เมื่อกำลังจะเปลี่ยนเป็นอีกตัวเลขหนึ่ง
{
digitalWrite(a,HIGH);//ให้ a เป็น HIGH ไฟจะดับ
digitalWrite(b,HIGH);//ให้ b เป็น HIGH ไฟจะดับ
digitalWrite(c,HIGH);//ให้ c เป็น HIGH ไฟจะดับ
digitalWrite(d,HIGH);//ให้ d เป็น HIGH ไฟจะดับ
digitalWrite(e,HIGH);//ให้ e เป็น HIGH ไฟจะดับ
digitalWrite(f,HIGH);//ให้ f เป็น HIGH ไฟจะดับ
digitalWrite(g,HIGH);//ให้ g เป็น HIGH ไฟจะดับ
}
void loop() {
for(int i=0;i<10;i++)//แสดงผลเลข 0-9 วนไปเรื่อยๆ จนกว่าจะหยุดจ่ายไฟ
{
showNumber(i); //เรียกใช้ Function showNumber โดยส่งค่า i ไปให้ตัวแปร Number
delay(1000);//หน่วงเวลา 1 วินาที
turnOff(); //ดับไฟทั้งหมดกำลังจะเปลี่ยนตัวเลข
}
}