|
单片机源程序如下:
#include <REGX51.H>
void delay(){
int i,j;
for(i=0;i<10;i++){
for(j=0;j<120;j++);
}
}
void button_scan(){
int temp1=0,temp2=0,temp=0;
P1=0x0f;
delay();
if(P1!=0x0f){
delay();
temp1=P1;
P1=0xf0;
delay();
if(P1!=0xf0){
delay();
temp2=P1;
}
}
temp=temp1+temp2;
switch(temp){
case 0x7e:P2_4=~P2_4;break;
case 0x7d:P2_5=~P2_5;break;
case 0x7b:P2_6=~P2_6;break;
case 0x77:P2_7=~P2_7;break;
}
}
int main()
{
P2=0x00;
delay();
delay();
while(1){
button_scan();
delay();
}
} |
|