Kildekode til robot
Fork of PRO1 by
Embed:
(wiki syntax)
Show/hide line numbers
nucleo_servo.cpp
00001 #include "mbed.h" 00002 #include "nucleo_servo.h" 00003 00004 Servo::Servo(PinName pin){ 00005 servoPWM = new PwmOut(pin); 00006 servoPWM->period_ms(20); //Do not change ;) 00007 servoPWM->pulsewidth_us(600); 00008 degrees = 0; 00009 } 00010 Servo::~Servo(){ 00011 delete servoPWM; 00012 } 00013 00014 void Servo::set_position(float deg){ 00015 degrees = deg; 00016 if(degrees > 180)degrees = 180; 00017 if(degrees < 0)degrees = 0; 00018 int pw_us = 640 + (degrees / 180 * 1900); 00019 servoPWM->pulsewidth_us(pw_us); 00020 } 00021 00022 void Servo::turn_left(float deg){ 00023 degrees -= deg; 00024 set_position(degrees); 00025 } 00026 00027 void Servo::turn_right(float deg){ 00028 degrees += deg; 00029 set_position(degrees); 00030 }
Generated on Tue Jul 12 2022 22:02:46 by
1.7.2
