PIC32 de microchip, basado en la arquitectura MIPS32

Después de años de arquitecturas Microchip compatibles hacia atrás, parece que nos sorprenden con una nueva arquitectura de 32 bits basada en MIPS32 (en concreto el M4K Low footprint processor de 30K puertas). Se trata de los PIC32.

Es un paso muy interesante, ya que MIPS32 es un nucleo con compilador GCC, siendo una arquitectura seria que no adolece de los problemas de las arquitecturas de microchip.

Si alguien la prueba que nos cuente su experiencia, realmente prometen :-)

Realmente prometen, por que entre las muestras gratuitas y el starter kit que solo cuesta 36€, lo tenemos facil para trabajar con el, ademas te viene con todo el programa que necesitas para programarlo.
Habra que probarlo, cuando tenga dinero.:smiley:

Por cuestiones de trabajo fuí a la primera presentación que Microchip hizo es españa de sus PIC32 y sus núcleos MIPS. Realmente lo vendían como el futuro hoy, pero lo cierto es que hace más de una década que Texas Instruments tienes DSP’s de 32bits. Además Microchip se ha tenido que asociar a MIPS porque ARM está asociada a STMicroelectronics entre otros. Para mí son núcleos mejores los de ARM que los de MIPS pero esto el tiempo lo dirá.

Microchip se estaba quedando atrás en la carrera de las CPUs por su política de fabricárselo todo ellos, mientras que el resto de fabricantes se asociaban entre ellos para hacer desarrollo y fabricación en paralelo. MIPS no está tan extendido como ARM lo que complica la migración del fuente de una máquina a otra.

Para empezar a trabajar con los PIC32 hará falta esperar un par de años, quizás más, como les ha pasado con sus famosa serie dsPIC33, que no tiene más que erratas. En el trabajo usamos microchip entre otros fabricantes y los micros de microchip no son estables hasta que no les pasan unas cuantas revisiones por encima. Parece que los de Microchip sacan micros al mercado sin testear y a medida que los clientes van detectando fallos van escribiendo erratas. Esto lo he vivido en carne propia.

Saludos.

Yo también he sufrido esto en mis carnes, y no solo erratas sino micros defectuosos con comportamientos anómalos.

Eso por no hablar de su arquitectura que no disponía de pila (stack) (hasta la segunda revisión de los PIC18F no la tuvo) con lo cual, los compiladores utilizaban mecanismos super complicados para distribuir los parámetros de las funciones por memoria de forma que no se solapasen en ejecución, y aun así, durante el tratamiento de interrupciones esto era un problema.

En fin, nunca he trabajado con la arquitectura MIPS32, y para mi ARM es una muy buena opción a la que ya me he habituado. De todas formas, si sus precios son competitivos, y la calidad también, tal vez les demos una oportunidad.

Se me ocurre, que tal vez pudiéramos pedir en conjunto unos samples de los development boards del PIC32 a cambio de hacer un review en el foro de cara al público. Si alguno tiene tiempo que lo diga y trataré de moverlo.

Un saludo :slight_smile:

Hola:

He estado desde el 2007 noviembre, observando los PIC32. Rara vez veo gente usarla. ¿Realmente vale la pena aprenderlo?

Saludo.

Cada arquitectura tiene su mercado. Evidentemente, para cosas mucho más sencillas siempre va a ser más barato utilizar una arquitectura de 8 o 16bits. Cuando las cosas se complican o se requiere mayor capacidad de proceso… un 32bits o un DSP nunca vienen mal.

Yo en cuanto a arquitecturas de 32bits prefiero los LPC de NXP/ARM7, arquitectura de 32bits en la que está basado let your imagination explode!|Espardino , principalmente porque la cantidad de código, bootloadres y ejemplos disponibles a dia de hoy es mayor, además de tener el RTC conexión de batería integrados.

Sí he de decir a fabor de los pic32 que su arquitectura MIPS32 tiene ya muchos años y está probada, además la gente de microchip ofrece piezas de software que se pueden utilizar y son muy buenas: como la pila TCP, drivers usb, etc… (en los ARM7 hay equivalentes, pero estas de microchip están más cuidadas.)

[quote=Meta;7066]Hola:

He estado desde el 2007 noviembre, observando los PIC32. Rara vez veo gente usarla. ¿Realmente vale la pena aprenderlo?

Saludo.[/quote]

Buenas:

Por lo que he leído por ahí, ARM le da mil vueltas a PIC, AVR e incluso a FreeScale (Antes Motorola).

Sólo hay un libro de PIC32, sólo faltan traducirlos y que vengan más gente que hagan libros. Bueno, sobre PIC32 tiene menos documentación porque es muy nuevo. No hay problemas para Microchip ya que poco a poco se incluyes muchos ejemplos en poco tiempo en su Web. Claro que en PIC de 8 y 16 bits hay de sobra, sobre todo el 16F84 que te lo encuentras hasta en la sopa y en todos los idiomas.

