Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola, a ver si alguien sabe decirme que pasa con este microcontrolador que se resetea.
El problema es el siguiente, estoy probando una placa que acabo de hacer y le he grabado el primer programa para comprobar la parte de programación de la placa, el programa es muy sencillo, lo único que hace es encender 3 veces un led rojo cada vez que se resetea el micro y durante la ejecución parpadea un led ambar, es decir:
void main (void)
{
inicializar(); // configurar puertos
reseteo(); // 3 parpadeos de led rojo
while(1)
{
LED1=0;
Delay10KTCYx(100);
LED1=1;
Delay10KTCYx(100);
}
}
Eso funciona bien, el problema viene cuando me acerco yo al micro que se resetea, puede estar perfectamente funcionando sin ningún reseteo, pero al acercarme se resetea y sigue funcionando, si me alejo sigue funcionando la mayoría de las veces y al acercarme otra vez se vuelve a resetear, pongo un video para que se me entienda. http://www.youtube.com/watch?v=Aw--2Hynink
[video width=400 height=350] http://www.youtube.com/watch?v=Aw--2Hynink [/video]
A ver si a alguien se le ocurre lo que me puede estar pasando, el pic es un 18f452 a 20 MHz, el esquema y pcb están aquí: http://www.jmnlab.com/pcb/pcb.html
Gracias.
Lo único que se me ocurre es que he dejado el reset del pic al aire y a la mínima con acercarme salta, voy a mirar el data a ver si tengo aquí el problema y no lleva el pull-up interno.
Pues sí eso es lo que hace un reset al aire, por no mirar el data y hacer caso cuando me dicen que lo lleva interno x_x
PD: he soldado una r entre Vcc y el Mclr y solucionado, dejo el post por si alguien quiere ver lo que pasa cuando se deja al aire...
Yo nunca me fio de esas cosas y siempre pongo una resistencia a masa en las entradas que no voy a utilizar, porque ya me he llevado alguna sorpresa que otra.
Como mola! has hecho un detector de proximidad!! 😛
Yo apostaria por algun pin del reset o bien del oscilador que esta flotando (sin conectar) o bien los fuses del osc mal configurados.
Era el reset que al estar al aire nada más acercarme salta, le he soldado una R al positivo y ya no lo hace, desde ahora no dejo suelto ninguno, que esta vez he tenido suerte y no tengo que hacer otro pcb.