單片機程序 按鍵時間達到指定時間才接通 #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; } } }