 #define STEER_RUN 	2000
 #define STEER_LUN       1000
 #define STEER_TIME 	800
+#define STEER_UNIT      0.1
 #define STEER_INTER_1   2 //pin 21
 #define STEER_INTER_2   3 //pin 20
 #define STEER_INTER_G   4 //pin 19

Servo brake;

int readSpeed;
volatile int steeringAngle = 0;
int steerSetTime;
boolean forwardDirection = true;
volatile boolean brake_state = false;

  setTime();
}

void stopSteering()
{
  steer.writeMicroseconds(1500);
}

//steer_inter_1 is called when ever the opical encoder inits a interupt
// that is defined in the Setup(). When the 1 wire wiggles steer_inter_1
// checks the statis of the 2 wire to deturmine the direction the wheel is 
// turning and sets steeringAngle plus or minus the STEER_UNIT accordingly
void steer_inter_1()
{
  inter_1_state = !inter_1_state;
  if (inter_2_state)
  {
    if(inter_1_state)
      steeringAngle = steeringAngle - STEER_UNIT;
    else
      steeringAngle = steeringAngle + STEER_UNIT;
  }
  else
  {
    if(inter_1_state)
      steeringAngle = steeringAngle + STEER_UNIT;
    else
      steeringAngle = steeringAngle - STEER_UNIT;
  }    
}   

void steer_inter_2()
{
  inter_2_state = !inter_2_state;
  if (inter_1_state)
  {
    if(inter_2_state)
      steeringAngle = steeringAngle + STEER_UNIT;
    else
      steeringAngle = steeringAngle - STEER_UNIT;
  }
  else
  {
    if(inter_1_state)
      steeringAngle = steeringAngle - STEER_UNIT;
    else
      steeringAngle = steeringAngle + STEER_UNIT;
  }    
}   

void Steering()
{
