Project

General

Profile

Revision 1344

Final version of feedback controls project

View differences:

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