實驗目的
練習用 pulseIn() 函式來量測 button 被按了多久的時間。
材料
- Arduino 主板 x 1
- Pushbutton x 1
- 10K 歐姆電阻 x 1
- 麵包板 x 1
- 單心線 x N
接線
- 把 pushbutton 一支腳接到 +5V,另一支腳接到 pin 2 同時接一顆 10K 電阻連到 GND
電路圖
程式
底下這支程式(pulseIn.pde)會印出 button 被按了多久的時間(duration):
pulseIn() 可以量測 pulse (脈波)的長度,不管是 HIGH 或 LOW 的 pulse 都可以,例如:
pulseIn() 會等待 pulse 的出現並且計算時間,timeout 時間預設是 1 秒鐘,假如在指定時間內沒有發現 pulse,pulseIn() 會回傳 0,你也可以透過 pulseIn() 的第 3 個參數指定 timeout 時間,單位是 microseconds:
pulseIn(pin, value, timeout)
pulseIn() 可以量測的 pulse 長度為 10 miliseconds 到 3 分鐘。
執行結果
下圖是範例數據,button 每次都是按大約 5 秒鐘:
2 意見:
原來pluseIn那麼好用,不過可以知道使用者案多少秒的資訊後就可以多做很多事情了 : ))
比如呢?
看誰按最接近 10 秒?
張貼留言