Rev 1339 | 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 | } |