Revision 1344
Final version of feedback controls project
master.c | ||
---|---|---|
6 | 6 |
|
7 | 7 |
#define GROUP 1 |
8 | 8 |
#define MOTOR 0 |
9 |
#define ENCODER 1 |
|
9 |
#define ENCODER 132
|
|
10 | 10 |
|
11 | 11 |
#define SENDER 1 |
12 | 12 |
#define RECEIVER 0 |
13 | 13 |
|
14 |
unsigned char data[4];
|
|
14 |
int id = -1;
|
|
15 | 15 |
|
16 |
char data[2]; |
|
17 |
|
|
16 | 18 |
sentCount = 0; |
17 | 19 |
char position = 0; |
18 | 20 |
|
19 |
void packet_receive (char type, int source, unsigned char* packet, int length);
|
|
21 |
void packet_receive (char type, int source, char* packet, int length); |
|
20 | 22 |
|
21 | 23 |
PacketGroupHandler packetHandler = {GROUP, 0, 0, &packet_receive, 0}; |
22 | 24 |
|
23 |
void packet_receive (char type, int source, unsigned char* packet, int length) {
|
|
25 |
void packet_receive (char type, int source, char* packet, int length) { |
|
24 | 26 |
|
25 | 27 |
if(type == ENCODER) |
26 |
{ |
|
28 |
{ |
|
29 |
if(id == -1) |
|
30 |
id = source; |
|
31 |
if(source != id) |
|
32 |
motor1_set(1, 200); |
|
27 | 33 |
usb_putc(packet[0]); |
28 | 34 |
usb_putc(packet[1]); |
29 |
usb_putc(packet[2]); |
|
30 |
usb_putc(packet[3]); |
|
31 |
} |
|
35 |
// usb_putc(packet[2]);
|
|
36 |
// usb_putc(packet[3]);
|
|
37 |
}
|
|
32 | 38 |
|
33 | 39 |
} |
34 | 40 |
|
... | ... | |
49 | 55 |
lcd_puts("starting init"); |
50 | 56 |
data[0] = usb_getc(); |
51 | 57 |
data[1] = usb_getc(); |
52 |
data[2] = usb_getc(); |
|
53 |
data[3] = usb_getc(); |
|
58 |
//data[2] = usb_getc();
|
|
59 |
//data[3] = usb_getc();
|
|
54 | 60 |
|
55 | 61 |
lcd_puts("Done with init\n"); |
56 | 62 |
|
57 |
wl_send_global_packet(GROUP, MOTOR, data, 4, 0);
|
|
63 |
wl_send_global_packet(GROUP, MOTOR, data, 2, 0);
|
|
58 | 64 |
} |
59 | 65 |
else |
60 | 66 |
{ |
... | ... | |
67 | 73 |
{ |
68 | 74 |
data[0] = usb_getc(); |
69 | 75 |
data[1] = usb_getc(); |
70 |
data[2] = usb_getc(); |
|
71 |
data[3] = usb_getc(); |
|
72 |
wl_send_global_packet(GROUP, MOTOR, data, 4, 0);
|
|
73 |
} |
|
76 |
//data[2] = usb_getc();
|
|
77 |
//data[3] = usb_getc();
|
|
78 |
wl_send_global_packet(GROUP, MOTOR, data, 2, 0);
|
|
79 |
}
|
|
74 | 80 |
|
75 | 81 |
wl_do(); |
76 | 82 |
} |
Also available in: Unified diff