Nurbol Nurdaulet / Mbed 2 deprecated state_machine

Dependencies:   mbed

Committer:
Nurbol
Date:
Thu Nov 24 10:18:57 2011 +0000
Revision:
0:079cf37f39ca

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Nurbol 0:079cf37f39ca 1 #include "mbed.h"
Nurbol 0:079cf37f39ca 2
Nurbol 0:079cf37f39ca 3 static int state(0);
Nurbol 0:079cf37f39ca 4
Nurbol 0:079cf37f39ca 5 int main() {
Nurbol 0:079cf37f39ca 6 while(1) {
Nurbol 0:079cf37f39ca 7 switch(state)
Nurbol 0:079cf37f39ca 8 {
Nurbol 0:079cf37f39ca 9 case 0:
Nurbol 0:079cf37f39ca 10 servo_4.pulsewidth_us(1000 + (25 * 1000) / 90);
Nurbol 0:079cf37f39ca 11 servo_0.pulsewidth_us(1000 + (0 * 1000) / 90);
Nurbol 0:079cf37f39ca 12 servo_5.pulsewidth_us(1000 + (0 * 1000) / 90);
Nurbol 0:079cf37f39ca 13 Position1p_1 = 1;
Nurbol 0:079cf37f39ca 14 Position1p_2 = 0;
Nurbol 0:079cf37f39ca 15 Position2p_1 = 1;
Nurbol 0:079cf37f39ca 16 Position2p_2 = 0;
Nurbol 0:079cf37f39ca 17 if(counter1p == 1){
Nurbol 0:079cf37f39ca 18 state = 1;
Nurbol 0:079cf37f39ca 19 }
Nurbol 0:079cf37f39ca 20 if(counter2p == 1){
Nurbol 0:079cf37f39ca 21 state = 4;
Nurbol 0:079cf37f39ca 22 }
Nurbol 0:079cf37f39ca 23 break;
Nurbol 0:079cf37f39ca 24 case 1:
Nurbol 0:079cf37f39ca 25 servo_4.pulsewidth_us(0);
Nurbol 0:079cf37f39ca 26 servo_0.pulsewidth_us(1000 + (200 * 1000) / 90);
Nurbol 0:079cf37f39ca 27 wait(1);
Nurbol 0:079cf37f39ca 28 Position1p_1 = 0;
Nurbol 0:079cf37f39ca 29 Position1p_2 = 1;
Nurbol 0:079cf37f39ca 30 if(Position1p_2 == 1){
Nurbol 0:079cf37f39ca 31 state = 2;
Nurbol 0:079cf37f39ca 32 }
Nurbol 0:079cf37f39ca 33 break;
Nurbol 0:079cf37f39ca 34 case 2:
Nurbol 0:079cf37f39ca 35 servo_4.pulsewidth_us(1000 + (25 * 1000) / 90);
Nurbol 0:079cf37f39ca 36 if(counter1p = 1){
Nurbol 0:079cf37f39ca 37 state = 3;
Nurbol 0:079cf37f39ca 38 }
Nurbol 0:079cf37f39ca 39 break;
Nurbol 0:079cf37f39ca 40 case 3:
Nurbol 0:079cf37f39ca 41 servo_4.pulsewidth_us(0);
Nurbol 0:079cf37f39ca 42 if(SW1p == 1){
Nurbol 0:079cf37f39ca 43 state = 0;
Nurbol 0:079cf37f39ca 44 }
Nurbol 0:079cf37f39ca 45 break;
Nurbol 0:079cf37f39ca 46 case 4:
Nurbol 0:079cf37f39ca 47 servo_4.pulsewidth_us(0);
Nurbol 0:079cf37f39ca 48 servo_5.pulsewidth_us(1000 + (200 * 1000) / 90);
Nurbol 0:079cf37f39ca 49 wait(1);
Nurbol 0:079cf37f39ca 50 Position2p_1 = 0;
Nurbol 0:079cf37f39ca 51 Position2p_2 = 1;
Nurbol 0:079cf37f39ca 52 if(Position2p_2 == 1){
Nurbol 0:079cf37f39ca 53 state = 5;
Nurbol 0:079cf37f39ca 54 }
Nurbol 0:079cf37f39ca 55 break;
Nurbol 0:079cf37f39ca 56 case 5:
Nurbol 0:079cf37f39ca 57 servo_4.pulsewidth_us(1000 + (25 * 1000) / 90);
Nurbol 0:079cf37f39ca 58 if(counter2p == 1){
Nurbol 0:079cf37f39ca 59 state = 6;
Nurbol 0:079cf37f39ca 60 }
Nurbol 0:079cf37f39ca 61 break;
Nurbol 0:079cf37f39ca 62 case 6:
Nurbol 0:079cf37f39ca 63 servo_4.pulsewidth_us(0);
Nurbol 0:079cf37f39ca 64 if(SW2p == 1){
Nurbol 0:079cf37f39ca 65 state = 0;
Nurbol 0:079cf37f39ca 66 }
Nurbol 0:079cf37f39ca 67 break;
Nurbol 0:079cf37f39ca 68 }
Nurbol 0:079cf37f39ca 69 }
Nurbol 0:079cf37f39ca 70 }