Espero que saquen en español cosas sobre PIC32 y los ARM que tanto se están poniendo de moda, se que hay una persona que los va a traducir (el ARM). ARM tiene buena fama aunque veo que muy poca gente que los utiliza, será falta de información.

Gracias por el comentario.

Un cordial saludo.

Hola otra vez Meta,

ARM realmente no es ningún fabricante de chips, simplemente es una arquitectura de procesador, que tiene distintos modelos: ARM7, ARM9, cortex-m1 cortex-m3 ... etc :)

Después hay muchos fabricantes que producen micros con procesador ARM, introduciendo sus propios dispositivos/periféricos. Están NXP con sus series LPC21xx o LPC17xx , está Atmel con los AT91xxxx o los SAMxxx, luego está samsung, y así unos cuantos más.

Los PIC32 en sí no son tampoco una arquitectura, es solo la marca comercial de microchip. Estos se basan en la arquitectura MIPS32, que es el quivalente a un ARM7 más o menos. Después ellos a ese mips32 le añaden sus mejoras (capacidad de depuracion por el ICD2), los perifericos de microchip… etc… :slight_smile:

En cuanto a documentación, sí es cierto que para ambos casos hay mucha en inglés, pero en castellano poquito. Yo con eso no tengo problema, pero a más de uno estoy seguro de que le vendrá bien documentación en castellano.

[quote=Meta;7068]Buenas:

Por lo que he leído por ahí, ARM le da mil vueltas a PIC, AVR e incluso a FreeScale (Antes Motorola).

Sólo hay un libro de PIC32, sólo faltan traducirlos y que vengan más gente que hagan libros. Bueno, sobre PIC32 tiene menos documentación porque es muy nuevo. No hay problemas para Microchip ya que poco a poco se incluyes muchos ejemplos en poco tiempo en su Web. Claro que en PIC de 8 y 16 bits hay de sobra, sobre todo el 16f84 que te lo encuentras hasta en la sopa y en todos los idiomas.

Espero que saquen en español cosas sobre PIC32 y los ARM que tanto se están poniendo de moda, se que hay una persona que los va a traducir (el ARM). ARM tiene buena fama aunque veo que muy poca gente que los utiliza, será falta de información.

Gracias por el comentario.

Un cordial saludo.[/quote]

Hola a Todos

Estimados Colegas, veo que estais muy familiarizados con las arquitecturas de los micros y me llama la atención que en todo el hilo no haceis mención al legendario x8051. Ya se que es una arquitectura de 8 bits, pero las nuevas versiones con ejecuciones en un ciclo de reloj, llegan a 50 MIPS.
Yo viví los comienzos de PIC en la universidad y no me gustaba la politica de sus micros, por eso me decante por la familia 8051 que eran mucho más genericos y no tenias que andar migrando de una aplicación a otra.

De todas formas estoy buscando pasar a una plataforma 32 bits que sea potente, barata y el equipo de desarrollo sea barato.

Conoceis algún articulo donde se haga una comparativa de microcontroladores?

Saludos

Salvatore, tienes toda la razón, sí es cierto que los 8051 de hoy en dia son dignos de mención (y de uso). Además son muy populares a la hora de utilizarlos como micro empotrado en una FPGA.

A mi la arquitectura de los PIC nunca me ha gustado es muy problemática, al menos hasta las 18F (incluidas) , aunque he de decir que estoy terminando un trabajo para un cliente que trabaja con la familia 18F, 3€ el chip con conexion ethernet integrada… ¿Como compites con eso?.

En cuanto a comparativas, no sabría decirte, además ahora hay mucha, mucha, muuucha… variedad. Sobre las familias de NXP LPC2xxx puedes preguntarme lo que quieras, las LPC17xx (cortex m3) las tengo menos exploradas.

También he mirado un poco las de Luminary micros (recien adquirida por Texas instruments) que tiene algunos micros muy competitivos en cuanto a precio y características.

Efectivamente Ajo los PIC son muy agresivos en precios, pero te cuento.

El exito comercial de PIC (hace 15 años ) fue sacar los primeros encapsulados pequeños ( 20 patillas cuando un 8051 andaba por 48 ) y muchas notas de aplicación. Todo esto hizo que la introducción fuera masiva y se creará toda una generación de “adectos al PIC”.
Lo que la gente no veía es que para cada aplicación un micro y un equipo de desarrollo ( cuando un micro tiene UART no tiene Timer o Tiene Timer y no comparadores, etc ) sin embargo las familias 8051 siempre mantenian la perifería mínima.

