ok, habe einen neuen Motor, klappt soweit, jetzt habe ich noch ein Problem mit den Tastern, alle Wiederstände sind ok, aber irgenwie stimmt da etwas nicht... habe folgendes Programm, welches soweit funktioniert: habe es erst ohne den "Rechts" Teil gemacht und alles klappt" mit dem "Rechts" Teil, führt er immer die if schleife für rechts aus... etwas komisch...
Code:
#include "asuro.h"
int main(void)
{
Init();
int i=0;
unsigned char t1, t2;
while(1)
{
MotorDir(FWD,FWD);
MotorSpeed(200,200);
StatusLED(GREEN);
SerWrite("Norm.",5);
t1 = PollSwitch();
t2 = PollSwitch();
if(t1 && t2 && t1 == t2)
{
if((t1 == 16) || (t1 == 18) || (t1 == 2))
{
SerWrite("Front",5);
for(i=0; i<500; i++)
{
StatusLED(RED);
MotorDir(RWD,RWD);
MotorSpeed(100,200);
Sleep(216);
}
MotorSpeed(0,0);
}
}
t1 = PollSwitch();
t2 = PollSwitch();
if(t1 && t2 && t1 == t2)
{
if((t1 == 32) || (t1 == 48))
{
SerWrite("Left.",5);
for(i=0; i<300; i++)
{
StatusLED(RED);
MotorDir(RWD,RWD);
MotorSpeed(30,150);
Sleep(216);
}
MotorSpeed(0,0);
}
}
t1 = PollSwitch();
t2 = PollSwitch();
if(t1 && t2 && t1 == t2)
{
if((t1 == 1) || (t1 == 3))
{
SerWrite("Right",5);
for(i=0; i<300; i++)
{
StatusLED(RED);
MotorDir(RWD,RWD);
MotorSpeed(150,30);
Sleep(216);
}
MotorSpeed(0,0);
}
}
}
while(1);
return 0;
}
im Prinzip liest er also die Taster richtig aus da ich ja z.b bei 16 etwas mache. aber in dem moment, wo ich den 6er verwende nimmt er den Immer
Lesezeichen