PIC code for The Zero-G Eye.



#include <16F84.h>
#fuses HS,NOWDT,NOPROTECT,PUT
#use Delay(Clock=10000000)
#use fast_io(B)
#use RS232(Baud=38400, Xmit=PIN_B1, Rcv=PIN_B5)

#define TORADIO PIN_A2

void wait_ten(int i)
{
	for( ; i!=0 ; i--)
		delay_us(10);
}


main()
{
int c;
int POS1, POS2, POS3, POS4, POS5, POS6;
POS1 = 125;
POS2 = 125;
POS3 = 125;
POS4 = 125;
POS5 = 125;
POS6 = 125;
c = 0x00;

set_tris_b(0x30);

while(1){
	c = 0x00;
	do{c = getchar();} while(c != 0xFF);

	POS1 = getchar();
	POS2 = getchar();
	POS3 = getchar();
	POS4 = getchar();
	POS5 = getchar();
	POS6 = getchar();

	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS1);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS2);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS3);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS4);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS5);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
		wait_ten(POS6);
	OUTPUT_LOW(TORADIO);
		delay_us(400);
	OUTPUT_HIGH(TORADIO);
	}
}