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
- Committer:
- ikrase
- Date:
- 2015-06-27
- Revision:
- 3:1d16a22386a8
- Parent:
- 2:f982504e6e84
- Child:
- 6:bad5554bb890
File content as of revision 3:1d16a22386a8:
#ifndef POLYSERVO_H
#define POLYSERVO_H
#include "mbed.h"
#include "FPointer.h"
#include <vector>
#include "SpecifiedTimeout.h"
#define SERVO_DISABLED -1 // This is going to take raw servo microsecond entries.
#define PPM_PERIOD 20000 // In microseconds
class Polyservo {
public:
std::vector<DigitalOut *> servos;
//DigitalOut * servos;
bool global_enable;
std::vector<int> positions;
int numservos;
Polyservo(DigitalOut servo_pins[], int num_pins);
void set_position(int s, int pos);
private:
Ticker period_tick;
std::vector<Timeout *> servo_timers;
//Timeout * servo_times;
uint32_t servo_set(uint32_t);
void servos_reset(void);
};
#endif