Control con pulsadores

Hola no entiendo lo de no progresivamente, ¿ De golpe, de cero al maximo?. Por ejemplo para el canal rojo donde tienes

if (digitalRead(Pulsrojo) == LOW)
  {
  rojo ++;
  if (rojo > 255) rojo = 0;
  }

cambialo por

if (digitalRead(Pulsrojo) == LOW) {
  if (rojo = 255) {
    rojo = 0;
  }
  else {
    rojo = 255;
  }

Aunque no se si es eso lo que querias.