De cara al diseñador ( que es donde quería llegar ) es mejor elegir un micro siempre completo y así te sirve para todo. Una vez conoces el micro al 100% no hay secretos y no tines que andar en cada diseño volviendo a estudiar el micro.

Insisto mira la familia 8051F… de Cygnal ( tienen un micro de 3x3mm).

Buenas:

La familia 8051 me han recomendado hace años que es muy obsoleto, muy bueno es como obsoleto, incluso más que los PIC de 8 bits.

Por lo que veo, las primeras fabricaciones de PIC nuevos con el tiempo unos dos años o más sacan erratas, fallos corregidos, poco a poco lo mejoran.

Microchip es cierto que es caro, aún así hasta el PIC 16F84A se vende como rosquillas y caro para lo que es, ahora están con los 16F88, su actual sustituto directo, antes 16F628A.

La verdad tanto quejarse que PIC no es gran cosa, es el más que se vende y el más fácil de localizar y comprar, donde hay más libros en muchos idiomas sobre todo información con grandes ejemplos que te encuentras en su propia Web.

Lo que quiero es que cambien de una vez la tecnología de 8 Bits, por ejemplo, que sea más fiable y que hagan un sólo banco de memoria, no 4 o más. Por alguna razón no lo hacen. Ahora están pendientes del PIC32 y sobre todo, investigan mucho introducir PIC con muchas funciones sobre todo el USB 3.0 que lo harán.

Dicen que en su salida del PIC32 de 32 Bits, tienen fabricado el de 64 Bits, la gente se pregunta. ¿Por qué no los vende? ¿A qué esperan?

En fin. Me encanta los PIC, salvo los cuelgues en grandes proyectos que puede ocurrir, varios bancos de memoria, arquitectura obsoleta…

Los PIC son para jugar, para cosas serias e industriales es mejor PLC.

Salu2.

[quote=Meta;7075]Buenas:

La familia 8051 me han recomendado hace años que es muy obsoleto, muy bueno es como obsoleto, incluso más que los PIC de 8 bits.
[/quote]

Como te comentaba salvatore, obsoletos son los antiguos 8051, que necesitaban 4-10 ciclos de reloj por instrucción. Los actuales necesitan 1, es decir 50Mhz -> 50Mips, mucho más rápido que cualquier pic actual de 8 bits. Y eso sin contar que a través de un simple puerto serie puedes depurar tu aplicación.

Por otro lado, la arquitectura del 8051 es mucho más limpia y más pensada (a pesar de ser más antigua). Es mucho más sencilla y práctica de programar que la de los PIC 16F / 18F.

Por lo que veo, las primeras fabricaciones de PIC nuevos con el tiempo unos dos años o más sacan erratas, fallos corregidos, poco a poco lo mejoran.

Microchip es cierto que es caro, aún así hasta el PIC 16F84A se vende como rosquillas y caro para lo que es, ahora están con los 16F88, su actual sustituto directo, antes 16F628A.

No no, microchip no es caro, tal vez las piezas más famosas las tienen algo subidas de precios, pero si buscas bien tienes modelos a precios increiblemente competitivos. Eso sí, en cuanto a arquitectura … puagg :wink:

La verdad tanto quejarse que PIC no es gran cosa, es el más que se vende y el más fácil de localizar y comprar, donde hay más libros en muchos idiomas sobre todo información con grandes ejemplos que te encuentras en su propia Web.

Sí, eso está claro, es márketing, y muy agresivo. Es en lo que son buenos microchip. Por otro lado, yo opino que no son buenos haciendo herramientas de desarrollo y arquitecturas. Tengo un ICD3, y no te explico la cantidad de veces que se queda frito depurando… porque ibas a alucinar… del MPLAB ni hablamos :slight_smile:

Lo que quiero es que cambien de una vez la tecnología de 8 Bits, por ejemplo, que sea más fiable y que hagan un sólo banco de memoria, no 4 o más. Por alguna razón no lo hacen. Ahora están pendientes del PIC32 y sobre todo, investigan mucho introducir PIC con muchas funciones sobre todo el USB 3.0 que lo harán.

Esa es la parte realmente fallida de los pic, el tema de bancos de memoria, siempre lo han mantenido por mantener la retro-compatibilidad entre piezas, pero eso hace que sea una arquitectura muy poco amistosa para cualquier compilador de C o para hacer cosas algo complejas en ensamblador. En piezas de 16 bit (PIC24/dsPic) creo que mejoró.

Dicen que en su salida del PIC32 de 32 Bits, tienen fabricado el de 64 Bits, la gente se pregunta. ¿Por qué no los vende? ¿A qué esperan?

¿Eso donde lo has visto? Creo que todavía no hay nadie fabricando microcontroladores de 64bits ':smiley:

En fin. Me encanta los PIC, salvo los cuelgues en grandes proyectos que puede ocurrir, varios bancos de memoria, arquitectura obsoleta…

