回答編集履歴
1
回答に追記
test
CHANGED
@@ -3,3 +3,27 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
右回転の検出でカウントUP、左回転でカウントDOWN、それをどう判断するか考えてみてください
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
---
|
10
|
+
|
11
|
+
なんかまだ解決してないようで、、
|
12
|
+
|
13
|
+
まず、
|
14
|
+
|
15
|
+
pinMode(EnPinA, INPUT_PULLUP);
|
16
|
+
|
17
|
+
pinMode(EnPinB, INPUT_PULLUP);
|
18
|
+
|
19
|
+
としてください。
|
20
|
+
|
21
|
+
これでレベルが勝手に変わる、ということはなくなります
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
で、ここで言うロータリエンコーダとはダイヤルタイプの接点出力のヤツだと思いますが、これをきちんと動かそうとするとちとめんどくさいです
|
26
|
+
|
27
|
+
こっちでやったのは、1msほどのタイマ割り込みでA相B相を取り込み、チャタリング処理&エッジ検出してカウントさせるってことをやってました。
|
28
|
+
|
29
|
+
これだとArduinoNanoでもきちんとカウント動作ができます
|