int seg7pin[]={2,3,4,5,6,7,8,9}; //顯示器各段 a~g 及 p 數位接腳
int switchpin[]={14,15,16,17};
const int Buzzpin = 10;
const byte digit[16] = {0x3F, 0x06, 0x5B, 0x4F,0x66, 0x6D, 0x7D, 0x07,
0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71};
int i,j,number,sw3,sw2,sw1,sw0;
void setup() {
for (int i = 0; i < 8; i++) {pinMode(switchpin[j], OUTPUT);}
for (int j = 0; j < 4; j++) {pinMode(seg7pin[i], INPUT);}
pinMode(Buzzpin, OUTPUT);
}
void loop() {
sw3=digitalRead(switchpin[3] );//讀取A3為0或1
sw2=digitalRead(switchpin[2]);//讀取A2為0或1
sw1=digitalRead(switchpin[1]);//讀取A1為0或1
sw0=digitalRead(switchpin[0]);//讀取A0為0或1
number=sw3*4+sw2*3+sw1*2+sw0*1;//切換開關轉成數字碼
for(j=0;j<8;j++) //各段位元 0~7
{if(bitRead(digit[number],j)) digitalWrite(seg7pin[j],HIGH); //若位元值為 1,設定顯示器該小段為 HIGH
else digitalWrite(seg7pin[j],LOW); //若位元值為 0,設定顯示器該小段為 LOW
}
delay(500);
}
void ai(int a) {
int f = 0;
switch (a) {
case 1:
tone(Buzzpin,659,150);
delay(150);
tone(Buzzpin,659,150);
delay(150);
tone(Buzzpin,659,150);
delay(300);
tone(Buzzpin,523,150);
delay(150);
tone(Buzzpin,659,150);
delay(150);
tone(Buzzpin,784,150);
delay(150);
tone(Buzzpin,392,150);
delay(150);
break;
case 2:
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,600);
delay(600);
//
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(600);
//
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,784,1200);
delay(1800);
//
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,587,600);
delay(600);
tone(Buzzpin,523,900);
delay(1200);
//
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,523,300);
delay(300);
tone(Buzzpin,440,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
//
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,587,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,600);
delay(600);
//
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,600);
delay(600);
//
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,784,1500);
delay(1500);
//
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,587,600);
delay(600);
tone(Buzzpin,523,1200);
delay(1200);
//
tone(Buzzpin,587,150);
delay(150);
tone(Buzzpin,587,150);
delay(150);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,523,300);
delay(300);
tone(Buzzpin,440,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
//
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,600);
delay(600);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,659,600);
delay(600);
tone(Buzzpin,587,300);
delay(300);
tone(Buzzpin,523,1200);
delay(1200);
break;
case 3:
tone(Buzzpin,1046,500);
delay(500);
tone(Buzzpin,988,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,250);
delay(250);
tone(Buzzpin,659,250);
delay(750);
//
tone(Buzzpin,1046,500);
delay(500);
tone(Buzzpin,988,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,250);
delay(250);
tone(Buzzpin,659,250);
delay(1250);
//
tone(Buzzpin,659,250);
delay(250);
tone(Buzzpin,784,250);
delay(250);
tone(Buzzpin,880,250);
delay(250);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,250);
delay(250);
tone(Buzzpin,880,250);
delay(500);
//
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,523,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,250);
delay(250);
tone(Buzzpin,587,250);
delay(750);
//
tone(Buzzpin,523,250);
delay(250);
tone(Buzzpin,587,250);
delay(750);
tone(Buzzpin,1046,500);
delay(500);
tone(Buzzpin,988,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,250);
delay(250);
tone(Buzzpin,659,250);
delay(750);
//
tone(Buzzpin,1046,500);
delay(500);
tone(Buzzpin,988,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,784,250);
delay(250);
tone(Buzzpin,784,250);
delay(250);
tone(Buzzpin,880,250);
delay(250);
tone(Buzzpin,784,250);
delay(250);
tone(Buzzpin,587,250);
delay(250);
tone(Buzzpin,659,250);
delay(750);
//
tone(Buzzpin,659,250);
delay(250);
tone(Buzzpin,784,250);
delay(250);
tone(Buzzpin,880,500);
delay(500);
tone(Buzzpin,784,500);
delay(750);
//
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,250);
delay(250);
tone(Buzzpin,880,500);
delay(500);
tone(Buzzpin,784,500);
delay(500);
tone(Buzzpin,659,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,587,500);
delay(500);
tone(Buzzpin,523,250);
delay(250);
tone(Buzzpin,523,250);
delay(3000);
break;
case 4:
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,900);
delay(900);
//
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1175,900);
delay(900);
tone(Buzzpin,1318,1200);
delay(1200);
//
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,900);
delay(900);
//
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,900);
delay(900);
tone(Buzzpin,784,300);
delay(300);
//
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,880,900);
delay(900);
//
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1318,1200);
delay(1500);
//
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1046,900);
delay(900);
tone(Buzzpin,1175,600);
delay(600);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1175,300);
delay(300);
tone(Buzzpin,1046,900);
delay(900);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,1200);
delay(1500);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(3000);
break;
case 5:
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,988,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,1200);
delay(1200);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,1174,300);
delay(300);
tone(Buzzpin,1174,1200);
delay(1200);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,880,600);
delay(600);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,988,600);
delay(600);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,1200);
delay(1200);
tone(Buzzpin,880,300);
delay(300);
tone(Buzzpin,988,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,1200);
delay(1200);
tone(Buzzpin,1568,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1174,900);
delay(900);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1174,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1396,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1174,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1174,300);
delay(300);
tone(Buzzpin,1046,1200);
delay(1200);
tone(Buzzpin,1568,600);
delay(600);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,600);
delay(600);
tone(Buzzpin,1318,1200);
delay(1200);
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1568,300);
delay(300);
tone(Buzzpin,1568,600);
delay(600);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1318,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,600);
delay(600);
tone(Buzzpin,1046,1200);
delay(1200);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,1046,300);
delay(300);
tone(Buzzpin,988,600);
delay(600);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,300);
delay(300);
tone(Buzzpin,784,600);
delay(600);
tone(Buzzpin,784,600);
delay(600);
tone(Buzzpin,784,1200);
delay(1200);
tone(Buzzpin,698,300);
delay(300);
tone(Buzzpin,698,600);
delay(600);
tone(Buzzpin,698,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,698,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,698,300);
delay(300);
tone(Buzzpin,698,300);
delay(300);
tone(Buzzpin,659,300);
delay(300);
tone(Buzzpin,523,600);
delay(3000);
break;
default:
break;
}
}