maunix dijo:
A veces los compiladores no generan el código más óptimo pero eso de que no pueden desarrollar todo el repertorio de funcionalidades de un pic... mmm, no es cierto en lo absoluto.
Te agradezco que me dejes eso en claro. Eso tambien habia leido que el codigo generado en C es mucho mas lento que el ASM. Supongo que esto se debe a que en el ASM uno mismo va poniendo cada cosa en su lugar optimizado y en C el mismo compilador nos aleja de esa parte para ahorrar trabajo, como un "front", si no -como dices- de que cosa serviria tenerlo.
maunix dijo:
Me gustaría que dieras un ejemplo donde te hayan dicho que eso es así para analizarlo en tal caso.
Que bueno que me pides eso, mira hace como un año (o menos), lei en una revista de temas de electronica (y otras cosas), que habia un IDE que te permitia programar los PICs en un lenguaje mucho mas amigable y digerible que el ASM, sobre todo para quienes tenemos mas experiencia con el tema de la programacion en general que con los PICs en si, en este caso se trataba del basic.
Pues bien, para no hacerla larga, me puse a investigar al respecto con personas cercanas al tema y ellos me comentaron del compilador C para PIC, y junto con eso me dijeron que aun con aquel compilador uno no se podia olvidar del ASM, debido a que el compilador no me dejaria en tanta libertad de configuracion como ASM. En concreto se refirieron a la configuracion de los modulos PWM que algunos PICs integran, ya que segun ellos resultaba mucho mas versatil programarlos en ASM, por que las opciones de configuracion que ofrece el C para esta tarea son limitadas, eso fue lo que me comentaron, de ahi deje unos meses el tema (en general la electronica) y pues ahora estoy retomando todo esto.
Te comento que ahora con el compilador ya me ha tocado el manejo de los modulos PWM de mi 16f877 y hasta ahora no he tenido problema, asi que no podria precisar la razon por la que ellos tenian esa impresion. ¿No se si tu sepas algo al respecto?
maunix dijo:
Al usar un compilador uno pierde control sobre ciertas cosas y debe ser así , sino para qué tener un compilador. Referido a perder el control, hablo de que por ejemplo algunos direccionamientos indirectos y/o registros no se pueden usar porque entrarían en conflicto con el funcionamiento del compilador en sí. De todas formas los módulos y puertos del pic se pueden usar perfectamente.
Yo he sentido hasta ahora puras ventajas al usar C, salvo el detalle de la optimización. Y además cualquier constante que no tienes en el .h de un PIC determinado, solo vas la agregas y listo, o modificas las existentes a tu antojo. Lo unico es que no se si en alguna parte se pueda uno encontrar la referencia tecnica de todas las funciones prefabricadas del CCS, pues no me la he encontrado y a veces es util para despejar dudas.
Saludos,