Concurso de fotografía AM

Temática: «Una panorámica de tu acuario».
¡Ya esta abierto el plazo para votar!

Más info
image01

¿Aún no conoces AMA?

Hazte socio de Acuariofilia Madrid Asociación.
CERRADO EL PLAZO DE INSCRIPCIÓN

Más info
image01

Atlas de peces de AM

¡Hemos alcanzado las 800 fichas! Visita nuestro atlas de peces actualizado.

Más info
image01

Cardúmenes y sociabilidad

Nueva actualización de la tabla con una extensa relación de peces, donde podrás conocer qué entorno necesita cada especie, su sociabilidad y si convive o no en cardumen. ¡Pasa a descubrirla!

Mas info
image01
Ayuda con millis en arduino
Respuestas: 0    Visitas: 1470
#1
HuhHuhHuhHuh
pues como no se casi nada de arduino lo que pretendo hacer es desactivar mi filtro y mi bomba de circulacion al mismo tiempo al precionar un boton
Este es un codigo que encontre en linea
Es algo parecido alo que busco pero ,quiciera controlar el tiempo independientemente de cada pin de salida.
Puede ser esto posible??
Gracias espero me ayuden


Código PHP:
int ledPin[4]={
53,52,52,52};
int inSelector[4]= {
  
53,4,5,2};
int inPedal[4]={
  
23,41,40,42};
int timer1;
int timer2;
unsigned long tiempo;
unsigned long tiempos[4];
int espera[4]= {
 
50000,10000,10000,10000};
boolean ejecutando[4]= {
 
false,false,false,false};

void setup() {
 for (
int i 04i++){
   
pinMode(ledPin[i],OUTPUT);
   
pinMode(inSelector[i],INPUT);
   
pinMode(inPedal[i],INPUT);
   
digitalWrite(inSelector[i],HIGH);
   
digitalWrite(inPedal[i],HIGH);
 }  

 
timer1=2000;
 
timer2=10000

}

void loop() {
 for (
int i04i++){
   if(
ejecutando[i]==false){    
     if (
digitalRead(inPedal[i])==0){
       switch (
digitalRead(inSelector[i])){
       case 
LOW:
         
espera[i]=timer1;
         break;
       case 
HIGH:
         
espera[i]=timer2;          
         break;
       }
      
tiempos[i]=millis();
     }
     else if (
digitalRead(inPedal[i])==1){
       
espera[i]=0;
     }
   }

 }

 if ((
millis()-tiempos[0]) < espera[0]){
   
ejecutando[0]= true;
   
digitalWrite(ledPin[0],HIGH);
 }
 else { 
   
ejecutando[0]=false;
   
digitalWrite(ledPin[0],LOW);
 }

 if ((
millis()-tiempos[1]) < espera[1]){
   
ejecutando[1]= true;    
   
digitalWrite(ledPin[1],HIGH);
 }
 else {  
   
ejecutando[1]=false;
   
digitalWrite(ledPin[1],LOW);
 }

 if ((
millis()-tiempos[2]) < espera[2]){
   
ejecutando[2]= true;    
   
digitalWrite(ledPin[2],HIGH);
 }
 else {  
   
ejecutando[2]=false;
   
digitalWrite(ledPin[2],LOW);
 }

 if ((
millis()-tiempos[3]) < espera[3]){
   
ejecutando[3]= true;    
   
digitalWrite(ledPin[3],HIGH);
 }  
 else {  
   
ejecutando[3]=false;
   
digitalWrite(ledPin[3],LOW);
 }  


Usuarios navegando en este tema: 1 invitado(s)


Salto de foro: