Autor Tema: ¿Por qué no usar PIC32?  (Leído 11675 veces)

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

Desconectado Geo

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 922
    • Mexchip
¿Por qué no usar PIC32?
« en: 09 de Agosto de 2015, 18:19:08 »
Qué tal amigos, después de mucho sin publicar en el foro vengo a solicitar sus comentarios con respecto al porqué no utilizar PIC32 como procesador central en nuestros futuros proyectos.

Les comento, en mi trabajo (el principal, que tengo dos :P) estamos (están, que me tienen ocupado con otras cosas) empezando a probar un PIC32 PIC32MX795F512L para un próximo desarrollo, es el primero en que utilizaremos un micro de 32 bits (anteriores diseños utilizamos PIC18, también he trabajado con algún micro de Renesas de 16 bits y estoy tratando de echar a andar un diseño con un PIC24FJ128GB202). Pero, últimamente he visto varios comentarios en el foro con quejas sobre estos micros de Microchip, es por ello que solicito a uds. su opinión de porqué no deberíamos estar utilizándolos.

Gracias por sus consejos.
La imaginación es el límite.
Visita mi blog, en inglés o en español :).
Mini curso de introducción a VHDL en MEXCHIP :-/

Desconectado juaperser1

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 2980
Re: ¿Por qué no usar PIC32?
« Respuesta #1 en: 09 de Agosto de 2015, 19:12:54 »
Por una razón bastante simple, porque te arrepentirás, puedo darte muchos motivos pero creo que es mejor que busques por el foro mis post sobre estos micros hay lo explico detenidamente.

Yo he hecho 5 proyectos con pic32 y todo absolutamente me han dado fallos, fallos de bug o de librerías, cosas que te hacen perder muchísimo tiempo intentsnto resolverlas, porque a parte, las erratas en la documentación estan a la orden del día.

Quizá a tu aplicación le vayan como anillo al dedo y no tengas problemas con ellos pero pfffff yo te aseguro que no pienso hacer ni un solo proyecto nuevo con pic32

Un saludo

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: ¿Por qué no usar PIC32?
« Respuesta #2 en: 09 de Agosto de 2015, 19:26:44 »
Hay usuarios que han tenido problemas.

Habria que separarlos en 2 o 3 a los problemas, Hardware y Software + costo.

Hardware:

el usuario migsantiago tuvo unos cuantos problemas con unos PIC32MZ aunque estos eran nuevos en el mercado y como todo van mejorando con versiones y arreglando los problemas de HW, aunque algunos a mi gusto eran muy graves como para que sean lanzados al mercado, ejemplo problemas con el oscilador. Si no me equivoco termino usando el oscilador interno.
Todo micro tiene sus problemas (Silicon Errata) y no vamos a decir que los PIC son los peores. hay que tener cuidado nomas y tenerlo en cuenta.
Tu micro ya es "viejito" fue unos de los primeros PIC32 que salieron, aca esta sus errores:

http://ww1.microchip.com/downloads/en/DeviceDoc/80000480N.pdf
(Despues de 5 revisiones, se resolvieron solo 4 de 49 problemas)

Que puede que no te molesten o sean cosas que realmente no te importen que suceda. pero que tenes que tenerlo en cuenta que existen.

Software:

Y aca la pelea de siempre... La poca optimizacion de los compiladores XC32 en su version gratuita hace que una simple rutina se vuelva extensa en instrucciones y termine ocupando demasiado, haciendo que los micros con poca memoria no se les pueda poner nada. Y por otro lado si no lei mal el usuario juaperser tuvo problemas con las PLIB que no funcionaban como deben y termino configurando los modulos por el mismo.

Nuevamente es algo que se va a arreglar eventualmente si es que se reporta el bug. Y luego se descarga la ultima version de la libreria. Esto es asi y es entendible.


Costo:

