test

Dependencies:   Servo

Committer:
gorazdko
Date:
Sun Jun 02 09:52:57 2019 +0000
Revision:
48:4ac030bc2910
Parent:
47:70468e4f985f
Child:
49:6ebde58afad3
The very 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 48:4ac030bc2910 57 for (int i=MAX; i>MIN; i=i-10)
gorazdko 48:4ac030bc2910 58 {
gorazdko 48:4ac030bc2910 59 myServo.pulsewidth_us(i); //NB in microseconds
gorazdko 48:4ac030bc2910 60 wait_ms(25);
gorazdko 48:4ac030bc2910 61 }
gorazdko 47:70468e4f985f 62
gorazdko 48:4ac030bc2910 63 for (int i=MIN; i<MAX; i=i+10)
gorazdko 48:4ac030bc2910 64 {
gorazdko 48:4ac030bc2910 65 myServo.pulsewidth_us(i); //NB in microseconds
gorazdko 48:4ac030bc2910 66 wait_ms(25);
gorazdko 48:4ac030bc2910 67 }
gorazdko 48:4ac030bc2910 68
gorazdko 48:4ac030bc2910 69 // wait(1);
gorazdko 48:4ac030bc2910 70
gorazdko 48:4ac030bc2910 71
gorazdko 48:4ac030bc2910 72
gorazdko 48:4ac030bc2910 73
gorazdko 44:50aa0a0d1222 74 }
gorazdko 46:f7d5c27c09f5 75
gorazdko 45:200518382f20 76
gorazdko 45:200518382f20 77
gorazdko 43:bda92a299378 78
gorazdko 43:bda92a299378 79
gorazdko 43:bda92a299378 80 }
gorazdko 46:f7d5c27c09f5 81
gorazdko 43:bda92a299378 82
gorazdko 43:bda92a299378 83 }