Incomplete library for configuration of a DRV8301 pre-driver through a SPI interface.
DRV8301 is 3-Phase Brushless Motor Pre-Driver with Dual Current Sense Amps and Buck Converter (PWM Ctrl w/ SPI). Please find more information on Texas Instruments web pages and datasheet.
DRV8301.h@3:227ecd07b9cd, 2015-11-24 (annotated)
- Committer:
- pantunovi
- Date:
- Tue Nov 24 13:22:30 2015 +0000
- Revision:
- 3:227ecd07b9cd
- Parent:
- 2:bdca7d22b783
- Child:
- 4:98c76c7b8020
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pantunovi | 0:2825ac4882fd | 1 | #ifndef DRV8301_H |
pantunovi | 0:2825ac4882fd | 2 | #define DRV8301_H |
pantunovi | 0:2825ac4882fd | 3 | |
pantunovi | 0:2825ac4882fd | 4 | #include "mbed.h" |
pantunovi | 0:2825ac4882fd | 5 | |
pantunovi | 0:2825ac4882fd | 6 | class DRV8301{ |
pantunovi | 0:2825ac4882fd | 7 | public: |
pantunovi | 3:227ecd07b9cd | 8 | DRV8301(PinName cs, PinName mosi, PinName miso, PinName sck, PinName en_gate); |
pantunovi | 3:227ecd07b9cd | 9 | // uint8_t input; |
pantunovi | 0:2825ac4882fd | 10 | private: |
pantunovi | 0:2825ac4882fd | 11 | //varijable |
pantunovi | 3:227ecd07b9cd | 12 | DigitalOut cs; |
pantunovi | 3:227ecd07b9cd | 13 | DigitalOut mosi; |
pantunovi | 3:227ecd07b9cd | 14 | DigitalIn miso; |
pantunovi | 3:227ecd07b9cd | 15 | DigitalOut sck; |
pantunovi | 3:227ecd07b9cd | 16 | DigitalOut en_gate; |
pantunovi | 0:2825ac4882fd | 17 | uint16_t register1; |
pantunovi | 0:2825ac4882fd | 18 | uint16_t register2; |
pantunovi | 0:2825ac4882fd | 19 | int maskPWM; |
pantunovi | 0:2825ac4882fd | 20 | int maskOCP; |
pantunovi | 0:2825ac4882fd | 21 | int maskOCTW; |
pantunovi | 0:2825ac4882fd | 22 | int maskGain; |
pantunovi | 0:2825ac4882fd | 23 | int maskCurrentLimit; |
pantunovi | 3:227ecd07b9cd | 24 | uint16_t statReg1; |
pantunovi | 3:227ecd07b9cd | 25 | uint16_t statReg2; |
pantunovi | 3:227ecd07b9cd | 26 | uint16_t registerStatus1; |
pantunovi | 3:227ecd07b9cd | 27 | uint16_t registerStatus2; |
pantunovi | 0:2825ac4882fd | 28 | //funkcije |
pantunovi | 0:2825ac4882fd | 29 | void startup(); |
pantunovi | 0:2825ac4882fd | 30 | void setCurrentLimit(uint8_t input); |
pantunovi | 0:2825ac4882fd | 31 | void setGain(uint8_t input); |
pantunovi | 0:2825ac4882fd | 32 | void setPWMNumber(uint8_t input); |
pantunovi | 0:2825ac4882fd | 33 | void setOCPMode(uint8_t input); |
pantunovi | 0:2825ac4882fd | 34 | void setOCTW(uint8_t input); |
pantunovi | 0:2825ac4882fd | 35 | uint16_t getRegister1(); |
pantunovi | 3:227ecd07b9cd | 36 | uint16_t getRegister2(); |
pantunovi | 3:227ecd07b9cd | 37 | uint16_t readStatReg1(); |
pantunovi | 3:227ecd07b9cd | 38 | uint16_t readStatReg2(); |
pantunovi | 3:227ecd07b9cd | 39 | |
pantunovi | 0:2825ac4882fd | 40 | }; |
pantunovi | 0:2825ac4882fd | 41 | #endif |