单片机程序 按键时间达到指定时间才接通 #include<reg52.h> sbit a2=P2^0;//开关 unsigned int s,z; void main() { a2=1;//赋值高电平 while(1) //循环 { if(a2==0) //判定为低电平执行语句 { for(s=60000;s>0;s--) for(z=20;z>0;z--); //延时 } if(a2==1) //判定为高电平执行语句 { P1=0xff; //给P1口输出高电平 s=60000;z=20; //s重新赋值60000 z重新赋值20 } if(s==0) //判定s为0执行语句 { P1=0x00; //点亮P1口 } } } 按键次数 #include< reg52.h> sbit a=P2^0; unsigned int s,z; void cccc()//子程序 { s++; } void main()//主函数 { a=1; while(1) { if(a==0) { cccc();a=1; } if(s==5) { P1=0x00; } } }