烟火里的尘埃
#define dDo 175 #define dRe 196 #define dMi 221 #define dFa 234 #define dSol 262 #define dLa 294 #define dSi 330 #define Do 350 #define Re 393 #define Mi 441 #define Fa 495 #define Sol 556 #define La 624 #define Si 661 #define hDo 700 #define hRe 786 #define hMi 882 #define hFa 935 #define hSol 1049 #define hLa 1178 #define hSi 1322 int pin=12; //自行选择作为输出的接口 int scale[]={Do,Re,Mi,Fa,Sol,La,Si,dDo,dRe,dMi,dFa,dSol,dLa,dSi,hDo,hRe,hMi,hFa,hSol,hLa,hSi}; int pu[400]={3,5,5,3,5,3,5,5,400,5,1,3,3,400,400,400,400,400,400,400,3,5,5,3,5,1,5,5,5,3,5,6,3,3,2,1,1,400,400,400,400,1,15,7,6,5,6,6,5,6,6,5,6,400,5,6,6,6,6,5,5,5,400,3,2,3,2,400,5,5,4,4,400,400,3,3,2,2,400,400,2,1,1,400,400,400,400,400,400,400,6,7,15,15,15,15,15,15,16,7,15,15,400,15,15,7,6,5,5,17,17,16,15,16,16,400}; void setup(){ pinMode(pin,OUTPUT); } void loop(){ for(int i=0;i<200;i++){ if(pu[i]!=400) { tone(pin,scale[pu[i]-1]); } else noTone(pin); delay(100); noTone(pin); delay(100); } delay(5000); }