/*************************************************/
/*    自立スパイダ      チェックプログラム    */
/*              2003.12.12     by AND      */
/*************************************************/
#include <pic.h>
__CONFIG(0xFFFA); /* 初期設定 CP:OFF,PT:OFF,WT:OFF,HS */
#define T_MAX 30 /* 300msec周期でモータをON,OFFする */
#define COUNT 3 /* 繰り返し回数 */

wait0(short k)
{
/* 約(k×0.01)秒 のウェイト*/
	short i;
	short j; /* 16 Bit 変数の宣言 */
   	for(j=0;j<k;j++){ /* (k×3000)回の繰り返し */
		for(i=0;i<3000;i++){ /* 時間待ち */
		}
	}
}

main(void)
{
	short i,j;  /* 16ビット整数型変数i,jの宣言 */
	unsigned char x;  /* 符号なし8ビット整数型変数xの宣言 */
	x=0x01;  /* xに2進数の00000001を代入 */

	TRISA = 0xFE; /* A 0:output, 1,2,3,4:input */
	TRISB = 0x00; /* B0,1,2,3,4,5,6,7:output */

	PORTB=0x00; /* モータ OFF */
	for(i=0;i<5;i++){
		PORTA=0x00; /* LED消灯 */
		wait0(20); /* 0.2秒ウェイト */
		PORTA=0x01;    /* LED点灯 */
		wait0(20); /* 0.2秒ウェイト */
	}
	PORTA=0x00; /* LED消灯 */

	while(1){/* 無限ループ */
		if(RA4==0){
			PORTB=0x04; /*right forward*/
			wait0(150);
			PORTB=0x10; /*left forward*/
			wait0(150);
			PORTB=0x14; /*both forward*/
			wait0(150);
			PORTB=0x00; /*both stop*/
		}
	}
}