#1,711
01-05-2016, 01:02 PM
Tienes razón, me he confundido.
La última publicada es la 1.2.1. La 1.2.2 no tiene más que cambios en los comentarios para mejorar la legibilidad de los fuentes con vistas a publicar esa versión junto a una segunda edición del libro de CAO1. Aunque no he tocado nada importante, la 1.2.2 es una ALFA porque no está probada.
He tenido que abandonar un poco CAO1 porque no doy a basto. Con la salida del nuevo IDE 1.6.7 se pusieron de manifiesto un montón de warnings y paré todo el tema de la nueva edición del libro y de la version 1.2.2, porque quiero decidir que hacer sobre los warnings con calma.
Entre tanto, tuve que desarrollar una nueva librería RTC y el programador básico. Ahora estoy con un tema que quizás no interese a tanta gente, pero que para mí es urgente. Me refiero al cambiador de agua para el acuario que también llevaba atascado un buen tiempo. No voy a tener mucho tiempo para CAO1 porque despus de todo eso, lo siguiente será continuar con CaoBT.
Me he repasado el código de las funciones avanzadas de la botonera con repetición de tecla que son las que dan problemas y no he visto nada sospechoso en el código.
La función GetButton(...) es un tanto liosa. Tiene cinco bucles while, Algunos unos dentro de otros y maneja varios estados. En uno de ellos parece que se queda enganchado.
Dices que en las pruebas iniciales sí conectaba un sensor de temperatura y funcionaba, y ahora no tenía conectado ninguno y no funciona.
Es raro, pero hay que comprobar si tiene algo que ver porque puede ser un dato importante. Ante eso, yo lo que haría para perseguir el problema es, volver a conectar el sensor y si vuelve a funcionar bien buscaría la parte del código que está marcando la diferencia. Lo haría desactivando o activando partes del código y empezaría por la llamada a la lectura de la temperatura. Para ello en la función GetTempAcu() colocaría un return 55; para evitar que entre en GetTempAddr(...); y a ver que pasa. Son solo sugerencias.
La última publicada es la 1.2.1. La 1.2.2 no tiene más que cambios en los comentarios para mejorar la legibilidad de los fuentes con vistas a publicar esa versión junto a una segunda edición del libro de CAO1. Aunque no he tocado nada importante, la 1.2.2 es una ALFA porque no está probada.
He tenido que abandonar un poco CAO1 porque no doy a basto. Con la salida del nuevo IDE 1.6.7 se pusieron de manifiesto un montón de warnings y paré todo el tema de la nueva edición del libro y de la version 1.2.2, porque quiero decidir que hacer sobre los warnings con calma.
Entre tanto, tuve que desarrollar una nueva librería RTC y el programador básico. Ahora estoy con un tema que quizás no interese a tanta gente, pero que para mí es urgente. Me refiero al cambiador de agua para el acuario que también llevaba atascado un buen tiempo. No voy a tener mucho tiempo para CAO1 porque despus de todo eso, lo siguiente será continuar con CaoBT.
Me he repasado el código de las funciones avanzadas de la botonera con repetición de tecla que son las que dan problemas y no he visto nada sospechoso en el código.
La función GetButton(...) es un tanto liosa. Tiene cinco bucles while, Algunos unos dentro de otros y maneja varios estados. En uno de ellos parece que se queda enganchado.
Dices que en las pruebas iniciales sí conectaba un sensor de temperatura y funcionaba, y ahora no tenía conectado ninguno y no funciona.
Es raro, pero hay que comprobar si tiene algo que ver porque puede ser un dato importante. Ante eso, yo lo que haría para perseguir el problema es, volver a conectar el sensor y si vuelve a funcionar bien buscaría la parte del código que está marcando la diferencia. Lo haría desactivando o activando partes del código y empezaría por la llamada a la lectura de la temperatura. Para ello en la función GetTempAcu() colocaría un return 55; para evitar que entre en GetTempAddr(...); y a ver que pasa. Son solo sugerencias.
Código:
// *****************************
int GetTempAcu(){
return ds18x20.GetTempAddr(ADDR_DS18X20_TEMP_ACUA);
}