¿Qué microcontrolador debo usar para mi proyecto de último año: 8051 o basado en ARM?

Elija un controlador que tenga Ethernet, por lo que en su mayoría ARM. Puede usar Raspberry Pi o Beaglebone solo para hacer que su proyecto sea interesante (estas son placas de desarrollo, no microcontroladores). Nuevamente, estos están basados ​​en ARM. De esta manera, puede aprender una o dos cosas sobre Linux en sistemas embebidos. Puede proporcionar una interfaz de pantalla táctil agradable para que pueda controlar todo lo que la use, aparte de su aplicación de Android, por supuesto.
Discovery Board también es una buena opción. Aunque tiene poca potencia en comparación con RasPi o Beaglebone y probablemente no ejecute Linux. Pero, supongo que es lo suficientemente bueno para su proyecto. El Tiva Launchpad de TI es otra placa con especificaciones similares, pero, hasta donde recuerdo, carece de Ethernet. Entonces, tendrás una interfaz.
Si necesita un controlador de bajo costo, no use 8051 porque ya lo tiene en su plan de estudios (está en la India, ¿verdad?). Si lo mantiene, se perderá toda la autoeducación que se lleva a cabo cuando obtiene un nuevo controlador. Sus conceptos se aclaran de esta manera.
Además, recuerde que es el proceso de elegir el controlador correcto que separa a un ingeniero de un aficionado. Entonces, investigas y luego eliges tu controlador. No base su elección en las respuestas de Quora. Enumere sus especificaciones, encuentre controladores que se ajusten a las especificaciones y luego elija la mejor combinación.

La elección de un componente depende del parámetro de optimización. Por ej. si desea crear un producto, los parámetros obvios que optimiza son:
(1) Costo: obviamente desea reducir el costo. 8051 es mucho más barato que los paquetes ARM.
(2) Tiempo de desarrollo: Según mi desarrollo, con 8051 es más bajo en abstracción. La mayoría de las veces codificará en lenguaje ensamblador. Si es ARM, es muy probable que escriba el código en C, ya que los conjuntos de herramientas son maduros para tomar C. (aunque 8051 también tiene compiladores de C, no son muy óptimos en el tamaño de la memoria de salida)
(3) Capacidad de actualización: una vez que haga un producto, no querrá comenzar todo desde cero para el siguiente producto. Desea aprovechar su experiencia del proyecto anterior. Entonces, si crees que la mayoría de tus productos funcionarán mejor con uno de 8051 / ARM, entonces elige eso.
(4) Demanda de dominio: lo que es más importante, si tiene un problema de diseño en el que uno u otro no puede ajustarse al diseño, debido a capacidades físicas como: cálculo, potencia, requisitos de voltaje, requisitos de memoria, etc., entonces está obligado a elegir automáticamente

Por otro lado, dado que no está tratando de hacer un producto comercializable y solo está haciendo un proyecto académico, los parámetros de optimización serían:
(1) Aprendizaje: debe tomar el controlador que le proporciona el máximo aprendizaje, idealmente. Un proyecto con ARM le enseñaría mucho sobre las cadenas de herramientas, los compiladores cruzados, el sistema operativo incorporado, los tableros más complejos, etc. Estos son extremadamente interesantes de aprender y naturalmente consumen más esfuerzo y tiempo. Sin embargo, si está interesado en hacer que el proyecto funcione o tiene poco tiempo (= esfuerzo), su elección se convierte en 8051.

TL, DR: Si cree que su proyecto funciona tanto con 8051 como con ARM, entonces ARM es divertido de aprender, 8051 es más fácil, en mi humilde opinión