No se que TAN costoso sea Microchip pero ami las placas de evaluacion me salian una fortuna. Como que una placa con un micro de 32bits era un 5:1 la diferencia de precio entre Microchip y alguna otra (TI,ST,NXP). Y que encima traen el programador para ese micro y que podes utilizar en placas externas. Hasta creo que como debugger. En fin. Fue mi principal problema a la hora de seleccion. Y no hay nada mas comodo que una placa de evaluacion para comenzar probando o acostumbrandose a una flia de integrados.
Si queres podes usar GCC y eso no te influye en el costo del software de desarrollo. Lo cual seguis abaratando los costos. Usas el IDE que mas te guste.


Por que no y por que si ?...

No veo el por que no. Podes usar lo que desees. Ya segun las limitantes en memoria/modulos podes pasar a otros micros.
El usuario juaperser era devoto por que le daban un USB de alta velocidad y no tener que poner un PHY externo.
El micro de TI que tengo tiene un PHY de Ethernet en el microcontrolador, no necesito uno externo tampoco, pero si para USB.
Para mi todo depende de la aplicacion a desarrollar la seleccion del microcontrolador, pero nunca diria un "NO" a una marca.


PD: Vuelvo a repetir, hay gente que tambien tiene problemas con los demas microcontroladores, tan solo ir a el foro oficial y ahi seguro que vas a ver varios.
« Última modificación: 09 de Agosto de 2015, 19:32:31 por KILLERJC »

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: ¿Por qué no usar PIC32?
« Respuesta #3 en: 09 de Agosto de 2015, 20:13:16 »
Para mí no porue es MICROCHIP vs ARM. Y ARM hay muchos. Si aprendes a programar con micros que son de ARM despues podes elejir entre muchas marcas, TI, NXP, ST, Atmel, Freescale entre otras. Si uno de ellos te falla en algo o no te gusta algo, tenes unos cuantos más para elegir, pero lo básico de la aruitectura te seguirá sirviendo. Yo estoy siempre eligiendo entre NXP y ST y cambiar entre uno y otro me ha costado casi nada.
Pero si elijes microchip, pues mueres ahí, si no te funciona fuiste, todo lo que aprendiste quedó perdido (o casi todo). Desde la concepcion misma de ARM creo que no hay competencia, una marca (Microchip) no puede competir con una "arquitectura" (no es arquitectura, pero nunca me sale la palabra que define lo que ARM es) que luego implementarán muchas marcas... En fin, para mi es un NO rotundo a PIC32 y un SI a ARM. La discucion para mí está en cuál marca utilizar...

Saludos!
-
Leonardo Garberoglio

Desconectado Geo

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 922
    • Mexchip
Re: ¿Por qué no usar PIC32?
« Respuesta #4 en: 09 de Agosto de 2015, 21:13:06 »
Primero, muchas gracias por sus comentarios (ahorita estoy tratando de darle una leída a sus posts sobre PIC32, como los de juaperser1).

La arquitectura de los PIC32 está basada en MIPS, yo tengo la idea de que Microchip se decidió por esta por no "seguir al resto" en cuanto a ARM y diferenciarse, aunque también significa que está un tanto aislado en cuanto a herramientas.

Les comento que de compilador ya adquirimos la licencia de XC32, tenemos tarjetas de desarrollo con ese PIC32MX tanto de Microchip como unas de Digilent, pero como les dije no he tenido ninguna oportunidad de echarles un vistazo, son unos compañeros quienes están probándolos y por ahora creo que se pelean con un problema en que al haber un error en un periférico el micro se queda sin saber a dónde regresar/apuntar (desconozco detalles). Según tengo entendido tras arreglar eso ya estaremos cerca de sacar nuestro primer proyecto, aunque la verdad todavía faltan bastantes cosas por implementar :P.

Repito, muchas gracias por compartir sus experiencias, ya les contaré en cuanto pueda trabajar con estos, pero por lo pronto también voy tratando de desempolvar mis tarjetas de desarrollo que tengo con micros ARM para ir comparando :).
La imaginación es el límite.
Visita mi blog, en inglés o en español :).
Mini curso de introducción a VHDL en MEXCHIP :-/

Desconectado juaperser1

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 2980
Re: ¿Por qué no usar PIC32?
« Respuesta #5 en: 09 de Agosto de 2015, 21:36:38 »
Citar
Para mi todo depende de la aplicacion a desarrollar la seleccion del microcontrolador, pero nunca diria un "NO" a una marca

