1、51单片机简易电子琴#include #define uchar unsigned char#define uint unsigned intint b=0;int a;sbit P2_4=P24;sbit P2_3=P23;sbit P3_4=P34;sbit P1_0=P10;sbit P3_5=P35;sbit P3_6=P36;sbit P3_7=P37;sbit dula=P26;sbit wela=P27;sbit P1_7=P17;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7
2、c,0x39,0x5e,0x79,0x71; uchar temp,key,i,j,STH0,STL0; uint code tab=64260,64400,64463,64580,64684,64777,64820,64898,64968,64994,65058,65110,65157,65178,65217,65252;uint code tabb=64463,64524,64633,64732,64777,64860,64934,64994,65030,65085,65134,65157,65198,65235,65268,65283;/void display( uchar key);
3、void delay(uint z);void music(); void main(void) TMOD=0x01; ET0=1; EA=1; while(1) if(P1_7=0) b+; if(b=2) b=0; if(b=0) P3=0xff; P3_4=0; temp=P3; temp=temp & 0x0f; if (temp!=0x0f) delay(5); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=0; break; case
4、 0x0d: key=1; break; case 0x0b: key=2; break; case 0x07: key=3; break; temp=P3; /display(key); P2_3=P23; P2_4=P2_4; STH0=tabkey/256; STL0=tabkey%256; TR0=1; temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp&0x0f; TR0=0; P2_3=1; P2_4=1; P3=0xff; P3_5=0; temp=P3; temp=temp & 0x0f; if (temp!=0x0f)
5、 for(i=50;i0;i-) for(j=200;j0;j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=4; break; case 0x0d: key=5; break; case 0x0b: key=6; break; case 0x07: key=7; break; temp=P3; /display(key); P2_3=P23; P2_4=P2_4; STH0=tabkey/256; STL0=tabkey%256; TR0
6、=1; temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp&0x0f; TR0=0; P2_3=1; P2_4=1; P3=0xff; P3_6=0; temp=P3; temp=temp & 0x0f; if (temp!=0x0f) for(i=50;i0;i-) for(j=200;j0;j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=8; break; case 0x0d:
7、 key=9; break; case 0x0b: key=10; break; case 0x07: key=11; break; temp=P3; P2_3=P23; P2_4=P2_4; / display(key); STH0=tabkey/256; STL0=tabkey%256; TR0=1; temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp&0x0f; TR0=0; P2_3=1; P2_4=1; P3=0xff; P3_7=0; temp=P3; temp=temp & 0x0f; if (temp!=0x0f) fo
8、r(i=50;i0;i-) for(j=200;j0;j-); temp=P3; temp=temp & 0x0f; if (temp!=0x0f) temp=P3; temp=temp & 0x0f; switch(temp) case 0x0e: key=12; break; case 0x0d: key=13; break; case 0x0b: key=14; break; case 0x07: key=15; break; temp=P3; P2_3=P23; P2_4=P2_4; /display(key); STH0=tabkey/256; STL0=tabkey%256; TR
9、0=1; temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp&0x0f; TR0=0; P2_3=1; P2_4=1; if(b=1) music(); void music()STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1;delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;/;STH0=tabb
10、10/256; STL0=tabb10%256;TR0=1;delay(2000) ;TR0=0;/;delay(500);STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1;delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;/;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(2000) ;TR0=0;/;delay(5
11、00);STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1; delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(500) ;TR0=0;/;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(750) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(250) ;TR0=0;STH0=tabb9
12、/256; STL0=tabb9%256;TR0=1;delay(1000) ;TR0=0;/;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(1000) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(500) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1;delay(500) ;TR0=0;/;STH0=tabb5/256; STL0=tabb5%256;TR0=1;delay(4000) ;TR0=0;/|;STH0=tabb12/256; STL0=t
13、abb12%256;TR0=1; delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1; delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1; delay(250) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1;delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(250) ;TR0=0;/|;STH0=tabb12/256; STL0=tabb12%256
14、;TR0=1; delay(4000) ;TR0=0;/|;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(500) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(250) ;TR0=0;STH0=tabb7/256; STL0=tabb7%256;TR0=1;delay(2
15、50) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1;delay(250) ;TR0=0;STH0=tabb8/256; STL0=tabb8%256;TR0=1; delay(250) ;TR0=0;/|;STH0=tabb5/256; STL0=tabb5%256;TR0=1; delay(4000) ;TR0=0;/|; delay(500);STH0=tabb3/256; STL0=tabb3%256;TR0=1; delay(500) ;TR0=0;STH0=tabb5/256; STL0=tabb5%256;TR0=1; delay(500
16、) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1; delay(500) ;TR0=0;/|;STH0=tabb8/256; STL0=tabb8%256;TR0=1;delay(750) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(250) ;TR0=0;STH0=tab
17、b9/256; STL0=tabb9%256;TR0=1;delay(500) ;TR0=0;/|;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(4000) ;TR0=0;/|;STH0=tabb5/256; STL0=tabb5%256;TR0=1;delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(250) ;TR0=0;STH0=tabb12/256; STL0=
18、tabb12%256;TR0=1;delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1;delay(250) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1;delay(500) ;TR0=0;delay(500);STH0=tabb6/256; STL0=tabb6%256;TR0=1;delay(250) ;TR0=0;STH0=tabb7/256; STL0=tabb7%256;T
19、R0=1;delay(250) ;TR0=0;STH0=tabb5/256; STL0=tabb5%256;TR0=1;delay(250) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1;delay(250) ;TR0=0;/|;STH0=tabb5/256; STL0=tabb5%256;TR0=1;delay(4000) ;TR0=0;/|;for(a=0;a2;+a) b=0;STH0=tabb5/256; STL0=tabb5%256;TR0=1;delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%25
20、6;TR0=1;delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1; delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(500) ;TR0=0;/|;STH0=tabb8/256; STL0=tabb8%256;TR0=1; delay(1500) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1; delay
21、(250) ;TR0=0;STH0=tabb8/256; STL0=tabb8%256;TR0=1; delay(250) ;TR0=0;/|;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(750) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(250) ;TR0=0;STH0=tabb7/256; STL0=tabb7%256;TR0=1; delay(250) ;TR0=0;ST
22、H0=tabb6/256; STL0=tabb6%256;TR0=1;delay(250) ;TR0=0;STH0=tabb8/256; STL0=tabb8%256;TR0=1;delay(250) ;TR0=0;/|;STH0=tabb5/256; STL0=tabb5%256;TR0=1; delay(2000) ;TR0=0;/;STH0=tabb6/256; STL0=tabb6%256;TR0=1; delay(500) ;TR0=0;STH0=tabb8/256; STL0=tabb8%256;TR0=1;delay(1000) ;TR0=0;STH0=tabb9/256; ST
23、L0=tabb9%256;TR0=1;delay(500) ;TR0=0;/;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(500) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(1000) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(500) ;TR0=0;/;STH0=tabb13/256; STL0=tabb13%256;TR0=1; delay(250) ;TR0=0;STH0=tabb13/256; STL0=tabb1
24、3%256;TR0=1; delay(500) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1; delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1;delay(250) ;TR0=0;STH0=tabb13/256; STL0=tabb13%256;TR0=1;delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1;
25、delay(250) ;TR0=0;/;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(750) ;TR0=0;STH0=tabb6/256; STL0=tabb6%256;TR0=1; delay(250) ;TR0=0;STH0=tabb8/256; STL0=tabb8%256;TR0=1; delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(250) ;TR0=0;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(250) ;TR0=0;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(250) ;TR0=0;/;STH0=tabb9/256; STL0=tabb9%256;TR0=1; delay(4000) ;TR0=0;/;STH0=tabb10/256; STL0=tabb10%256;TR0=1; delay(750) ;TR0=0;STH0=tabb12/256; STL0=tabb12%256;TR0=1; delay(250) ;TR0=0;STH0=tabb12/256; STL0=tabb12%25
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1