Exemplo n.º 1
0
void cameraTest(SmartCar * smartCar) {
	AIData data[2];
	int16_t pos[2]; 
	
	while (1) {
		AIData_init(&data[0], &smartCar->camera[0]);
		AIData_init(&data[1], &smartCar->camera[1]);

		binarization(&data[0]);
		binarization(&data[1]);
		
 		dumpData(data[0].arr, &smartCar->barLED[0]);
		dumpData(data[1].arr, &smartCar->barLED[1]);

		pos[0] = findIndexRL(&data[0]);
		pos[1] = findIndexLR(&data[1]);
		
		Segment_print(&smartCar->segment[0], (smartCar->camera[1].average + smartCar->camera[0].average)/2);
		Segment_print(&smartCar->segment[1], handling(pos[0], pos[1],smartCar->motor.targetSpeed));
		Segment_print(&smartCar->segment[2], Camera_getInterval() / 100);
		
		switch (board.button.check()) {
		case 4:
			Segment_print(&smartCar->segment[0], 0);
			Segment_print(&smartCar->segment[1], 0);
			Segment_print(&smartCar->segment[2], 0);
			return;
		}
	}
}
Exemplo n.º 2
0
/**
 * dissect/print packet
 */
void
got_packet(u_char *args, const struct pcap_pkthdr *header, const u_char *packetReceived)
{
		static int count = 1;                   /* packet counter */
		u_char *packet;						 	/* Packet Pointer */

		printf("\nPacket number %d:\n", count);
		count++;

		if (header->caplen != header->len)
		{
			printf("Snaplen value is not enough to capture the whole packet as it is on wire \n");
			exit(1);
		}
		packet= (u_char *) malloc(header->caplen);
		memcpy(packet,packetReceived,header->caplen);


		//Insert( packet, L, P );
		handling(packet);
		free(packet);
		return;


}  // end of the function got_packet
Exemplo n.º 3
0
int main(int argc, char *argv[])
{
    int s, c, cli_size;
    struct sockaddr_in srv, cli;

    if (argc != 2)
    {
        fprintf(stderr, "usage: %s port\n", argv[0]);
        return 1;
    }

    s = socket(AF_INET, SOCK_STREAM, 0);
    if (s == -1)
    {
        perror("socket() failed");
        return 2;
    }

    srv.sin_addr.s_addr = INADDR_ANY;
    srv.sin_port = htons( (unsigned short int) atol(argv[1]));
    srv.sin_family = AF_INET;

    if (bind(s, &srv, sizeof(srv)) == -1)
    {
        perror("bind() failed");
        return 3;
    }

    if (listen(s, 3) == -1)
    {
        perror("listen() failed");
        return 4;
    }

    for(;;)
    {
        c = accept(s, &cli, &cli_size);
        if (c == -1)
        {
            perror("accept() failed");
            return 5;
        }

        printf("client from %s", inet_ntoa(cli.sin_addr));
        if (handling(c) == -1) fprintf(stderr, "%s: handling() failed", argv[0]);
        
        close(c);
    }
    return 0;
}