das mit der ereignissteuerung ist noch in der mache...
Dieser
Code:
void halbe_sec_vorwaerts(void)
{
currentMillis = millis();
if (currentMillis - previousMillis > dauer_fahrt)
{
Serial.println("halbe sec vorwärts");
motor_hl->setSpeed(s_speed);
motor_hr->setSpeed(s_speed+1);
motor_vr->setSpeed(s_speed+1);
motor_vl->setSpeed(s_speed);
motor_hl->run(FORWARD);
motor_hr->run(FORWARD);
motor_vr->run(FORWARD);
motor_vl->run(FORWARD);
dauer_fahrt = 500;
}
}
sorgt doch dafür, dass die motoren für (hier) eine halbe sekunde mit der hier vorgegebenen geschwindigkeit und richtung eingeschaltet werden und bleiben. Also dass der roboter 30sec in eine bestimmte richtung fährt, während er auch was anderes machen kann...
Oder habe ich da wieder mal was missverstanden?
die delay alternative machte das zumindest, allerdings blockierend, was ich ja nicht will...
Lesezeichen