fusion_hat.modules.rotary_encoder モジュール

class fusion_hat.modules.rotary_encoder.Rotary_Encoder(clk, dt, *, bounce_time=0.002, reverse=False)[ソース]

ベースクラス: object

_a_rising()[ソース]

チャネル A の 立ち上がり エッジ で 呼び出されます 。 回転 方向 を 判定 する ため に チャネル B を 読み取ります 。 一般 的 な ルール :

A↑ で B=0 -> CW ( +1 ) 、 A↑ で B=1 -> CCW ( -1 )

_a_falling()[ソース]

チャネル A の 立ち下がり エッジ で 呼び出されます 。 回転 方向 を 判定 する ため に チャネル B を 読み取ります 。 一般 的 な ルール :

A↓ で B=1 -> CW ( +1 ) 、 A↓ で B=0 -> CCW ( -1 )

_apply(direction: int)[ソース]

方向 と 反転 フラグ を 考慮 して 回転 の 1 ステップ を 適用 します 。 その後 、 設定 されて いれば 外部 コールバック を 呼び出します 。

steps()[ソース]

現在 の ステップ 数 を 返します 。

reset()[ソース]

エンコーダ の 位置 を ゼロ に リセット します 。

close()[ソース]

割り込み を 解放 し 、 GPIO リソース を クリーンアップ します 。