Hoy he decidido terminar la implementación de las especificaciones para Alpha-1 del software de Arduino, lo que implicaba importantes cambios estructurales, y me ha llevado a perder este round. No subo los cambios hechos al SVN porque por ahora se han perdido algunas funcionalidades, pero espero que mañana pueda corregir estos problemas y cerrar esta batalla con éxito.
El cambio que ha generado los problemas ha sido la unificación de variables de configuración. A causa del limitado espacio de memoria disponible en Arduino, he considerado adecuado emplear un solo byte por puerto para almacenar los datos principales de configuración (analógico/digital y entrada/salida), en lugar de los dos bytes que llevaba usando hasta el momento. Este cambio, aparentemente tan simple, ha provocado problemas en funciones aparentemente no relacionadas, como es la lectura del estado de los puertos, que ahora no para de registrar cambios de estado.
La sintaxis de configuración de puertos también ha cambiado ligeramente, proporcionando algo más de flexibilidad. Esta rutina tampoco funciona ahora mismo, pero será restaurada de inmediato.
Otra característica que ha sido modificada (en mal momento, parece ser) es la escritura de configuración en la EEPROM. Para facilitar su depuración y hacer algo más intuitivo el funcionamiento, he decidido emplear solamente caracteres imprimibles para almacenar en la EEPROM. Esto también ha obligado a hacer algunos cambios que han resultado en ser demasiado drásticos.
En fin, veremos que tal va el próximo round.
Comentarios recientes
hace 5 días 1 hora
hace 5 días 8 horas
hace 5 días 9 horas
hace 5 días 10 horas
hace 5 días 13 horas
hace 6 días 5 horas
hace 6 días 22 horas
hace 1 semana 8 horas
hace 1 semana 12 horas
hace 1 semana 13 horas