Libraire pour la controler le module DRV8825

Dependencies:   mbed FastPWM

Dependents:   AresCDFMainCode_capteur_US AresCDFMainCode_us2 AresCDFMainCode

DRV8825.cpp

Committer:
g0dd4
Date:
2020-07-05
Revision:
4:d9e022811431
Parent:
3:ec3e5c8dd41b
Child:
6:12fa3864b532

File content as of revision 4:d9e022811431:

#include "DRV8825.h"

/**
 * @brief Initialisation du modul avec des paramètres par défaut
 */
DRV8825::DRV8825(){


    m_en = new DigitalOut(PC_5);
    m_dir = new DigitalOut(PC_6);
    m_step = new FastPWM(PC_8);
    m_step->write(0.50);
}


/**
 * @brief Initialisation du modul avec des paramètres choisis
 * @param en : pin En
 * @param dir : pin Dir
 * @param step : pin Step
 */
DRV8825::DRV8825(PinName en, PinName dir ,PinName step){
    m_en = new DigitalOut(en);
    m_dir = new DigitalOut(dir);
    m_step = new FastPWM(step);
    m_step->write(0.50);
}

/**
 * @brief Permet d'affecter une directions à notre module
 * @param dir : l'état que l'on souhaite appliquer
 */
void DRV8825::setDir(uint8_t dir){
        m_dir->write(dir);
}

/**
 * @brief Permet de définir si l'on souhaite bloquer ou non le moteur
 * @param en : l'état que l'on douhaite appliquer
 */
void DRV8825::setEnable(uint8_t en){
        m_en->write(en);
}

/**
 * @brief Permet de définir la vitesse du moteur pas à pas
 * @param ms : le temps en millis milliseconds
 */
void DRV8825::move(unsigned int ms){
        m_step->period_ms(ms);
        m_step->write(0.50);
}