Ich habe nun auch ein erstes Programm geschrieben, jedoch habe ich eine Frage zur doppelten Abfrage der PollSwitch Funktion. Kann ich dies mit || ,, && oder ++ bewältigen?
Mein Problem die Störgeräusche der Asuro Motoren.

Hier noch das Programm:

Code:
#include "asuro.h"


//Tasten

#define K6		PollSwitch()==1		//Taste 6
#define K5		PollSwitch()==2		//Taste 5
#define K4		PollSwitch()==4		//Taste	4
#define K3		PollSwitch()==8		//Taste 3
#define K2		PollSwitch()==16	//Taste 2
#define K1		PollSwitch()==32	//Taste 1


//Tasten Kombinationen

#define K65		PollSwitch()==3		//Taste 6+5
#define K54		PollSwitch()==6		//Taste 5+4
#define K43		PollSwitch()==12	//Taste 4+3
#define K32		PollSwitch()==24	//Taste 3+2
#define K21		PollSwitch()==48	//Taste 2+1
#define K52		PollSwitch()==18	//Taste 5+2

#define K5432	PollSwitch()==30	//Taste 5+4+3+2



//Warten

#define WAIT1 for (i=0; i<1000; i++) {Sleep(72);}	//1 Sekunde

#define WAIT2 for (i=0; i<400; i++) {Sleep(72);}	//0.5 Sekunde



//Fahrten

#define VORWERTS	StatusLED(GREEN); BackLED(ON,ON); MotorDir(FWD,FWD); MotorSpeed(124,120);

#define LINKS 		StatusLED(YELLOW); BackLED(OFF,ON); MotorDir(RWD,RWD); MotorSpeed(124,120); WAIT1; MotorDir (FWD,RWD); WAIT2; MotorSpeed(0,0); WAIT1;

#define RECHTS		StatusLED(RED); BackLED(ON,OFF); MotorDir(RWD,RWD); MotorSpeed(124,120); WAIT1; MotorDir (RWD,FWD); WAIT2; MotorSpeed(0,0); WAIT1;





int main(void)
{

	unsigned int i;

	Init();
	
	StatusLED(GREEN);
	BackLED(ON,ON);
	MotorDir(FWD,FWD);
	MotorSpeed(124,120);
	
	while (1) {
	
	if 		 (K6)
		{RECHTS}
	
	else if (K5)
		{RECHTS}
		
	else if (K4)
		{RECHTS}
	
	else if (K3)
		{LINKS}
	
	else if (K2)
		{LINKS}
	
	else if (K1)
		{LINKS}
	
	else {VORWERTS}
	}
}