我希望有人可以幫助我,因爲谷歌搜索令人沮喪,我沒有得到任何地方。樹莓pi計時器
我需要什麼:使用來自pi和加速度計讀數的模擬時間來確定運動。
我期待設置一個使用Raspberry Pi獨立計時器(獨立不帶互聯網)我不想要或需要一個RTC(或我?)。我只需要跟蹤從程序啓動到數秒內完成的時間。
現在「time.sleep(...)」不起作用,因爲它暫停了程序並且沒有模擬實時。
我可以使用什麼樣的代碼來使模擬計時器在後臺運行,從中我可以隨着程序的進展跟蹤時間?
感謝
我希望有人可以幫助我,因爲谷歌搜索令人沮喪,我沒有得到任何地方。樹莓pi計時器
我需要什麼:使用來自pi和加速度計讀數的模擬時間來確定運動。
我期待設置一個使用Raspberry Pi獨立計時器(獨立不帶互聯網)我不想要或需要一個RTC(或我?)。我只需要跟蹤從程序啓動到數秒內完成的時間。
現在「time.sleep(...)」不起作用,因爲它暫停了程序並且沒有模擬實時。
我可以使用什麼樣的代碼來使模擬計時器在後臺運行,從中我可以隨着程序的進展跟蹤時間?
感謝
從time
module(time.time()
)的time()
方法讓你的系統時間從曆元(1970年1月1日)秒。如果您沒有互聯網連接並且沒有RTC,那麼每次啓動pi時都可能從0開始。但是,因爲你只關心相對時間,這應該是確定的。
您可以在程序開始時存儲返回值time.time()
,並從當前時間減去開始時間(通過再次調用time.time()
獲得)以獲得在任意時間點過去的秒數。
例如:
import time
start = time.time()
# do something here that takes time
elapsed_seconds = time.time() - start
可替代地,一個較好的方法是安裝uptime模塊。 uptime.uptime()
將返回自從樹莓派在幾秒鐘內啓動後的時間,這將一直是單調遞增的,直到董事會關閉。
系統時間可以通過NTP客戶端等進行更改...如果您的控件外部存在,那麼當您調用time.time()
之間的時間發生變化時,它可能會破壞您的代碼。
由於Raspberry Pi的操作系統(如Linux或Windows IOT)不是實時的,因此無法在正確的時間使用它。如果你想要正確的時機,你必須使用一塊帶有微控制器的電路板連接到Raspberry Pi