Inconveniente con Arduino pro mini 328

#1
hola gente !! tengo un problema con arduino pro mini 328 , cargo perfectamente un programa que enciende un led 15 seg y se mantiene apagado 1 hora y asi sucesivamente , la cuestion es que en el inicio o sea cuando le doy tension el led hace un pequeño destello tiene una espera minima y se enciende, luego funciona perfectamente , yo necesitaria que el led arranque en estado alto instantaneamente cuando aplico tension y no se por que tiene ese arranque , si tiene alguna idea sera muy bienvenida , muchas gracias ...
 

Fogonazo

Exorcista & Moderador eventual
#2
hola gente !! tengo un problema con arduino pro mini 328 , cargo perfectamente un programa que enciende un led 15 seg y se mantiene apagado 1 hora y asi sucesivamente , la cuestion es que en el inicio o sea cuando le doy tension el led hace un pequeño destello tiene una espera minima y se enciende, luego funciona perfectamente , yo necesitaria que el led arranque en estado alto instantaneamente cuando aplico tension y no se por que tiene ese arranque , si tiene alguna idea sera muy bienvenida , muchas gracias ...
¿ Y que opinas sobre publicar la programación del Arduino que estas empleando ? :rolleyes:
 
#3
int led =13;
int led =12;
void setup()
{
pinMode(13,OUTPUT); // LED ENCENDIDO:
pinMode(12,OUTPUT); // LED ESPERA
}

void loop()
{
digitalWrite(led,HIGH); // LED ENCENDIDO
digitalWrite(led,LOW); // LED APAGADO
delay(15000);
digitalWrite(led,LOW); // LED APAGADO
digitalWrite(led,HIGH); // LED PRENDIDO
delay(3600000);
}
 
#4
Hola helmer:
Creo que se debe al lento proceso de inicialización de Arduino. Si programas directamente el 328 podrás evitar el problema.
Salu2.
 
#5
Recuerda que Arduino tiene un Bootloader que permite que actualices el firmware sin programador especial, para que el chip pueda entrar en modo de programación tiene un pequeño retraso en el que verifica si existen esas condiciones además de otros procesos corriendo detrás.

Por otra parte, yo veo ahí dos variables llamadas "led", el valor de la segunda sobre escribe a la primera.
 
#6
Me parece que el error esta en declarar la variable LED (entre otros errores de sintaxis).
Código:
int led =13; [B]//declaras un numero a la variable LED, OK.[/B]
int led =12; [B]//vuelves a declarar la misma variable con numero diferente??[/B]
void setup()
{
pinMode(13,OUTPUT);    // LED ENCENDIDO [B]//Pero la variable LED es igual a 12, ERROR!![/B]
pinMode(12,OUTPUT);    // LED ESPERA    [B]//Aquí empiezan a cuadrar las cosas, OK[/B]
}

void loop() 
{
 digitalWrite(led,HIGH);   // LED ENCENDIDO
 digitalWrite(led,LOW);     // LED APAGADO [B]//prende y apaga rápidamente, y los 15seg?? ERROR!![/B]   
 delay(15000);                             [B]//aaaaahh, aquí están, OK[/B]
 digitalWrite(led,LOW);    // LED APAGADO  [B]//para que lo vuelves a declarar, si arriba ya lo declaraste??[/B]
 digitalWrite(led,HIGH);    // LED PRENDIDO
 delay(3600000);
}
no soy Bill Gates pero prueba esto,
Código:
int led1 =13;
int led2 =12;
void setup()
{
pinMode(13,OUTPUT); // LED ENCENDIDO [B]//LED1 en el PIN 13, OK[/B]
pinMode(12,OUTPUT); // LED ESPERA    [B]//LED2 en el PIN 12, OK[/B]
}

void loop()
{
digitalWrite(led1,HIGH); [B]//LED1 encendido[/B]
           delay(15000); [B]//espera de 15 segundos[/B]
 digitalWrite(led1,LOW); [B]//LED1 apagado[/B]
         delay(3600000); [B]//espera de 1 hora[/B]
}
 
Última edición:
#8
Curioso, a mí el IDE me tira error directamente, dice "redefinition of 'int led'" :LOL: ya me lo esperaba.

Pero sigo en la sospecha de que el bootloader es el responsable y no tiene solución a menos de que tires a la basura el firmware y lo programes con AVR Studio directamente, luego necesitas un programador ISP.

Solo para probar, envié un sketch en blanco al Arduino UNO y el led destella 3 veces antes de quedar encendido (hay que considerar que el LED se conecta a un buffer con un amplificador así que la impedancia es elevada y cualquier señal puede activarlo).
 
#10
gracias a todos !!
por el momento lo solucione utilizando la salida Nº 12 y puse un delay de 5 ms asi que no me afecta el destello inicial de la salida Nº13 y para mi necesidad funciona perfecto pero en cuanto encuentre la causa lo comento nuevamente
:apreton:
 
#13
Como estás alimentando el circuito? Por lo que vi, esta versión de arduino es muy simple, posiblemente colocando un condensador electrolitico en la alimentación soluciones el problema.
 
#15
Tras leer el código del boot loader confirmo que hay una función para destellar el LED, lo que no pude ver bien es el cuando la usa, el código me mareó por que es un archivo único para todos los chips y esta lleno de #if #endif. Siempre he dicho que Arduino ere simple, pero no ideal para cosas delicadas por que no saber que proceso está corriendo detrás
 
Arriba