Basic Encoder Library for Sparkfun's Hall- Effect Encoder Kit Part# ROB-12629

Fork of HALLFX_ENCODER by Bryce Williams

Encodeur.cpp

Committer:
PeaceBearer
Date:
2018-04-11
Revision:
1:f28b876f1fe1
Parent:
HALLFX_ENCODER.cpp@ 0:f10558519825
Child:
2:818c44a8d4ad

File content as of revision 1:f28b876f1fe1:

#include "Encodeur.h"
#include <iostream>

using namespace std;

Encodeur::Encodeur(PinName enc_in): _enc_in(enc_in){ 

    _enc_in.mode(PullUp);
    
    // Invoke interrupt on both falling and rising edges
    _enc_in.fall(callback(this, &Encodeur::incrementer));
    _enc_in.rise(callback(this, &Encodeur::incrementer));
}

void Encodeur::zero(){
    _compteur = 0;
    _tour = 0;
}

void Encodeur::incrementer(){
    _compteur++;   
    _tour += 1/8;
}

long Encodeur::lire_compteur(){
    return _compteur;
}

float Encodeur::lire_tour(){
    return _tour;
}

void Encodeur::afficher() const {
    cout << "compteur = " << _compteur << ", tour = " << _tour << endl;
}