TODOPIC
Otros Microcontroladores / Dispositivos programables => Arduino => Mensaje iniciado por: halowin en 10 de Agosto de 2012, 05:49:44
-
Hola amigos.
Estoy haciendo un programa en Arduino mega 2560.
Todo funciona bien hasta que he llegado a este punto en el que intento subir el programa a la placa y me da inexplicablemente problema de timeout.
Os pongo la secuencia donde peta.
...
...
...
if(diferencia < 0) {
lcd.print("Corto");
fallos++;
}
if(diferencia > 0) {
lcd.print("Largo");
fallos++;
}
if(diferencia == 0) {
lcd.print("¡¡¡ Correcto !!!");
lcd.setCursor(0,1);
lcd.print("Intentos: ");
lcd.print(fallos);
}
...
...
...
Ahora, si comento el tercer "if" entero ya lo sube. !!!
Alguien me puede explicar que es lo que pasa, de todas formas me he encontrado otras situaciones que sin ninguna explicación lógica peta el bootloader, he leido por ahi que es que no anda muy fino.
Tengo Arduino 1.0.1 bajo Linux/Debian y el avrdude en principio el que venia por defecto que era el 5.10, ayer le metí el 5.11 y sigue igual.
Salu2
-
¿No será un problema de que se esta llenado alguna memoria (RAM, ROM, EEPROM, etc)?.
Un saludo
-
¿No será un problema de que se esta llenado alguna memoria (RAM, ROM, EEPROM, etc)?.
Un saludo
Pues el programa no es que sea gran cosa como para consumir ni RAM ni la FLASH.
Al compilarlo, sin problemas, me dice:
Tamaño binario del Sketch: 5.656 bytes (de un máximo de 258.048 bytes)
y en cuanto a cadenas de texto uso esas tres que se ven en el programa arriba y otra mas, estamos hablando de una pantallita LCD y una libreria Keypad para comunicarse con un teclado, que entre todo eso no creo que sea como para arruinar al Arduino o que el bootloader se agobie.
?????
Gracias de todas formas por contestar
-
Si crees que no es problema de espacio, haz lo siguiente: comenta todas las líneas dentro del if, si sube bien descomenta las líneas que no tienen texto, si también sube bien vete descomentando las líneas con texto. Si falla con algún texto empieza con un caracter y vete aumentando el texto. Así podrás vr por donde anda el problema.
Un saludo
-
Si crees que no es problema de espacio, haz lo siguiente: comenta todas las líneas dentro del if, si sube bien descomenta las líneas que no tienen texto, si también sube bien vete descomentando las líneas con texto. Si falla con algún texto empieza con un caracter y vete aumentando el texto. Así podrás vr por donde anda el problema.
Un saludo
Hola ifh, tienes toda la razón, he optado por suprimir textos y he hecho una version hibrida del led/lcd.
Voy a abrir un hilo nuevo y dejo el programa, lo acabo de finalizar y funciona al 100%.
He comentado las lineas conflictivas que mandan los textos al LCD y en vez de scar los textos por la pantallita ahora enciendo 3 leds (1 rojo para indicar que es menor, otro verde para indicar acertado y otro rojo para indicar que es mayor).
Bueno no se si lo he dicho pero se trata de un juego.
Ahora subo el programa para quien lo quiera probar.
-
Por favor, postea el contenido completo del programa, así podemos ver de qué se trata el error.
Sin esto, es muy difícil ayudarte.
Otra cosa que veo en el código es que tiene "!!!". En los foros de arduino dice que esa secuencia
de tres signos de exclamación no son bien manejados por el compilador. Prueba de sacárselos.
Saludos