Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
A ver si me podéis echar una mano,
Quiero dar el salto definitivo a los micros dsPic, empezaré por la serie 30F por trabajar a 5V, y para ello quiero usar un compilador C completo, potente y fácil de usar. La verdad es que para estos micros uno no encuentra mucha información. Hay pocos libros, pocos tutoriales, poco de todo. Tengo 3 opciones: MPLAB C30, CCS dsPic y MikroC dsPic. El Hi-Tec lo descarto por no tener versión gratuíta. He probado por encima los tres.
* El MPLAB lo veo muy "rudo", trabaja mucho a nivel de registros, no tiene tanta librería de periféricos implementada como los otros dos. Eso haría que al principio tenga que "currarme" muchas librerías de periféricos.
* El CCS es el que más he usado. Es sencillo y fácil de usar. Pero la ayuda está muy anticuada, hay referencias a funciones que ya no existen o que han cambiado segun modelo del micro. Otras casi no están documentadas y cuesta mucho hacerse una idea de como funcionan.
* El MikroC ha sido el último que he probado. Se ve más serio que el CCS, tiene un debugger software con muy buena pinta. La ayuda está bastante bien realizada. He encontrado que falta alguna librería, como por ejemplo la de Input Capture.
No quiero empezar con uno y que en un par de meses, tenga que cambiarme. Cual me recomendaríais?
Estoy incluso barajando la posibilidad de pasarme a "los otros" (AVR), pero ya tengo experiencia con los pic, además de herramientas (programadores, placas de pruebas, samples, etc) por lo que un cambio así quizá no me saldría a cuenta... o sí?
Pues los AVR tienen el GNU/GCC que es gratuito y totalmente integrado con el AVRStudio, también gratuito. Además también está el entorno Arduino, parecido al C y que parece que tiene mucho éxito y seguidores. Y además ya lo tengo por mano por si necesitas/necesitáis un cable. Hay otras opciones 'parcialmente gratuitas' (limitadas en código o tiempo) interesantes.
Respecto de lo mismo con los PIC, poco te puedo decir.
Por cierto, si quieres potencia, facilidad de encontrar, periféricos integrados, buen precio, variantes, etc, te recomiendo ARM's, especialmente los Cortex M3. Librerías y código gratuíto en exceso, pero 'fácil' no es precisamente la palabra.
De todas maneras, micros con muchos periféricos y capacidades nunca son sinónimos de 'fácil', y eso creo que se aplica a los dsPIC también (por no hablar de los PIC32, que son como los ARM, pero en complicado --> MIPS).
Por eso busco un buen compilador C, para que me haga la vida más fácil y no tenga que pelearme directamente con ensamblador. Por ejemplo, me ha gustado del mikroC que directamente, con una sola instrucción, configuro la salida pwm a una determinada frecuencia que yo le indico. En cambio en CCS tengo que configurar timer, pre-escaler, etc, para dar con la frecuencia deseada. Idem del MPLAB. En cambio el CCS sí que tiene una librería para el Input Capture y el mikroC no.
En cuanto a librerías como está el tema con los AVR? Hay librerías de todos los periféricos o aún no? Son libres?
Busco más potencia y prestaciones de lo que hasta ahora tenía con los pic 16F pero quiero facilidad a la hora de usarla. Mi fin es montar robots no aprenderme los entresijos de la programación de determinados micros.
Respecto del AVR, hay algunas librerías para el GNU/GCC, pero lo habitual es usar uno de los 'wizzards' o asistentes que te generan el código de librería directamente en C. IAR tiene un compilador libre hasta 4KB de código (creo) que tiene librerías. ImageCraft y CodeVision tienen asistentes bastante buenos, pero están limitados o en tiempo o no sé cuanta cantidad de código.
MikroC (si, si, el mismo del PIC) está disponible para AVR's, con librerías en cantidad...
Al fin y al cabo, yo siempre he acabado haciéndome mis propias librerías simples. Total, eran semi-reusables y en uno o dos días lo tenía listo, ya que no era la parte compleja de mi código.
Saludos! Me llaman la atencion los Dspic, el C30 es gratuito, la pega que le veo es que la informacion por parte de microchip esta un poco desornedada: manual del compilador, manual de liberias, manual de periféricos...todo separado, no le he puesto mucho empeño, pero mas de una vez me he propuesto empezar con ellos y no me entero, como usar los fuses o palabras de configuración, asi que siempre me quedo ahi. Tambien estan los ejemplos de microchip, pero son muy especificos y a veces avanzados, echo en falta un manual progresivo en la programacion :fuses, configuracion perifericos, funciones...y despues unos programas tambien progresivos. Creo que el problema es que me he acostumbrado al CCS y su manual, y comparando los demas siempre son mas dificiles.
Empece hace poco con los avr, para mi bastante superiores a los pic's, pueden trabajar hasta a 20MIPS superior incluso a algunos dspic, creo que ahora no lo recuerdo bien. Entorno gratuito con el AVRstudio y el Winavr, hay grabadores que circulan por la red muy baratos, si tienes puerto serie o paralelo, y si tiene que ser por usb tambien puedes encontrar algo.
Para mi la única pega es la falta de "opciones avanzadas", me refiero por ejemplo a funciones avanzadas como son el uso de la usart, lcd's, i2c...siempre puedes ir haciendolas tú, pero te retrasa en la programacion. Aunque tambien, muchas veces lo he visto como una ventaja, al configurar los perifericos, ya que te fuerza a mirar el datasheet, leer registros y configurarlos; y asi comprender mas a fondo el microcontrolador.
A lo que usan pic's, yo tambien los uso no tengo nada en contra, ¿no os da problemas el CCS? Yo lo uso porque permite una programacion facil pero es un compilador con muchos bugs: reserva de toda la ram para usb al usarlo aunque no emplees mas que una parte, problemas en operaciones con signo y rotaciones, falta de algunas instrucciones para configuracion esto es lo mas facil de solucionar al fin y al cabo usas los registros, fallos al usar interrupciones y niveles...y me dejó algunos seguros.