Ks0013 keyestudio Rotary Encoder Module: Difference between revisions
Jump to navigation
Jump to search
Keyestudio (talk | contribs) (Created page with "==Introduction== The rotary encoder can count the pulse outputting times during the process of its rotation in positive and reverse direction by rotating. This rotating coun...") |
Keyestudio (talk | contribs) No edit summary |
||
Line 76: | Line 76: | ||
}</pre> | }</pre> | ||
==Video== | |||
http://www.keyestudio.com/wp/2016/05/ks0013-keyestudio-rotary-encoder-module-for-arduino/ | |||
[[Category: Sensor]] | [[Category: Sensor]] |
Revision as of 09:39, 30 September 2016
Introduction
The rotary encoder can count the pulse outputting times during the process of its rotation in positive and reverse direction by rotating. This rotating counting is unlimited, not like potential counting. It can be restored to initial state to count from 0.
Specification
- Power Supply: 5V
- Interface: Digital
- Size: 30*20mm
- Weight: 7g
Connection Diagram
Sample Code
const int interruptA = 0; const int interruptB = 1; int CLK = 2; // PIN2 int DAT = 3; // PIN3 int BUTTON = 4; // PIN4 int LED1 = 5; // PIN5 int LED2 = 6; // PIN6 int COUNT = 0; void setup() { attachInterrupt(interruptA, RoteStateChanged, FALLING); // attachInterrupt(interruptB, buttonState, FALLING); pinMode(CLK, INPUT); digitalWrite(2, HIGH); // Pull High Restance pinMode(DAT, INPUT); digitalWrite(3, HIGH); // Pull High Restance pinMode(BUTTON, INPUT); digitalWrite(4, HIGH); // Pull High Restance pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); Serial.begin(9600); } void loop() { if (!(digitalRead(BUTTON))) { COUNT = 0; Serial.println("STOP COUNT = 0"); digitalWrite(LED1, LOW); digitalWrite(LED2, LOW); delay (2000); } Serial.println(COUNT); } //------------------------------------------- void RoteStateChanged() //When CLK FALLING READ DAT { if (digitalRead(DAT)) // When DAT = HIGH IS FORWARD { COUNT++; digitalWrite(LED1, HIGH); digitalWrite(LED2, LOW); delay(20); } else // When DAT = LOW IS BackRote { COUNT--; digitalWrite(LED2, HIGH); digitalWrite(LED1, LOW); delay(20); } }
Video
http://www.keyestudio.com/wp/2016/05/ks0013-keyestudio-rotary-encoder-module-for-arduino/