¿Cuáles son los buenos microcontroladores disponibles hoy en día? [cerrado]

Tengo experiencia en ensamblaje y programación en C para microcontroladores, pero no estoy familiarizado con las diversas familias de MCU y DSP que ofrecen las empresas actuales. (por ejemplo: Texas Instruments, Atmel, Renesas)

Me gustaría saber acerca de los buenos microcontroladores/DSP y cómo es desarrollar con ellos. Resuma sus conocimientos sobre las diversas familias de MCU/DSP, una familia por respuesta.

Sería muy interesante también si detallas cuáles son las aplicaciones principales para este microcontrolador, por favor.

(Esta es una "wiki comunitaria", por lo que cualquier persona con una reputación de más de 100 puede refinar y mejorar las respuestas)

Estoy comenzando con algunas respuestas, ¡no dude en agregar las suyas! o edite familias existentes para agregar su sabiduría. Un agradecimiento especial a Jason S por toda la sabiduría de TI MCU/DSP. chiphacker.com/users/330/jason-s
@Edward, este sitio está en modo de arranque para que todos puedan editar publicaciones de CW
Me gustaría ver/oír cuáles están disponibles desde dónde y especialmente si hay alguno disponible como muestra.
'bueno' es un concepto resbaladizo. Cuando usted (en realidad, cualquiera) busque una respuesta, considere cuáles son sus prioridades. Algunas sugerencias: potencia de procesamiento máxima, potencia de procesamiento por mW, velocidad de E/S, periféricos específicos, menor consumo de energía en modo de espera, disponibilidad de herramientas o bibliotecas (económicas/gratuitas/con buen soporte), disponibilidad a largo plazo, rango de temperatura, ESD robustez
Toda esta pregunta es inútil y no constructiva . Como era de esperar, está recibiendo opiniones muy sesgadas a favor y en contra de varias líneas de procesadores. Votación para cerrar.
Otro hilo con una visión diferente de este tema: ¿Cómo elegir una plataforma MCU?
¿Por qué todas estas preguntas de hace 3 años siguen apareciendo sin contenido nuevo?
@Matt: haga clic en el enlace "Activo -> Hoy" cerca de la esquina superior derecha de la página. Alguien editó una respuesta y eso aumentó la pregunta. He estado marcando esas preguntas y los mods las han estado bloqueando. Terminan con un mensaje como "esta pregunta tiene un significado histórico..." o algo así.
@Ricardo Sé que fue editado. Esa pregunta era de hace más de dos años. Esta vez, tengo el representante para cerrar.
@ Matt: ahora veo que su pregunta era más filosófica (¿por qué todas estas preguntas de 3 años?). Lo siento por eso. Supongo que el problema en este caso es que la pregunta y sus respuestas son wikis de la comunidad, por lo que cualquier persona con más de 100 representantes puede editar. Esta pregunta realmente debería cerrarse o bloquearse a la vista.
@Matt: ¿Acabo de responder su comentario de hace 2 años como si se hubiera publicado hoy? Vaya, eso se siente raro... Además, eso significa que no es la primera vez que la pregunta aparece en la lista activa. Una razón más para que esté bloqueado.
@Ricardo De hecho, recuerdo haber escrito ese comentario. Alguien iba por la insignia de arqueólogo o algo así. De todos modos, esta vieja pregunta ya no se ajusta al alcance de la vista y necesita ser despachada.

Respuestas (18)

ARM es el estándar de la industria para los controladores de 32 bits, aunque el PIC32 tiene algunas características interesantes. Son bastante fáciles de usar. Me gustan los chips NXP LPC2000 y LPC1000 ARM, pero el nuevo chip Energy Micro ARM Cortex-M3 es muy interesante debido a su bajo consumo de energía, tan bueno como el MSP430 [Youtube]. El soporte es muy variable, los chips NXP tienen el grupo LPC2000 que dirijo, que parece gustarle a la gente: ¡tenemos más de 8000 miembros!

