ESC class used to controll standard Electronic Speed Controllers for brushless motors of RC models

Dependents:   MTQuadControl Base_Hybrid_V2 base_rekam_darurat_v1 Base_Hybrid_Latihan_Ok_Hajar_servo_pwm ... more

Simple ESC usage example

#include "mbed.h"
#include "esc.h" //include the ESC class


int main()
{
    ESC esc1(p26); //declare the ESC as connected to pin p26.
    float throttle_var = 0.5 //that means 50%.
        
    while(1)
    {
        //... update throttle_var ...
    
        esc1 = throttle_var; //memorize the throttle value (it doesn't send it to the ESC).
        
        //... do whatever you want - e.g. call esc1.setThrottle(throttle_var) again ...
        
        esc1(); //actually sets the throttle to the ESC.
        
        wait_ms(20);  //20ms is the default period of the ESC pwm; the ESC may not run faster.
    }
}

Revision:
1:735702ea5519
Parent:
0:116260c66d88
--- a/esc.h	Fri Jul 19 03:11:05 2013 +0000
+++ b/esc.h	Fri Jul 19 04:47:41 2013 +0000
@@ -104,22 +104,22 @@
      *  @param t in in the range [0.0;1.0]
      *  @return true if throttle value is in range; false otherwise.
      */
-    inline bool setThrottle (const float t);
+    bool setThrottle (const float t);
     ///Alias of setThrottle(float)
-    inline bool operator= (const float t);
+    bool operator= (const float t);
     
     /** Get the last setted throttle value
      *  @return throttle in range [0.0-1.0].
      */
-    inline float getThrottle () const;
+    float getThrottle () const;
     ///Alias of getThrottle()
-    inline operator float () const;
+    operator float () const;
     
     /** Output the throttle value to the ESC.
      */
-    inline void pulse ();
+    void pulse ();
     ///Alias of pulse()
-    inline void operator() ();
+    void operator() ();
  };
 
 #endif
\ No newline at end of file