Hallo
Ein viel besprochenes Problem ist dass die Taster beim Asuro nicht besonders zuverlässig sind.
Aufgrund mehrerer Faktoren wird manchmal ein Wert ungleich 0 zurückgegeben obwohl nichts gedrückt wurde.
Um dies vorzubeugen gibt es mehrere Möglichkeiten wie mehrfache Abfragen:
Code:
...
int T,T1,T2;
T=PollSwitch();
T1=PollSwitch();
T2=PollSwitch();
if (T==0||T1==0||T2==0)
{
...
}
...
oder indem du einfach auf einen Taster verzichtest und sagst
Code:
...
if (Taster<2)
{
...
}
...
oder etwas ausgefallener:
Code:
...
while(1)
{
StatusLED(GREEN);
MotorDir(FWD,FWD);
MotorSpeed(150,150);
while((PollSwitch()==0) || (PollSwitch()==0) || (PollSwitch()==0));
int I;
for (I=0;I<4000;I=I+1){
StatusLED(RED);
MotorDir(RWD,BREAK);
MotorSpeed(200,0);
}
}
...
Gruß Thund3r
Lesezeichen