el PIC32 usa un núcleo MIPS M4K, similar a ARM en el sentido de que el núcleo tiene licencia para otros fabricantes, como un microchip para empacar y agregar periféricos.
Voto ARM también. compiladores y depuradores completamente estándar, una interfaz JTAG casi universal, sin dependencia de cosas binarias propietarias como PICASM y C18. :-)
Otro fanático de ARM aquí. Hice un prototipo de un proyecto y luego diseñé y ensamblé una PCB para TI Stellaris LM3S6965. Documentos y bibliotecas de software decentes, tenía experiencia en software antes de ese proyecto y los documentos proporcionados por TI fueron suficientes para aprender a programar el dispositivo y usar sus esquemas de muestra como plantilla. Aprendí a mí mismo cómo hacer el diseño de la placa y construí algo que obras. Toneladas de funciones y potencia por el dinero. Hoy miraría las diversas ofertas de Cortex M4, TI acaba de lanzar sus micros M4, pero no dudaría en mirar las ofertas de otros proveedores.

Atmel AVR , quizás en un Arduino : no estoy de acuerdo con Leon y diría que la línea AVR de Atmel es una gran familia para empezar. Es bastante diversa, desde ATtiny, pasando por ATmega, hasta Dragon (con la que no he trabajado). Diría que AVR32 y Xmega son familias diferentes.

AVRfreaks es uno de los mejores foros de electrónica en la web (que pronto será superado por Chiphacker :), también existe la comunidad Arduino, que está dirigida a los aficionados. Arduino es excelente para aprender hardware de microcontroladores, aunque no lo ayudará con la programación (el OP declaró que conocía ASM y C).

La suite WinAVR es muy sencilla en comparación con otras cadenas de herramientas. Simplemente descargue, presione Siguiente varias veces, ingrese un código y presione F5. No hay nada más fácil que eso. Claro, el editor de AVR Studio no tiene todas las funciones que debería tener, pero muchos IDE de proveedores no son mejores, o incluso peores (*tos*MPLAB*tos*).

No estoy seguro de la entrega, pero diría que el SOT23 ATtiny de 6 pines es un chip de nicho, y la versión SO8 o DIP está muy disponible. En una nota relacionada, también hacen un gran trabajo al obtenerlos tanto en DIP (para creación de prototipos) como en paquetes SMT compactos.

Si usa Linux, probablemente pueda tener una cadena de herramientas completamente funcional en menos de medio minuto con "sudo apt-get install gcc-avr avr-libc avrdude". Winavr es esencialmente totalmente compatible. He estado manteniendo la base de código compartida entre los dos sin ni siquiera un solo cambio en un Makefile. Si tiene un puerto paralelo de hardware o incluso un puerto serie, el hardware ISP completo consta de algunos conectores estándar y un par de pasivos (resistencias). Hay varias opciones de USB disponibles y el Bus Pirate de $30 (enviado a todo el mundo) hace directamente AVR ISP y mucho más.
AVR también es uno de los pocos chips que su tienda de electrónica cercana también puede tener en el estante.
Puede programar para WINAVR (es decir, avr-libc) desde el IDE de Eclipse utilizando el complemento AVR Eclipse. ¡Eclipse hace que todo sea mejor!

Serie TI MSP430

Hardware

La variedad de periféricos de hardware no es tan flexible como los PIC de Microchip, pero el soporte de la cadena de herramientas de depuración de software es mucho mejor que las piezas de Microchip. TI lanzó recientemente su nueva versión de Code Composer para los microcontroladores MSP430 y los DSP TMS320F28xx, que utilizan Eclipse. El soporte de depuración es excelente.

También son muy fáciles de configurar los registros de control, mucho más fáciles que los DSP 28xx.

El MSP430 puede ser excelente para aplicaciones intensivas de temporización, ya que normalmente tendrá más registros de captura/comparación disponibles para su uso. Esto puede simplificar enormemente los sistemas en los que necesita lidiar con muchos periféricos intensivos en tiempo.

Desarrollo

Puede comprar un sistema de desarrollo por $ 150 (hay una variante más barata de $ 20 MSP430 en una memoria USB, pero es un poco limitante), y obtiene un sistema real de creación de prototipos de hardware + depurador. También puede obtener la nueva plataforma de lanzamiento de TI que viene con 2 chips y cuesta $ 4.30.

GCC está disponible. mspgcc.sourceforge.net (antiguo) mspgcc4.sourceforge.net (nuevo)
Últimamente, el problema con TI parece ser que su "tienda electrónica" simplemente no funciona y los nuevos kits siempre están agotados o no están en stock. Parece que hay mucha demanda de Chronos y Launchpad, así como de los kits EZ y EZ RF, pero ocasionalmente son casi inalcanzables a menos que encuentre una tienda que tenga algunos en stock. Esperemos que esto se aclare pronto.
Aparentemente, TI también ofrece muestras de sus chips.
Elektor también ofrece una placa que extenderá el ez430 hacia un devkit más tradicional. elektor.com/products/kits-modules/modules/…
No tuvimos ningún problema para obtener Launchpads este verano. El problema del suministro puede haber sido de corta duración.

