This Encoder adapter is especially designed for DFRobot 12V DC Motors. This adapter comprises an external pull-up resistor, which raises the output voltage when the transistor is turned off. This board has two build-in pull-up resistors.


Encoder Diagram

Diagram for using encoder with Encoder Adapter

Encoder Sample Code

Pay attention to the interrupt pin,please check which microcontroller you use.

//The sample code for driving one way motor encoder
const byte encoder0pinA = 2;//A pin -> the interrupt pin 2
const byte encoder0pinB = 4;//B pin -> the digital pin 4
byte encoder0PinALast;
int duration;//the number of the pulses
boolean Direction;//the rotation direction

void setup()
  Serial.begin(57600);//Initialize the serial port
  EncoderInit();//Initialize the module

void loop()
  duration = 0;

void EncoderInit()
  Direction = true;//default -> Forward
  attachInterrupt(0, wheelSpeed, CHANGE);//int.0

void wheelSpeed()
  int Lstate = digitalRead(encoder0pinA);
  if((encoder0PinALast == LOW) && Lstate==HIGH)
    int val = digitalRead(encoder0pinB);
    if(val == LOW && Direction)
      Direction = false; //Reverse
    else if(val == HIGH && !Direction)
      Direction = true;  //Forward
  encoder0PinALast = Lstate;

  if(!Direction)  duration++;
  else  duration--;

More Documents

DFshopping_car1.png Get Encoder Adapter(SKU:FIT0324) from DFRobot Store or DFRobot Distributor.

Turn to the Top