test

Dependencies:   Servo

Committer:
gorazdko
Date:
Sun Jun 02 09:31:21 2019 +0000
Revision:
46:f7d5c27c09f5
Parent:
45:200518382f20
Child:
47:70468e4f985f
pre-release

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jonathan Austin 3:2757d7abb7d9 1 #include "mbed.h"
gorazdko 43:bda92a299378 2 //Program to 'sweep' test a 'standard RC type servo
gorazdko 43:bda92a299378 3 //Define some parameters using compiler directive '#define'
gorazdko 43:bda92a299378 4 //Check Servo DATA if 0.75ms to 2.25ms then use min=750 and max=2250
gorazdko 43:bda92a299378 5 //NB be values in microseconds (Following are generic values)
gorazdko 43:bda92a299378 6 #define MID 1500
gorazdko 43:bda92a299378 7 #define MIN 544
gorazdko 43:bda92a299378 8 #define MAX 2400
gorazdko 43:bda92a299378 9 #define STEP 50
gorazdko 43:bda92a299378 10 //Time delay between steps in milliseconds
gorazdko 43:bda92a299378 11 #define TIME 20 //100
gorazdko 43:bda92a299378 12
Jonathan Austin 3:2757d7abb7d9 13
gorazdko 43:bda92a299378 14 #define DELTA 50
gorazdko 43:bda92a299378 15
gorazdko 43:bda92a299378 16 DigitalOut myLed(LED1);
gorazdko 43:bda92a299378 17 DigitalIn myButton(USER_BUTTON);
gorazdko 46:f7d5c27c09f5 18
gorazdko 46:f7d5c27c09f5 19 DigitalIn myButton_2(D0);
gorazdko 43:bda92a299378 20
gorazdko 43:bda92a299378 21 PwmOut myServo(D3);
gorazdko 43:bda92a299378 22
gorazdko 43:bda92a299378 23
gorazdko 43:bda92a299378 24
Jonathan Austin 3:2757d7abb7d9 25
gorazdko 43:bda92a299378 26 void motor_on(void)
gorazdko 43:bda92a299378 27 {
gorazdko 43:bda92a299378 28
gorazdko 43:bda92a299378 29 //myServo.period_ms(20);
gorazdko 43:bda92a299378 30 myServo.pulsewidth_us(MID); //NB in microseconds
gorazdko 43:bda92a299378 31
gorazdko 43:bda92a299378 32 }
gorazdko 43:bda92a299378 33
gorazdko 43:bda92a299378 34 void motor_off(void)
gorazdko 43:bda92a299378 35 {
gorazdko 43:bda92a299378 36 myServo.pulsewidth_us(MIN+2*DELTA); //NB in microseconds
gorazdko 43:bda92a299378 37 }
gorazdko 43:bda92a299378 38
gorazdko 43:bda92a299378 39
gorazdko 46:f7d5c27c09f5 40 bool button_change = false;
gorazdko 43:bda92a299378 41
Jonathan Austin 3:2757d7abb7d9 42 int main() {
gorazdko 43:bda92a299378 43
gorazdko 46:f7d5c27c09f5 44 wait(1); // if (myButton)
gorazdko 43:bda92a299378 45
gorazdko 44:50aa0a0d1222 46
gorazdko 43:bda92a299378 47
gorazdko 43:bda92a299378 48
gorazdko 43:bda92a299378 49 while (1)
gorazdko 43:bda92a299378 50 {
gorazdko 46:f7d5c27c09f5 51
gorazdko 43:bda92a299378 52
gorazdko 46:f7d5c27c09f5 53 if (myButton)
gorazdko 44:50aa0a0d1222 54 {
gorazdko 44:50aa0a0d1222 55
gorazdko 46:f7d5c27c09f5 56
gorazdko 46:f7d5c27c09f5 57 myServo.pulsewidth_us(MIN); //NB in microseconds
gorazdko 46:f7d5c27c09f5 58 wait(2);
gorazdko 46:f7d5c27c09f5 59 myServo.pulsewidth_us(MID); //NB in microseconds
gorazdko 46:f7d5c27c09f5 60 wait(0.1);
gorazdko 44:50aa0a0d1222 61 }
gorazdko 46:f7d5c27c09f5 62
gorazdko 45:200518382f20 63
gorazdko 45:200518382f20 64
gorazdko 43:bda92a299378 65
gorazdko 43:bda92a299378 66
gorazdko 43:bda92a299378 67 }
gorazdko 46:f7d5c27c09f5 68
gorazdko 43:bda92a299378 69
gorazdko 43:bda92a299378 70 }