Foto de microchip 16F/18F

mercado objetivo

Microprocesadores económicos de 8 bits. El 16F es una de las primeras líneas de procesadores de Microchip y no es particularmente adecuado para la programación en C/C++ debido a:

  • su núcleo de conjunto de instrucciones y arquitectura de memoria
  • la necesidad de cambiar de banco
  • falta de soporte para operaciones de puntero comunes
  • bajo rendimiento en C/C++ debido a la arquitectura
  • requiere un tamaño de programa más grande para implementar algoritmos

La serie 18F es más nueva y debe tenerse en cuenta si puede pagarla para su proyecto. Es similar en mercado objetivo, conjunto de periféricos, paquetes de circuitos integrados, herramientas de desarrollo y precio a la serie 16F. El núcleo 18F fue diseñado para ser más compatible con C y C++, debido a:

  • soporte para indirección
  • bancos de RAM particulares que siempre están accesibles (sin necesidad de cambiar de banco)

Software

Bastante fácil de programar, puede escribir usando su conjunto de 30 instrucciones de ensamblaje, o usar un compilador de C. Estos son MCU de 8 bits, por lo que si desea trabajar con valores> 255, tendrá que encontrar / escribir un código de suma / resta / multiplicación / división de 2 bytes usted mismo. Su RAM tiene 4 "bancos", por lo que si escribe en ensamblaje, debe seguir cambiando de un lado a otro para acceder a las variables almacenadas en bancos distintos al actual.

Hardware

Estos MCU funcionan bastante lentos, con una velocidad típica de 4 MIPS y una velocidad máxima de 20 MIPS. Tienen algunas funciones de hardware integradas que funcionan bien si se configuran correctamente, como el ADC, el puerto serie, el puerto paralelo, el bus CAN, el bus I2C, el bus SPI, la comparación de voltaje, la EEPROM y, por supuesto, los puertos de E/S multiusos. .

Documentación

  • Las hojas de datos tienen toda la información requerida (pinouts, registros para configuración, etc.) claramente categorizados y bien documentados. Un manual también explica en profundidad las características.

Herramientas de desarrollo

  • Microchip tiene una nueva herramienta, el VDI , que facilita la configuración de las diversas funciones de hardware de la MCU, que genera código ensamblador o C. Mejor que verter sobre las hojas de datos.

  • Microchip ha ofrecido su MPLAB IDE durante muchos años y, aunque el programa ha ido mejorando lentamente, en comparación con las herramientas de desarrollo para PC (Visual C++, Eclipse/NetBeans para Java/etc.), la interfaz de usuario es muy pobre y el software todavía tiene muchos errores. Tampoco es compatible con C++, a pesar de que la diferencia entre C y la mayoría de las características de C++ (excluyendo la asignación de memoria dinámica, las funciones virtuales y algunas otras características) es muy pequeña y C++ fomenta la modularidad de la programación. Hay proveedores de IDE de terceros, particularmente IAR, pero son costosos. (Hi-Tech fue comprada recientemente por Microchip).

  • La depuración en circuito se ofrece en algunas piezas mediante la interfaz ICD de Microchip, una interfaz serie de 2 pines a la que se puede acceder a través de los adaptadores de depuración ICD2, ICD3 , REAL ICE , PICkit2 /3, etc. Asegúrese de comprobar si la pieza que elija tiene las características de ICD! Las características de depuración son algo limitantes y tienen un "deslizamiento" en el que establece un punto de interrupción en una instrucción y el programa se detiene unas pocas instrucciones más tarde. Sin embargo, ICD es mejor que nada.

Soporte

  • Las notas de aplicación describen el código y los circuitos para varias aplicaciones comunes
  • Comunidad activa de usuarios en los Foros de Microchip
  • Sitio web de soporte técnico gratuito las 24 horas, los 7 días de la semana donde envía sus problemas (tickets) y el personal técnico responderá sin costo, e incluso le permitirá llamar si necesita más ayuda
  • Presentaciones (seminarios web) que explican los distintos módulos y aplicaciones
