Skip to main content

Module timer

Module timer 

Source

Structs§

WallClock 🔒

Constants§

JST_OFFSET_SECS 🔒
JST のタイムゾーンオフセット(秒)
NTP_UNIX_OFFSET
NTP epoch (1900-01-01) と Unix epoch (1970-01-01) の差(秒)

Statics§

SYSTEM_TICKS 🔒
TIMER_PERIOD_TICKS 🔒
WALL_CLOCK 🔒

Functions§

civil_from_days 🔒
日数(1970-01-01 からの経過日数)を (年, 月, 日) に変換する。 Howard Hinnant の civil_from_days アルゴリズム。
format_datetime_jst
現在の JST 日時を “YYYY-MM-DD HH:mm” 形式で返す。未同期なら None。
format_time_hms_jst
現在の JST 時刻を “HH:MM:SS” で返す(コマンド実行時刻の記録用)。未同期なら None。
get_datetime_jst
現在の JST 日時を (年, 月, 日, 時, 分, 秒) で返す。未同期なら None。
get_system_time_ms
システムカウンターから現在時刻をミリ秒単位で取得します
get_system_time_us
システムカウンターから現在時刻をマイクロ秒単位で取得します (u128でオーバーフロー防止)
get_ticks
起動時からのシステムティック(10ms単位)を取得します
get_unix_time
現在の Unix 時刻(UTC 秒)を返す。未同期なら None。
handle_timer_irq
タイマー割り込みハンドラから呼び出され、次の 10ms の割り込みを設定します
init
ARM Generic Timer を 10ms 間隔で初期化します
init_secondary
is_wall_clock_set
壁時計が同期済みかどうか
set_wall_clock
NTP 等で取得した Unix 時刻(UTC 秒)を基準として登録する。