标题:
三行代码按键
[打印本页]
作者:
bd5fna
时间:
2024-6-5 18:51
标题:
三行代码按键
请大佬们指点下,本站抄的按键三行代码,可以用,但只有短按,不能长按。想请教一下,这个代码可以短按、长按、双击吗?
void KeyRead( void )
{
unsigned char ReadData = P1^0xff;
Trg = ReadData & (ReadData ^ Cont);
Cont = ReadData;
}
void key_scan(void)
{
unsigned int cnt=0;
if(Trg & 0x01) //
Cont&0x01 应该是长按,但没有效果
{
setled=0; //LED灯点亮
}
作者:
lkc8210
时间:
2024-6-5 21:07
当然没效果,长按要累加时间的
void key_scan(void)
{
static unsigned int cnt=0;//静态变量是重点
if(Cont & 0x01)
{
if(cnt<=1000)cnt++;
if(cnt==1000)
setled=0;//LED灯点亮
}else{
cnt = 0;
}
}
复制代码
作者:
bd5fna
时间:
2024-6-6 08:21
lkc8210 发表于 2024-6-5 21:07
当然没效果,长按要累加时间的
感谢!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1