#include <reg51.h>sbit p1_0=P1^0;sbit p1_2=P1^2;sbit p1_3=P1^3;unsigned char jianma;void delay(){unsigned char i,j,k;for(i=0;i<255;i++){/*for(j=0;j<255;j++){for(k=0;k<20;k++);}*/}}void findkey(unsigned char p1)//获得键码{unsigned char temp;p1=p1&0xf0;//判断是哪根线低电平switch(p1){case 0xe0:temp=~P1;temp=temp&0x0f;P0=temp;switch(temp){case 0x01:jianma=1;break;case 0x02:jianma=2;break;case 0x04:jianma=3;break;case 0x08:jianma=4;break;default:break;}break;case 0xd0:temp=~P1;temp=temp&0x0f;switch(temp){case 0x01:jianma=1+4;break;case 0x02:jianma=2+4;break;case 0x04:jianma=3+4;break;case 0x08:jianma=4+4;break;default:break;}break;case 0xb0:temp=~P1;temp=temp&0x0f;switch(temp){case 0x01:jianma=1+8;break;case 0x02:jianma=2+8;break;case 0x04:jianma=3+8;break;case 0x08:jianma=4+8;break;default:break;}break;case 0x70:temp=~P1;temp=temp&0x0f;switch(temp){case 0x01:jianma=1+12;break;case 0x02:jianma=2+12;break;case 0x04:jianma=3+12;break;case 0x08:jianma=4+12;break;default:break;}break;default:break;}}void ke