Autor Tema: Lenguaje más adecuado para comenzar a programar PICs  (Leído 5238 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gacanepa

  • PIC10
  • *
  • Mensajes: 4
Lenguaje más adecuado para comenzar a programar PICs
« en: 27 de Junio de 2011, 09:47:04 »
Estimados foreros, aunque soy estudiante avanzado de Ingeniería Electrónica, soy un principiante en cuanto a la programación de microcontroladores. En nuestra facultad hemos cursado solamente una materia (en la cual se dedicaron 2 meses nomás al diseño con uC's) y para el proyecto final de la misma se nos requirió construir un circuito con un PIC 16F628A programando en Assembler (sí o sí).
Reuniendo materiales de varios foros y renegando bastante, pude finalizar el proyecto.
Ahora me interesa adentrarme más en la programación de PICs y me gustaría consultarles sobre cuál sería el mejor lenguaje para continuar, Assembler o C.
Espero sus respuestas, muchas gracias desde ya!

Desconectado DaYeS

  • PIC16
  • ***
  • Mensajes: 119
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #1 en: 28 de Junio de 2011, 11:40:43 »
Yo te recomiendo C, entiendo que mucha gente te dira que con ASM tienes mayor control, que aprendes más....

Yo actualmente lo hago con hitech c su versión lite, ya que es gratuita.

En la mayoría de c para pic puedes insertar código ASM, y la verdad es que al ser un lenguaje de alto nivel te facilita mucho las cosas, además de que un programa lo realices mucho más rápido. Además, pienso que para programas que son algo complejos o largos es la mejor solución, a no ser que quieras volverte loco, además, los compiladores ya no son como antes, ahora optimizan bastante bien.

No te viene mal, si es un programa pequeño ver el código ASM que te a generado el compilador, por si no va ha hacer lo que realmente querias.

Bueno, como conclusión y para no expandirme demasiado, es que yo te recomiendo C.

Salu2
Si buscas resultados distintos, no hagas siempre lo mismo. Albert Einstein.

Desconectado gacanepa

  • PIC10
  • *
  • Mensajes: 4
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #2 en: 28 de Junio de 2011, 11:50:24 »
Yo te recomiendo C, entiendo que mucha gente te dira que con ASM tienes mayor control, que aprendes más....

Yo actualmente lo hago con hitech c su versión lite, ya que es gratuita.

En la mayoría de c para pic puedes insertar código ASM, y la verdad es que al ser un lenguaje de alto nivel te facilita mucho las cosas, además de que un programa lo realices mucho más rápido. Además, pienso que para programas que son algo complejos o largos es la mejor solución, a no ser que quieras volverte loco, además, los compiladores ya no son como antes, ahora optimizan bastante bien.

No te viene mal, si es un programa pequeño ver el código ASM que te a generado el compilador, por si no va ha hacer lo que realmente querias.

Bueno, como conclusión y para no expandirme demasiado, es que yo te recomiendo C.

Salu2

Te agradezco mucho por haberte tomado el tiempo para responder a mi pregunta.
Otra pregunta, por lo que me comentas en el penúltimo párrafo de tu respuesta, supongo que al compilar un archivo fuente con la extensión .c, se genera el código asm correspondiente?
Saludos!

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #3 en: 28 de Junio de 2011, 14:37:45 »
Lo mas recomendable es empezar programando en ASM, es la unica forma de entender por completo la estructura interna y funcionamiento del micro. Una vez que tengas claro esto, podras programar en cualquier otro lenguaje optimizando el programa, lo cual es importantisimo cuando se tienen recursos limitados como en los microcontroladores.
Sin embargo, en ASM no vas a poder hacer proyectos complejos en un tiempo razonable. Para esto la mejor alternativa es C. Tiene las ventajas de los lenguajes de alto nivel, pero sin perder el control a bajo nivel. Ademas muchos micros (los pic18f en el caso de microchip) fueron hechos pensando en q ejecutarian codigo hecho en C.
Espero haber aclarado tu duda. Saludos y suerte!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado gacanepa

  • PIC10
  • *
  • Mensajes: 4
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #4 en: 28 de Junio de 2011, 14:48:47 »
Lo mas recomendable es empezar programando en ASM, es la unica forma de entender por completo la estructura interna y funcionamiento del micro. Una vez que tengas claro esto, podras programar en cualquier otro lenguaje optimizando el programa, lo cual es importantisimo cuando se tienen recursos limitados como en los microcontroladores.
Sin embargo, en ASM no vas a poder hacer proyectos complejos en un tiempo razonable. Para esto la mejor alternativa es C. Tiene las ventajas de los lenguajes de alto nivel, pero sin perder el control a bajo nivel. Ademas muchos micros (los pic18f en el caso de microchip) fueron hechos pensando en q ejecutarian codigo hecho en C.
Espero haber aclarado tu duda. Saludos y suerte!
Estoy de acuerdo con vos en que comenzar programando en ASM ayuda a poner el fundamento para entender la estructura interna y el funcionamiento del microcontrolador; aunque renegué con el proyecto que tuve que preparar para la facultad, al fin de cuentas salí aprendiendo algo.
A partir de tu respuesta y de la de DaYeS, he decidido hacer un par de cositas más en ASM y luego pasar a C.
¿Todos los PICs aceptan ambos lenguajes (ASM seguro, pero C?)? ¿O a partir de alguno en especial?

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #5 en: 28 de Junio de 2011, 15:58:08 »
quizas no necesites programar siempre en asm, pero es recomendable que lo conozcas para entender que hace el codigo, y poder optimizar el mismo, (ademas, siempre hay bugs en ccs), que tienes que corregir usando asm


¿Todos los PICs aceptan ambos lenguajes (ASM seguro, pero C?)? ¿O a partir de alguno en especial?

todos se pueden programar en asm, sin embargo para los de gamma alta, es preferible usar C, para poder utilizar las funciones propias de estos micros con mayor facilidad
"Nada es imposible, no si puedes imaginarlo"

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #6 en: 28 de Junio de 2011, 16:35:02 »
Un vistazo general en asm, implementando un par de ejemplos que involucren los módulos, Timers, CCP, UART, Interrupciones, etc. y después pasa a un lenguaje de alto nivel  ;-) ASM sirve para entender como funciona el microcontrolador, pero despues es un dolor de cabeza innecesario para la mayoría de los proyectos.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado DaYeS

  • PIC16
  • ***
  • Mensajes: 119
Re: Lenguaje más adecuado para comenzar a programar PICs
« Respuesta #7 en: 28 de Junio de 2011, 16:46:58 »
Otra pregunta, por lo que me comentas en el penúltimo párrafo de tu respuesta, supongo que al compilar un archivo fuente con la extensión .c, se genera el código asm correspondiente?
Saludos!

Sip. :). Te suelen generar el ASM.

Estoy deacuerdo con ellos, pero también comentaste que ya estuviste un poco con ASM, por lo que la estructura te sonara bastante, todo es recordar, sino, como todos, el datasheet a mano y a pegarte cabezazos con el.

Ahhh!!! un consejo antes de hacerte sangre con los cabezazos, te recomiendo mirar las erratas de los datasheet antes de desesperarte o pensar que tu ingles es diferente a los de microchip, lo digo pq me llevo bastante tiempo un error con el deepsleep con uno de ellos, y al final lo ponia bien claro, en erratas, jaja.

Bueno, pues poco a poco y aquí estamos para echarte una mano cuando la necesites.

Salu2
Si buscas resultados distintos, no hagas siempre lo mismo. Albert Einstein.


 

anything