ich hätte es zwar etwas anders gedacht, aber wenn es so auch funktioniert ist es auch schon
mein vorschlag wäre so gewesen:
Code:
#include "asuro.h"
unsigned int i;
unsigned int t;
int main(void)
{
Init();
while(1)
{
do {
t=PollSwitch();
}while(t != PollSwitch() ); //diese schleife wird erst beendet, wenn PollSwitch zwei mal hinter einander den selben wert liefet
if(t == 0) //überprüfung ob ein taster gedrückt ist
{
MotorDir(FWD,FWD);
MotorSpeed(150,150);
}
else
{MotorDir(BREAK,RWD);}
{MotorSpeed(150,150);}
{for(i=0; i<1500; i++) Sleep(72);}
}
return 0;
}
die do-while schleife habe ich eingebaut, weil PollSwitch() bei laufenden Motoren manchmal fehlerhafte ergebnisse liefert, diese sind aber selten zweimal hinter einander. daher braucht man nur zu warten bis man zwei mal den selben wert bekommt, und dann mit dem normalen programm fortsetzen
weiter hin noch viel spaß und erfolg beim experimentiern / spielen mit asuro
Lesezeichen