SDCC también es compatible con PIC, creo.
Sí, SDCC funciona muy bien para PIC18 y superiores. Tenga en cuenta que la sintaxis es ligeramente diferente de la de los compiladores C de Microchip, por lo que es posible que deba realizar alguna transferencia si desea reutilizar el código.
He sido reacio a usar sdcc ya que la documentación parece describir la generación de código pic como experimental.
Secundo los comentarios de PIC16. Viejo, peculiar, memoria organizada en bancos, no compatible con C. Microchip usa el hecho de que tiene muy pocas instrucciones para aprender como activo, lo cual es simplemente estúpido, en mi opinión. MPLAB IDE es una broma, parece que todavía es 1998.

Blackfin de Analog Devices La familia Blackfin es un DSP/microcontrolador híbrido con un sólido núcleo RISC y admite instrucciones de procesamiento de señales/vídeo. Algunas instrucciones admiten SIMD.

Hardware

Tiene un núcleo RISC. Las velocidades van desde 200 MHz de un solo núcleo hasta 600 MHz de doble núcleo. Tiene muchos periféricos: 10/100 Ethernet MAC, UARTS, SPI, controlador CAN, temporizadores con soporte PWM, temporizador de vigilancia, reloj en tiempo real y un controlador de memoria síncrona y asíncrona sin cola. Tiene administración de energía dinámica: apaga automáticamente las partes del procesador que no se utilizan.

Desarrollo

Las dos principales herramientas de desarrollo son VisualDSP++ de AD y la cadena de herramientas GNU. También hay un SDK con mucho código y notas de aplicación. El código SDK sirve como marco o como buenos ejemplos de código. Hay varios sistemas operativos, incluido uCLinux, que se ejecutarán en él. Hay varios tableros de evaluación disponibles. Los manuales son indispensables.

Precios actualmente desde 2$ en cantidades de 1000 unidades.

¡Blackfin no tiene un núcleo MIPS!
¿Qué pasa con los precios?

El Parallax Propeller es un extraño microcontrolador de 8 núcleos (ocho "cogs" más un concentrador) que puede hacer cosas muy interesantes/impresionantes, incluida la generación de video SD/VGA.

Tiene su propio entorno de desarrollo que incluye un lenguaje llamado SPIN. Asamblea (PASM) está naturalmente disponible.

Existe un considerable apoyo de la comunidad y proyectos visibles que utilizan el chip.

No hay una amplia gama de modelos, pero el chip parece ser el resultado de un diseño muy cuidadoso y una larga carrera de desarrollo realizada por personas extremadamente talentosas y competentes. Puede estar disponible por alrededor de $ 8.

El hardware de programación (dentro del sistema) aparentemente consiste en un puerto serie de nivel TTL y una línea de reinicio. Hay un dongle llamado Prop Plug disponible.

http://parallax.com

http://en.wikipedia.org/wiki/Parallax_Propeller

¿Qué tal el STM32 , otra familia de mcu basada en Cortex-M3?

Comenzar es barato ya que encontré algunas cosas buenas de Olimex.

Luego uso gcc como compilador y OpenOCD para controlar el jtag.

dsPIC33F y PIC24 : Microchip tiene una familia de microcontroladores de 16 bits y 40 MIPS llamados dsPIC33F que combinan su conjunto de instrucciones PIC24F y periféricos con funciones DSP, como dos acumuladores de 40 bits con opciones de redondeo y saturación; multiplicar y acumular de un solo ciclo; y cambios de hasta ±16 bits para datos de hasta 40 bits. Los precios son bajos (tan bajos como $ 2 en volumen). Una cosa que me gusta de los microcontroladores de Microchip es que muchos de sus dispositivos están disponibles en paquetes DIP que son ideales para la creación de placas. He usado uno de estos en un proyecto donde necesitaba decodificar señales DTMF; era más rentable que una solución de hardware decodificador DTMF dedicada. Se utiliza un PIC24 en el increíble uWatch, "El reloj con calculadora científica programable RPN/algebraica más potente (¡y el único!) del mundo".

Gran voto para la serie pic24. No ves tanto en línea para ellos como las fotos de 8 bits, pero son más rápidos, más potentes y más fáciles de usar y no cuestan más que los de 8 bits de especificaciones similares.

Cypress PSoC1 (CY8C29466) tiene un núcleo de CPU simple de 8 bits rodeado de bloques digitales y analógicos similares a FPGA.

