今回は実際のプログラムを説明します。割り込みは使用していないため、汎用の2本の入力ポートがあれば実行できます。読み出した結果(カウント値)はシリアルで出力します。
タグ別アーカイブ: ロータリエンコーダ
Arduinoでロータリエンコーダを使う(2)
エンコーダの”A”、”B”の2つの信号をArduinoのディジタルポートに接続し、読みだした値を2ビットの2進数の数値として扱います。そのあと、チャタリングを除去して回転を判別します。
Arduinoでロータリエンコーダを使う(1)
安価に入手できるロータリエンコーダをArduinoに接続してカウント値を読み出せるようにします。次の写真はアダプタ基板WSN361を使ってブレッドボードに実装したときのものです。
単純な方法ではチャタリングがでて、正確にカウントできないことがありますが、ここではチャタリングキャンセル処理を入れて正確にカウントできるようにします。