Lo que pasa es que el proyecto ya esta armado y es grande y complicado, loq que quiero haces es ponerle un LDC con menú, configuraciones y esas cosas, y programar eso en asambrer debe ser muy complicado por lo que se me ocurrió armar la rutina en C y que corra sobre el proyecto en asambrer ya escrito.
La otra que me quedaría seria agregar un micro que trabaje exclusivamente con el LDC programado en C, luego por algún bus serial paso todo los datos entre los dos micros.
Me parece excelente idea, en tu caso me parece que es mejor gastar unos $ más pero reutilizar el código que tanto esfuerzo te logró depurar.
Gracias maunix, fuiste de gran ayuda, estaba bastante terco con esto de escribir la rutina en C.
Últimamente eso de C y assambler me tiene un poco aturdido y eso que lo mio es la electrónica y no la programación.
Es duro darse cuenta que por mas que assambre esta muy bueno es muy tedioso de escribir y el C es tan simple y elegante.
Si antes me decian C o asambler, la respuesta era asambler sin pensarlo, ahora seria: C .... No, Asambre ..... No, los Dos ...... No, Ninguno....... mmm donde hay un revolver ?
Idem! Programo en assembler en los 16F y en C en los 18F. El assembler de los 18F lo conozco porque he hecho algunas cosas con él y es bueno siempre conocer a fondo la arquitectura. Te saca de muchos apuros cuando suceden los problemas.
En los 16F tengo tantos macros y rutinas creadas que realmente me da fiaca pasarme al C, es que codifico todo en asm y en forma rápida, pasando parámetros a funciones, etc.
Tengo programas que sin tablas ocupan casi los 8K del pic 16F más grande... y eso sí que es imposible pasarlo al C salvo que cambie de arquitectura por 18F. Es por eso que aún sigo en el ensamblador. Cuando tengo que "tocar" esos software, pues bueno, lo hago en ensamblador.
También me costó arrancar con el C, pero ciertos proyectos que tuve en manos de una lógica realmente engorrosísima y un control que incluía cálculos matemáticos intensos me hizo iniciarme.
Creo que lo mejor es programar en C pero sin olvidar la arquitectura. Tengo mucho codigo en 16F que lo migraré a los 18F para usarlo en ellos y haré lo que tu quieres hacer, pero será cuando realmente los tenga que usar.
En los PICs y en cualquier microcontrolador no es posible abstraerse como se hace en una PC donde hay normas y protocolos de intercomunición para todo. Aquí trabajamos directamente con el hardware y es ahí donde las cosas son "similares" pero "diferentes". Entonces hacer algo a medida del hardware y que sea portable 100% es sencillamente imposible, salvo que sea una rutina de multiplicación o algo así, pero si se algo muy ligado al hardware y los pics son diferentes, habrá que "cambiar" algo con casi total seguridad.
Ojo, esto no lo digo yo, lo dicen todos los 'gurues' de microchip en su foro. Gente con 25 años de experiencia programando microprocesadores y microcontroladores! A esos, trato de escucharlos porque de ellos se aprende y mucho.