单片机程序 按键时间达到指定时间才接通
#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;
}
}
}
