标题:
单片机单键长按、短按选择项目 源程序
[打印本页]
作者:
不倒翁.WZT
时间:
2022-2-9 10:28
标题:
单片机单键长按、短按选择项目 源程序
经过验证是可行的
单片机源程序如下:
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit K1=P1^0;
sbit LED=P0;
uchar a=0;
uchar mode=0;
void Key_block()
{
static uint KeyTime=0;
if(K1==0)
{
if(++KeyTime<=0)
--KeyTime;
if(KeyTime==5000
mode=1;
}
else
{
if(20<=KeyTime && KeyTime<3000
mode=2;
KeyTime=0;
}
}
void Led_Flow()
{
uint speed=6000;
static uint temp;
if(++temp>=speed)
{
temp=0;
switch (mode)
{
case 1:
P0=~(0xFE<<a);
a=++a%8;
break;
case 2:
P0=~(0xFE>>a);
a=++a%8;
break;
}
}
}
void main()
{
while (1)
{
Key_block();
Led_Flow();
}
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1