@@ -18,30 +18,26 @@ STSPIN32G4::~STSPIN32G4(){
1818
1919
2020
21- int STSPIN32G4::initSTSPIN (){
21+ int STSPIN32G4::init (){
2222 // init pins
2323 pinMode (STSPIN32G4_PIN_WAKE, OUTPUT);
2424 digitalWrite (STSPIN32G4_PIN_WAKE, LOW);
2525 pinMode (STSPIN32G4_PIN_READY, INPUT_PULLUP);
2626 pinMode (STSPIN32G4_PIN_FAULT, INPUT_PULLUP);
27- pinMode (STSPIN32G4_PIN_INUH, OUTPUT);
28- pinMode (STSPIN32G4_PIN_INUL, OUTPUT);
29- pinMode (STSPIN32G4_PIN_INVH, OUTPUT);
30- pinMode (STSPIN32G4_PIN_INVL, OUTPUT);
31- pinMode (STSPIN32G4_PIN_INWH, OUTPUT);
32- pinMode (STSPIN32G4_PIN_INWL, OUTPUT);
33- digitalWrite (STSPIN32G4_PIN_INUH, LOW);
34- digitalWrite (STSPIN32G4_PIN_INUL, LOW);
35- digitalWrite (STSPIN32G4_PIN_INVH, LOW);
36- digitalWrite (STSPIN32G4_PIN_INVL, LOW);
37- digitalWrite (STSPIN32G4_PIN_INWH, LOW);
38- digitalWrite (STSPIN32G4_PIN_INWL, LOW);
27+
28+ int result = this ->BLDCDriver6PWM ::init ();
29+ if (result == 0 ) return result;
30+ setPwm (0 ,0 ,0 ); // set the phases to off
3931
4032 // init I2C
4133 _wire.begin ();
4234
35+ delayMicroseconds (50 ); // give driver a moment to wake up
36+ clearFaults (); // clear the faults
37+
4338 // TODO init fault monitor
44- return 0 ;
39+
40+ return isReady () ? 1 : 0 ;
4541};
4642
4743
0 commit comments