Subversion Repositories shark

Rev

Rev 1339 | Rev 1390 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1331 giacomo 1
/*
2
 * Project: S.Ha.R.K.
3
 *
4
 * Coordinators: Giorgio Buttazzo <giorgio@sssup.it>
5
 *
6
 * ReTiS Lab (Scuola Superiore S.Anna - Pisa - Italy)
7
 *
8
 * http://www.sssup.it
9
 * http://retis.sssup.it
10
 * http://shark.sssup.it
11
 */
12
 
13
#include "chimera.h"
14
 
15
void my_close(void *arg)
16
{
17
        int i;
18
        TIME tmp;
19
 
20
        end_send();
21
 
22
        for (i=3; i<MAX_PROC; i++){
23
                if (!jet_getstat(i, NULL, &tmp, NULL, NULL))
24
                        kern_printf("Task Name : %s - Max Time  : %d\n", proc_table[i].name, (int)tmp);
25
        }
26
}
27
 
1333 giacomo 28
void action_stand_up(void) {
29
 
1334 giacomo 30
  static struct action_event e[20];
1339 giacomo 31
  int i = 0;
32
 
33
  status.power = 1;
34
 
35
  kern_gettime(&(e[i].time));
36
  ADDUSEC2TIMESPEC(10000000,&(e[i].time));
1333 giacomo 37
 
1339 giacomo 38
  e[i].type = EVT_SET_MASK_LEG_ANGLE;
1359 giacomo 39
  e[i].mask = 0x3F;
1339 giacomo 40
  e[i].ang.a = 0 * 3600;
1359 giacomo 41
  e[i].ang.b = 70 * 3600;
1339 giacomo 42
  e[i].ang.c = 0;
43
  e[i].pwm = 7;
1333 giacomo 44
 
1339 giacomo 45
  insert_action_event(&(e[i]));
1333 giacomo 46
 
1339 giacomo 47
  kern_gettime(&(e[i+1].time));
48
  ADDUSEC2TIMESPEC(11000000,&(e[i+1].time));
1333 giacomo 49
 
1339 giacomo 50
  e[i+1].type = EVT_SET_MASK_LEG_ANGLE;
1359 giacomo 51
  e[i+1].mask = 0x3F;
1339 giacomo 52
  e[i+1].ang.a = 90 * 3600;
1359 giacomo 53
  e[i+1].ang.b = 70 * 3600;
1339 giacomo 54
  e[i+1].ang.c = 0;
55
  e[i+1].pwm = 7;    
56
 
57
  insert_action_event(&(e[i+1]));
58
 
59
  kern_gettime(&(e[i+2].time));
60
  ADDUSEC2TIMESPEC(12000000,&(e[i+2].time));
1333 giacomo 61
 
1339 giacomo 62
  e[i+2].type = EVT_SET_MASK_LEG_ANGLE;
1359 giacomo 63
  e[i+2].mask = 0x3F;
1339 giacomo 64
  e[i+2].ang.a = 90 * 3600;
65
  e[i+2].ang.b = -50 * 3600;
66
  e[i+2].ang.c = 0;
67
  e[i+2].pwm = 7;
68
 
69
  insert_action_event(&(e[i+2]));
1334 giacomo 70
 
1339 giacomo 71
  kern_gettime(&(e[i+3].time));
72
  ADDUSEC2TIMESPEC(13000000,&(e[i+3].time));
1333 giacomo 73
 
1339 giacomo 74
  e[i+3].type = EVT_SET_MASK_LEG_ANGLE;
1359 giacomo 75
  e[i+3].mask = 0x3F;
1339 giacomo 76
  e[i+3].ang.a = 90 * 3600;
77
  e[i+3].ang.b = 0 * 3600;
78
  e[i+3].ang.c = 0;
79
  e[i+3].pwm = 7;
1334 giacomo 80
 
1339 giacomo 81
  insert_action_event(&(e[i+3]));
1336 giacomo 82
 
1339 giacomo 83
  kern_gettime(&(e[i+4].time));
84
  ADDUSEC2TIMESPEC(15000000,&(e[i+4].time));
1334 giacomo 85
 
1339 giacomo 86
  e[i+4].type = EVT_SET_MASK_LEG_ANGLE;
1359 giacomo 87
  e[i+4].mask = 0x3F;
1339 giacomo 88
  e[i+4].ang.a = 90 * 3600;
89
  e[i+4].ang.b = 0 * 3600;
90
  e[i+4].ang.c = 0;
91
  e[i+4].pwm = 7;
92
 
93
  insert_action_event(&(e[i+4]));
1335 giacomo 94
 
1333 giacomo 95
}
96
 
1331 giacomo 97
int main(int argc, char **argv)
98
{
99
        TIME seme;
100
 
101
        seme = sys_gettime(NULL);
102
        srand(seme);
103
 
104
        sys_atrunlevel(my_close, NULL, RUNLEVEL_BEFORE_EXIT);
105
 
1335 giacomo 106
        clear();
107
 
1331 giacomo 108
        init_send();            /* Comunication */
109
        init_key();             /* Keyboard */
110
 
1359 giacomo 111
        //action_stand_up();
1333 giacomo 112
 
1331 giacomo 113
        return 0;
1359 giacomo 114
 
1331 giacomo 115
}