Microcontroladores PIC en Linux.
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Portando GCC a PIC.

3 participantes

Ir abajo

Portando GCC a PIC. Empty Portando GCC a PIC.

Mensaje por arcachofo Dom 7 Dic 2008 - 10:44

Interesante proyecto open source, realizado por Pedro José Ramírez Gutiérrez, que ha hecho el porting del GCC completo para PIC, podeis encontrar más información en estas páginas:
http://pjmicrocontroladores.wordpress.com/
https://forja.rediris.es/projects/cls-pic-16f877/


pjmicrocontroladores - 6 Diciembre, 2008

El compilador es totalmente funcional. Existen problemas en el tratamiento de ciertos tipos de arrays, pero estoy trabajando en ello. Sin embargo el porting es de GCC completo, es decir, es un compilador de C, no un subconjunto del lenguaje C como SDCC o similares. Además todo lo que compile GCC también se puede compilar con mi porting, ya que éste añade un nuevo target a la toolchain de GCC. Es decir, si alguien desarrolla las funciones de biblioteca necesarias, podría programar para PIC en C++, JAVA o Basic. No obstante ten en cuenta que los requisitos de estos lenguajes en memoria están muy por encima de la disponible en un PIC. Pero poder se puede.

Fernando Pujaico http://pic-gcc-library.sourceforge.net/data/ esta desarrollando las bibliotecas para este porting.


Posted in November 13th, 2008
by fernando in PIC-GCC, biblioteca

Se ha iniciado el grupo de desarrolladores de la biblioteca “PicGccLibrary”

El grupo está compuesto por estudiantes y egresados de la Facultad de Ingeniería Electrónica de la universidad nacional de ingenieria LIMA - PERU. Ademas se han incorporado desarrolladores de otras universidades a nivel mundial.

el lanzamiento de la primera version de la biblioteca esta programado para el 1ro de enero del 2009, pero se puede encontrar ahora una version previa completamente funcional desde el cvs

http://sourceforge.net/cvs/?group_id=229267
arcachofo
arcachofo
Participante Activo
Participante Activo

Mensajes : 91
Fecha de inscripción : 26/11/2008

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Geo Jue 18 Dic 2008 - 7:28

El proyecto en si es muy interesante, sin embargo, me surge la duda de las ventajas/desventajas con respecto a SDCC. ¿Alguien podría plasmarlas un poco más explícitamente?

Geo
Participante Activo
Participante Activo

Mensajes : 92
Fecha de inscripción : 16/12/2008
Localización : México

http://hsblog.mexchip.com

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por arcachofo Jue 18 Dic 2008 - 13:29

Bueno, PIC-GCC es un proting de GCC completo, osea que abre la posiblidad de compilar otros lenguajes como C++ basic, incluso java; SDCC solo es un compilador C. Este porting ya está hecho desde hace un tiempo para AVR, así que instalando GCC ya puedes programar AVRs; la idea es que al final los PIC tengan soporte incluido en el GCC, así que instalando GCC puedas programar para varios procesadores en varios leguajes, sin tener que instalarte un compilador para cada tipo de procesador y lenguaje.

PIC-GCC va a empezar por los PICs de gama media, con un conjunto de librerías bastante completas, documentadas en español, ya que está desarrollado por hispano-parlantes, las explicaciones y comentarios del código fuente también están en español. SDCC todavía no tiene gran cosa para estos PICs, tiene bastantes para pic18fXXX, pero no para 16fXXX.

Siempre es bueno tener donde elegir, actualmente hay muy pocos compiladores de código abierto para PIC.

En principio el código PIC-GCC debería ser muy facil de adaptar a SDCC y viceversa, además las librerías están escritas en su mayoría en asm, lo que facilita su utilización en SDCC...

Todo esto está en pleno desarrollo, así que se puede participar, hacer sugerencias de que funciones crees que debería incluir, etc. pedir y ofrecer ayuda en español...
arcachofo
arcachofo
Participante Activo
Participante Activo

Mensajes : 91
Fecha de inscripción : 26/11/2008

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Geo Vie 19 Dic 2008 - 5:10

Gracias por la respuesta, voy a darme una vuelta para checar el proyecto Smile.

Geo
Participante Activo
Participante Activo

Mensajes : 92
Fecha de inscripción : 16/12/2008
Localización : México

http://hsblog.mexchip.com

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Pikitin Dom 11 Ene 2009 - 17:04

Preguntaba Geo que cuales eran las posibles ventajas sobre SDCC por ejemplo; después de hacer algunas pruebas he observado un par de cosas:

SDCC se desarrolló para Z80, 8051 y posteriormente otros micros... por lo que he leido es bastante bueno para estos micros, ultimamente se está dando soporte para PICs, empezando por los de 16 bits(palabra de instruccion), son pics con bastante memoria, pero en los pic16f la memoria empieza a ser escasa y el tamaño del código generado es crucial; es posible que con el tiempo sdcc sea optimizado para pics pequeños, pero en el estado actual de las cosas no es así.

