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@15:753c5d6a63b3, 2012-10-29 (annotated)
- Committer:
- maetugr
- Date:
- Mon Oct 29 16:43:10 2012 +0000
- Revision:
- 15:753c5d6a63b3
- Child:
- 21:c2a2e7cbabdd
I2C/Interrupt-Problem gel?st!! erste Versuche an gespannter schnur, falsche PID werte mitten im umschreiben auf I2C_Sensor mutterklasse
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 | 15:753c5d6a63b3 | 4 | Servo_PWM::Servo_PWM(PinName Pin) : ServoPin(Pin) { |
maetugr | 15:753c5d6a63b3 | 5 | ServoPin.period(0.020); |
maetugr | 15:753c5d6a63b3 | 6 | ServoPin = 0; |
maetugr | 15:753c5d6a63b3 | 7 | initialize(); // TODO: Works? |
maetugr | 15:753c5d6a63b3 | 8 | } |
maetugr | 15:753c5d6a63b3 | 9 | |
maetugr | 15:753c5d6a63b3 | 10 | void Servo_PWM::initialize() { |
maetugr | 15:753c5d6a63b3 | 11 | // initialize ESC |
maetugr | 15:753c5d6a63b3 | 12 | SetPosition(1000); // full throttle |
maetugr | 15:753c5d6a63b3 | 13 | wait(0.01); // for 0.01 secs |
maetugr | 15:753c5d6a63b3 | 14 | SetPosition(1000); // low throttle |
maetugr | 15:753c5d6a63b3 | 15 | } |
maetugr | 15:753c5d6a63b3 | 16 | |
maetugr | 15:753c5d6a63b3 | 17 | void Servo_PWM::SetPosition(int position) { |
maetugr | 15:753c5d6a63b3 | 18 | ServoPin.pulsewidth(position/1000000.0); |
maetugr | 15:753c5d6a63b3 | 19 | } |
maetugr | 15:753c5d6a63b3 | 20 | |
maetugr | 15:753c5d6a63b3 | 21 | void Servo_PWM::operator=(int position) { |
maetugr | 15:753c5d6a63b3 | 22 | SetPosition(position); |
maetugr | 15:753c5d6a63b3 | 23 | } |