void turn() {
  // Default Brake
  int _INA = LOW;
  int _INB = LOW;
  int _speed = round(speed * 255);

  // Amount of turn is based on potentiometer reading

  if(direction == TURN_DIRECTION_LEFT) {
    _INA = LOW;
    _INB = HIGH;
  } else if(direction == TURN_DIRECTION_RIGHT) {
    _INA = HIGH;
    _INB = LOW;    
  } else if(direction == TURN_DIRECTION_BRAKE) {
    _INA = LOW;
    _INB = LOW;
    // _INA = HIGH;
    // _INB = HIGH;
  }

  analogWrite(PIN_STEER_PWM, _speed);

  //digitalWrite(SPIN_STEER_INA1, _INA);
  //digitalWrite(SPIN_STEER_INB1, _INB);
  setRegisterPin(SPIN_STEER_INA1, _INA);
  setRegisterPin(SPIN_STEER_INB1, _INB);
}
Beispiel #2
0
void display_bit_pattern(int cycle) {
        clearRegisters();
        int index;
        for (index = 0 ; index < SR_MAX ; index++) {
            setRegisterPin(index, (cycle & (1 << index)) > 0 ? HIGH : LOW);
        }
        writeRegisters();
}