Simple motor controller library, using DIR, PWM, nSLP pin like pololu.

MotorControler.h

Committer:
sgrsn
Date:
2020-03-04
Revision:
1:ed3dfe4ecc8a
Parent:
0:e3207dd7809a
Child:
2:543ff0150de1

File content as of revision 1:ed3dfe4ecc8a:

#ifndef MOTORCONTROLER_H
#define MOTORCONTROLER_H
#include "mbed.h"

#define FLIP_MOTOR_DIR 0

typedef enum{
    CW = 0,
    CCW = 1,
}MotorDirection;

class MotorControler
{
    public:
    MotorControler(PinName DIR, PinName PWM, PinName SLP);
    void enableDriver();
    void disableDriver();
    
    // speed(-1.0 - 1.0)
    void setSpeed(float speed);
    
    // dir(CW, or CCW)
    void setMotorDirection(MotorDirection dir);
    
    private:
    DigitalOut _DIR;
    PwmOut _PWM;
    DigitalOut _nSLP;
    uint8_t reverse_direction;
};

#endif