看板 C_and_CPP 關於我們 聯絡資訊
開發平台(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://www.ptt.cc/bbs/C_and_CPP/M.1581929081.A.3F5.html
ctrlbreak: 方法很多例如按著不放delay時間就減少, 不就變快了嗎XD 02/17 17:11
Lipraxde: 不考慮用讀的值來計算 delay,差距越大 delay 越短嗎? 02/17 19:30
Lipraxde: 不然這顆類比按鈕有夠浪費 02/17 19:30
aria0520: 請買vip開通一鍵加速功能 02/17 19:55
chuegou: 建議你到asm 02/17 21:13
Schottky: Arduino 用的是 C 語言無誤,在本板發問並沒有問題 02/18 01:57
d630200x: 原來如此,只要買VIP就能加速了 02/18 13:26
qscgy4: Arduino是C++,計算按下的時間,例如超過1.5秒後減少delay 02/20 14:31