Hola killerjc, solo aclarar que no digo "NO" a la marca, si no a la gama PIC32 tanto los MX como los MZ, pero los 16 18 y 24 no tengo razón para quejarme de ellos ( de las librerías y documentación si) pero no fallan tanto con los 32.

Yo también digo que el micro va con la aplicscion.



Un saludo

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: ¿Por qué no usar PIC32?
« Respuesta #6 en: 09 de Agosto de 2015, 21:59:00 »
No dije que vos decis que NO xD..

Yo no me queria meter en la guerra MIPS / ARM.

Para mi no influye tanto eso, a no ser que tengas un port en ASM y tengas que acomodarlo a otra arquitectura por que el fabricante no posee un port de ejemplo o para usarlo, la programacion es en C, por lo cual lo que mas se toca no es el micro sino mas los perifericos que esos si son propiedad de cada uno de los fabricantes. Si esta bien programado, tu programa deberia abstraerse del HW completamente. Asi que todos serian "reutilizables" y solo deberias aprender cada periferico tal y cual lo harias con cualquier cambio de fabricante. Modificando obligatoriamente solo unos pocos archivos.

Imagino que el nucleo MIPS es un excelente nucleo nomas que no lo supieron aprovechar los de Microchip. Como por ejemplo eso de que el nucleo tiene una frecuencia y sus perifericos otra ....

Eso con respecto a programacion , lo unico que si te tenes que comer es el IDE de Microchip, mientras que con el otro podes elegir tu IDE con un poco mas de libertad.

Asi que lo unico en discusion creo que es Perifericos / Soft de desarrollo. Y no la arquitectura del nucleo (Aunque el Cortex-M4F posee FPU :P).

Y luego de ver los perifericos del PIC que me pasaste te das cuenta que son perifericos de un PIC18 en un PIC32..
Como podes tener 2 timers de 32bits y uno de 16, o un total de 5 de 16. Es como si un PIC12/16/18 tuvieran timers de 4 bits. Encima creo que son todos Up counter, sin recarga automatica, ni configurables de 1 disparo/varios.
Un RTCC sin entrada de bateria.. Fue lo que mas me sorprendio cuando salio el tema una ves, de que sirve si cuando se le va la luz se pierde la hora, a no ser que pongas por fuera una buena bateria como para alimentar el micro completamente y senses la entrada de tension ..
Un ADC single ended super simple, si lo comparo con el ADC que tiene el Tm4c1294 que es single/diferencial, posee promediado automatico, comparadores,etc etc etc
SPI vs SQI

En fin, si miras otros micros vas a notar la diferencia en los perifericos
« Última modificación: 09 de Agosto de 2015, 22:37:47 por KILLERJC »

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: ¿Por qué no usar PIC32?
« Respuesta #7 en: 09 de Agosto de 2015, 23:15:46 »
Yo sigo sin coincidir, aunque es una cuestion de opinion, nadie tiene la verdad absoluta.

Agrego, abstraerse por completo del hardware es una utopía, ni siquiera las marcas consiguen hacer una librería (HAL, por ejemplo en ST, LPCOpen en NXP) consiguen que nosotros nos abstraigamos del hardware, menos lo vamos a conseguir nosotros solos. Ahora, por ejemplo, agarra un ejemlo hecho para TI ue encienda y apague un led y pasalo a un micro de ST o de NXP.... no te va a costar nada. ahora pasalo a un pic32... tenes ue aprender todo de cero, el tiempo que invertiste con los ARM no te sirvió de nada.

El segundo punto ya lo expusiste vos y me gutsraía generalizar. Con microchip el techo es un pic32 con no sé que características, pero estoy seguro que son muy inferiores a cualquier ARM gama media... y todavía tendrás la gama alta y despues tenes los F7 y así sucesivamente.... yo veo que el techo de microchips es casi el piso de ARM por ello sigo diciendo que cualquier proyecto importante lo resolvería con ARM sin pensarlo.
Tal es así que ya ni uso los PIC para nada que supere a un 16F883. Antes que poner un pic18 (4550, por ejempo) pongo un LPC11U67 (cortex M0+), sacando que es LQFP despues no hay un solo motivo por el que consideraría un 18F antes que un M0+. Los periferícos de los micros basados en ARM suelen ser muy superiores a los de los PIC....

