sind verschachtelte schleifen nicht möglich? oder habe ich irgentwas falsch gemacht?

Code:
#include "asuro.h"


int main(void) {

int RWD=0;
int a=1;
Init();
while(a=1) {

  if (RWD=0) {
  
  while (PollSwitch()==0) {
    BackLED(OFF,OFF);
    MotorDir(FWD,FWD);
    MotorSpeed(120,120);
	}	
  while (PollSwitch()>0){
    BackLED(ON,ON);
    RWD=1;
	}
}

 else if (RWD=1) {
  
  while (PollSwitch()==0) {
    BackLED(ON,ON);
    MotorDir(RWD,RWD);
    MotorSpeed(120,120);
	}	
  while (PollSwitch()>0){
    BackLED(OFF,OFF);
    RWD=0;
	}
}
}
}