Estoy de acuerdo con David Pires . La elección del controlador depende de su aplicación. Usted mismo dice que 8051 es suficiente para sus necesidades. En ese caso, te sugiero que te quedes con 8051. En cuanto al impacto en el CV y ​​consideraciones similares, aprende sobre ARM, haz algunos proyectos de muestra fuera de esto. Si está postulando a una empresa que se toma en serio su trabajo, se preocupará más por el hecho de que haya elegido un procesador apropiado para el proyecto en lugar de optar por un procesador más costoso y complicado. Debería poder explicar todo sobre su proyecto de principio a fin, incluyendo por qué decidió este proyecto, cómo decidió el alcance, cómo decidió las herramientas, etc., además del diseño técnico y la implementación. Tenga en cuenta que para las empresas serias, una consideración importante será cómo probar el producto. Otra pregunta importante que podría hacerse es si su proyecto fue exitoso en su evaluación y no si pudo convencer a su maestro. Cualquiera sea su evaluación, debería poder explicarla.

Por supuesto, debe aprender sobre ARM y otros procesadores. Pero cuando se gradúe, no es probable que lo traten como un experto en ARM con un proyecto que solo necesita un 8051. Conozca las diferencias y tenga en cuenta la selección del procesador. Tal conocimiento será más importante para una empresa seria que las palabras de moda.

Ir para microcontrolador basado en ARM. Hoy los microcontroladores ARM cuestan menos de $ 1. Un microcontrolador de características moderadas en la arquitectura ARM puede costar $ 4. La arquitectura ARM se implementa en diferentes fabricantes de chips, lo que le permite elegir entre una amplia cartera de periféricos y características adecuadas para su proyecto.

ARM Architecture tiene una compañía dedicada que desarrolla su arquitectura. Esta arquitectura es mucho más poderosa que la 8051. Por ejemplo, el procesador ARM tiene una operación de ciclo único para casi todas las operaciones, reloj de 48MHz a 400MHz, arquitectura de 32 bits y más.

Si desea mantenerse actualizado con la última tecnología y permanecer a prueba de futuro, entonces elija ARM. Puede aprender mucho desde GPIO simples hasta RTOS complejos en un solo chip ARM.

Hoy, la tecnología ha evolucionado a microcontrolador ARM de doble núcleo, coprocesador Wifi, etc. Su temprana introducción a ARM definitivamente sería útil en las próximas tecnologías IoT.

Depende de lo que quieras aprender:
Opciones:
1. Basado en ARM (sin SO) – Aprende arquitectura ARM, periférico ethernet
2. Basado en ARM (con SO): aprenda técnicas de programación de SO y concéntrese en el desarrollo de aplicaciones
3. Con o sin puerto Ethernet: según esto, escribirá su propia pila, usará una pila lista, creará su propio hardware (MAC + PHY o solo PHY)
4. AVR o PIC o ST o TI o Reneses: todos estos tienen una amplia gama de microcontroladores. El que seleccione debe depender nuevamente de los primeros tres puntos, es decir, lo que desea aprender. También tiene una opción de chips Intel en estos días, así que no se restrinja. Decide qué quieres aprender (ASM, C, programación basada en el sistema operativo, desarrollo de hardware) y, según ese diseño, un proyecto que te haga trabajar en esas habilidades.

MÁS IMPORTANTE: HAZLO TU MISMO

PS – 8051 tampoco es una mala opción para aprender. Implementar ethernet con 8051 no sería una tarea fácil.

Para hacer una domótica de bajo costo para una comercialmente viable, la mejor opción es usar un microcontrolador de bajo costo como 20 pin 8051 (Rs30), un módulo wifi de bajo costo como ESP8266 (Rs 250), optoaislador como MOC3021 (Rs 12 ) manejando interruptores triac (Rs12), una aplicación de Android con provisiones de GUI de 8 conmutaciones de carga múltiple, habilitada para internet (sin usar el concepto de reenvío de puertos) pero usando una red wifi doméstica que tiene la entrada del usuario de SSID y contraseña (no codificada) independiente sin usar Arduino, Raspberry-Pi. a un precio de lista de materiales de alrededor de Rs 500 / -. Todas las demás charlas hechas aquí son buenas para I + D pero no para un producto comercializable real.