Pero insisto, esto es todo subjetivo a la experiencia de cada uno, ni yo ni nadie tiene la verdad absoluta!

Saludos!
-
Leonardo Garberoglio

Desconectado juaperser1

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 2980
Re: ¿Por qué no usar PIC32?
« Respuesta #8 en: 10 de Agosto de 2015, 08:57:22 »
Yo estoy con killerjc aunque también comparto la idea de elgarbe.

Es decir, lo que hace a un micro bueno no es el núcleo si no los periféricos,  y lo robusto, que no tenga bug.

Por ejemplo si coges y comparas los periféricos de un freescale arm con los de un st arm también, pues ST se queda en pañales, y que los dos sean arm pasa a un segundo plano.

El núcleo MIPS no es malo ni peor que arm ni mucho menos ( y por cierto KILLER los pic32MF están en desarrollo y por fin van a tener FPU), y no solo esta MIPS hay muchísimos núcleos que son muy bienos, como los especializados de los dsp o PowerPC etc etc.

Es mas si los pic32MZ no fueran una mierd@ tan grandisima, que parece que uno le ha estornudado encima a la oblea de silicio, serian una gran competencia para los gordos de ST.

Pero es cierto lo que dice elgarbe, arm se ha estandarizado ( o por lo menos es el mas estandarizado) y tiene toda la razón de que lo loqico ahora es aprender para ARM, ya que si por ejemplo empiezas con los ST y dices no me gustan, pues te vas a atmel por ejemplo sin mucho esfuerzo, o por lo menos con menos esfuerzo que si te cambiarás a otro con una estructura completamente distinta.

Pero de opinión personal, estoy mas de acuerdo con killerjc debes de buscar el micro que se ajuste mejor a tu aplicación y no uno que te vaya a resultar mas fácil de programar o estés mas acostumbrado.

Es mi opinión pero comprendo la opinión de elgarbe y la veo totalmente valida también.

Desconectado Geo

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 922
    • Mexchip
Re: ¿Por qué no usar PIC32?
« Respuesta #9 en: 10 de Agosto de 2015, 12:50:08 »
Pero de opinión personal, estoy mas de acuerdo con killerjc debes de buscar el micro que se ajuste mejor a tu aplicación y no uno que te vaya a resultar mas fácil de programar o estés mas acostumbrado.

Es mi opinión pero comprendo la opinión de elgarbe y la veo totalmente valida también.

Muy de acuerdo en que debe tener más importancia ajustar a la aplicación, pero saber cuál se puede ajustar depende de la experiencia o conocimiento que se pueda o no tener de las herramientas disponibles, por ello tratar de indagar sobre las herramientas que uno menos conoce :).

La aplicación en la que se está trabajando requiere muy poco de cosas especializadas en cuanto a procesamiento de datos, se necesita comunicación I2C, CAN, RS232 y RS485, ya estamos metidos con el PIC32 (por las herramientas que ya adquirimos) y no creo que nos vayamos a atorar de manera grave (espero no estar hablando demasiado pronto), pero estoy buscando formar opinión (como les digo, no he tenido oportunidad de meterle mano  a los kits de desarrollo que tenemos, salvo por lo que consigo platicar con mis compañeros), sobretodo en cuanto a qué otras herramientas deberíamos estar probando en un futuro próximo :).
La imaginación es el límite.
Visita mi blog, en inglés o en español :).
Mini curso de introducción a VHDL en MEXCHIP :-/

Desconectado elgarbe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2178
Re: ¿Por qué no usar PIC32?
« Respuesta #10 en: 10 de Agosto de 2015, 13:22:11 »
Yo estoy con killerjc....

no sos más mi amigo! y si te tuviera en el face te borraba!!!