Los PIC son para jugar, para cosas serias e industriales es mejor PLC.

Salu2.

No, realmente, yo opino que cada pieza tiene su lugar. No solo hay que tener cuenta el factor amigabilidad, más bien una mezcla:

  • Disponibilidad en el mercado
  • Facilidad de programación
  • Coste por pieza
  • Rango de temperaturas
  • Capacidad de la arquitectura para ejecutar la aplicación deseada (RAM/ROM/MIPS)
  • Herramientas de desarrollo disponibles
  • Fiabilidad de las piezas
  • Facilidad de migración de piezas a otros fabricantes

Y seguro que se me olvidan detalles…

Por ejemplo, como en mi caso del PIC con ethernet integrada, 128KB de FLASH y 4KB de RAM… no puedo encontrar nada que lo reemplace por menos de 8€, y la pieza que estoy usando cuesta 3€

imagináos una tirada de 1000 (8-3)*4000 = 20.000€ de ahorro. Y eso sin contar el tiempo que la pila TCP de microchip me está ahorrando.

Para otras aplicaciones, donde la carga matemática sea más pesada me iría a un 8051, o si no requiriese ethernet, probablemente me iría a un 8051. Si no requisiera entradas analógicas y la carga matemática fuera alta… me iría a un Luminary cortex m3 de gama baja, que están por debajo de 1€

En cuanto a los PLC son una opción por ejemplo, cuando a nivel industrial se quieren emplear las horas de alguien con una formación menos específica en electrónica. Son mucho más caros, eso sí, y si el despliegue va a ser grande tal vez salga más económico algo específico.

Hello.

El PLC es otro mundo y está por encima de los PIC, AVR, etc…

Microchip que piense es esta frase. O renovas o mueres. Tarde o temprano lo tendrá que hacer, me refiero cambiar completamente la arquitectura obsoleta por una reciente que estará mejor que las de hace 15 años. Tiene capacidad para hacerlo sobre todo ya que se aprende con los errores a mejorar.

Ahora estoy con el libro en Inglés, estoy haciendo pruebas con el PIC32 y no está nada mal, eso si, me parece demasiado potente solo para activar I/O, lo que me gusta es proceso de vídeo.

Salu2.

[quote=Meta;7079]Hello.

El PLC es otro mundo y está por encima de los PIC, AVR, etc…

[/quote]
Por encima en sencillez de programación y para interactuar con otros sistemas… eso está claro.

Microchip que piense es esta frase. O renovas o mueres. Tarde o temprano lo tendrá que hacer, me refiero cambiar completamente la arquitectura obsoleta por una reciente que estará mejor que las de hace 15 años. Tiene capacidad para hacerlo sobre todo ya que se aprende con los errores a mejorar.

En ello están.

Ahora estoy con el libro en Inglés, estoy haciendo pruebas con el PIC32 y no está nada mal, eso si, me parece demasiado potente solo para activar I/O, lo que me gusta es proceso de vídeo.

Salu2.

Justo me llegó hoy el módulo de PIC32 para una placa Explorer16 que tengo por aquí, no se cuando tendré tiempo de probarlo. Mi intención es hacer un bootloader USB como el de espardino que es muy muy práctico.

En cuanto a proceso de vídeo, creo que no sería capaz, demasiado ancho de banda. Te puede dar para procesar algo de audio, descomprimir mp3 con la libmad, hacer vozip, y cosas así.

Probablemente también lo puedes usar para hacer video overlay sencillo y generación de señal de video (si sus hermanos pequeños pueden, seguro que el mucho mejor).

Vaya, pediste el PIC32. ¿Por casualidad es este PIC32MX360F512L?

Ya me contarás como te va en el mundo del PIC32 que puedes entregar tus proyectos en www.mypic32.com

No se mucho de ese mundo. ¿Hay varios módulos y que hay PIC32 compatible con USB 2.0? (Se que está allado los USB 3.0, dos años más tardes el USB 4.0).

Sí, es exactamente esa la versión que tengo. la -80

Por lo que entendí soporta hasta USB 2.0 host y dispositivo. Tal vez el siguiente sea USB2.0 pero no USB 3.0.

Igual me equivoco mucho ¿donde lo leiste? :slight_smile:

Un saludo! :slight_smile:

¿Estás seguro que el tuyo soporta USB 2.0?
Product Overview

Porque el USB 3.0 se ha hablado por Internet, suposisiones que la gente creen que van hacer, nada confirmado. Me la juego que lo harán.

Vaya, leches… escogí uno que no tiene USB2.0, vaya metedura de pata… :confused:

¿Se puede escoger uno con USB 2.0 o sólo el que tienes?

Mejor espero para el USB 3.0 que está mejor y no tardarán en venir. (Año y medio).