ロータリーエンコーダーの動作をシリアルモニタで見てみました。

rotary

#include <rotary.h>

Rotary r = Rotary(2, 3);

void setup() {
  Serial.begin(9600);
  PCICR |= (1 << PCIE2);
  PCMSK2 |= (1 << PCINT18) | (1 << PCINT19);
  sei();
}

void loop() {

}

ISR(PCINT2_vect) {
  unsigned char result = r.process();
  if (result) {
    Serial.println(result == DIR_CW ? “Right” : “Left”);
  }
}

Roatryァイブラリのスケッチを書き込みシリアルモニタを開くと、ロータリーエンコーダーに合わせてRight Left と表示します。

動作の確認は出来ましたが、スケッチの中身はまだまだ理解出来ません。

 

投稿者 JF1PTL

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です