CF Rotary Encoder

A library for Arduino that helps interface for Rotary Encoders.


Keywords
cf, arduino, cpp, rotary, encoder, pushbutton, push, button, lib, library, rotary-encoder, rotaryencoder
License
MIT
Install
platformio lib install 12017

Documentation

alt text

GitHub issues Fork Stars License Total Downloads Slack Chat Website

CF Rotary Encoder for Arduino

A library for Arduino that helps interface for Rotary Encoders.

Version 1.0.0

Quick Start

Prerequisites

What things you need to install the software and how to install them

Installing

You can either install through the Arduino Library Manager or checkout the latest changes or a release from GitHub.

Checkout from github

  • Checkout library to your Arduino libraries folder

Using

  • Schematic SCHEME

  • Include in your sketch.

#include <CFRotaryEncoder.h>
  • Initialize library.
const int ROT_PIN_OUTPUT_A = D6;
const int ROT_PIN_OUTPUT_B = D0;
const int ROT_PIN_PUSH_BUT = D5;
CFRotaryEncoder rotaryEncoder(ROT_PIN_OUTPUT_A, ROT_PIN_OUTPUT_B, ROT_PIN_PUSH_BUT);
  • Create a function for AfterRotaryChangeValueCallback and OnPushButtonPressCallback.
void rotaryAfterChangeValueCallback() {
    // Do something...
}

void rotaryOnPressCallback() {
    // Do something...
}
  • Also in the setup function add
void setup() {
    // ... YOUR CODE ...
    // Define callbacks.
    rotaryEncoder.setAfterRotaryChangeValueCallback(rotaryAfterChangeValueCallback);
    rotaryEncoder.setPushButtonOnPressCallback(rotaryOnPressCallback);
    
    // Start rotary encoder.
    rotaryEncoder.begin();
    // ... YOUR CODE ...
}
  • And in your loop function
void loop() {
    // ... YOUR CODE ...
    rotaryEncoder.loop();
    // ... YOUR CODE ...
}

For more info about usage

  • Please read our Wiki.

Support or Contact

Contact us at contact@cftechsol.com for questions and we'll help you sort it out.

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

License

This project is licensed under the MIT License - see the LICENSE file for details