jajaja, na, joda  :D
-
Leonardo Garberoglio

Desconectado juaperser1

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 2980
Re: ¿Por qué no usar PIC32?
« Respuesta #11 en: 10 de Agosto de 2015, 13:50:10 »
Citar
  a aplicación en la que se está trabajando requiere muy poco de cosas especializadas en cuanto a procesamiento de datos, se necesita comunicación I2C, CAN, RS232 y RS485, ya estamos metidos con el PIC32

De acuerdo,  pues te recomiendo mires las hojas de erratas del micro que vayas a usar, y asegurarte de que no tiene fallos de silicio en los periféricos a usar, y si los tiene que se puedan solventar.

Después vuestros mayores problemas vendrán con las librerías, que son una "caquita" y no sabria si recomendsrte las harmony ya que son muy nuevas y no las he testeado  mucho. Tener especial cuidado con el I2C si lo tratais como maestro esclavo con interrupciones.

Citar
no sos más mi amigo! y si te tuviera en el face te borraba!!!

jajaja, na, joda  lol


AGGGG mis sentimientos... :8}.   Haha :D

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: ¿Por qué no usar PIC32?
« Respuesta #12 en: 10 de Agosto de 2015, 16:19:21 »
Yo usaria los micros mas bien por su necesidad. Los pic32 tienen sus perifericos limitados, es decir, no traen tanto como deberian, que si, te traen usb, eth... Pero luego por ejemplo para PWM se quedan cortos cuando por ejemplo un dspic33e trae para muchisimos pwm, por lo cual quizas un pic32 se quede corto en necesidad a un proyecto que requiera muchos pwm. Y luego, para por ejemplo un control de temperatura, lcd y led de una incubadora, pues tampoco usaria un pic32 porque se quedaria bastante grande. Todo depende mas bien de la necesidad.

Ya independiente de los bugs que trae, mas bien seria lo que anteriormente he dicho.

Yo hace poco he descubierto la serie qorivva de freescale y puedo decir que para mi proyecto es perfecta y que ni el mejor pic32 me podria servir como este, sin embargo para otra cosa no me serviria porque tiene perifericos especificos.

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re: ¿Por qué no usar PIC32?
« Respuesta #13 en: 31 de Agosto de 2015, 17:22:16 »
Saludos.
En nuestra empresa fabricamos un producto en base al PIC32MX795F512H, el producto ya tiene más de 3 años y funciona de maravilla. No hemos tenido ningún problema, obviamente siempre se debe leer las erratas del dispositivo para solucionar un posible problema o limitante. El código fue realizado en XC32 y actualmente estoy migrando dicho código a MPLAB Harmony sin ningún problema o inconveniente.


PinpadII



Solintece

« Última modificación: 31 de Agosto de 2015, 17:26:33 por DominusDRR »
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re: ¿Por qué no usar PIC32?
« Respuesta #14 en: 31 de Agosto de 2015, 17:32:22 »
Yo usaria los micros mas bien por su necesidad. Los pic32 tienen sus perifericos limitados, es decir, no traen tanto como deberian, que si, te traen usb, eth... Pero luego por ejemplo para PWM se quedan cortos cuando por ejemplo un dspic33e trae para muchisimos pwm, por lo cual quizas un pic32 se quede corto en necesidad a un proyecto que requiera muchos pwm. Y luego, para por ejemplo un control de temperatura, lcd y led de una incubadora, pues tampoco usaria un pic32 porque se quedaria bastante grande. Todo depende mas bien de la necesidad.

Ya independiente de los bugs que trae, mas bien seria lo que anteriormente he dicho.

Yo hace poco he descubierto la serie qorivva de freescale y puedo decir que para mi proyecto es perfecta y que ni el mejor pic32 me podria servir como este, sin embargo para otra cosa no me serviria porque tiene perifericos especificos.

Los PIC32MX y MZ están orientados a conectividad mientras que los dsPIC a control de máquinas eléctricas como motores o fuentes de alimentación. Nadie se le ocurriría utilizar un PIC32MX para construir un variador de velocidad, al menos que ya estén disponibles los PIC32MK.


Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32