PIC-GCC se está desarrollando directamente para pics de la familia 16f, con la idea de generar un .hex lo mas pequeño posible, por eso las librerías están escritas directamente en asm, osea... no van a generar ni una sola instrucción que no sea estrictamente necesaria.
Otra cosa es que GCC resuelve las operaciones matemáticas si los valores son constantes, en cuyo caso no inserta esas rutinas en el código, cosa que no hacen otros compiladores.

De todas formas ya digo que esto es un proyecto en pleno desarrollo y todavía no ha llegado a su grado de optimización máxima.

Además en este foro vas a tener toda la información que necesites.

No creo que sea mejor o peor que otros... es distinto, es una opción más y es de código abierto...

Pikitin
veterano
veterano

Mensajes : 623
Fecha de inscripción : 26/11/2008

http://linuxmicros.blogspot.com/

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Geo Mar 13 Ene 2009 - 7:10

Ese tipo de detalles son los que me interesan Smile.
Por lo pronto trabajo con los pics 18f, así que sigo con SDCC. Lo de la solución de constantes, habría que confirmar que SDCC no lo tenga, porque al final está basado en GCC ¿o no?

Geo
Participante Activo
Participante Activo

Mensajes : 92
Fecha de inscripción : 16/12/2008
Localización : México

http://hsblog.mexchip.com

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Pikitin Mar 13 Ene 2009 - 13:11

Hola Geo... primero que nada gracias por tu interés...

Por el momento PIC-GCC es solo un proyecto en marcha, no es alternativa a SDCC ni a ningún otro; lo que hace falta es gente que colabore,... desarrollar un proyecto de estos lleva mucho trabajo, sobre todo de depurado, y eso solo se consigue si hay muchas personas que lo prueban y reportan fallos o posibles mejoras; es imposible que los que desarrollan el proyecto prueben todas las posiblidades... les llevaría cientos de horas, mejor si esas cientos de horas las dedican a depurar el código, añadir funciones y extenderlas a otros pic.

En cualquier caso si solo trabajas con 18f por ahora PIC-GCC no te sirve de nada, en principio se va a dar soporte a 16f, luego vendrán más cosas...

Lo de la solución de las constantes, al menos las pruebas que yo he hecho con 16f, parece que no lo tiene, es posible que en 18f si esté implementado; eso lo puedes comprobar facilmente: compila un programa totalmente vacío y mira el memory map (sabrás cuanto toma el código de iniciación), luego pon una operación matemática con constantes con alguna multiplicación, que no sea demasiado básica, para que si hay diferencia, se note; vuelve a compilar y mira el memory map.

Solo he hecho algunas comparaciones con SDCC y BoostC y me extrañó bastante que los dos incluían el código de las operaciones matemáticas en vez de ser solucionanadas por el compilador, BoostC lo incluye directamente en el .asm y SDCC hace una llamada a función externa, pero el .hex generado aumenta notablemente de tamaño. Estariá bien hacer una comparativa entre varios compiladores, y ver como lo hace cada uno en distintas situaciones.

Pikitin
veterano
veterano

Mensajes : 623
Fecha de inscripción : 26/11/2008

http://linuxmicros.blogspot.com/

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Pikitin Vie 6 Mar 2009 - 9:39

por Pikitin el Mar Ene 13, 2009 1:11 pm
Solo he hecho algunas comparaciones con SDCC y BoostC y me extrañó
bastante que los dos incluían el código de las operaciones matemáticas
en vez de ser solucionanadas por el compilador, BoostC lo incluye
directamente en el .asm y SDCC hace una llamada a función externa, pero
el .hex generado aumenta notablemente de tamaño.

Pues es curioso, pero he estado intentando reproducir el tema de resolver operaciones matematicas con constantes en SDCC, y resulta que ahora siempre me las resuelve...
No recuerdo exactamente como lo hice la vez anterior, pero ahora he provado con todas las combinaciones que se me ha ocurrido y siempre las resuelve el compilador.


Queria comentarlo, porque seria un fallo mio o una mala instalacion de SDCC,... quizas en alguno de mis cacharreos cambie o me cargue algo...

Pikitin
veterano
veterano

Mensajes : 623
Fecha de inscripción : 26/11/2008

http://linuxmicros.blogspot.com/

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Geo Sáb 7 Mar 2009 - 6:43

Pikitin escribió:Queria comentarlo, porque seria un fallo mio o una mala instalacion de SDCC,... quizas en alguno de mis cacharreos cambie o me cargue algo...
¿O una versión anterior?

Geo
Participante Activo
Participante Activo

Mensajes : 92
Fecha de inscripción : 16/12/2008
Localización : México

http://hsblog.mexchip.com

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Pikitin Dom 8 Mar 2009 - 6:38

Si... tambien puede ser a causa de una versión anterior... la verdad es que ahora no tengo idea de que pudo ser, en cualquier caso me alegra que ahora tenga las operaciones con constantes resueltas por SDCC.

Lo importante es que esta cuestión ya está resuelta o siempre lo estubo y fué algún fallo mío...

Pikitin
veterano
veterano

Mensajes : 623
Fecha de inscripción : 26/11/2008

http://linuxmicros.blogspot.com/

Volver arriba Ir abajo

Portando GCC a PIC. Empty Re: Portando GCC a PIC.

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.