Libraire pour la controler le module DRV8825
Dependents: AresCDFMainCode_capteur_US AresCDFMainCode_us2 AresCDFMainCode
DRV8825.h@9:3615573bfe43, 2020-07-14 (annotated)
- 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?
User | Revision | Line number | New 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 |