我正在研究從不同傳感器讀取數據的arduino項目。我將這些值存儲在一個數組中。問題是我想以不同的速率更新傳感器值。例如,我不想每隔250ms更新一次,而是每隔50ms更新一次。但我希望它能夠在傳感器更新之間運行。我能想到讓它工作的唯一方法是拖延,但這會停止循環。如何以不同的速率更新傳感器值
2
A
回答
2
您可以使用millis()函數,併爲要讀取的每個傳感器設置間隔。看一看在閃爍無延遲例如Arduino的網站
0
如果你有一堆傳感器來檢查,你可以通過使用Metro library節省一點編碼。與BRM的回答一樣的一般概念。您也可以使用定時器中斷。有關定時器中斷文章鏈接的信息,請參閱我的Move now, don’t delay()博客文章。
0
如果你不不希望使用一個庫,你可以實現它這樣的:
typedef void (*command)();
template <unsigned long wait_ms, command c>
void repeat() {
static unsigned long start = millis();
if (millis()-start >= wait_ms) {
start += wait_ms;
c();
}
}
void task1() {
// every 50ms
}
void task2() {
// every 250ms
}
void setup() {
}
void loop() {
repeat< 50, task1>();
repeat<250, task2>();
}
這將只要有什麼東西是「塊」內循環工作。
相關問題
- 1. 不能讓傳感器更新速率關屏後
- 2. 微軟頻段 - 傳感器更新速率
- 3. 加速計傳感器速率可以信任嗎?
- 4. 如何以指定的速率讀取Android中的方向傳感器數據?
- 5. 以不同的速率
- 6. 以不同的速率
- 7. 如何提高Gear S2加速度傳感器採樣率
- 8. 「自定義」傳感器事件發生率似乎不SensorManager.registerListener(SensorEventListener監聽器,傳感器傳感器,詮釋率)
- 9. Galaxy Nexus:採樣更多傳感器時,傳感器採樣速率變得更快
- 10. 傳感器的採樣率
- 11. 傳感器更新率的動態變化
- 12. Android傳感器加速度計值
- 13. Android加速計傳感器監聽器頻率意外改變
- 14. 傳感器功率/通知率問題
- 15. 訪問Apple Watch中的心率傳感器 - HealthKit不返回值
- 16. 傳感器值超過某個值時,如何更新計數器?
- 17. Android磁性傳感器給出不同設備的不同值
- 18. 加速計傳感器
- 19. Android加速計傳感器
- 20. 心率傳感器的Vhdl計數器
- 21. 的Android - 計數傳感器更新
- 22. FireMonkey Android加速度傳感器高CPU使用率
- 23. 如何獲取Android的傳感器值
- 24. Android Wear加速度傳感器/陀螺儀傳感器
- 25. 加速度傳感器與重力傳感器
- 26. 如何計算加速度計傳感器轉速KM/H
- 27. VHDL - 設置傳感器的採樣率
- 28. Android傳感器同時記錄值
- 29. 如何以與google skymap相同的方式使用傳感器值?
- 30. 如何顯示傳感器值