
//发出七个音阶的音
#include #define uchar unsigned char #define uint unsigned int sbit fmq=P3^6; sbit K1=P1^1; sbit K2=P1^2; sbit K3=P1^3; sbit K4=P1^4; sbit K5=P1^5; sbit K6=P1^6; sbit K7=P1^7; void delay(uint j) //延时函数 { uchar k; while(j--) { for(k=0;k<115;k++); } } v//定义dao音 { uchar a; uint z; for(z=0;z<200;z++) { fmq=0; for(a=0;a<220;a++); //通过设置周期来改变频率,以下相同 fmq=1; for(a=0;a<220;a++); } } void re2() { uchar b; uint y; for(y=0;y<200;y++) { fmq=0; for(b=0;b<195;b++); fmq=1; for(b=0;b<195;b++); } } void mi3() { uchar c; uint x; for(x=0;x<200;x++) { fmq=0; for(c=0;c<174;c++); fmq=1; for(c=0;c<174;c++); } } void fa4() { uchar d; uint t; for(t=0;t<200;t++) { fmq=0; for(d=0;d<1;d++); fmq=1; for(d=0;d<1;d++); } } void so5() { uchar e; uint s; for(s=0;s<200;s++) { fmq=0; for(e=0;e<146;e++); fmq=1; for(e=0;e<146;e++); } } void la6(){ uchar f; uint r; for(r=0;r<200;r++){ fmq=0; for(f=0;f<130;f++); fmq=1; for(f=0;f<130;f++); } void si7() { uchar g; uint q; for(q=0;q<200;q++) { fmq=0; for(g=0;g<116;g++); fmq=1; for(g=0;g<116;g++); } } void main() { if(K1==0) //如果有键按下,则调用相关函数 { do1(); } if(K2==0) { re2(); } if(K3==0) { mi3(); } if(K4==0) { fa4(); } if(K5==0) { so5(); } if(K6==0) { la6(); } if(K7==0) { si7(); } }