Debido a que lo está haciendo para su propósito académico, le sugiero que vaya a ARM (privilegiado, tiene buena experiencia en 8051). No estás haciendo ningún producto comercial. Puede explorar nuevas alturas en flexibilidad de programación, características avanzadas.
Puedes encontrar muchas cosas y soporte para Raspberry Pi. Portar el SO y el diseño de la aplicación será realmente una gran experiencia.
Sería una puerta de entrada a tu colorida carrera después de tu ingeniería.

Ve por ARM, todos dieron la hermosa descripción, pero aparte de eso aprenderás nuevos idiomas como python, java si eliges ARM. Hice mi proyecto de último año en el tablero de FRAMBUESA PI obtuve la calificación AA, 8051 es bueno para proyectos menores, no para proyectos importantes, ARM le proporcionará funciones muy buenas y la interfaz de sensores a través de i2c o comunicación en serie se puede hacer fácilmente. Además de todo ese proyecto basado en ARM ayudará a obtener un buen trabajo como ingeniero de sistemas integrados (me ayudó para conseguir un trabajo) Trabaja duro en tu proyecto.

La familia 8051/31 era de última generación hace 30 (!!!) años. Escribí mucho software para eso en aquel entonces en lenguaje ensamblador o en FORTH. Todavía existe en muchos dispositivos hoy en día, ya que el legado de ese período de diseño gana, es barato y confiable, pero dudo que se use en muchos diseños nuevos, si es que hay alguno, debido a su velocidad, un conjunto de instrucciones de 8 bits arcaico y peculiar, y severas limitaciones de memoria.

En estos días, la arquitectura ARM está en todas partes y las CPU basadas en esa arquitectura están construidas bajo licencia por varios grandes fabricantes y se encuentran en cada tipo de dispositivo, incluidos casi todos los teléfonos inteligentes. El tiempo que invierta aprendiendo la arquitectura ARM será bien recompensado.

ARM parece ser el camino a seguir. Es un poco más difícil de usar que un 8 bits como el 8051, pero no hay competencia en capacidad y rentabilidad. Si planea controlar su proyecto a través de una red, el uso de un sistema listo como Raspberry Pi le ahorrará al menos un año de trabajo de desarrollo, y puede salir del tablero a su IO usando la interfaz I2C. Sin embargo, no aprenderá mucho sobre los ARM y los microcontroladores; principalmente aprenderá sobre Linux, que no es lo mismo en absoluto.

En cualquier caso, no usaría un 8051. Es un procesador peculiar y horrible con una arquitectura que hace que sea extremadamente difícil tratar cualquier otra cosa que no sean variables de bytes de 8 bits. Si prefiere usar un 8 bits, el AVR ha limpiado el piso con todo lo demás en ese mundo y ha llevado al 8051 casi a la extinción. Pero tendrá que proporcionar alguna forma externa para conectarlo a la red, y eso solo probablemente costará más que una Raspberry Pi.

BRAZO, definitivamente. A menos que su proyecto tenga algunos requisitos específicos para 8051 o más sistemas “básicos”.

Además, ARM es una empresa. Realizan varias arquitecturas diferentes que van desde microcontroladores de baja potencia como el Cortex-M0 hasta SoC como el rango Cortex-A8, que son dispositivos totalmente diferentes. Por lo tanto, debe ser específico al hacer una comparación.

El MSP430 no es un procesador ARM.

Tan pronto como su proyecto incluyó capacidades de Internet, creo que salió del ámbito de la familia 8051. Si bien no es imposible, una pila TCP / IP en un micro pequeño como el 8051 es una perspectiva desafiante. Las CPU ARM que ejecutan Linux y otros sistemas operativos multitarea son abundantes.
La plataforma ARM será un diseño de hardware más desafiante, pero si usa un producto o diseño SBC o SoM existente, su esfuerzo se verá reducido. Obtener un sistema de E / S robusto será vital para el éxito de su proyecto, y el aprovechamiento de algunos trabajos existentes le permitirá concentrarse en ese aspecto.

