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.

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?

UserRevisionLine numberNew 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