int chanled[]={2,3,4,5,6,7,8};
int switchline=9;
void setup() {
for (int i = 0; i<7;i++){//i=i+2 giong voi i+=2
pinMode(chanled[i],OUTPUT);
};
pinMode( switchline, INPUT);
// put your setup code here, to run once:
}
void hienthisovachu(int n){
switch(n) {
case 1:
// Bật các đoạn tương ứng để hiển thị số 1
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
digitalWrite(chanled[6], LOW);
break;
case 2:
// Bật các đoạn tương ứng để hiển thị số 2
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[5], LOW);
break;
case 3:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
break;
case 4:
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
break;
case 5:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[4], LOW);
break;
case 6:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
break;
case 7:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
digitalWrite(chanled[6], LOW);
break;
case 8:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
break;
case 9:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[4], LOW);
break;
case 10:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[3], LOW);
break;
case 11:
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[1], LOW);
break;
case 12: //c
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[6], LOW);
break;
case 13:
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[5], LOW);
break;
case 14: //e
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
break;
case 15:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[3], LOW);
break;
}
}
bool trangthaicongtacbandau=LOW;
void loop() {
bool congtac=digitalRead(switchline);
if (congtac != trangthaicongtacbandau) {
// Nếu trạng thái công tắc thay đổi, tắt tất cả các LED
for (int m=0; m<7; m++) { // Giả sử các chân LED nối từ chân 2 đến 8
digitalWrite(chanled[m], LOW); // Tắt từng chân của LED
}
trangthaicongtacbandau = congtac; // Cập nhật trạng thái trước đó
}
if ( congtac==HIGH){
int giatringaunhien=random(2,9);
digitalWrite(giatringaunhien, HIGH);
delay(1000);
digitalWrite(giatringaunhien, LOW);
delay(1000);
}
else{
switch(i){
case 0:
// Bật các đoạn tương ứng để hiển thị số 1
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
digitalWrite(chanled[6], LOW);
break;
case 1:
// Bật các đoạn tương ứng để hiển thị số 2
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[5], LOW);
break;
case 2:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
break;
case 3:
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
break;
case 4:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[4], LOW);
break;
case 5:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
break;
case 6:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], LOW);
digitalWrite(chanled[4], LOW);
digitalWrite(chanled[5], LOW);
digitalWrite(chanled[6], LOW);
break;
case 7:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
break;
case 8:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[4], LOW);
break;
case 9:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[3], LOW);
break;
case 10:
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[1], LOW);
break;
case 11: //c
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[6], LOW);
break;
case 12:
digitalWrite(chanled[1], HIGH);
digitalWrite(chanled[2], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[0], LOW);
digitalWrite(chanled[5], LOW);
break;
case 13: //e
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[3], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
break;
case 14:
digitalWrite(chanled[0], HIGH);
digitalWrite(chanled[4], HIGH);
digitalWrite(chanled[5], HIGH);
digitalWrite(chanled[6], HIGH);
digitalWrite(chanled[1], LOW);
digitalWrite(chanled[2], LOW);
digitalWrite(chanled[3], LOW);
break;
}
delay(500);
i++;
if (i>14){
i=0;}
};
// put your main code here, to run repeatedly:
};
}