Tiene tanto entradas analógicas como salidas analógicas. Muchos proyectos que requerirían un montón de partes externas con cualquier otro microcontrolador (amplificadores operacionales, PGA, etc.) se pueden realizar con un solo chip PSoC. Muchos ratones de computadora usan un PSoC1. Por ejemplo, puede decodificar tonos DTMF que vienen en un pin de entrada y generar directamente señales DTMF analógicas independientes en dos pines de salida: verdadero analógico, no PWM.

Los bloques digitales y analógicos se pueden configurar para que hagan las cosas de manera completamente independiente del núcleo y, por lo tanto, con un tiempo de respuesta fijo garantizado, incluso si la CPU está ocupada manejando alguna interrupción durante ese tiempo.

Potencia bastante baja. Viene en paquetes DIP y SMT.

El núcleo de 8 bits y 24 MHz es más o menos equivalente al núcleo PIC16F, con el peculiar cambio de banco y todo. Hay compiladores de C patentados disponibles, pero es poco probable que GCC se transfiera a cualquiera de ellos.

El proyecto "Gainer.cc" programa sistemas basados ​​en PSoC1 mediante el procesamiento a través de un cable USB, muy similar al proyecto posterior "Arduino".

El foro http://www.psocdeveloper.com/ es amigable. Hay algunas utilidades disponibles para hacer desarrollo en Linux: http://m8cutils.sourceforge.net/ .

PSoC1 me vuelve loco. Los nuevos PSoC3, sin embargo, son asombrosos.

Los micros Freescale HCS08 son competidores directos de los PIC10-18 y AVR, generalmente de menor costo pero aún con un conjunto de periféricos bastante rico. Su biblioteca de notas de aplicaciones y material de referencia es bastante buena.

Su CodeWarrior IDE (compilador gratuito para hasta 32k de código) incluye algunas bibliotecas útiles de "Inicialización de dispositivos" para un enfoque basado en GUI para voltear bits, y un "Procesador experto" más avanzado que puede generar controladores de nivel superior para periféricos. No está obligado a usar ninguno de los dos, y simplemente puede hacer todo en código C directo si lo desea.

Serie TI TMS320F28xx de DSP.

mercado objetivo

Convertidores de potencia de control de motores y controlados digitalmente: tienen periféricos PWM muy flexibles y ADC rápidos.

Hardware

Estos DSP tienen dos grandes inconvenientes:

  • Más complejo de configurar: los archivos del enlazador y todos los registros (estados de espera de la memoria, etc.) tienen demasiadas opciones y realmente debe saber lo que está haciendo para asegurarse de que lo está haciendo bien.
  • Necesita dos voltajes de fuente de alimentación, 3,3 V para E/S y periféricos, y 1,8-1,9 V para el núcleo DSP.

Herramientas de desarrollo

Depuración en tiempo real a través del puerto JTAG, utilizando Code Composer v4 (basado en Eclipse).

Compatible con MatLAB simulink para la generación automática de código (no se requiere experiencia en programación)

Los DSP de TI solían ser muy caros de crear prototipos porque necesitabas un pod de depuración en tiempo real de $ 1500 (adaptador JTAG), pero el precio ha bajado mucho (hay uno económico por $ 150-200) y venden placas de evaluación con adaptadores JTAG integrados.

Una cosa interesante de estos es que cada dirección de memoria numerada individualmente contiene una palabra de 16 bits.
byte de 16 bits?

XMOS fabrica una gama de chips de procesamiento paralelo de 32 bits muy potentes (1600 MIPS de cuatro núcleos con 32 subprocesos de hardware). Son lo suficientemente rápidos como para hacer USB y Ethernet de alta velocidad en el software. Sus herramientas son muy buenas, los chips son magníficos, tienen un precio razonable (comienzan en $7.50) y la gente allí es muy útil. Tienen dos foros de soporte muy buenos; uno es administrado por la empresa, el otro es independiente.

Yo uso XMOS; Estoy feliz con sus productos.

Tendré que votar por Cypress PSoC3. He estado usando PIC durante unos 10 años (PIC16, PIC18, dsPIC y PIC32). Me vuelven loco con su configuración periférica irritante y la búsqueda constante a través de la hoja de datos para encontrar ese bit que debe borrarse para que funcione algún pin.

