Libraire pour la controler le module DRV8825

Dependencies:   mbed FastPWM

Dependents:   AresCDFMainCode_capteur_US AresCDFMainCode_us2 AresCDFMainCode

Committer:
g0dd4
Date:
Tue Jul 14 09:31:25 2020 +0000
Revision:
9:3615573bfe43
Parent:
8:f461cf45d0b1
mise a jour V1.1 ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
g0dd4 0:4bf91783cb4d 1 #ifndef DRV8825_H
g0dd4 0:4bf91783cb4d 2 #define DRV8825_H
g0dd4 0:4bf91783cb4d 3
g0dd4 0:4bf91783cb4d 4 #include "mbed.h"
g0dd4 0:4bf91783cb4d 5 #include "FastPWM.h"
g0dd4 0:4bf91783cb4d 6
g0dd4 8:f461cf45d0b1 7 #define PI 3.14
g0dd4 8:f461cf45d0b1 8 #define E6 1000000
g0dd4 8:f461cf45d0b1 9 #define E3 1000
g0dd4 8:f461cf45d0b1 10 #define M_TO_S 60
g0dd4 8:f461cf45d0b1 11
g0dd4 0:4bf91783cb4d 12 #define FORWARD 1
g0dd4 0:4bf91783cb4d 13 #define BACKWARD 0
g0dd4 0:4bf91783cb4d 14
g0dd4 0:4bf91783cb4d 15 #define START 0
g0dd4 0:4bf91783cb4d 16 #define STOP 1
g0dd4 0:4bf91783cb4d 17
g0dd4 3:ec3e5c8dd41b 18
g0dd4 8:f461cf45d0b1 19
g0dd4 3:ec3e5c8dd41b 20 /**
g0dd4 3:ec3e5c8dd41b 21 * @brief Class qui permet de contrôler le modul
g0dd4 3:ec3e5c8dd41b 22 * @author Aissaoui Yannis
g0dd4 3:ec3e5c8dd41b 23 */
g0dd4 0:4bf91783cb4d 24 class DRV8825{
g0dd4 0:4bf91783cb4d 25 public:
g0dd4 0:4bf91783cb4d 26 DRV8825();
g0dd4 8:f461cf45d0b1 27 DRV8825(PinName pinEN, PinName pinDIR, PinName pinStep);
g0dd4 8:f461cf45d0b1 28 DRV8825(PinName pinEN, PinName pinDIR, PinName pinStep, float r, unsigned int pas);
g0dd4 0:4bf91783cb4d 29
g0dd4 0:4bf91783cb4d 30 void setDir(uint8_t dir);
g0dd4 0:4bf91783cb4d 31 void setEnable(uint8_t en);
g0dd4 8:f461cf45d0b1 32 void moveRotSpeed(float viteseR);
g0dd4 8:f461cf45d0b1 33 void moveLinSpeed(float vitesseL);
g0dd4 0:4bf91783cb4d 34
g0dd4 0:4bf91783cb4d 35
g0dd4 0:4bf91783cb4d 36 private:
g0dd4 8:f461cf45d0b1 37 /**
g0dd4 8:f461cf45d0b1 38 * @brief m_pas : correspond au nombres de pas du moteur
g0dd4 8:f461cf45d0b1 39 */
g0dd4 8:f461cf45d0b1 40 unsigned int m_pas;
g0dd4 8:f461cf45d0b1 41 /**
g0dd4 8:f461cf45d0b1 42 * @brief m_rayon : rayon de la roue (en mm)
g0dd4 8:f461cf45d0b1 43 */
g0dd4 8:f461cf45d0b1 44 float m_rayon;
g0dd4 8:f461cf45d0b1 45 /**
g0dd4 8:f461cf45d0b1 46 * @brief m_en : pin pour contrôler le blocage des roues
g0dd4 8:f461cf45d0b1 47 */
g0dd4 0:4bf91783cb4d 48 DigitalOut* m_en;
g0dd4 8:f461cf45d0b1 49 /**
g0dd4 8:f461cf45d0b1 50 * @brief m_dir : pin pour contrôler le sens de rotation
g0dd4 8:f461cf45d0b1 51 */
g0dd4 0:4bf91783cb4d 52 DigitalOut* m_dir;
g0dd4 8:f461cf45d0b1 53 /**
g0dd4 8:f461cf45d0b1 54 * @brief m_step : pin pour contrôler la vitesse du moteur
g0dd4 8:f461cf45d0b1 55 */
g0dd4 0:4bf91783cb4d 56 FastPWM* m_step;
g0dd4 0:4bf91783cb4d 57
g0dd4 0:4bf91783cb4d 58 };
g0dd4 0:4bf91783cb4d 59
g0dd4 0:4bf91783cb4d 60
g0dd4 0:4bf91783cb4d 61 #endif //DRV8825_H