Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
PolyServo.h
00001 #ifndef POLYSERVO_H 00002 #define POLYSERVO_H 00003 00004 #include "mbed.h" 00005 //#include "FPointer.h" 00006 #include <vector> 00007 //#include "SpecifiedTimeout.h" 00008 00009 00010 #define SERVO_DISABLED -1 // This is going to take raw servo microsecond entries. 00011 #define PPM_PERIOD 20000 // In microseconds 00012 #define NUM_SERVOS 12 00013 00014 //void servo_set(int id); 00015 00016 00017 class Polyservo { 00018 public: 00019 00020 std::vector<DigitalOut *> servos; 00021 //DigitalOut * servos; 00022 00023 //bool global_enable; 00024 int positions[NUM_SERVOS]; 00025 int numservos; 00026 void disable(); 00027 void enable(); 00028 00029 Polyservo(DigitalOut servo_pins[]); 00030 void set_position(int s, int pos); 00031 00032 typedef void (Polyservo::*PolyservoMbr)(void); 00033 00034 00035 00036 00037 00038 00039 private: 00040 00041 Ticker period_tick; 00042 std::vector<Timeout *> servo_timers; 00043 //Timeout * servo_times; 00044 00045 //void servo_set(int id); 00046 00047 void servos_reset(void); 00048 00049 bool global_enable; 00050 00051 void servo0_set(void); 00052 void servo1_set(void); 00053 void servo2_set(void); 00054 void servo3_set(void); 00055 void servo4_set(void); 00056 void servo5_set(void); 00057 void servo6_set(void); 00058 void servo7_set(void); 00059 void servo8_set(void); 00060 void servo9_set(void); 00061 void servo10_set(void); 00062 void servo11_set(void); 00063 //void servo12_set(void); 00064 00065 00066 00067 //void (Polyservo::*)(void) myPtr; 00068 PolyservoMbr servo_sets[12]; 00069 00070 00071 00072 00073 00074 00075 00076 00077 00078 00079 00080 00081 00082 00083 }; 00084 00085 00086 00087 00088 #endif
Generated on Mon Jul 18 2022 04:47:45 by
1.7.2