En estos días es popular y bastante sencillo usar un Arduino o Raspberry Pi como base para proyectos integrados. Son económicos, están disponibles en kits con todo lo que necesita para comenzar y están respaldados por enormes comunidades en línea.

Debes elegir ARM arch. como Cortex-M4 como aplicaciones de control. O se requieren proyectos de base de servidor A8 al menos. Es difícil creer que alguien sugiera el entorno de desarrollo de Arduino a los estudiantes de ingeniería. Me opongo firmemente a este enfoque porque tienes que aprender la programación del microcontrolador paso a paso mientras configuras registros, banderas … Sí, Arduino es una opción rápida, mientras que a veces vas a un nivel básico como 8051 para aprender cómo trabajar los protocolos de conminicación.

Yo recomendaría ARM.

Hay muchas variantes de brazo disponibles en el mercado. Para ser precisos, recomendaría la placa de desarrollo basada en STM32F4 (STM32F4DISCOVERY). Es de bajo costo, alcance de funciones y tecnológicamente muy avanzado . En India puede comprarlo por 1600 INR, es decir, 25 USD.

Aparte de esto, si la aplicación requiere una solución de bajo costo y bajo consumo de energía , use las MCU de la serie MSP430 de TI (que no son ARM). Tienen una amplia gama de MCU, por lo que puede seleccionar según sus necesidades. Incluso puede solicitar una muestra gratis de TI utilizando un correo electrónico universitario válido y un permiso con fines educativos.

Como muchos anteriores, puedo ver sugerir controladores basados ​​en ARM, mi opinión también se inclina hacia los controladores basados ​​en ARM. Con el controlador basado en ARM, la aplicación de Android y la implementación de conectividad ethernet es fácil. Controladores basados ​​en ARM La serie Tiva de texas intruments tiene una gran compatibilidad con bibliotecas para pantallas gráficas, conectividad USB y ethernet. Aparte de eso, la serie Tiva también admite aplicaciones de control general. Las placas de desarrollo EK-TM4C1294XL y EK-TM4C123GXL son un buen comienzo para que los principiantes aprendan.

No hay mucha diferencia en la forma en que codifica para un controlador ARM (o) 8051. Eventualmente codificará en lenguaje C solamente. El compilador se ocupa del resto de la optimización del código. 8051 se enfrenta a un problema heredado y ahora le queda muy poca adopción. Mientras que el ARM ahora se ha convertido en el estándar por defecto del microcontrolador. Así que opta por ARM porque encontrarás más recursos al respecto.

Hay muchas opciones disponibles para la placa de desarrollo y los paquetes de refuerzo. Texas Instruments tiene una de las mejores series MCU diseñadas profesionalmente llamada MSP430. Es conocido por su rendimiento y capacidad de potencia ultra baja. Tienen una buena placa para su aplicación. Está basado en la serie tiva c. Echa un vistazo al enlace http://www.ti.com/tool/ek-tm4c12… .

Simplemente tome una de las plataformas y comience.

Sugeriría procesadores ARM por la misma razón que mencionó, se está utilizando en todas partes en lo que respecta a los sistemas integrados. Y todos sabemos que los sistemas integrados tienen aplicaciones en todos los ámbitos de la vida.
También le daría una mejor exposición a las últimas tendencias tecnológicas.
Los proyectos basados ​​en procesadores ARM son más fáciles de implementar en comparación con 8051 o cualquier otro microcontrolador.
Entonces, el procesador ARM es definitivamente el camino a seguir.

8051 sigue siendo el núcleo más popular en este planeta. Puede descargar el RTL y programarlo en su propio FPGA. Por lo tanto, muchos dispositivos lo usan.

Si estuvieras desarrollando un nuevo producto. Yo recomendaría no usar un microcontrolador más elegante del requerido. Pero para un proyecto académico. ir con el brazo.

El tablero de desarrollo 8051 es el mejor para el proyecto de pasantías universitarias. También ayudará a mejorar sus habilidades en el futuro
Para más detalles: Página en robomart.com