int main()
{
	// Connect to the Arduino
	startSerial(PORT_NAME, BAUD_RATE, 8, 'N', 1, 5);

	// Sleep for two seconds
	printf("WAITING TWO SECONDS FOR ARDUINO TO REBOOT\n");
	sleep(2);
	printf("DONE\n");

	// Spawn receiver thread
	pthread_t recv;

	pthread_create(&recv, NULL, receiveThread, NULL);

	// Send a hello packet
	TPacket helloPacket;

	helloPacket.packetType = PACKET_TYPE_HELLO;
	sendPacket(&helloPacket);

	while(!exitFlag)
	{
		char ch;

		printf("Command (w=forward, s=reverse, a=turn left, d=turn right x=stop, c=clear stats, g=get stats, m=adjust, y=store, z=backtrack, r=exit) q=Turn Left for 15 degrees at 55 power, e=Turn Right for 15 degrees at 55 power o=Copy stack, p=Pop Stack\n");
		scanf("%c", &ch);

		// Purge extraneous characters from input stream
		flushInput();

		sendCommand(ch);
	}

	printf("Closing connection to Arduino.\n");
	endSerial();
}
Esempio n. 2
0
	void Serial::SerialBegin()
	{
		configureSerial();
		startSerial();
		
	}