作者TZYuan (5ichiya)
看板C_and_CPP
标题[问题] 按键加速程式码
时间Mon Feb 17 16:44:39 2020
开发平台(Platform): (Ex: Win10, Linux, ...)
Win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
Arduino IDE
个位大大好,新手首PO,想说arduino跟C满像的就PO在这了,如违反板规再烦请告知。
现在在写数字选单,假设选单从1到100,想要按一次右键,参数就+1,按着右键就连续加
,且按着越久,数字增加越快,加到100之後就跳到1继续,左键类似,只是数字是减的。
有些电器调时间就有这个功能,google很久,一直找不到,不知道要打甚麽关键字。
请问要打甚麽关键字,或是要怎麽写回圈,有推荐现成的函式库也可以。
现在已经用while回圈写好按一次可以+1,想问连续加要怎麽写?
以下是目前的code
stick = ps2x.Analog(PSS_LX), DEC;
while( stick == 0 ){
val--;
if (val<1)
val=5;
Serial.print("Speed : ");
Serial.print(val);
Serial.println(" um/s");
delay(500);
break;
}
while( stick == 255 ){
val++;
if (val>5)
val=1;
Serial.print("Speed : ");
Serial.print(val);
Serial.println(" um/s");
delay(500);
break;
}
感激不尽~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 125.231.66.234 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1581929081.A.3F5.html
1F:推 ctrlbreak: 方法很多例如按着不放delay时间就减少, 不就变快了吗XD 02/17 17:11
2F:→ Lipraxde: 不考虑用读的值来计算 delay,差距越大 delay 越短吗? 02/17 19:30
3F:→ Lipraxde: 不然这颗类比按钮有够浪费 02/17 19:30
4F:→ aria0520: 请买vip开通一键加速功能 02/17 19:55
5F:推 chuegou: 建议你到asm 02/17 21:13
6F:推 Schottky: Arduino 用的是 C 语言无误,在本板发问并没有问题 02/18 01:57
7F:推 d630200x: 原来如此,只要买VIP就能加速了 02/18 13:26
8F:推 qscgy4: Arduino是C++,计算按下的时间,例如超过1.5秒後减少delay 02/20 14:31