48
87
907
高级会员
使用道具 举报 送花
11
484
1362
金牌会员
2
154
470
中级会员
83
8317
1万
超级版主
jrc*** 发表于 2026-9-23 21:36 完全不能用是指什么,按键无作用,还是太灵敏。 无作用:检查p33端口模式设置正确了吗? 太灵敏:Key_Tick ...
梁*** 发表于 2026-9-23 22:30 不知道你是行列扫描还是单键。 哪怕8*8=64键的行列扫描,程序一般也就20来行,放在时隙里扫描。 按键程序只 ...
dong*** 发表于 2026-9-24 04:23 单按键,关键在STC32G12K128,运行正常,在8h8k就不行,现在在8H8K这个单片机使用的是布丁橘长里按键程序 ...
unsigned char Key_value=0; //放在1ms中断函数中运行 void keyscan() { static unsigned int i=0;//计数变量 if(!key)//按键按下 { i++; if(i==600)//长按600ms { Key_value=1; } if(i>600)i=601; //防止i溢出 } else //松手 { if(i>10 && i<300)//短按 大于10ms,小于300ms { Key_value=2; } i=0; } } //按键服务程序 放在主函数中运行 void key_service() { if(Key_value==1) { Key_value=0; //执行长按任务 } if(Key_value==2) { Key_value=0; //执行短按任务 } }复制代码
dong*** 发表于 2026-9-24 04:03 P33准双向口,Key_Tick调用间隙1ms,但Key_Tick里面有一个20次的判断,等于20ms扫描一次 ...
本版积分规则 发表回复 回帖后跳转到最后一页
|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )
GMT+8, 2026-11-7 12:22 , Processed in 0.076386 second(s), 80 queries .
Powered by Discuz! X3.5
© 2001-2026 Discuz! Team.