Por otro lado, la experiencia que he tenido hasta ahora con los PSoC3s ha sido una delicia. Lo más importante es que configurar los periféricos digitales y analógicos es una alegría total. Los puertos serie, los relojes, las interrupciones, los controladores, los comparadores, los ADC y los DAC se pueden conectar en una hoja esquemática y funcionan perfectamente.

Por ejemplo, puede conectar su PWM para activar el ADC para muestrear en medio de un pulso, lo que hace que la medición de corriente del motor sea más precisa. Intenta hacer eso en un PIC.

¿Quiere 5 PWM, 5 decodificadores de cuadratura, un ADC, un puerto SPI y un generador CRC en el mismo chip? Lo tienes. ¿Desea configurar el ADC para muestrear secuencialmente la corriente en cada motor en el centro del pulso? Lo tienes. Además, puede conectar todas estas entradas y salidas a casi cualquier pin que desee.

Ah, sí, Y si no hay un periférico disponible en la biblioteca, ¡puedes escribir el tuyo propio en verilog!

Cypress PSoC5 tiene un ARM Cortex M3 de 32 bits rodeado de bloques digitales y analógicos similares a FPGA.

ADC y DAC analógicos de resolución de 20 bits.

Los bloques digitales y analógicos se pueden configurar para que hagan las cosas de manera completamente independiente del núcleo y, por lo tanto, con un tiempo de respuesta fijo garantizado, incluso si la CPU está ocupada manejando alguna interrupción durante ese tiempo.

Potencia bastante baja.

El núcleo ARM Cortex-M3 de 32 bits y 80 MHz es aproximadamente equivalente a...

El foro http://www.psocdeveloper.com/ es amigable.

No confiaría en A/D de 20 bits en el mismo dado que un microcontrolador. El ruido del uC probablemente hará que al menos 4 bits sean inútiles.
Podrías creerlo si supieras que solo eran 180 sps.

El soporte de Atmel para el AVR no es muy bueno y sus herramientas de hardware son un poco inestables. Sin embargo, los chips son buenos y el foro AVR Freaks es muy bueno. Tienen serios problemas de entrega con sus chips más nuevos como el XMega y los chips Tiny de 6 pines.

Explique las herramientas de hardware y los problemas de entrega. He estado usando chips AVR por un tiempo y fueron muy agradables y fáciles de ingresar al mundo de la computación física.
Eche un vistazo al foro AVR Freaks: la gente siempre se queja del Dragón y otras herramientas, y de la falta de disponibilidad de muchos chips. También se quejan de la falta de apoyo de Atmel.
No estoy seguro si está apoyando o votando en contra del AVR. ¿Puedes publicar algunas de tus propias experiencias personales? Es fácil encontrar reseñas negativas de usuarios frustrados, pero es más difícil encontrar buenos chips y un buen foro de soporte. No creo que hubiera una comunidad capaz de generar 500.000 publicaciones sobre 75.000 temas si el consenso general fuera negativo.
El soporte de código abierto para Atmel AVR es muy bueno (avr-gcc y avrdude).

Zilog también tiene algunos microcontroladores. Personalmente no he probado a programar la línea de chips Z8 Encore , pero sí envían muestras. Tienen muchos chips diferentes que van desde 1 KB a 16 KB (tal vez más) con periféricos que incluyen UART, ADC, I2C , SPI, etc.

En mi opinión, este no es un muy buen microcontrolador para aficionados.

Usé varias familias de procesadores. El problema principal al aprender un nuevo procesador es aprender a codificar cientos de registros de configuración de registros periféricos, este será el principal proceso que consumirá mucho tiempo cuando cambie de una familia a otra. el código de la aplicación principal está escrito en c, no importa la familia que estemos usando, desearía que hubiera evolucionado un estándar para los registros periféricos. Si alguien está al tanto de cualquier desarrollo en esta dirección, por favor, compártalo.

Uso PIC, ARM, MSP430, AVR y algunos otros.

Microchip tiene un excelente soporte y buenas herramientas de hardware y software, la depuración es especialmente fácil y rápida. La arquitectura de 8 bits está un poco anticuada. Sus nuevos chips de 16 bits son excelentes. Son el líder del mercado en MCU de 8 bits.

Si tiene alguna sabiduría para compartir, le sugiero que edite las respuestas de la comunidad-wiki en su lugar. Todos sus puntos ya se han mencionado en la respuesta 18F.