Evitar que Arduino active salidas cuando se energiza

#1
hice un programa que compara dos señales, y cuando estas dos señales son similares por mas o menos un rango, el arduino me activa un zumbador el programa se ejecuta bien, el inconveniente que tengo es cuando se energiza la tarjeta arduino, de una se activa el zumbador y desativa (osea que suena zumbador por un instante muy corto), y acto seguido corre bien el programa. alguien me podría colaborar con este problemita, le agradezco de antemano.
 
#2
Obviamente se requiere que compartas diagrama y programa...principalmente el diagrama; así sabremos tener en mente los estados lógicos del micro controlador (arduino) antes de que tu programa tome "control" del ambiente en el que se encuentra antes de poder actuar.

Con eso se podrán tomar directivas para poder resolver el incidente que manifiestas.

Saludos
 
#4
En el setup(), lo primero que tienes que hacer es inicializar el hardware para que las salidas estén todas apagadas.

Otro tema es que al entrar en loop(), el zumbador se active porque note que las dos entradas son similares debido a que al hardware no le ha dado tiempo a leer un dato correcto. Esto lo puedes solventar, volviendo al final del setup(), y colocando un pequeño bucle que active las señales de entrada y haga una espera de unos pocos milisegundos para estabilizarse.
 
#5
Pues depende del circuito pero en principio es "imposible":
Por defecto los microcontroladores arrancan con todas las líneas configuradas como entradas en alta impedancia, y casi todos los circuitos interpretan una alta impedancia como un 1 así que nada más arrancar los periféricos del micro interpretan que está activada mientras no escribas un cero.
Para colmo el bootloader de arduino suele tardar varios segundos en arrancar la aplicación del usuario, así que tienes varios segundos de 1 en tu circuito.

Soluciones, pues primero hay que saber de qué circuito hablamos, a lo mejor no es cierto lo antes expuesto.
Por ejemplo activar por 0 el circuito añadiendo un inversor, así al arrancar estará desactivado y cuando escribas 0 se activará.
Otra opción es poner una resistencia de pulldown para que en el arranque se genere un 0 hasta que el pin se ponga como salida y se escriba el valor deseado.
Depende del circuito y de la aplicación.

Publica tu circuito.
 
Última edición:
Arriba