NOT FINISHED YET!!! My first try to get a self built fully working Quadrocopter based on an mbed, a self built frame and some other more or less cheap parts.
Servo_PWM/Servo_PWM.cpp@29:8b7362a2ee14, 2012-12-15 (annotated)
- Committer:
- maetugr
- Date:
- Sat Dec 15 08:42:36 2012 +0000
- Revision:
- 29:8b7362a2ee14
- Parent:
- 22:d301b455a1ad
gyro only version running ESCs on 490Hz now
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
maetugr | 15:753c5d6a63b3 | 1 | #include "Servo_PWM.h" |
maetugr | 15:753c5d6a63b3 | 2 | #include "mbed.h" |
maetugr | 15:753c5d6a63b3 | 3 | |
maetugr | 29:8b7362a2ee14 | 4 | Servo_PWM::Servo_PWM(PinName Pin, int frequency) : ServoPin(Pin) { |
maetugr | 29:8b7362a2ee14 | 5 | SetFrequency(frequency); |
maetugr | 15:753c5d6a63b3 | 6 | ServoPin = 0; |
maetugr | 21:c2a2e7cbabdd | 7 | initialize(); |
maetugr | 15:753c5d6a63b3 | 8 | } |
maetugr | 15:753c5d6a63b3 | 9 | |
maetugr | 29:8b7362a2ee14 | 10 | void Servo_PWM::SetFrequency(int frequency) { |
maetugr | 29:8b7362a2ee14 | 11 | ServoPin.period(1.0/frequency); |
maetugr | 29:8b7362a2ee14 | 12 | } |
maetugr | 29:8b7362a2ee14 | 13 | |
maetugr | 15:753c5d6a63b3 | 14 | void Servo_PWM::initialize() { |
maetugr | 15:753c5d6a63b3 | 15 | // initialize ESC |
maetugr | 21:c2a2e7cbabdd | 16 | SetPosition(0); // zero throttle |
maetugr | 15:753c5d6a63b3 | 17 | } |
maetugr | 15:753c5d6a63b3 | 18 | |
maetugr | 15:753c5d6a63b3 | 19 | void Servo_PWM::SetPosition(int position) { |
maetugr | 22:d301b455a1ad | 20 | ServoPin.pulsewidth_us(position+1000); |
maetugr | 15:753c5d6a63b3 | 21 | } |
maetugr | 15:753c5d6a63b3 | 22 | |
maetugr | 15:753c5d6a63b3 | 23 | void Servo_PWM::operator=(int position) { |
maetugr | 15:753c5d6a63b3 | 24 | SetPosition(position); |
maetugr | 15:753c5d6a63b3 | 25 | } |