File tree Expand file tree Collapse file tree 2 files changed +81
-0
lines changed Expand file tree Collapse file tree 2 files changed +81
-0
lines changed Original file line number Diff line number Diff line change 1+ #include < ClickEncoder.h>
2+ #include < TimerOne.h>
3+
4+ int16_t oldEncPos, encPos;
5+ uint8_t buttonState;
6+
7+ #define pinA A2
8+ #define pinB A1
9+ #define pinSw A0 // switch
10+ #define STEPS 4
11+
12+ ClickEncoder encoder (pinA, pinB, pinSw, STEPS);
13+
14+ void setup () {
15+ Serial.begin (9600 );
16+
17+ Timer1.initialize (1000 );
18+ Timer1.attachInterrupt (timerIsr);
19+
20+ encoder.setAccelerationEnabled (true );
21+
22+ Serial.print (" Acceleration is " );
23+ Serial.println ((encoder.getAccelerationEnabled ()) ? " enabled" : " disabled" );
24+
25+ oldEncPos = -1 ;
26+ }
27+
28+ void loop () {
29+ encPos += encoder.getValue ();
30+
31+ if (encPos != oldEncPos) {
32+ oldEncPos = encPos;
33+ Serial.print (" Encoder Value: " );
34+ Serial.println (encPos);
35+ }
36+
37+ buttonState = encoder.getButton ();
38+
39+ if (buttonState != 0 ) {
40+ Serial.print (" Button: " ); Serial.println (buttonState);
41+ switch (buttonState) {
42+ case ClickEncoder::Open: // 0
43+ break ;
44+
45+ case ClickEncoder::Closed: // 1
46+ break ;
47+
48+ case ClickEncoder::Pressed: // 2
49+ break ;
50+
51+ case ClickEncoder::Held: // 3
52+ break ;
53+
54+ case ClickEncoder::Released: // 4
55+ break ;
56+
57+ case ClickEncoder::Clicked: // 5
58+ break ;
59+
60+ case ClickEncoder::DoubleClicked: // 6
61+ break ;
62+ }
63+ }
64+ }
65+
66+ void timerIsr () {
67+ encoder.service ();
68+ }
Original file line number Diff line number Diff line change 1+ ClickEncoder KEYWORD1
2+
3+ setAccelerationEnabled KEYWORD2
4+ getAccelerationEnabled KEYWORD2
5+ getButton KEYWORD2
6+ getValue KEYWORD2
7+ service KEYWORD2
8+ setDoubleClickTime KEYWORD2
9+ setHoldTime KEYWORD2
10+ setDoubleClickEnabled KEYWORD2
11+ getDoubleClickEnabled KEYWORD2
12+ setButtonHeldEnabled KEYWORD2
13+ getButtonHeldEnabled KEYWORD2
You can’t perform that action at this time.
0 commit comments