#define pulsador_arranque 34    //verde
#define pulsador_parada 35     //rojo
#define pulsador_piso1 32      // azul
#define pulsador_piso2 33     //amarillo

#define sensor_puerta1 23    //rojo
#define sensor_puerta2 22    //azul
#define sensor_puertascensor 21 //verde

//estados de ascensor:
#define ascensor_arriba 4  //verde
#define ascensor_moviendose 0 //amarillo
#define ascensor_abajo 2 //rojo
volatile int arranque=0;
volatile int parada=0;







void IRAM_ATTR parar(){
  parada = 1;
}
void IRAM_ATTR arrancar(){
  arranque = 1;
}

//funciones 

void subir(){
 

}

void bajar(){



}

void velocidad(){
 int brillo=0;
int veces = 0;
float i=0.011764;

unsigned long tiempoFinal = 0;

for(i=0;i<255;i++){
analogWrite(ascensor_moviendose,i);
Serial.print(i);
}


if(millis()-tiempoFinal<=4000){
  digitalWrite(ascensor_moviendose, HIGH);
}

}



void setup() {
  Serial.begin(9600);
 pinMode(sensor_puerta1,OUTPUT);
 pinMode(sensor_puerta2,OUTPUT);
 pinMode(sensor_puertascensor,OUTPUT);
 pinMode(ascensor_arriba,OUTPUT);  
 pinMode(ascensor_moviendose,OUTPUT);
 pinMode(ascensor_abajo,OUTPUT);

 pinMode(pulsador_arranque, INPUT);
 pinMode(pulsador_parada, INPUT);
 pinMode(pulsador_piso1, INPUT);
 pinMode(pulsador_piso2, INPUT);

  attachInterrupt(digitalPinToInterrupt(pulsador_parada),parar,FALLING);
  attachInterrupt(digitalPinToInterrupt(pulsador_arranque),arrancar,FALLING);
  
}

void loop() {

  velocidad();
  
    delay(10);
  }